diff options
author | Florian Bruhin <git@the-compiler.org> | 2016-04-10 15:26:02 +0200 |
---|---|---|
committer | Florian Bruhin <git@the-compiler.org> | 2016-04-10 18:03:29 +0200 |
commit | 83b7c0dd6f4d5d52a5a305aafb6c82821a6afca3 (patch) | |
tree | 1e225188b94f1ec1e89e7f36a99c8a35f15fe231 | |
parent | 93fff9a69c34d7b6581183d2cacd23e6f445d20c (diff) | |
download | qutebrowser-83b7c0dd6f4d5d52a5a305aafb6c82821a6afca3.tar.gz qutebrowser-83b7c0dd6f4d5d52a5a305aafb6c82821a6afca3.zip |
Fix #1414 with a weird workaround
-rw-r--r-- | qutebrowser/browser/webview.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/qutebrowser/browser/webview.py b/qutebrowser/browser/webview.py index 39d4acaa0..caedd7a9d 100644 --- a/qutebrowser/browser/webview.py +++ b/qutebrowser/browser/webview.py @@ -27,7 +27,7 @@ from PyQt5.QtCore import pyqtSignal, pyqtSlot, Qt, QTimer, QUrl from PyQt5.QtGui import QPalette from PyQt5.QtWidgets import QApplication, QStyleFactory from PyQt5.QtWebKit import QWebSettings -from PyQt5.QtWebKitWidgets import QWebView, QWebPage +from PyQt5.QtWebKitWidgets import QWebView, QWebPage, QWebFrame from qutebrowser.config import config from qutebrowser.keyinput import modeman @@ -352,9 +352,14 @@ class WebView(QWebView): frame = self.page().mainFrame() frame.javaScriptWindowObjectCleared.connect(self.add_js_bridge) + @pyqtSlot(QWebFrame) def add_js_bridge(self): """Add the javascript bridge for qute:... pages.""" frame = self.sender() + if not isinstance(frame, QWebFrame): + log.webview.error("Got non-QWebFrame in add_js_bridge") + return + if frame.url().scheme() == 'qute': bridge = objreg.get('js-bridge') frame.addToJavaScriptWindowObject('qute', bridge) |