Files
headquarter/apps/web/.pi-map.index.md
T
Developer c9b0259993 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.
2026-06-13 20:30:52 +00:00

41 lines
1.0 KiB
Markdown

# apps/web (index)
dir: apps/web
## role
Frontend web application providing a browser-based UI with code editing, terminal, and routing capabilities for the "headquarter" project.
## parent
index: apps/.pi-map.index.md
map: apps/.pi-map.md
## children
- apps/web/.pi-lens
index: apps/web/.pi-lens/.pi-map.index.md
map: apps/web/.pi-lens/.pi-map.md
- apps/web/public
index: apps/web/public/.pi-map.index.md
map: apps/web/public/.pi-map.md
- apps/web/src
index: apps/web/src/.pi-map.index.md
map: apps/web/src/.pi-map.md
## files
- .env.example
- .eslintrc.cjs
- Dockerfile
- index.html
- nginx.conf
- package-lock.json
- package.json
- tsconfig.json
- vite.config.ts
## links
index: apps/web/.pi-map.index.md
map: apps/web/.pi-map.md
## workflows
- change web behavior
read: .env.example, .eslintrc.cjs, Dockerfile
- change web config
read: package-lock.json, package.json, tsconfig.json
- explore web subdirectories
index: apps/web/.pi-lens/.pi-map.index.md, apps/web/public/.pi-map.index.md, apps/web/src/.pi-map.index.md
## dirty
-