Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
5.14.2, 5.15.2, 6.2.1
-
None
-
IMX6
Description
With the fix for QTBUG-64504, widgets that are placed over a QMdiArea are not redrawn when a QMdiSubWindow is moved from underneath them; the effect is that when the subwindow is moved away from under the overlapping widget, you see the background of the QMdiArea and not the widget that is placed on top.
Steps to reproduce:
- Create a QMdiArea (with a background image) and a few QMdiSubWindows.
- Create and position a widget over the top of the QMdiArea (e.g. a toolbar type widget)
- Move a subwindow underneath the widget and back so that they don't overlap
Expected behaviour: The widget on top of the QMdiArea remains on top and is drawn fully
Actual behaviour: The widget on top of the QMdiArea is painted over by the background of the QMdiArea (partially so if the sub-window was only under a part of the widget).
The issue can be worked around by undoing the fix for QTBUG-64504, or by disabling accelerateMove whenever the source of destination rectangles overlap with the widget (patch attached). The patch is a workaround and not a fix (which would require substantially more time to root-cause the fault in the new code, fix it and test it properly).
Attachments
Issue Links
- resulted from
-
QTBUG-64504 Widgets: Use accelerated scroll when scrolled widget is overlapped
- Closed