Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Bug in Qt 5.12 drag n'drop ?
Forum Updated to NodeBB v4.3 + New Features

Bug in Qt 5.12 drag n'drop ?

Scheduled Pinned Locked Moved Unsolved General and Desktop
qat 5.12 drag ndrop
57 Posts 12 Posters 16.3k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J.HilkJ J.Hilk

    @skylendar said in Bug in Qt 5.12 drag n'drop ?:

    @aha_1980

    And you forget something: Qt is actually a commercial program, and most of you, if not all, are paid for debugging it. Why should I work for you for free ?

    If you happen to own a commercial license you should contact the customer support they may be able to help you more directly.

    However they also will ask for a minimal compileable project, if your current project is considerably too large.
    Alternatively there is also the option of paid consulting either from the QtCompany directly or other companies, like for example KDAB

    S Offline
    S Offline
    skylendar
    wrote on last edited by
    #26

    @J.Hilk

    Who has a linux dnd program which can be tested ?

    mrjjM 1 Reply Last reply
    0
    • S skylendar

      @J.Hilk

      Who has a linux dnd program which can be tested ?

      mrjjM Offline
      mrjjM Offline
      mrjj
      Lifetime Qt Champion
      wrote on last edited by
      #27

      @skylendar
      Hi
      What about test with the sample that comes with Qt ?
      http://doc.qt.io/qt-5/dnd.html#examples
      There are often directly available in Creator.

      S 1 Reply Last reply
      0
      • mrjjM mrjj

        @skylendar
        Hi
        What about test with the sample that comes with Qt ?
        http://doc.qt.io/qt-5/dnd.html#examples
        There are often directly available in Creator.

        S Offline
        S Offline
        skylendar
        wrote on last edited by
        #28

        @mrjj

        Found the puzzle in the examples. It works, but in my case the draggable widget is placed in a QTreeWidget, not just an ordinary QWidget.

        mrjjM 1 Reply Last reply
        0
        • S skylendar

          @mrjj

          Found the puzzle in the examples. It works, but in my case the draggable widget is placed in a QTreeWidget, not just an ordinary QWidget.

          mrjjM Offline
          mrjjM Offline
          mrjj
          Lifetime Qt Champion
          wrote on last edited by
          #29

          Hi
          well it its almost the same unless you used
          QStandardItemModel::dropMimeData()
          or something like that.

          S 1 Reply Last reply
          0
          • mrjjM mrjj

            Hi
            well it its almost the same unless you used
            QStandardItemModel::dropMimeData()
            or something like that.

            S Offline
            S Offline
            skylendar
            wrote on last edited by skylendar
            #30

            @mrjj

            I can drag from my QTreeWidget, but I can't drop anymore my icon onto my QWidget target, whereas it worked in the previous version of qt (5.11).

            Everything seems ok, but the dropEvent() method of my QWidget isn't activated (setAcceptDrop() is set to true, of course)

            mrjjM 1 Reply Last reply
            0
            • S skylendar

              @mrjj

              I can drag from my QTreeWidget, but I can't drop anymore my icon onto my QWidget target, whereas it worked in the previous version of qt (5.11).

              Everything seems ok, but the dropEvent() method of my QWidget isn't activated (setAcceptDrop() is set to true, of course)

              mrjjM Offline
              mrjjM Offline
              mrjj
              Lifetime Qt Champion
              wrote on last edited by
              #31

              @skylendar
              Check the
              http://doc.qt.io/qt-5/qtwidgets-draganddrop-puzzle-example.html
              as it drops from ListWidget to Widget.

              S 1 Reply Last reply
              0
              • mrjjM mrjj

                @skylendar
                Check the
                http://doc.qt.io/qt-5/qtwidgets-draganddrop-puzzle-example.html
                as it drops from ListWidget to Widget.

                S Offline
                S Offline
                skylendar
                wrote on last edited by
                #32

                @mrjj

                But I already did that... The codes are very similar, but in my case it doesn't work anymore

                mrjjM 1 Reply Last reply
                0
                • Christian EhrlicherC Offline
                  Christian EhrlicherC Offline
                  Christian Ehrlicher
                  Lifetime Qt Champion
                  wrote on last edited by
                  #33

                  @skylendar said in Bug in Qt 5.12 drag n'drop ?:

                  The codes are very similar

                  So you should modify one of them until you hit or fix the problem...

                  Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                  Visit the Qt Academy at https://academy.qt.io/catalog

                  S 1 Reply Last reply
                  0
                  • S skylendar

                    @mrjj

                    But I already did that... The codes are very similar, but in my case it doesn't work anymore

                    mrjjM Offline
                    mrjjM Offline
                    mrjj
                    Lifetime Qt Champion
                    wrote on last edited by
                    #34

                    @skylendar
                    Ok but it does not seems Qt related then as those sample didn't change between
                    5.11 and 5.12 so if they still work it seems unlikely something broke on Qt level.

                    S 1 Reply Last reply
                    0
                    • mrjjM mrjj

                      @skylendar
                      Ok but it does not seems Qt related then as those sample didn't change between
                      5.11 and 5.12 so if they still work it seems unlikely something broke on Qt level.

                      S Offline
                      S Offline
                      skylendar
                      wrote on last edited by
                      #35

                      @mrjj

                      On the contrary ! My code didn't change between 5.11 and 5.12, and suddenly it doesn't work...

                      jsulmJ 1 Reply Last reply
                      0
                      • Christian EhrlicherC Christian Ehrlicher

                        @skylendar said in Bug in Qt 5.12 drag n'drop ?:

                        The codes are very similar

                        So you should modify one of them until you hit or fix the problem...

                        S Offline
                        S Offline
                        skylendar
                        wrote on last edited by
                        #36

                        @Christian-Ehrlicher
                        it's exactly what I'm doing :-£

                        1 Reply Last reply
                        0
                        • S skylendar

                          @mrjj

                          On the contrary ! My code didn't change between 5.11 and 5.12, and suddenly it doesn't work...

                          jsulmJ Offline
                          jsulmJ Offline
                          jsulm
                          Lifetime Qt Champion
                          wrote on last edited by
                          #37

                          @skylendar said in Bug in Qt 5.12 drag n'drop ?:

                          My code didn't change between 5.11 and 5.12, and suddenly it doesn't work

                          This does not prove that there is a bug in Qt (though there could be).
                          It could be a problem in your code which didn't cause issues with Qt 5.11 but does with Qt 5.12.
                          So, before saying there is a bug in Qt you should really prove that.

                          https://forum.qt.io/topic/113070/qt-code-of-conduct

                          A 1 Reply Last reply
                          1
                          • jsulmJ jsulm

                            @skylendar said in Bug in Qt 5.12 drag n'drop ?:

                            My code didn't change between 5.11 and 5.12, and suddenly it doesn't work

                            This does not prove that there is a bug in Qt (though there could be).
                            It could be a problem in your code which didn't cause issues with Qt 5.11 but does with Qt 5.12.
                            So, before saying there is a bug in Qt you should really prove that.

                            A Offline
                            A Offline
                            armindev
                            wrote on last edited by
                            #38

                            @jsulm said in Bug in Qt 5.12 drag n'drop ?:

                            t prove that there is a bug in

                            I also have an Application which has a drag n'drop problem since I've updated to Qt 5.12.0 (macOS 10.14.2 Mojave). The eventFilter method is not called anymore with QEvent::Drop

                            Therefore I can not drop anything into my QLineEdit derived object...

                            // MyLineEdit is derived from QLineEdit
                            
                            bool MyLineEdit::eventFilter(QObject* object, QEvent* event)
                            {
                            
                                if(m_droppable) {
                            
                                    if(event->type() == QEvent::DragEnter) {
                                        event->accept();
                                    }
                            
                                    // since Qt 5.12.0 the following condition is never true! 
                                    if(event->type() == QEvent::Drop) {
                                         // this line is never reached
                                         // ..
                                    }
                            
                                }
                            }
                            
                            
                            1 Reply Last reply
                            0
                            • Christian EhrlicherC Offline
                              Christian EhrlicherC Offline
                              Christian Ehrlicher
                              Lifetime Qt Champion
                              wrote on last edited by Christian Ehrlicher
                              #39

                              This works fine with 5.11 and 5.12 on Linux:

                              class MyLineEdit : public QLineEdit
                              {
                                  Q_OBJECT
                              public:
                                  using QLineEdit::QLineEdit;
                              
                                  bool eventFilter(QObject *object, QEvent *event)
                                  {
                                      if (event->type() == QEvent::DragEnter)
                                          event->accept();
                                      if (event->type() == QEvent::Drop)
                                          qDebug() << "Drop";
                                      return QLineEdit::eventFilter(object, event);
                                  }
                              };
                              
                              int main(int argc, char *argv[])
                              {
                                  QApplication app(argc, argv);
                                  MyLineEdit le;
                                  le.installEventFilter(&le);
                                  le.show();
                                  return app.exec();
                              }
                              
                              #include "main.moc"
                              

                              If it does not work on Mac please open a bug report.

                              /edit: There were some dnd changes between 5.11 and 5.12: 10b3286313c78fa380b5fe676a7c14f3ae84f017 - it works fine on Linux, did not yet test on windows and don't have a mac...

                              Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                              Visit the Qt Academy at https://academy.qt.io/catalog

                              A 1 Reply Last reply
                              2
                              • Maaz MominM Offline
                                Maaz MominM Offline
                                Maaz Momin
                                wrote on last edited by
                                #40

                                Hello guys... Since we are talking about Drag and Drop. Can somebody also look into this bug report?

                                https://bugreports.qt.io/browse/QTBUG-70725

                                1 Reply Last reply
                                0
                                • Christian EhrlicherC Christian Ehrlicher

                                  This works fine with 5.11 and 5.12 on Linux:

                                  class MyLineEdit : public QLineEdit
                                  {
                                      Q_OBJECT
                                  public:
                                      using QLineEdit::QLineEdit;
                                  
                                      bool eventFilter(QObject *object, QEvent *event)
                                      {
                                          if (event->type() == QEvent::DragEnter)
                                              event->accept();
                                          if (event->type() == QEvent::Drop)
                                              qDebug() << "Drop";
                                          return QLineEdit::eventFilter(object, event);
                                      }
                                  };
                                  
                                  int main(int argc, char *argv[])
                                  {
                                      QApplication app(argc, argv);
                                      MyLineEdit le;
                                      le.installEventFilter(&le);
                                      le.show();
                                      return app.exec();
                                  }
                                  
                                  #include "main.moc"
                                  

                                  If it does not work on Mac please open a bug report.

                                  /edit: There were some dnd changes between 5.11 and 5.12: 10b3286313c78fa380b5fe676a7c14f3ae84f017 - it works fine on Linux, did not yet test on windows and don't have a mac...

                                  A Offline
                                  A Offline
                                  armindev
                                  wrote on last edited by
                                  #41

                                  @Christian-Ehrlicher said in Bug in Qt 5.12 drag n'drop ?:

                                  MyLineEdit

                                  Hm... this works on mac too!

                                  Seems to be a special constelation which doesn't work or it's a bug in specific circumstancens only...

                                  1 Reply Last reply
                                  0
                                  • Christian EhrlicherC Offline
                                    Christian EhrlicherC Offline
                                    Christian Ehrlicher
                                    Lifetime Qt Champion
                                    wrote on last edited by
                                    #42

                                    @armindev said in Bug in Qt 5.12 drag n'drop ?:

                                    Seems to be a special constelation

                                    Is it possible to simplify your program until the bug is gone away?

                                    Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                                    Visit the Qt Academy at https://academy.qt.io/catalog

                                    A 1 Reply Last reply
                                    1
                                    • Christian EhrlicherC Christian Ehrlicher

                                      @armindev said in Bug in Qt 5.12 drag n'drop ?:

                                      Seems to be a special constelation

                                      Is it possible to simplify your program until the bug is gone away?

                                      A Offline
                                      A Offline
                                      armindev
                                      wrote on last edited by
                                      #43

                                      @Christian-Ehrlicher

                                      I will try this but this will take a while ..

                                      1 Reply Last reply
                                      0
                                      • Christian EhrlicherC Offline
                                        Christian EhrlicherC Offline
                                        Christian Ehrlicher
                                        Lifetime Qt Champion
                                        wrote on last edited by
                                        #44

                                        @armindev said in Bug in Qt 5.12 drag n'drop ?:

                                        I will try this but this will take a while ..

                                        Thx and take your time. There seems to be something wrong in a corner case and it would be really good to find it out :)

                                        Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                                        Visit the Qt Academy at https://academy.qt.io/catalog

                                        1 Reply Last reply
                                        0
                                        • S skylendar

                                          Hi there and thx for reading and answering if you can.

                                          My app based on Qt5 x86_64 worked fine with qt5.11 but suddenly, the drag n'drop doesn't work anymore with qt5.12 ?

                                          Have you already noticed this behaviour ? Is this a bug ?

                                          Thx again for reading this post.

                                          C Offline
                                          C Offline
                                          cawlfj
                                          wrote on last edited by
                                          #45

                                          @skylendar
                                          I found same bug in my app. change to 5.11.2 drop is ok

                                          1 Reply Last reply
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved