summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--qutebrowser/browser/webengine/webview.py10
-rw-r--r--tests/end2end/fixtures/quteprocess.py3
2 files changed, 5 insertions, 8 deletions
diff --git a/qutebrowser/browser/webengine/webview.py b/qutebrowser/browser/webengine/webview.py
index 03cdd035f..d1fdeb4e7 100644
--- a/qutebrowser/browser/webengine/webview.py
+++ b/qutebrowser/browser/webengine/webview.py
@@ -24,7 +24,7 @@ import functools
import sip
from PyQt5.QtCore import pyqtSignal, pyqtSlot, QUrl, PYQT_VERSION
from PyQt5.QtGui import QPalette
-from PyQt5.QtQuickWidgets import QQuickWidget
+from PyQt5.QtWidgets import QWidget
from PyQt5.QtWebEngineWidgets import (QWebEngineView, QWebEnginePage,
QWebEngineScript)
@@ -72,10 +72,10 @@ class WebEngineView(QWebEngineView):
if proxy is not None:
return proxy
- # This should only find the RenderWidgetHostViewQtDelegateWidget,
- # but not e.g. a QMenu
- children = [c for c in self.findChildren(QQuickWidget)
- if c.isVisible()]
+ # We don't want e.g. a QMenu.
+ rwhv_class = 'QtWebEngineCore::RenderWidgetHostViewQtDelegateWidget'
+ children = [c for c in self.findChildren(QWidget)
+ if c.isVisible() and c.inherits(rwhv_class)]
log.webview.debug("Found possibly lost focusProxy: {}"
.format(children))
diff --git a/tests/end2end/fixtures/quteprocess.py b/tests/end2end/fixtures/quteprocess.py
index 7d1cd2394..0c560cf51 100644
--- a/tests/end2end/fixtures/quteprocess.py
+++ b/tests/end2end/fixtures/quteprocess.py
@@ -361,9 +361,6 @@ class QuteProc(testprocess.Process):
"Focus object changed: "
"<qutebrowser.browser.webengine.webview.WebEngineView object "
"at *>",
- # Qt >= 5.11 with workarounds
- "Focus object changed: "
- "<PyQt5.QtQuickWidgets.QQuickWidget object at *>",
]
if (log_line.category == 'ipc' and