Stop the bar sticking in move mode after a press-and-hold on a widget (#6943)

Bar widgets propagate their composed press-and-hold down to the center gesture
area without handing over the grab, so the gesture area started a bar move and
then received neither a release nor a cancel to end it. The move ghost stayed on
screen for the rest of the session. Ignore the gesture unless we hold the press.

Closes #6881

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
(cherry picked from commit c0a20e2e43)
This commit is contained in:
David Heinemeier Hansson committed 2026-08-23 19:11:58 +02:00
1 parent 9f7cdf6983
commit ac1bdbfbf5
2 files changed
+14

No files matched your search

+3
View File
@@ -1417,6 +1417,9 @@ Item {
}
onPressAndHold: function(mouse) {
// A widget above us propagates its composed press-and-hold down here without
// ever handing over the grab, so we'd get no release or cancel to end the move.
if (!gestureArea.pressed) return
startDrag(mouse.x, mouse.y)
}