summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <git@the-compiler.org>2017-07-03 09:42:02 +0200
committerFlorian Bruhin <git@the-compiler.org>2017-07-03 10:29:28 +0200
commit629038632c6cc8c0ecd8b6a7a32d59ef4d5b9d02 (patch)
treeecaa4d28a10f545decf73483fc76562dccebe618
parent3b53ec1cb6c136ffb12e46f3b532e546cb0bd421 (diff)
downloadqutebrowser-629038632c6cc8c0ecd8b6a7a32d59ef4d5b9d02.tar.gz
qutebrowser-629038632c6cc8c0ecd8b6a7a32d59ef4d5b9d02.zip
Add proxy support for QtWebEngine and Qt 5.7.1
This used to give us crashes in libproxy: https://github.com/libproxy/libproxy/issues/45 https://bugreports.qt.io/browse/QTBUG-56852 However, trying again with Qt 5.7.1 on Debian and from PyPI, this doesn't happen anymore, so it was probably something with how Archlinux handled things. See #2082, #2775. Reverts fd29528e4f0c3ef445a85ea1d9e2c96bcc3e37ed
-rw-r--r--CHANGELOG.asciidoc1
-rw-r--r--doc/help/settings.asciidoc2
-rw-r--r--qutebrowser/app.py6
-rw-r--r--qutebrowser/browser/webkit/webkittab.py7
-rw-r--r--qutebrowser/config/configdata.py8
-rwxr-xr-xscripts/dev/src2asciidoc.py3
6 files changed, 6 insertions, 21 deletions
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 406400413..ea7481030 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -45,6 +45,7 @@ Added
customize statusbar colors for private windows.
- New `{private}` field displaying `[Private Mode]` for
`ui -> window-title-format` and `tabs -> title-format`.
+- (QtWebEngine) Proxy support with Qt 5.7.1 too
Changed
~~~~~~~
diff --git a/doc/help/settings.asciidoc b/doc/help/settings.asciidoc
index 9c362dbca..b038d462d 100644
--- a/doc/help/settings.asciidoc
+++ b/doc/help/settings.asciidoc
@@ -789,8 +789,6 @@ The proxy to use.
In addition to the listed values, you can use a `socks://...` or `http://...` URL.
-This setting only works with Qt 5.8 or newer when using the QtWebEngine backend.
-
Valid values:
* +system+: Use the system wide proxy.
diff --git a/qutebrowser/app.py b/qutebrowser/app.py
index a3a855f9a..65e8d8181 100644
--- a/qutebrowser/app.py
+++ b/qutebrowser/app.py
@@ -410,10 +410,8 @@ def _init_modules(args, crash_handler):
log.init.debug("Initializing network...")
networkmanager.init()
- if qtutils.version_check('5.8'):
- # Otherwise we can only initialize it for QtWebKit because of crashes
- log.init.debug("Initializing proxy...")
- proxy.init()
+ log.init.debug("Initializing proxy...")
+ proxy.init()
log.init.debug("Initializing readline-bridge...")
readline_bridge = readline.ReadlineBridge()
diff --git a/qutebrowser/browser/webkit/webkittab.py b/qutebrowser/browser/webkit/webkittab.py
index fa626e863..c29aa15cb 100644
--- a/qutebrowser/browser/webkit/webkittab.py
+++ b/qutebrowser/browser/webkit/webkittab.py
@@ -33,7 +33,6 @@ from PyQt5.QtWebKit import QWebSettings
from PyQt5.QtPrintSupport import QPrinter
from qutebrowser.browser import browsertab
-from qutebrowser.browser.network import proxy
from qutebrowser.browser.webkit import webview, tabhistory, webkitelem
from qutebrowser.browser.webkit.network import webkitqutescheme
from qutebrowser.utils import qtutils, objreg, usertypes, utils, log, debug
@@ -42,12 +41,6 @@ from qutebrowser.utils import qtutils, objreg, usertypes, utils, log, debug
def init():
"""Initialize QtWebKit-specific modules."""
qapp = QApplication.instance()
-
- if not qtutils.version_check('5.8'):
- # Otherwise we initialize it globally in app.py
- log.init.debug("Initializing proxy...")
- proxy.init()
-
log.init.debug("Initializing js-bridge...")
js_bridge = webkitqutescheme.JSBridge(qapp)
objreg.register('js-bridge', js_bridge)
diff --git a/qutebrowser/config/configdata.py b/qutebrowser/config/configdata.py
index 28cf41ac5..32d80f3b7 100644
--- a/qutebrowser/config/configdata.py
+++ b/qutebrowser/config/configdata.py
@@ -437,14 +437,10 @@ def data(readonly=False):
"User agent to send. Empty to send the default."),
('proxy',
- SettingValue(typ.Proxy(), 'system',
- backends=(None if qtutils.version_check('5.8')
- else [usertypes.Backend.QtWebKit])),
+ SettingValue(typ.Proxy(), 'system'),
"The proxy to use.\n\n"
"In addition to the listed values, you can use a `socks://...` "
- "or `http://...` URL.\n\n"
- "This setting only works with Qt 5.8 or newer when using the "
- "QtWebEngine backend."),
+ "or `http://...` URL."),
('proxy-dns-requests',
SettingValue(typ.Bool(), 'true',
diff --git a/scripts/dev/src2asciidoc.py b/scripts/dev/src2asciidoc.py
index 7445a99c6..a202edeb3 100755
--- a/scripts/dev/src2asciidoc.py
+++ b/scripts/dev/src2asciidoc.py
@@ -365,8 +365,7 @@ def generate_commands(filename):
def _generate_setting_section(f, sectname, sect):
"""Generate documentation for a single section."""
- version_dependent_options = [('network', 'proxy'),
- ('general', 'print-element-backgrounds')]
+ version_dependent_options = [('general', 'print-element-backgrounds')]
for optname, option in sect.items():
f.write("\n")
f.write('[[{}-{}]]'.format(sectname, optname) + "\n")