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

Details

    Description

      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!

      Attachments

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

        Activity

          People

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

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes