Files
orca/mobile/src/session
Kelvin Amoaba 4c5af5d640 fix(terminal): one tab agent icon rule for desktop and mobile (#33963)
* fix(mobile): send terminal paste, keys and query replies like desktop

* fix(mobile): encode Shift+Enter for the pane's negotiated keyboard modes

The phone's xterm now tracks Kitty flags and modifyOtherKeys with desktop's tracker, seeded from the host snapshot.

* fix(mobile): keep keyboard modes across terminal snapshots

* fix(mobile): adopt snapshot keyboard modes with desktop's rule

* refactor(terminal): share snapshot keyboard-mode adoption and mode mirroring

* fix(mobile): compare terminal modes field by field instead of a dynamic read

* refactor(mobile): share terminal display-mode adoption between snapshot and resize

* fix(mobile): accept only known terminal display modes from the host

* fix(mobile): follow desktop terminal display rules

- ZWJ emoji width: activate the shared Orca unicode provider instead of plain Unicode 11.
- Contrast floor: share desktop's resolver and background parser; translucent
  backgrounds composite over the published light/dark surface.
- Word selection: use xterm's default word separators via a shared rule.
- Takeover reports: share the 30 s gate and single retry between desktop and mobile.
- Use the shared viewport minimums and default scrollback rows.

* refactor(mobile): trim duplicate tests and reuse shared terminal types

* fix(mobile): resolve terminal tab agent icons with the desktop rule

Moves the tab-strip identity resolver to src/shared and deletes the drifted copy in use-tab-agent.ts, so the desktop tab strip, open-tab search and the phone all run one rule.

* fix(mobile): rank host cursor identity as the tab's process signal

* fix(mobile): rank cached host cursor identity only for unowned terminal tabs

* fix(terminal): keep sleeping tab identity through hibernation shell evidence

The kill that hibernates a pane can report the shell foreground while the wake record is kept on purpose; the tab strip never retired sleeping identity on exit evidence, so the shared resolver keeps that behavior.

* test(terminal): drop tab agent tests that replay the shared resolver

* refactor(terminal): share the observed agent signal rule between tab strip and snapshots
2026-10-27 04:26:50 +00:00
..