diff options
author | Jüri Valdmann <juri.valdmann@qt.io> | 2019-02-20 14:20:04 +0100 |
---|---|---|
committer | Jüri Valdmann <juri.valdmann@qt.io> | 2019-02-21 11:15:28 +0000 |
commit | 5a6a8509a96ef6795102422e217d609815d2f086 (patch) | |
tree | b895f2473b3a94bc56690cacce27bd84fc95b332 /src/webenginewidgets | |
parent | 53c30cd29e9cad2003d10bbb57365d7ef61d6a4d (diff) |
Emit QWebEnginePage::selectionChanged asynchronously
Currently selectionChanged is emitted from a Chromium task, meaning our
MessagePump is blocked and, even with a nested QEventLoop, it's not possible to
for Chromium code to make any progress during the handling of this signal.
Fixes: QTBUG-73876
Change-Id: I45135238cffa81fb0db74ddfd53037c7f1b94348
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Diffstat (limited to 'src/webenginewidgets')
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index a1ddf88d7..b1e7cce4e 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -255,7 +255,7 @@ void QWebEnginePagePrivate::didUpdateTargetURL(const QUrl &hoveredUrl) void QWebEnginePagePrivate::selectionChanged() { Q_Q(QWebEnginePage); - Q_EMIT q->selectionChanged(); + QTimer::singleShot(0, q, &QWebEnginePage::selectionChanged); } void QWebEnginePagePrivate::recentlyAudibleChanged(bool recentlyAudible) |