client: process exposure updates in the main thread

This is important for when synchronous delivery is enabled as that should only happen from the main thread.

Change-Id: I524443c6d2dd8dee8d36834b6d3032eb8f8c1750
Reviewed-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
This commit is contained in:
David Edmundson 2024-05-26 15:27:02 +03:00
parent 6b6d4e4b0b
commit c50ebcd83d

View File

@ -850,7 +850,7 @@ bool QWaylandWindow::waitForFrameSync(int timeout)
qCDebug(lcWaylandBackingstore) << "Didn't receive frame callback in time, window should now be inexposed";
mFrameCallbackTimedOut = true;
mWaitingForUpdate = false;
updateExposure();
QMetaObject::invokeMethod(this, &QWaylandWindow::updateExposure, Qt::QueuedConnection);
}
return !mWaitingForFrameCallback;