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

QXcbConnection BadValue error with DnD when releasing touch point too quickly

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P3: Somewhat important
    • None
    • 5.12
    • None
    • Linux/X11

    Description

      Tasted with: qtbase/examples/widgets/draganddrop/draggableicons

      When releasing touch point too quickly we can see an error message in the terminal similar to:

      QXcbConnection: XCB error: 2 (BadValue), sequence: 684, resource id: 1078, major code: 131 (Unknown), minor code: 53
      

      It seems to originate from QXcbConnection::xi2SetMouseGrabEnabled(), which is called as a result of QXcbDrag::startDrag() which calls shapedPixmapWindow->setMouseGrabEnabled(true) on TouchBegin(18). If TouchEnd(20) arrives (on a quick touch point release) before we call xi2SetMouseGrabEnabled() we get the BadValue error.

      Here is more verbose debug output:

      qt.qpa.input.events: XI2 mouse enter 365,51, mode 0, detail 3, time 83983866
      qt.qpa.input.events: XI2 touch event type 18 seq 660 detail 1091 pos  365.2,   51.8 root pos 4591.2, 1805.8 on window 2600005
      qt.qpa.input.events:    valuator        SemiCondensed value 19589.000000 from range 0.000000 -> 32767.000000
      qt.qpa.input.events:    valuator       ADD_STYLE_NAME value 27394.000000 from range 0.000000 -> 32767.000000
      qt.qpa.input.events:    touchpoint  1091  state  1  pos norm  QPointF(0.597827,0.836024)  area  QRectF(4591.17,1805.76 0x0)  pressure  -1
      qt.qpa.input.events: XI2 touch event type 20 seq 660 detail 1091 pos  365.2,   51.8 root pos 4591.2, 1805.8 on window 2600005
      qt.qpa.input.events:    touchpoint  1091  state  8  pos norm  QPointF(1.19562,0.835999)  area  QRectF(4591.17,1805.76 0x0)  pressure  -1
      destroying:  39845904
      xi2SetMouseGrabEnabled:  true
      Enter
      Move
      QXcbConnection: XCB error: 2 (BadValue), sequence: 663, resource id: 1091, major code: 131 (Unknown), minor code: 53
      qt.qpa.input.events: XI2 mouse leave, mode 1, detail 3, time 83984313
      qt.qpa.input.events: XI2 mouse enter 47,31, mode 1, detail 3, time 83984313
      Drop
      
      qt.qpa.input.events: XI2 touch event type 18 seq 770 detail 1092 pos  356.1,   56.6 root pos 4582.1, 1810.6 on window 2600005
      qt.qpa.input.events:    valuator        SemiCondensed value 19550.500000 from range 0.000000 -> 32767.000000
      qt.qpa.input.events:    valuator       ADD_STYLE_NAME value 27468.000000 from range 0.000000 -> 32767.000000
      qt.qpa.input.events:    touchpoint  1092  state  1  pos norm  QPointF(0.596652,0.838282)  area  QRectF(4582.15,1810.63 0x0)  pressure  -1
      destroying:  39845924
      xi2SetMouseGrabEnabled:  true
      Enter
      Move
      qt.qpa.input.events: XI2 mouse leave, mode 1, detail 3, time 83990761
      qt.qpa.input.events: XI2 mouse enter 38,37, mode 1, detail 3, time 83990761
      qt.qpa.input.events: XI2 touch event type 20 seq 865 detail 1092 pos   38.1,   37.6 root pos 4582.1, 1810.6 on window 260002c
      qt.qpa.input.events:    valuator        SemiCondensed value 19550.500000 from range 0.000000 -> 32767.000000
      qt.qpa.input.events:    valuator       ADD_STYLE_NAME value 27468.000000 from range 0.000000 -> 32767.000000
      qt.qpa.input.events:    touchpoint  1092  state  8  pos norm  QPointF(0.596652,0.838282)  area  QRectF(4582.15,1810.63 0x0)  pressure  -1
      Drop
      

      Attachments

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

        Activity

          People

            liaqi Liang Qi
            paeglis Gatis Paeglis
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes