Skip to content

Allow PullDownMenu during TUI app mouse tracking#36

Merged
zackslash merged 1 commit into
mainfrom
fix/pulldown-menu-tui
Jun 18, 2026
Merged

Allow PullDownMenu during TUI app mouse tracking#36
zackslash merged 1 commit into
mainfrom
fix/pulldown-menu-tui

Conversation

@zackslash

Copy link
Copy Markdown
Owner

TerminalView calls setKeepMouseGrab(true) when TUI apps enable mouse tracking, which blocks the PullDownMenu from receiving drag gestures.

When mouse tracking is active, touches in the top ~100px now pass through to the parent SilicaFlickable without being accepted. Zone height is configurable via pullDownZoneHeight property (set to Theme.itemSizeLarge from QML).

@zackslash zackslash force-pushed the fix/pulldown-menu-tui branch 4 times, most recently from a605367 to f924c61 Compare June 18, 2026 19:54
When TUI apps (htop, btop, tmux) enable mouse tracking, TerminalView
calls setKeepMouseGrab(true) which blocks SilicaFlickable from
receiving the drag gesture needed for PullDownMenu.

Fix: when mouse tracking is active, touches in the top gesture zone
(passDownZoneHeight, set from Theme.itemSizeLarge in QML) are not
accepted by touchEvent, allowing them to propagate to the parent
SilicaFlickable for PullDownMenu. A safety net in mousePressEvent
also checks the zone in case Qt synthesizes a mouse event from the
unaccepted touch.

Touches below the zone and two-finger scrolls are unaffected.
@zackslash zackslash force-pushed the fix/pulldown-menu-tui branch from f924c61 to 534f0e6 Compare June 18, 2026 20:08
@zackslash zackslash merged commit ea5817d into main Jun 18, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant