diff options
author | David Edmundson <davidedmundson@kde.org> | 2021-11-14 13:54:19 +0000 |
---|---|---|
committer | David Edmundson <davidedmundson@kde.org> | 2021-12-02 12:07:31 +0000 |
commit | 46ed85a80b28d519cf5887bbdce55d1bf57886c3 (patch) | |
tree | 91941fb0e08a228bb80cfe24aecc4c817f14ccb2 /src/client/qwaylandwindow.cpp | |
parent | ddb634928431c6e53ae9ff430d2b801af4c8b271 (diff) | |
download | qtwayland-46ed85a80b28d519cf5887bbdce55d1bf57886c3.tar.gz |
Client: Avoid processing of events when showing windows
The only time we want to dispatch events from the wayland socket is when
the application is waiting for external events. Doing so at any other
time will cause unpredictable behavior in client code.
This caused a crash downstream where we had outputs get altered whilst
itterating through outputs, which shouldn't happen.
There is no benefit to flushing here, it won't make anything appear
faster as we haven't attached the buffer yet.
Change-Id: Ie13eae4012dab96a93d8810f468d1343402b8c28
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
Diffstat (limited to 'src/client/qwaylandwindow.cpp')
-rw-r--r-- | src/client/qwaylandwindow.cpp | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp index 635c92a0..b0d1c0d1 100644 --- a/src/client/qwaylandwindow.cpp +++ b/src/client/qwaylandwindow.cpp @@ -477,7 +477,6 @@ void QWaylandWindow::setVisible(bool visible) if (window()->type() == Qt::Popup || window()->type() == Qt::ToolTip) activePopups << this; initWindow(); - mDisplay->flushRequests(); setGeometry(windowGeometry()); // Don't flush the events here, or else the newly visible window may start drawing, but since |