diff -r d14ddbfbbd36 -r c6dda2cbe081 WebBrowser/WebBrowserView.py --- a/WebBrowser/WebBrowserView.py Sat Feb 16 10:27:50 2019 +0100 +++ b/WebBrowser/WebBrowserView.py Sat Mar 02 11:15:24 2019 +0100 @@ -157,8 +157,8 @@ self.__page.printPageRequested.connect(self.__printPage) try: self.__page.quotaRequested.connect(self.__quotaRequested) - self.__page.registerProtocolHandlerRequested.connect( - self.__registerProtocolHandlerRequested) + # The registerProtocolHandlerRequested signal is handled in + # WebBrowserPage. except AttributeError: # pre Qt 5.11 pass @@ -1519,8 +1519,8 @@ self.parentWidget().installEventFilter(self) # find the render widget receiving events for the web page - if qVersionTuple() < (5, 8, 0) or qVersionTuple() >= (5, 12, 0): - if obj is self and evt.type() == QEvent.ChildAdded: + if obj is self and evt.type() == QEvent.ChildAdded: + if qVersionTuple() < (5, 8, 0): child = evt.child() if child and child.inherits( "QtWebEngineCore::" @@ -1529,8 +1529,7 @@ self.grabGesture(Qt.PinchGesture) self.__rwhvqt.grabGesture(Qt.PinchGesture) self.__rwhvqt.installEventFilter(self) - elif qVersionTuple() >= (5, 11, 0): - if obj is self and evt.type() == QEvent.ChildAdded: + elif qVersionTuple() >= (5, 11, 0): QTimer.singleShot(0, self.__setRwhvqt) # forward events to WebBrowserView @@ -2262,39 +2261,6 @@ quotaRequest.accept() else: quotaRequest.reject() - - @pyqtSlot("QWebEngineRegisterProtocolHandlerRequest") - def __registerProtocolHandlerRequested(self, request): - """ - Private slot to handle requests for registration of a protocol - handler. - - @param request reference to the protocol handler request object - @type QWebEngineRegisterProtocolHandlerRequest - """ - acceptRequest = Preferences.getWebBrowser( - "AcceptProtocolHandlerRequest") - # yes/no/ask (0, 1, 2) - if acceptRequest == 0: - # always yes - ok = True - elif acceptRequest == 1: - # always no - ok = False - else: - # ask user - ok = E5MessageBox.yesNo( - self, - self.tr("Protocol Handler Request"), - self.tr("""<p> Allow the website at <b>{0}</b> to open""" - """ all <b>{1}</b> links?</p>""") - .format(request.origin().host(), request.scheme()) - ) - - if ok: - request.accept() - else: - request.reject() ########################################################################### ## Methods below implement slots for Qt 5.12+