kvirc / KVIrc

The KVIrc IRC Client
http://www.kvirc.net/
GNU General Public License v2.0
240 stars 75 forks source link

Remove QWebEngine usage in core. Rewrite web package manager #2570

Closed ctrlaltca closed 10 months ago

ctrlaltca commented 10 months ago

This PR introduces 2 big modifications.

The first one is related to the help module, that right now can use as its backend Qt's QTextBrowser (a simple html browser) or QWebEngine (based on Chromium, supports javascript etc, usually quite outdated and with a bad security record). This PR removes the QWEbEngine backend from the help module, since we don't need it features, it's more bloated, and it never appeared in any windows release anyway.

The second one is related to WebPackageManager, aka the "get more themes" and "get more addons" features. Right now they use QWebEngine to show a page from www.kvirc.net and download files via ftp. This feature is broken since ages because ftp downloads aren't supported anymore and sometimes because the www.kvirc.net website has a broken ssl cert. This PR rewrites the WebPackageManager to use plain http requests to a json file containing the information about themes/addons. Right now the file is loaded from http://127.0.0.1/ for local testing, but the target is to host the files in a github repo (implementing #1733) so that contributors can use issues and pull requests.

Once these changes are in, the only usage of QWebEngine left is in the "object" module.

Prerequisite to fix #1733 Note: this PR needs an additional commit to fix the theme/addon urls once the repositories are created.