Details
-
Bug
-
Resolution: Done
-
P2: Important
-
4.8.4, 5.0.2
-
Windows 7, Windows 8
-
qt5: 0d459619a902e547d8c74745453b3bdb8f67a660 Qt 4: 789cb3137fe86fc040d53b16b4736188362028cb
Description
QDockWidget is using its window coordinates as its default undock position in screen coordinates. To illustrate this issue I attached images of a demo project. I also attached the demo project.
step1.png - I have two monitors. There is a wide monitor on the left(Left Monitor) and a taller skinnier monitor on the right(Right Monitor). The Right monitor is the Main Display, so its top left corner is the point 0,0.
If I undock all the side QDockWidgets (by using their undock button, NOT by dragging), the result is step2.png.
step2.png - Notice how each of the QDockWidgets undocked to their window coordinates in screen coordinates.
This is a HUGE problem in the case of the QDockWidget that was docked on the right, because now he is inaccessible.
It seems to me that the default undock position should use the QDockWidget's global position, not the relative position within the window. In other words, by default I would expect the QDockWidget to undock to roughly the same position on the screen as where it was when it was docked.