From c5cacbc439e275543c8d1ac0d05a0327446e949b Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 21 Nov 2016 06:22:38 +0100 Subject: [PATCH] Handle background tabs in QtWebEngine createWindow with older Qt --- qutebrowser/browser/webengine/webview.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/qutebrowser/browser/webengine/webview.py b/qutebrowser/browser/webengine/webview.py index 1c3a989b1..f3e9d6a94 100644 --- a/qutebrowser/browser/webengine/webview.py +++ b/qutebrowser/browser/webengine/webview.py @@ -78,6 +78,13 @@ class WebEngineView(QWebEngineView): log.webview.debug("createWindow with type {}, background_tabs " "{}".format(debug_type, background_tabs)) + try: + background_tab_wintype = QWebEnginePage.WebBrowserBackgroundTab + except AttributeError: + # This is unavailable with an older PyQt, but we still might get + # this with a newer Qt... + background_tab_wintype = 0x0003 + if wintype == QWebEnginePage.WebBrowserWindow: # Shift-Alt-Click target = usertypes.ClickTarget.window @@ -92,8 +99,7 @@ class WebEngineView(QWebEngineView): target = usertypes.ClickTarget.tab else: target = usertypes.ClickTarget.tab_bg - elif (hasattr(QWebEnginePage, 'WebBrowserBackgroundTab') and - wintype == QWebEnginePage.WebBrowserBackgroundTab): + elif wintype == background_tab_wintype: # Middle-click / Ctrl-Click if background_tabs: target = usertypes.ClickTarget.tab_bg