Raspberry 4 Touch Events Not working properly
-
Hello to all of you!
I recently followed this tutorial: Qt For Raspberry Pi - Qt 6.6.1 Cross Compilation with Docker isolation Easy way !
And everything is great, the application launches smoothly and everything is fine.
I implemented the drag and drop functionality. With the mouse it works fine (at least for what I want it for) but as soon as I use the screen : 7 inch LCD touch screen, HDMI compatible, 1024x600 resolution, Raspberry Pi compatible (I don't put the aliexpress link because I don't know if it's possible) it starts to do strange things.
Strange things:
- Touch Begin event is present in log and mouse area startDrag console.logs
qt.quick.pointer: dispatching to window functions in case of override QTouchEvent(TouchBegin device: "wch.cn USB2IIC_CTP_CONTROL" states: Pressed, 1 points: QList(QEventPoint(id=36 ts=5723293 pos=337.835,143.827 scn=337.835,145.827 gbl=337.835,145.827 Pressed vel=0,0 press=337.835,143.827 last=337.835,143.827 Δ 0,0))) qt.quick.touch: QQuickDeliveryAgent(root=QQuickRootItem) QTouchEvent(TouchBegin device: "wch.cn USB2IIC_CTP_CONTROL" states: Pressed, 1 points: QList(QEventPoint(id=36 ts=5723293 pos=337.835,143.827 scn=337.835,143.827 gbl=337.835,145.827 Pressed vel=0,0 press=337.835,143.827 last=337.835,143.827 Δ 0,0))) qt.quick.touch.compression: no compression QTouchEvent(TouchBegin device: "wch.cn USB2IIC_CTP_CONTROL" states: Pressed, 1 points: QList(QEventPoint(id=36 ts=5723293 pos=337.835,143.827 scn=337.835,143.827 gbl=337.835,145.827 Pressed vel=0,0 press=337.835,143.827 last=337.835,143.827 Δ 0,0))) qt.quick.pointer: QQuickDeliveryAgent(root=QQuickRootItem) delivering QTouchEvent(TouchBegin device: "wch.cn USB2IIC_CTP_CONTROL" states: Pressed, 1 points: QList(QEventPoint(id=36 ts=5723293 pos=337.835,143.827 scn=337.835,143.827 gbl=337.835,145.827 Pressed vel=0,0 press=337.835,143.827 last=337.835,143.827 Δ 0,0))) qt.quick.touch.target: QQuickDeliveryAgent(root=QQuickRootItem) QPointingDevice("wch.cn USB2IIC_CTP_CONTROL" TouchScreen id=7 seat=30002 ptrType=Finger caps=Position|Area|NormalizedPosition|Scroll maxPts=6) TP (mouse) 24 -> Label_QMLTYPE_5_QML_7(0x150e94f0, id="day_food", parent=0x150e9280, geometry=0,0 414x52) qt.quick.touch.target: QQuickDeliveryAgent(root=QQuickRootItem) QPointingDevice("wch.cn USB2IIC_CTP_CONTROL" TouchScreen id=7 seat=30002 ptrType=Finger caps=Position|Area|NormalizedPosition|Scroll maxPts=6) TP (mouse) 24 -> QQuickMouseArea(0x150e4110, id="dragMouseArea", parent=0x150e39d0, geometry=0,0 414x52) qt.quick.hover.trace: QQuickMouseArea(0x150e4110, id="dragMouseArea", parent=0x150e39d0, geometry=0,0 414x52) false -> true DayContainer_copy_copy_QMLTYPE_4(0x150df680, id="day_container_light", parent=0x150dfd80, geometry=0,0 414x52) (0x150e3840) now has the following listeners: - ChangeListener listener=0x150dfda0 types=QFlags(0x2|0x4|0x10|0x100|0x200) (QObject: QObject(0x0)) - ChangeListener listener=0x150edc28 types=QFlags(0x1) (QObject: QQuickAnchors(0x150ed950)) - ChangeListener listener=0x150e6858 types=QFlags(0x1) (QObject: QQuickAnchors(0x150e67c0)) - ChangeListener listener=0x150300b8 types=QFlags(0x1|0x20) (QObject: QQuickDragAttached(0x150ede80)) qt.quick.hover.trace: Label_QMLTYPE_5(0x150eb900, parent=0x150e94f0, geometry=364.766,0 49.2344x28) 0 -> false qt.quick.hover.trace: Label_QMLTYPE_5_QML_7(0x150e94f0, id="day_food", parent=0x150e9280, geometry=0,0 414x52) 0 -> false qt.quick.hover.trace: QQuickItem(0x150e9280, id="containerr", parent=0x150e6b90, geometry=0,0 414x52) 0 -> false qt.quick.hover.trace: QQuickColumnLayout(0x150e6b90, parent=0x150df680, geometry=0,0 414x52) 0 -> false qt.quick.hover.trace: DayContainer_copy_copy_QMLTYPE_4(0x150df680, id="day_container_light", parent=0x150dfd80, geometry=0,0 414x52) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x150dfd80, id="content", parent=0x150a8f40, geometry=6,6 853x52) 0 -> false qt.quick.hover.trace: FullDayContainer_copy_QMLTYPE_3(0x150a8f40, id="tuesday", parent=0x150a8310, geometry=0,0 865x64) 0 -> false qt.quick.hover.trace: QQuickColumnLayout(0x150a8310, parent=0x150a64f0, geometry=135,0 865x478) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x150a64f0, parent=0x1501c850, geometry=0,0 1000x478) 0 -> false qt.quick.hover.trace: QQuickItem(0x1501c850, parent=0x14fb5210, geometry=12,108 1000x478) 0 -> false qt.quick.hover.trace: QQuickRootItem(0x14fb5210, parent=0x0, geometry=0,0 1024x598 🖼) 0 -> false qml: Dragging item with dayName: Lunes and dayFood: Prueba qt.qpa.xdnd: starting drag where source: 25165829 qt.qpa.xdnd: dndEnable QPlatformSurface(0x15239090, class=QSurface::Window, type=QSurface::RasterSurface, window=QShapedPixmapWindow(0x150d8fc0)) true qt.qpa.xdnd: setting XdndAware for 25165845 qt.qpa.xdnd: checking target for XdndAware 8390184 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndEnter to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndEnter qt.qpa.xdnd: "text/plain" qt.qpa.xdnd: "UTF8_STRING" qt.qpa.xdnd: "STRING" qt.qpa.xdnd: "TEXT" qt.qpa.xdnd: "text/someKey" qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.quick.hover.trace: QQuickDeliveryAgent(root=QQuickRootItem) delivering frame-sync hover to root @ QPointF(337.835,143.827) qt.quick.hover.trace: QQuickDeliveryAgent(root=QQuickRootItem) frame-sync hover delivery done
- Touch End event is also preset but somehow is not delivered to mouseArea because root.held is true despite of no finger is touching the screen
qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_END) | sequence: 504 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_END) | sequence: 504 qt.pointer.dispatch: delivering touch release to same window App_QMLTYPE_0(0x14fb4f50) not QShapedPixmapWindow(0x150d8fc0) qt.pointer.velocity: velocity QVector2D(-249.878, -402.636) filtered QVector2D(-174.915, -281.845) based on movement QPointF(334.837,101.903) -> QPointF(332.837,98.6823) over time 5724001 -> 5724009 qt.quick.pointer: dispatching to window functions in case of override QTouchEvent(TouchEnd device: "wch.cn USB2IIC_CTP_CONTROL" states: Released, 1 points: QList(QEventPoint(id=36 ts=5724009 pos=332.837,96.6823 scn=332.837,98.6823 gbl=332.837,98.6823 Released vel=-174.915,-281.845 press=337.835,143.827 last=334.837,99.9034 Δ -1.99902,-3.22108))) qt.quick.touch: QQuickDeliveryAgent(root=QQuickRootItem) QTouchEvent(TouchEnd device: "wch.cn USB2IIC_CTP_CONTROL" states: Released, 1 points: QList(QEventPoint(id=36 ts=5724009 pos=332.837,96.6823 scn=332.837,96.6823 gbl=332.837,98.6823 Released vel=-174.915,-281.845 press=337.835,143.827 last=334.837,99.9034 Δ -1.99902,-3.22108))) qt.quick.pointer: QQuickDeliveryAgent(root=QQuickRootItem) delivering QTouchEvent(TouchEnd device: "wch.cn USB2IIC_CTP_CONTROL" states: Released, 1 points: QList(QEventPoint(id=36 ts=5724009 pos=332.837,96.6823 scn=332.837,96.6823 gbl=332.837,98.6823 Released vel=-174.915,-281.845 press=337.835,143.827 last=334.837,99.9034 Δ -1.99902,-3.22108))) Generated BaselineJIT code for function expression for time: Code at [0x7fbb625620, 0x7fbb6256ec): qt.qml.v4.asm: disassembly not available for range 0x7fbb625620...0x7fbb6256e0 qt.quick.hover.trace: Label_QMLTYPE_5(0x150a08d0, id="currentTime", parent=0x150a0310, geometry=0,0 180x60) 0 -> false
For drag and drop I use this code:
import QtQuick 6.2 import QtQuick.Controls import QtQuick.Layouts Item { id: root width: 200 height: 300 property alias dayFood: day_food.text Drag.active: root.held Drag.source: root Drag.hotSpot.x: width / 2 Drag.hotSpot.y: height / 2 property bool held: false property real xCoordinate: -1 property real yCoordinate: -1 z: held ? 3 : 0 Rectangle { id: dragArea anchors.fill: parent color: held ? "lightsteelblue" : "transparent" opacity: 0.5 Behavior on color { ColorAnimation { duration: 100 } } MouseArea { id: dragMouseArea anchors.fill: parent drag.target: held ? root : undefined drag.axis: Drag.XAndYAxis onPressed: { root.held = true root.Drag.mimeData = { "text/someKey": '', "text/plain": dayFood } console.log("Dragging item with dayName: and dayFood:", dayFood) root.xCoordinate = root.x root.yCoordinate = root.y root.Drag.startDrag() } onCanceled: root.drop() onExited: root.drop() onReleased: root.drop() DropArea { id: drop_area anchors.fill: parent keys: ['text/someKey', 'text/plain'] Rectangle { anchors.fill: parent color: parent.containsDrag ? "red" : "white" opacity: 0.3 } onDropped: drag => { console.log("drag.source:", drag.source) if (drag.hasText) { console.log( "Drop Keys: %1. Drop Text %2".arg( drag.keys).arg(drag.text)) const textData = drag.text const tempDayFood = textData // Update origin values if (drag.source) { (drag.source as DayContainer_copy_copy).dayFood = root.dayFood } else { console.warn("There is no drag.source") } root.dayFood = tempDayFood root.held = false } else { console.error( "Error: mimeData does not contain 'text/plain'.") } } } } } ColumnLayout { anchors.fill: parent Item { id: containerr Layout.fillHeight: true Layout.fillWidth: true Label { id: day_food anchors.fill: parent property int firstLineWidth: -1 text: "Loremp impsum impsuim a a a a" font.pixelSize: 24 verticalAlignment: Text.AlignVCenter wrapMode: Text.WordWrap font.styleName: "Regular" font.family: "Poppins" Behavior on text { SequentialAnimation { NumberAnimation { target: day_food property: "opacity" duration: 300 easing.type: Easing.InOutQuad to: 0 } PropertyAction {} NumberAnimation { target: day_food property: "opacity" duration: 300 easing.type: Easing.InOutQuad to: 1 } } } Label { text: root.held anchors.right: parent.right } } } } function drop() { console.log("-- element dropped") root.Drag.drop() if (root.held) { root.x = root.xCoordinate root.y = root.yCoordinate } root.held = false } }
Any ideas? :(
-
Second part of the post. I was unable to post all at once.
Data that may be considered relevant:
- Window flags configuration:
flags: Qt.FramelessWindowHint | Qt.Window // If Qt.Window is not present, drag is not allowed (In Windows 10 at least)
-
Touch works well in raspberry. I can drag and drop without any problem.
-
Also multitouch works well outside the app
-
Seems related with QXcbDrag Github dev but i didnt find any related bug.
-
After the first touch event, when the next touch event is performed, the drag and drop works as it should BUT the swaped element is the one that had the root.held = true not the new i dragged.
qt.qpa.events: Event | XInput Event(XCB_INPUT_MOTION) | sequence: 410 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_BEGIN) | sequence: 410 qt.qpa.events: Event | XInput Event(XCB_INPUT_MOTION) | sequence: 410 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_BEGIN) | sequence: 410 qt.quick.pointer: dispatching to window functions in case of override QTouchEvent(TouchBegin device: "wch.cn USB2IIC_CTP_CONTROL" states: Pressed, 1 points: QList(QEventPoint(id=54 ts=10755754 pos=922.55,154.905 scn=922.55,154.905 gbl=922.55,154.905 Pressed vel=0,0 press=922.55,154.905 last=922.55,154.905 Δ 0,0))) qt.quick.touch: QQuickDeliveryAgent(root=QQuickRootItem) QTouchEvent(TouchBegin device: "wch.cn USB2IIC_CTP_CONTROL" states: Pressed, 1 points: QList(QEventPoint(id=54 ts=10755754 pos=922.55,154.905 scn=922.55,154.905 gbl=922.55,154.905 Pressed vel=0,0 press=922.55,154.905 last=922.55,154.905 Δ 0,0))) qt.quick.touch.compression: no compression QTouchEvent(TouchBegin device: "wch.cn USB2IIC_CTP_CONTROL" states: Pressed, 1 points: QList(QEventPoint(id=54 ts=10755754 pos=922.55,154.905 scn=922.55,154.905 gbl=922.55,154.905 Pressed vel=0,0 press=922.55,154.905 last=922.55,154.905 Δ 0,0))) qt.quick.pointer: QQuickDeliveryAgent(root=QQuickRootItem) delivering QTouchEvent(TouchBegin device: "wch.cn USB2IIC_CTP_CONTROL" states: Pressed, 1 points: QList(QEventPoint(id=54 ts=10755754 pos=922.55,154.905 scn=922.55,154.905 gbl=922.55,154.905 Pressed vel=0,0 press=922.55,154.905 last=922.55,154.905 Δ 0,0))) qt.quick.touch.target: QQuickDeliveryAgent(root=QQuickRootItem) QPointingDevice("wch.cn USB2IIC_CTP_CONTROL" TouchScreen id=7 seat=30002 ptrType=Finger caps=Position|Area|NormalizedPosition|Scroll maxPts=6) TP (mouse) 36 -> Label_QMLTYPE_3_QML_7(0x19237d80, id="day_food", parent=0x19237b10, geometry=0,0 414x52) qt.quick.touch.target: QQuickDeliveryAgent(root=QQuickRootItem) QPointingDevice("wch.cn USB2IIC_CTP_CONTROL" TouchScreen id=7 seat=30002 ptrType=Finger caps=Position|Area|NormalizedPosition|Scroll maxPts=6) TP (mouse) 36 -> QQuickMouseArea(0x19233950, id="dragMouseArea", parent=0x19232de0, geometry=0,0 414x52) qt.quick.hover.trace: QQuickMouseArea(0x19233950, id="dragMouseArea", parent=0x19232de0, geometry=0,0 414x52) false -> true DayContainer_copy_copy_QMLTYPE_5(0x19232820, id="day_container_night", parent=0x19222d80, geometry=439,0 414x52) (0x19232c50) now has the following listeners: - ChangeListener listener=0x19222da0 types=QFlags(0x2|0x4|0x10|0x100|0x200) (QObject: QObject(0x0)) - ChangeListener listener=0x1923bc68 types=QFlags(0x1) (QObject: QQuickAnchors(0x1923b990)) - ChangeListener listener=0x19235468 types=QFlags(0x1) (QObject: QQuickAnchors(0x192353d0)) - ChangeListener listener=0x191e3038 types=QFlags(0x1|0x20) (QObject: QQuickDragAttached(0x1923b890)) qt.quick.hover.trace: Label_QMLTYPE_3(0x19239790, parent=0x19237d80, geometry=364.766,0 49.2344x28) 0 -> false qt.quick.hover.trace: Label_QMLTYPE_3_QML_7(0x19237d80, id="day_food", parent=0x19237b10, geometry=0,0 414x52) 0 -> false qt.quick.hover.trace: QQuickItem(0x19237b10, id="containerr", parent=0x192357a0, geometry=0,0 414x52) 0 -> false qt.quick.hover.trace: QQuickColumnLayout(0x192357a0, parent=0x19232820, geometry=0,0 414x52) 0 -> false qt.quick.hover.trace: DayContainer_copy_copy_QMLTYPE_5(0x19232820, id="day_container_night", parent=0x19222d80, geometry=439,0 414x52) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x19222d80, id="content", parent=0x191ebd60, geometry=6,6 853x52) 0 -> false qt.quick.hover.trace: FullDayContainer_copy_QMLTYPE_4(0x191ebd60, id="tuesday", parent=0x191eb130, geometry=0,0 865x64) 0 -> false qt.quick.hover.trace: QQuickColumnLayout(0x191eb130, parent=0x191e9310, geometry=135,0 865x480) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x191e9310, parent=0x1915f7e0, geometry=0,0 1000x480) 0 -> false qt.quick.hover.trace: QQuickItem(0x1915f7e0, parent=0x190fdb80, geometry=12,108 1000x480) 0 -> false qt.quick.hover.trace: QQuickRootItem(0x190fdb80, parent=0x0, geometry=0,0 1024x600 🖼) 0 -> false qml: Dragging item with dayName: and dayFood: Nada qt.qpa.xdnd: starting drag where source: 25165829 qt.qpa.xdnd: dndEnable QPlatformSurface(0x1936e4a0, class=QSurface::Window, type=QSurface::RasterSurface, window=QShapedPixmapWindow(0x7fa400c3b0)) true qt.qpa.xdnd: setting XdndAware for 25165845 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndEnter to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndEnter qt.qpa.xdnd: "text/plain" qt.qpa.xdnd: "UTF8_STRING" qt.qpa.xdnd: "STRING" qt.qpa.xdnd: "TEXT" qt.qpa.xdnd: "text/someKey" qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.quick.hover.trace: QQuickDeliveryAgent(root=QQuickRootItem) delivering frame-sync hover to root @ QPointF(922.55,154.905) qt.quick.hover.trace: QQuickDeliveryAgent(root=QQuickRootItem) frame-sync hover delivery done qt.quick.window: Updating child window stacking order for App_QMLTYPE_0(0x19084b10 exposed, visibility=QWindow::Maximized, flags=QFlags<Qt::WindowType>(ToolTip|X11BypassWindowManagerHint|FramelessWindowHint|WindowStaysOnTopHint|NoDropShadowWindowHint), title="FoodCalendar", geometry=0,0 1024x600) [rub] new frame qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 419 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 420 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 421 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 422 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 423 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 425 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 426 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 427 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 428 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 429 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 430 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 434 qt.qpa.events: Event | XCB_CLIENT_MESSAGE(33) | sequence: 435 qt.qpa.events: Event | XCB_CLIENT_MESSAGE(33) | sequence: 436 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 437 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 442 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 443 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 444 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 446 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 449 qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 453 qt.qpa.events: Event | XCB_MAP_NOTIFY(19) | sequence: 454 qt.qpa.events: Event | XCB_VISIBILITY_NOTIFY(15) | sequence: 454 qt.qpa.events: Event | XCB_EXPOSE(12) | sequence: 454 qt.qpa.events: Event | XCB_LEAVE_NOTIFY(8) | sequence: 456 qt.qpa.events: Event | XInput Event(XCB_INPUT_LEAVE) | sequence: 456 qt.qpa.events: Event | XInput Event(XCB_INPUT_ENTER) | sequence: 456 qt.qpa.xcb: [ QShapedPixmapWindow(0x7fa400c3b0) ] creating shared memory 4 bytes for QSize(1, 1) depth 32 bits 32 [rub] release to pool upd.batch # 3 / bufferOps active 0 of 52 data 36756 largeAlloc 22032 textureOps active 3 of 3 [rub] release to pool upd.batch # 0 / bufferOps active 0 of 0 data 0 largeAlloc 0 textureOps active 3 of 3 [rub] new frame [rub] release to pool upd.batch # 1 / bufferOps active 0 of 52 data 36756 largeAlloc 22032 textureOps active 0 of 0 [rub] new frame [rub] release to pool upd.batch # 2 / bufferOps active 4 of 52 data 34584 largeAlloc 22032 textureOps active 0 of 0 [rub] new frame [rub] release to pool upd.batch # 3 / bufferOps active 0 of 52 data 36756 largeAlloc 22032 textureOps active 0 of 0 [rub] new frame [rub] release to pool upd.batch # 0 / bufferOps active 0 of 0 data 0 largeAlloc 0 textureOps active 0 of 0 [rub] new frame [rub] release to pool upd.batch # 1 / bufferOps active 0 of 52 data 36756 largeAlloc 22032 textureOps active 0 of 0 [rub] new frame [rub] release to pool upd.batch # 2 / bufferOps active 0 of 52 data 34584 largeAlloc 22032 textureOps active 0 of 0 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_END) | sequence: 496 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_END) | sequence: 496 qt.pointer.dispatch: delivering touch release to same window App_QMLTYPE_0(0x19084b10) not QShapedPixmapWindow(0x7fa400c3b0) qt.pointer.velocity: velocity QVector2D(0, 0) filtered QVector2D(0, 0) based on movement QPointF(922.55,154.905) -> QPointF(922.55,154.905) over time 10755754 -> 10755825 qt.quick.pointer: dispatching to window functions in case of override QTouchEvent(TouchEnd device: "wch.cn USB2IIC_CTP_CONTROL" states: Released, 1 points: QList(QEventPoint(id=54 ts=10755825 pos=922.55,154.905 scn=922.55,154.905 gbl=922.55,154.905 Released vel=0,0 press=922.55,154.905 last=922.55,154.905 Δ 0,0))) qt.quick.touch: QQuickDeliveryAgent(root=QQuickRootItem) QTouchEvent(TouchEnd device: "wch.cn USB2IIC_CTP_CONTROL" states: Released, 1 points: QList(QEventPoint(id=54 ts=10755825 pos=922.55,154.905 scn=922.55,154.905 gbl=922.55,154.905 Released vel=0,0 press=922.55,154.905 last=922.55,154.905 Δ 0,0))) qt.quick.pointer: QQuickDeliveryAgent(root=QQuickRootItem) delivering QTouchEvent(TouchEnd device: "wch.cn USB2IIC_CTP_CONTROL" states: Released, 1 points: QList(QEventPoint(id=54 ts=10755825 pos=922.55,154.905 scn=922.55,154.905 gbl=922.55,154.905 Released vel=0,0 press=922.55,154.905 last=922.55,154.905 Δ 0,0))) [rub] new frame [rub] release to pool upd.batch # 3 / bufferOps active 4 of 52 data 34676 largeAlloc 22032 textureOps active 0 of 0 qt.quick.hover.trace: Label_QMLTYPE_3(0x191e36f0, id="currentTime", parent=0x191e3130, geometry=0,0 180x60) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x191e3130, parent=0x190c9490, geometry=565,0 435x60) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x190c9490, id="header", parent=0x190fdb80, geometry=12,0 1000x60) 0 -> false qt.quick.hover.trace: QQuickRootItem(0x190fdb80, parent=0x0, geometry=0,0 1024x600 🖼) 0 -> false [rub] new frame [rub] release to pool upd.batch # 0 / bufferOps active 4 of 4 data 304 largeAlloc 0 textureOps active 0 of 0 qt.quick.hover.trace: Label_QMLTYPE_3(0x191e36f0, id="currentTime", parent=0x191e3130, geometry=0,0 180x60) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x191e3130, parent=0x190c9490, geometry=565,0 435x60) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x190c9490, id="header", parent=0x190fdb80, geometry=12,0 1000x60) 0 -> false qt.quick.hover.trace: QQuickRootItem(0x190fdb80, parent=0x0, geometry=0,0 1024x600 🖼) 0 -> false [rub] new frame [rub] release to pool upd.batch # 1 / bufferOps active 4 of 52 data 34584 largeAlloc 22032 textureOps active 0 of 0 qt.quick.hover.trace: Label_QMLTYPE_3(0x191e36f0, id="currentTime", parent=0x191e3130, geometry=0,0 180x60) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x191e3130, parent=0x190c9490, geometry=565,0 435x60) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x190c9490, id="header", parent=0x190fdb80, geometry=12,0 1000x60) 0 -> false qt.quick.hover.trace: QQuickRootItem(0x190fdb80, parent=0x0, geometry=0,0 1024x600 🖼) 0 -> false [rub] new frame [rub] release to pool upd.batch # 2 / bufferOps active 4 of 52 data 34768 largeAlloc 22032 textureOps active 0 of 0 qt.qpa.events: Event | XInput Event(XCB_INPUT_MOTION) | sequence: 502 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_BEGIN) | sequence: 502 qt.qpa.events: Event | XInput Event(XCB_INPUT_MOTION) | sequence: 502 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_BEGIN) | sequence: 502 qt.pointer.dispatch: synthesizing mouse events from touchpoint 55 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 505 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 506 [rub] new frame [rub] release to pool upd.batch # 3 / bufferOps active 0 of 52 data 34676 largeAlloc 22032 textureOps active 0 of 0 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 523 qt.pointer.velocity: velocity QVector2D(0, 8.36645) filtered QVector2D(0, 5.85652) based on movement QPointF(635.69,214.641) -> QPointF(635.69,217.862) over time 10759138 -> 10759523 qt.pointer.velocity: velocity QVector2D(0, 8.36645) filtered QVector2D(0, 7.61347) based on movement QPointF(635.69,214.641) -> QPointF(635.69,217.862) over time 10759138 -> 10759523 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 525 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 526 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 532 qt.pointer.velocity: velocity QVector2D(0, 878.477) filtered QVector2D(0, 614.934) based on movement QPointF(635.69,217.862) -> QPointF(635.69,226.647) over time 10759523 -> 10759533 qt.pointer.velocity: velocity QVector2D(0, 878.477) filtered QVector2D(0, 799.414) based on movement QPointF(635.69,217.862) -> QPointF(635.69,226.647) over time 10759523 -> 10759533 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 534 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 535 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 541 qt.pointer.velocity: velocity QVector2D(0, 2108.35) filtered QVector2D(0, 1475.84) based on movement QPointF(635.69,226.647) -> QPointF(635.69,247.731) over time 10759533 -> 10759543 qt.pointer.velocity: velocity QVector2D(0, 2108.35) filtered QVector2D(0, 1918.6) based on movement QPointF(635.69,226.647) -> QPointF(635.69,247.731) over time 10759533 -> 10759543 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 543 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 544 [rub] new frame qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 552 qt.pointer.velocity: velocity QVector2D(0, 1011.58) filtered QVector2D(0, 708.105) based on movement QPointF(635.69,247.731) -> QPointF(635.69,258.858) over time 10759543 -> 10759554 qt.pointer.velocity: velocity QVector2D(0, 1011.58) filtered QVector2D(0, 920.537) based on movement QPointF(635.69,247.731) -> QPointF(635.69,258.858) over time 10759543 -> 10759554 [rub] release to pool upd.batch # 0 / bufferOps active 0 of 4 data 304 largeAlloc 0 textureOps active 0 of 0 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 554 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 555 [rub] new frame [rub] release to pool upd.batch # 1 / bufferOps active 0 of 52 data 34584 largeAlloc 22032 textureOps active 0 of 0 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 564 qt.pointer.velocity: velocity QVector2D(-32.2423, 217.259) filtered QVector2D(-22.5696, 152.081) based on movement QPointF(635.69,258.858) -> QPointF(634.69,265.593) over time 10759554 -> 10759585 qt.pointer.velocity: velocity QVector2D(-32.2423, 217.259) filtered QVector2D(-29.3405, 197.705) based on movement QPointF(635.69,258.858) -> QPointF(634.69,265.593) over time 10759554 -> 10759585 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 567 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 568 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 574 qt.pointer.velocity: velocity QVector2D(0, 37.7837) filtered QVector2D(0, 26.4486) based on movement QPointF(634.69,265.593) -> QPointF(634.69,266.764) over time 10759585 -> 10759616 qt.pointer.velocity: velocity QVector2D(0, 37.7837) filtered QVector2D(0, 34.3832) based on movement QPointF(634.69,265.593) -> QPointF(634.69,266.764) over time 10759585 -> 10759616 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 576 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 577 qt.quick.hover.trace: Label_QMLTYPE_3(0x191e36f0, id="currentTime", parent=0x191e3130, geometry=0,0 180x60) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x191e3130, parent=0x190c9490, geometry=565,0 435x60) 0 -> false qt.quick.hover.trace: QQuickRowLayout(0x190c9490, id="header", parent=0x190fdb80, geometry=12,0 1000x60) 0 -> false qt.quick.hover.trace: QQuickRootItem(0x190fdb80, parent=0x0, geometry=0,0 1024x600 🖼) 0 -> false [rub] new frame [rub] release to pool upd.batch # 2 / bufferOps active 4 of 52 data 34492 largeAlloc 22032 textureOps active 0 of 0 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 584 qt.pointer.velocity: velocity QVector2D(0, 6.05848) filtered QVector2D(0, 4.24093) based on movement QPointF(634.69,266.764) -> QPointF(634.69,267.643) over time 10759616 -> 10759761 qt.pointer.velocity: velocity QVector2D(0, 6.05848) filtered QVector2D(0, 5.51321) based on movement QPointF(634.69,266.764) -> QPointF(634.69,267.643) over time 10759616 -> 10759761 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 586 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 587 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 593 qt.pointer.velocity: velocity QVector2D(0, 55.776) filtered QVector2D(0, 39.0432) based on movement QPointF(634.69,267.643) -> QPointF(634.69,268.814) over time 10759761 -> 10759782 qt.pointer.velocity: velocity QVector2D(0, 55.776) filtered QVector2D(0, 50.7561) based on movement QPointF(634.69,267.643) -> QPointF(634.69,268.814) over time 10759761 -> 10759782 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 595 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 596 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 602 qt.pointer.velocity: velocity QVector2D(0, 79.8617) filtered QVector2D(0, 55.9032) based on movement QPointF(634.69,268.814) -> QPointF(634.69,269.693) over time 10759782 -> 10759793 qt.pointer.velocity: velocity QVector2D(0, 79.8617) filtered QVector2D(0, 72.6742) based on movement QPointF(634.69,268.814) -> QPointF(634.69,269.693) over time 10759782 -> 10759793 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 604 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 605 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 611 qt.pointer.velocity: velocity QVector2D(0, 58.5648) filtered QVector2D(0, 40.9953) based on movement QPointF(634.69,269.693) -> QPointF(634.69,270.864) over time 10759793 -> 10759813 qt.pointer.velocity: velocity QVector2D(0, 58.5648) filtered QVector2D(0, 53.2939) based on movement QPointF(634.69,269.693) -> QPointF(634.69,270.864) over time 10759793 -> 10759813 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 613 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 614 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 620 qt.pointer.velocity: velocity QVector2D(0, 79.8617) filtered QVector2D(0, 55.9032) based on movement QPointF(634.69,270.864) -> QPointF(634.69,271.742) over time 10759813 -> 10759824 qt.pointer.velocity: velocity QVector2D(0, 79.8617) filtered QVector2D(0, 72.6742) based on movement QPointF(634.69,270.864) -> QPointF(634.69,271.742) over time 10759813 -> 10759824 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 622 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 623 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_UPDATE) | sequence: 629 qt.pointer.velocity: velocity QVector2D(0, 79.8617) filtered QVector2D(0, 55.9032) based on movement QPointF(634.69,271.742) -> QPointF(634.69,272.621) over time 10759824 -> 10759835 qt.pointer.velocity: velocity QVector2D(0, 79.8617) filtered QVector2D(0, 72.6742) based on movement QPointF(634.69,271.742) -> QPointF(634.69,272.621) over time 10759824 -> 10759835 qt.qpa.xdnd: checking target for XdndAware 25165831 qt.qpa.xdnd: found XdndAware on 25165831 qt.qpa.xdnd: sending XdndPosition to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndPosition qt.qpa.xdnd: sending XdndStatus to source: 25165829 qt.qpa.xdnd: source: 25165829 received XdndStatus qt.qpa.events: Event | XCB_PROPERTY_NOTIFY(28) | sequence: 631 qt.qpa.events: Event | XCB_CONFIGURE_NOTIFY(22) | sequence: 632 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_END) | sequence: 638 qt.qpa.events: Event | XInput Event(XCB_INPUT_TOUCH_END) | sequence: 638 qt.pointer.velocity: velocity QVector2D(0, 8.69781) filtered QVector2D(0, 6.08847) based on movement QPointF(634.69,271.742) -> QPointF(634.69,272.621) over time 10759835 -> 10759936 qt.pointer.velocity: velocity QVector2D(0, 0) filtered QVector2D(0, 1.82654) based on movement QPointF(634.69,272.621) -> QPointF(634.69,272.621) over time 10759835 -> 10759936 qt.qpa.xdnd: sending drop to target: 25165831 qt.qpa.xdnd: target: 25165831 received XdndDrop qt.qpa.xdnd: found one transaction via findTransactionByTime() qml: drag.source: DayContainer_copy_copy_QMLTYPE_5(0x19232820) qml: Drop Keys: text/plain,text/someKey. Drop Text Nada qt.qml.import: resolveType: qrc:/qt/qml/content/DayContainer_copy_copy.qml "DayContainer_copy_copy" => "" QUrl("qrc:/qt/qml/content/DayContainer_copy_copy.qml") TYPE/URL qt.qpa.xdnd: sending XdndFinished to source: 25165829 qt.gui.dnd: mouse released over App_QMLTYPE_0(0x19084b10) after drag from QWindow(0x0) globalPos QPoint(635,273) point is not in activePoints QEventPoint(id=54 ts=10755754 pos=330.55,40.9048 scn=922.55,154.905 gbl=922.55,154.905 Pressed vel=0,0 press=330.55,40.9048 last=330.55,40.9048 Δ 0,0) point is not in activePoints QEventPoint(id=54 ts=10755754 pos=330.55,40.9048 scn=922.55,154.905 gbl=922.55,154.905 Pressed vel=0,0 press=330.55,40.9048 last=330.55,40.9048 Δ 0,0) qt.quick.pointer: dispatching to window functions in case of override QMouseEvent(MouseButtonRelease ts=0 LeftButton pos=634.69,272.621 scn=634.69,272.621 gbl=634.69,272.621 dev=QInputDevice(QPointingDevice("wch.cn USB2IIC_CTP_CONTROL" TouchScreen id=7 seat=30002 ptrType=Finger caps=Position|Area|NormalizedPosition|Scroll maxPts=6)) source=MouseEventSynthesizedByQt qt.quick.mouse: QQuickDeliveryAgent(root=QQuickRootItem) QMouseEvent(MouseButtonRelease ts=0 LeftButton pos=634.69,272.621 scn=634.69,272.621 gbl=634.69,272.621 dev=QInputDevice(QPointingDevice("wch.cn USB2IIC_CTP_CONTROL" TouchScreen id=7 seat=30002 ptrType=Finger caps=Position|Area|NormalizedPosition|Scroll maxPts=6)) source=MouseEventSynthesizedByQt qt.quick.pointer: QQuickDeliveryAgent(root=QQuickRootItem) delivering QMouseEvent(MouseButtonRelease ts=0 LeftButton pos=634.69,272.621 scn=634.69,272.621 gbl=634.69,272.621 dev=QInputDevice(QPointingDevice("wch.cn USB2IIC_CTP_CONTROL" TouchScreen id=7 seat=30002 ptrType=Finger caps=Position|Area|NormalizedPosition|Scroll maxPts=6)) source=MouseEventSynthesizedByQt qt.qpa.events: Event | XCB_UNMAP_NOTIFY(18) | sequence: 641 qt.qpa.events: Event | XCB_ENTER_NOTIFY(7) | sequence: 641 qt.qpa.events: Event | XInput Event(XCB_INPUT_LEAVE) | sequence: 641 qt.qpa.events: Event | XInput Event(XCB_INPUT_ENTER) | sequence: 641 qt.qpa.events: Event | XCB_CLIENT_MESSAGE(33) | sequence: 643 qt.qpa.xdnd: source: 25165829 received XdndFinished qt.quick.pointer: dispatching to window functions in case of override QEnterEvent(QPointF(634,272)) qt.quick.mouse: mouse grabber ambiguous: no event is currently being delivered qt.quick.hover.trace: QQuickDeliveryAgent(root=QQuickRootItem) delivering frame-sync hover to root @ QPointF(634,272) qt.quick.hover.trace: QQuickDeliveryAgent(root=QQuickRootItem) frame-sync hover delivery done