Details
-
Bug
-
Resolution: Invalid
-
P3: Somewhat important
-
None
-
5.9.1, 5.15.16, 5.15.17
Description
When creating a floating QDockWidget with custom titlebar (i.e. setTitleBarWidget) on OS X or in High DPI, it behaves very badly in terms of resizing it (see attached demo project), meaning basically you cannot resize it.
On the other hand, QT's implementation of floating QDockWidget without a custom titlebar behaves just fine (see attached gif, left side is the good one).
There are several symptoms with resizing these custom title QDockWidgets (they turn in Krita's OS X version when using floatable palettes)
- usually the resize cursor is not displayed at all when on the edges
- if it is displayed, then it seems to be only at a 1 pixel border, which is extremely hard to hit (you usually hit the background or the window interior)
- once the resize cursor is displayed, it does not vanish even if you move the mouse further into the window
All these problems do not happen with the non-custom title bar QDockWidget.
What makes me think is that it's obvious that the cursor the custom title QDockWidget uses is a very different cursor from the one the non-custom title uses (the first seems to be a custom QT cursor, maybe QWidgetResizeHandler?, the second seems to be the OS X native resizing cursor).
So maybe, just a guess, when title bars are customized, the nativeWindowDeco gets disabled and then the QDockWidget::resizer springs into place (which doesn't work on OS X)?
People are affected by this. See for example: https://stackoverflow.com/questions/33392863/gnome-gtk-increase-floating-dock-widget-resize-border-width