feat(desktop): add opt-in full-screen conversation surface#266
Conversation
|
[REBASE NOTIFIER] Hi @yanmxa! This PR has merge conflicts. The How to fix thisresolve the conflicts — Fix the merge conflicts locally, then push the resolved changes. After fixing:
|
|
[REBASE NOTIFIER] Hi @yanmxa! This PR has merge conflicts. The How to fix thisresolve the conflicts — Fix the merge conflicts locally, then push the resolved changes. After fixing:
|
2 similar comments
|
[REBASE NOTIFIER] Hi @yanmxa! This PR has merge conflicts. The How to fix thisresolve the conflicts — Fix the merge conflicts locally, then push the resolved changes. After fixing:
|
|
[REBASE NOTIFIER] Hi @yanmxa! This PR has merge conflicts. The How to fix thisresolve the conflicts — Fix the merge conflicts locally, then push the resolved changes. After fixing:
|
0d8a81d to
ab31087
Compare
6e1572e to
5573b93
Compare
5573b93 to
78e4864
Compare
Add a full-screen alt-screen surface (toggle with ctrl+g) that renders the same conversation transcript and input bar as the inline view, but owns the whole screen so the entire history scrolls within the managed frame — where the inline view commits finished output to the terminal's native scrollback and can no longer touch it. The desktop reuses the inline renderers (renderTranscriptAt + the inline footer), so the two surfaces read identically. While it is active, scrollback commits are held and flushed back on exit. Signed-off-by: Meng Yan <yanmxa@gmail.com>
78e4864 to
02b5042
Compare
|
[REBASE NOTIFIER] Hi @yanmxa! This PR is behind the base branch and needs to be rebased. The How to fix thisrebase your branch — Run After fixing:
|
3 similar comments
|
[REBASE NOTIFIER] Hi @yanmxa! This PR is behind the base branch and needs to be rebased. The How to fix thisrebase your branch — Run After fixing:
|
|
[REBASE NOTIFIER] Hi @yanmxa! This PR is behind the base branch and needs to be rebased. The How to fix thisrebase your branch — Run After fixing:
|
|
[REBASE NOTIFIER] Hi @yanmxa! This PR is behind the base branch and needs to be rebased. The How to fix thisrebase your branch — Run After fixing:
|
Add an opt-in full-screen "desktop" surface — an alt-screen window manager — alongside the default inline scrollback view.
internal/app/desktoppackage: window manager with a tiling layout.desktop_surface.gois the seam between the root model and the desktop: the model renders each pane's content to strings and hands it over at its assigned width, so adding a window is just adding a Pane. The desktop package never reaches into the model.