Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-122837

Resizing a floating dock widget resizes and corrupts the dock area it used to be part of

    XMLWordPrintable

Details

    • Linux/X11

    Description

      To reproduce, run the attached example PySide6 code.

      The code connects to the widget's topLevelChanged event. When this fires, the slot checks if the dock widget is floating, and asserts that self.topLevelWidget() is self. Then it sets the minimum size on the dock's inner widget so that the dock grow when it is set to floating.

      Expected result: the dock widget should resize itself when it is dragged out of the dock area, and the dock area should be unaffected since the dock widget is no longer inside it when the resize happens, as proved by the assertion.

      Actual result: The dock area resizes when the floating dock widget resizes and it becomes impossible to drop dock widgets onto the dock area unless you force a layout refresh by removing the other dock widget.

      If you then drag the enlarged widget back to the dock area, it shrinks back down, but still occupies the larger space in the dock, again until you force a manual layout refresh by rearranging other dock widgets in the same area.

      Also here is a video demonstrating the bug: https://www.youtube.com/watch?v=-or0W1xef_I

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            qt.team.quick.subscriptions Qt Quick and Widgets Team
            ali1234 Alistair Buxton
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes