From f61662fa52299f3adb25ee3842d0e642bd365e41 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 11 Jun 2018 14:00:02 +0200 Subject: Only consider visible render widgets for lost focusProxy Otherwise, when commenting out the focusProxy way above, and using "foo !npm" with DuckDuckGo, we get two children (one visible, one invisible). (cherry picked from commit b63e06561de5d442a8ce84e167b874a788bef63d) --- qutebrowser/browser/webengine/webview.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/qutebrowser/browser/webengine/webview.py b/qutebrowser/browser/webengine/webview.py index bd8ce65ba..84caceedd 100644 --- a/qutebrowser/browser/webengine/webview.py +++ b/qutebrowser/browser/webengine/webview.py @@ -74,7 +74,11 @@ class WebEngineView(QWebEngineView): # This should only find the RenderWidgetHostViewQtDelegateWidget, # but not e.g. a QMenu - children = self.findChildren(QQuickWidget) + children = [c for c in self.findChildren(QQuickWidget) + if c.isVisible()] + + log.webview.debug("Found possibly lost focusProxy: {}" + .format(children)) if not children: return None -- cgit v1.2.3-54-g00ecf