The following error appears on Qt 6.5, but not on 6.4, only when using Wayland:
ASSERT failure in QWindow: "Updates can only be scheduled from the GUI (main) thread" file [...]/qwindow.cpp, line 2594
The problem occurs when pressing a button that has the following text property:
and the following onClicked:
Notably, the button itself is inside this testWindow. If the text property checks the visibility of another window, everything works fine. So apparently there is a problem when the visibility property is checked in the button text property while the visibility property of the button's window is changing (as happens when clicking the button).
Before the failed assert, qwaylandwindow.cpp:935 is executed whereby a full extra update of the window is requested as a workaround for an older issue:
Only requesting this update when the current thread is the main GUI thread works as a workaround, but I assume that would not be a sufficient fix.
|For Gerrit Dashboard: QTBUG-105308|
|425498,5||Avoid calling requestUpdate from wrong thread||dev||qt/qtwayland||Status: MERGED||+2||0|
|427198,2||Avoid calling requestUpdate from wrong thread||6.3.2||qt/qtwayland||Status: MERGED||+2||0|
|427199,2||Avoid calling requestUpdate from wrong thread||6.3||qt/qtwayland||Status: MERGED||+2||0|
|427200,2||Avoid calling requestUpdate from wrong thread||6.4||qt/qtwayland||Status: MERGED||+2||0|
|427205,2||Avoid calling requestUpdate from wrong thread||tqtc/lts-6.2||qt/tqtc-qtwayland||Status: MERGED||+2||0|
|427206,2||Avoid calling requestUpdate from wrong thread||tqtc/lts-5.15||qt/tqtc-qtwayland||Status: MERGED||+2||0|