Details
-
Bug
-
Resolution: Unresolved
-
P1: Critical
-
None
-
5.15.15, 6.2.10, 6.3, 6.5.3, 6.6.0, 6.8.0
Description
I attached an example program which works correctly under Qt 5 and fails under Qt 6. On Qt 5, two windows, one entirely native X11, and one rendering inside a QWindow, display a red and a blue moving square. On Qt 6 the QWindow one does not display anything.
When
win.setFlags(win.flags() | Qt::WindowStaysOnTopHint);
is called, it seems that in Qt 6 the winId is invalidated - in this example it's not really problematic but it is much more when one has to pass the winId to an external API which does not support reloading it after the fact. For instance in my case the software allows to set whether the windows always stay on top as a user preference which can be changed mid-flight.
Attachments
Issue Links
- is duplicated by
-
QTBUG-118049 [Reg 5.15.8->5.15.10?/6.x][XCB plugin] QWidget::winId() can return invalid xcb_drawable_t values
- Closed
- relates to
-
QTBUG-105395 WM_TRANSIENT_FOR is not kept in sync
- Closed
- resulted from
-
QTBUG-73485 Issue with Qt::WindowStaysOnTopHint
- Closed
-
QTBUG-69515 Linux, WindowStaysOnTopHint does not work.
- Closed
-
QTBUG-81341 Window won't receive events above Gnome Dock despite X11ByPassWindowManager + WindowsStaysOnTop is set
- Closed