Files
llink/js/desktop
Claude e68d5ca4dc refactor(desktop): make task focus mode self-contained
Handle editing focus entirely within TaskParticleView instead of threading
editing state up to StreamView and special-casing the navigation hook.

While editing, the card now registers a capture-phase key listener — the
same pattern the app's other focus overlays use — that consumes Escape
(blurring the field, which flushes the draft and resumes playback) and
swallows stream-navigation keys so they can't pull focus to another
particle. An "Esc to finish" hint shows while editing.

This restores use-stream-navigation-keys to its original form and reduces
the StreamView change to a single `immersive` prop.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BDWBJjERKk8zUmh6bcKWSM
2026-06-21 17:12:53 +00:00
..
2026-05-26 15:37:35 -07:00
2026-05-26 15:37:35 -07:00
2026-05-26 15:41:54 -07:00
2026-05-26 15:37:35 -07:00
2026-06-09 09:12:03 -07:00
2026-05-26 15:37:35 -07:00

Notes

CORS for desktop app

In dev: each renderer process has its own localhost port. The renderer process passes this in the Origin header for requests, and expects appropriate ACAO headers in the response.

In packaged app: the renderer process does not include Origin header, so expects no extra ACAO headers from the server, otherwise the client would fail to accept responses.