fix: route mobile terminal swipes to the terminal, not the page layout
- Add touch-action: none and overscroll-behavior: none to mobile terminal
page, content, wrapper, container, and xterm viewport so the browser
never treats swipes as page/address-bar scrolling or pull-to-refresh.
- Make .terminal-page.mobile fixed-position to prevent viewport layout
scroll; keep the overlay toolbar as absolute with pointer-events only
on interactive parts.
- Rework the mobile touch handler in terminal.tsx:
* Detect normal vs alternate buffer via term.buffer.active.type instead
of measuring the DOM viewport, which was unreliable in tmux/vim.
* Accumulate swipe distance and emit SGR 1006 mouse-wheel sequences in
steps, so tmux pane scrolling tracks the gesture correctly.
* Prevent default as soon as the swipe is recognized so the page does
not start a competing scroll gesture.
Quality gates: npm run typecheck, npm run lint clean, npm test -- --run 87 passed.
This commit is contained in:
+2
-2
@@ -4,10 +4,10 @@ dir: apps
|
||||
index: apps/.pi-map.index.md
|
||||
|
||||
## role
|
||||
Container directory for all deployable application targets in the monorepo.
|
||||
Contains the main deployable application entry points and top-level executable modules for the project.
|
||||
## files
|
||||
## arch
|
||||
Monorepo workspace structure where each subdirectory represents an independently deployable application sharing common libraries and tools.
|
||||
Monorepo-style directory with separate app folders, each typically following a layered architecture with domain, application, and infrastructure separation.
|
||||
## tags
|
||||
-
|
||||
## symbols
|
||||
|
||||
Reference in New Issue
Block a user