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

Missing released event after a double click in MouseArea elements

XMLWordPrintable

    • 10f0cc708b8e7fc2206d1a141dfd4122e7a6f4b0, 5447a9590dc0efa1a79fde6235fdcf76d3ae81fe

      import Qt 4.7
      
      Rectangle {
          width: 200
          height: 200
      
          MouseArea {
              anchors.fill: parent
              onPressed: console.log("pressed")
              onMousePositionChanged: console.log("move")
              onReleased: console.log("released")
              onDoubleClicked: console.log("double clicked")
          }
      }
      

      The above QML code generates this sequence of events

      pressed
      move
      released
      double clicked
      

      As you can can clearly see that sequence is missing a "released" event.

      For example, with Qt/C++ the following code

      class DoubleClickMe : public QWidget
      {
          virtual void mouseDoubleClickEvent(QMouseEvent *) { qDebug() << "double click"; }
          virtual void mousePressEvent(QMouseEvent *) { qDebug() << "pressed"; }
          virtual void mouseMoveEvent(QMouseEvent *) { qDebug() << "moved"; }
          virtual void mouseReleaseEvent(QMouseEvent *) { qDebug() << "released"; }
      };
      

      generates

      pressed 
      released 
      double click 
      released
      
      
      

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

            martjone Martin Jones (closed Nokia identity) (Inactive)
            raggi Roberto Raggi
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes