PDA

View Full Version : Nested QDockWidget resize issues



jdisrael
6th October 2014, 00:33
I've been trying to track down this issue for a few days now, but just can't seem to pinpoint it. This particular application is all QDockWidgets with no central widget. It uses both tab and nested dock layouts.

Qt-4.8.4 / linux

The problem I am seeing is that when multiple dock widgets are nested within the bottom area, and you drag the horizontal splitter for the top-most dock widget in that bottom area to resize it larger, it will then be stuck at that size as the minimum height. The problem seems slightly related to this issue here (https://bugreports.qt-project.org/browse/QTBUG-6499) although it's not about the resize happening at a different rate than the mouse.

More detailed example about the layout:

10657

Each time that top-most bottom dock widget gets resized to be taller, it can no longer be resized smaller again unless it is floated out, resized freely, and unfloated. Also when this is happening, the horizontal splitter between the two nested bottom dock widgets works just fine. That is, the full height range between the two is available to be resized.

Now the final detail about this situation is I found that when I add a QFrame as the central widget to the main window, this entire problem goes away. The bottom dock widget height does not freeze up.

Are there any known issues related to nested dock widgets w/o a central widget, or something along these lines that would explain the behavior?

Added after 1 48 minutes:

I've managed to figure out some more information about this problem. It does seem to only be a problem when the dock widgets are added to multiple areas, with no central content widget. My work-around was to limit the area to just the top dock area, and then the panels nest/tabbify within that single area. Visually there is no different since it ends up being just as flexible for layout, but there is no inter-area resizing issues anymore.