From 00a09354c3231d78700187a33ac49d2bbf1aca30 Mon Sep 17 00:00:00 2001 From: Justin Partain Date: Tue, 5 Dec 2017 08:28:10 -0500 Subject: [PATCH] Track number of active searches in tab, ignore all but most recent search callbacks --- qutebrowser/browser/webengine/webenginetab.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index 7339cd422..b40d8b871 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -126,13 +126,19 @@ class WebEngineSearch(browsertab.AbstractSearch): def __init__(self, parent=None): super().__init__(parent) self._flags = QWebEnginePage.FindFlags(0) + self.num_of_searches = 0 def _find(self, text, flags, callback, caller): """Call findText on the widget.""" self.search_displayed = True + self.num_of_searches += 1 def wrapped_callback(found): """Wrap the callback to do debug logging.""" + self.num_of_searches -= 1 + if self.num_of_searches > 0: + return + found_text = 'found' if found else "didn't find" if flags: flag_text = 'with flags {}'.format(debug.qflags_key(