Details
-
Bug
-
Resolution: Cannot Reproduce
-
P2: Important
-
None
-
5.12.9
-
None
-
Windows 10, more than one screen, app started on second (non-primary) screen.
Description
When you have a QMainWindow that contains a QOpenGLWindow via QWidget::createWindowContainer, and QDockWidget that contains another QOpenGLWindow, if you undock the QDockWidget (or dock it and undock it, if it starts out floating), the floating window will not render it's openGL content. QOpenGLWindow::paintGL is called, however the content does not show on the window.
The attached simple example illustrates this problem.
This seems to only exhibit itself when there is more than one screen attached, and the QMainWindow is on the non-primary screen. The problem exhibits itself when you undock the dockWindow from the main window. I have done this programmatically using a 2 second timer, but it can be reproduced manually by docking and then undocking.
Start with a Windows machine with dual screens.
The setup that I have reproduced it with is a Windows 10 install on a laptop with 3840x2160px resolution with scaling set to 250%, and an external 1920x1080px monitor with scaling set to 100%.