--- a/eric6/WebBrowser/WebBrowserView.py Sat Dec 07 14:16:25 2019 +0100 +++ b/eric6/WebBrowser/WebBrowserView.py Wed Jan 01 12:01:54 2020 +0100 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -# Copyright (c) 2008 - 2019 Detlev Offenbach <detlev@die-offenbachs.de> +# Copyright (c) 2008 - 2020 Detlev Offenbach <detlev@die-offenbachs.de> # @@ -55,6 +55,8 @@ browsing event @signal safeBrowsingBad(threatType, threatMessages) emitted to indicate a malicious web site as determined by safe browsing + @signal showMessage(str) emitted to show a message in the main window + status bar """ sourceChanged = pyqtSignal(QUrl) forwardAvailable = pyqtSignal(bool) @@ -65,6 +67,7 @@ faviconChanged = pyqtSignal() safeBrowsingAbort = pyqtSignal() safeBrowsingBad = pyqtSignal(str, str) + showMessage = pyqtSignal(str) ZoomLevels = [ 30, 40, 50, 67, 80, 90, @@ -165,6 +168,12 @@ except AttributeError: # pre Qt 5.12 pass + try: + self.__page.findTextFinished.connect( + self.__findTextFinished) + except AttributeError: + # pre Qt 5.14 + pass def __setRwhvqt(self): """ @@ -522,6 +531,18 @@ else: self.findText(txt, findFlags, callback) + def __findTextFinished(self, result): + """ + Private slot handling the findTextFinished signal of the web page. + + @param result reference to the QWebEngineFindTextResult object of the + last search + @type QWebEngineFindTextResult + """ + self.showMessage.emit(self.tr("Match {0} of {1}").format( + result.activeMatch(), result.numberOfMatches()) + ) + def contextMenuEvent(self, evt): """ Protected method called to create a context menu.