diff -r 884cd9c9ce05 -r b93cb6353cc0 WebBrowser/WebBrowserView.py --- a/WebBrowser/WebBrowserView.py Thu Mar 23 18:58:56 2017 +0100 +++ b/WebBrowser/WebBrowserView.py Fri Apr 07 18:33:59 2017 +0200 @@ -122,8 +122,26 @@ self.__inspector = None WebInspector.registerView(self) + if qVersion() >= "5.8.0": + lay = self.layout() + lay.currentChanged.connect( + lambda: QTimer.singleShot(0, self.__setRwhvqt)) + self.__setRwhvqt() + self.grabGesture(Qt.PinchGesture) + def __setRwhvqt(self): + """ + Private slot to set widget that receives input events. + """ + self.grabGesture(Qt.PinchGesture) + self.__rwhvqt = self.focusProxy() + if self.__rwhvqt: + self.__rwhvqt.grabGesture(Qt.PinchGesture) + self.__rwhvqt.installEventFilter(self) + else: + print("Focus proxy is null!") # __IGNORE_WARNING_M801__ + def __currentEngineChanged(self): """ Private slot to track a change of the current search engine. @@ -503,7 +521,6 @@ @param hitTest reference to the hit test object @type WebHitTestResult """ - # TODO: Qt 5.8 - add support for spell checking spellCheckActionCount = 0 if qVersion() >= "5.7.0": contextMenuData = self.page().contextMenuData() @@ -1372,14 +1389,16 @@ @rtype bool """ # find the render widget receiving events for the web page - if obj is self and evt.type() == QEvent.ChildAdded: - child = evt.child() - if child and child.inherits( - "QtWebEngineCore::RenderWidgetHostViewQtDelegateWidget"): - self.__rwhvqt = child - self.grabGesture(Qt.PinchGesture) - self.__rwhvqt.grabGesture(Qt.PinchGesture) - self.__rwhvqt.installEventFilter(self) + if qVersion() < "5.8.0": + if obj is self and evt.type() == QEvent.ChildAdded: + child = evt.child() + if child and child.inherits( + "QtWebEngineCore::" + "RenderWidgetHostViewQtDelegateWidget"): + self.__rwhvqt = child + self.grabGesture(Qt.PinchGesture) + self.__rwhvqt.grabGesture(Qt.PinchGesture) + self.__rwhvqt.installEventFilter(self) # forward events to WebBrowserView if obj is self.__rwhvqt: