Bring back PyQt (but not Qt) 5.7.0 support with QtWebEngine
This was originally removed in a86170f45
, however Debian testing (Stretch) comes
with Qt 5.7.1, but PyQt 5.7.
This commit is contained in:
parent
a179d6a738
commit
71f7b01ea7
@ -37,7 +37,7 @@ Added
|
||||
Changed
|
||||
~~~~~~~
|
||||
|
||||
- PyQt/Qt 5.7.1 is now required for the QtWebEngine backend
|
||||
- PyQt 5.7/Qt 5.7.1 is now required for the QtWebEngine backend
|
||||
- Scrolling with the scrollwheel while holding shift now scrolls sideways
|
||||
- New way of clicking hints with which solves various small issues
|
||||
- When yanking a mailto: link via hints, the mailto: prefix is now stripped
|
||||
|
@ -244,16 +244,20 @@ class WebEnginePage(QWebEnginePage):
|
||||
except shared.CallSuper:
|
||||
return super().javaScriptConfirm(url, js_msg)
|
||||
|
||||
def javaScriptPrompt(self, url, js_msg, default):
|
||||
"""Override javaScriptPrompt to use qutebrowser prompts."""
|
||||
if self._is_shutting_down:
|
||||
return (False, "")
|
||||
try:
|
||||
return shared.javascript_prompt(url, js_msg, default,
|
||||
abort_on=[self.loadStarted,
|
||||
self.shutting_down])
|
||||
except shared.CallSuper:
|
||||
return super().javaScriptPrompt(url, js_msg, default)
|
||||
if PYQT_VERSION > 0x050700:
|
||||
# WORKAROUND
|
||||
# Can't override javaScriptPrompt with older PyQt versions
|
||||
# https://www.riverbankcomputing.com/pipermail/pyqt/2016-November/038293.html
|
||||
def javaScriptPrompt(self, url, js_msg, default):
|
||||
"""Override javaScriptPrompt to use qutebrowser prompts."""
|
||||
if self._is_shutting_down:
|
||||
return (False, "")
|
||||
try:
|
||||
return shared.javascript_prompt(url, js_msg, default,
|
||||
abort_on=[self.loadStarted,
|
||||
self.shutting_down])
|
||||
except shared.CallSuper:
|
||||
return super().javaScriptPrompt(url, js_msg, default)
|
||||
|
||||
def javaScriptAlert(self, url, js_msg):
|
||||
"""Override javaScriptAlert to use qutebrowser prompts."""
|
||||
|
@ -271,8 +271,8 @@ def check_qt_version(backend):
|
||||
_die(text)
|
||||
elif (backend == 'webengine' and (
|
||||
qtutils.version_check('5.7.0', operator.lt) or
|
||||
PYQT_VERSION < 0x050701)):
|
||||
text = ("Fatal error: Qt and PyQt >= 5.7.1 are required for "
|
||||
PYQT_VERSION < 0x050700)):
|
||||
text = ("Fatal error: Qt >= 5.7.1 and PyQt >= 5.7 are required for "
|
||||
"QtWebEngine support, but Qt {} / PyQt {} is installed."
|
||||
.format(qVersion(), PYQT_VERSION_STR))
|
||||
_die(text)
|
||||
|
@ -120,9 +120,13 @@ def pytest_collection_modifyitems(config, items):
|
||||
_apply_platform_markers(item)
|
||||
if item.get_marker('xfail_norun'):
|
||||
item.add_marker(pytest.mark.xfail(run=False))
|
||||
if item.get_marker('js_prompt') and not config.webengine:
|
||||
if item.get_marker('js_prompt'):
|
||||
if config.webengine:
|
||||
js_prompt_pyqt_version = 0x050700
|
||||
else:
|
||||
js_prompt_pyqt_version = 0x050300
|
||||
item.add_marker(pytest.mark.skipif(
|
||||
PYQT_VERSION <= 0x050300,
|
||||
PYQT_VERSION <= js_prompt_pyqt_version,
|
||||
reason='JS prompts are not supported with this PyQt version'))
|
||||
|
||||
if deselected:
|
||||
|
Loading…
Reference in New Issue
Block a user