--- a/Helpviewer/GreaseMonkey/GreaseMonkeyManager.py Sun Mar 04 12:10:39 2018 +0100 +++ b/Helpviewer/GreaseMonkey/GreaseMonkeyManager.py Sun Mar 04 13:04:58 2018 +0100 @@ -14,6 +14,7 @@ from PyQt5.QtCore import pyqtSignal, QObject, QTimer, QFile, QDir, QSettings, \ QUrl, QByteArray from PyQt5.QtNetwork import QNetworkAccessManager +from PyQt5.QtWebKit import QWebFrame import Utilities import Preferences @@ -232,13 +233,14 @@ """ return scheme in ["http", "https", "data", "ftp"] - def pageLoadStarted(self, frame): + def pageLoadStarted(self): """ Public slot to handle the start of loading a page. + """ + frame = self.sender() + if frame is None or not isinstance(frame, QWebFrame): + return - @param frame reference to the main frame of the loading page - @type QWebFrame - """ urlScheme = frame.url().scheme() urlString = bytes(frame.url().toEncoded()).decode() @@ -290,9 +292,8 @@ @param page reference to the web page (HelpWebPage) """ - mainFrame = page.mainFrame() - mainFrame.javaScriptWindowObjectCleared.connect( - lambda: self.pageLoadStarted(mainFrame)) + page.mainFrame().javaScriptWindowObjectCleared.connect( + self.pageLoadStarted) def createRequest(self, op, request, outgoingData=None): """