eric6/WebBrowser/WebBrowserView.py

branch
maintenance
changeset 7362
028bf21bb5a2
parent 7286
7eb04391adf7
parent 7360
9190402e4505
child 7560
343db73c4842
--- 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.

eric ide

mercurial