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

Drag and Drop does not work if two widgets (siblings) are at the same position

XMLWordPrintable

      Consider the following case:
      QWidget toplevel;
      QWidget dropWidget(&toplevel);
      dropWidget.setAcceptDrops(true);
      QWidget visualFooWidget(&toplevel);

      Now in qdnd_x11.cpp find_child will find visualFooWidget because it's the last entry in toplevel.children() and the QPoint of the drop is contained in it. But since it does not acceptDrops() handle_xdnd_position will now look at the parent widget which is toplevel. That one isWindow() so the iteration stops and no QDragEnterEvent will be sent. But it never even looked at dropWidget even though it also contains the QPoint of the drop!

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

            bhughes Bradley T. Hughes (closed Nokia Identity) (Inactive)
            admin Administrator
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes