Commit Graph
51 Commits
Author SHA1 Message Date
Cursor AgentandDaniel Imms 090b77f354 Replace custom clone utility with structuredClone
Remove common/Clone.ts and its tests. Use the native structuredClone API
for cloning default modes, options, and test fixtures.

Fixes #5911

Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
2026-05-27 15:41:00 +00:00
Daniel Imms 9fca3d8ecf Merge branch 'master' into 5626 2026-01-31 09:12:15 -08:00
Daniel Imms e8d99d50a6 Remove vs dependency in common
Fixes #5631
2026-01-30 06:03:16 -08:00
Daniel Imms 6f87ae77a7 Support color scheme reporting
CSI ? 996 n
CSI ? 2031 h
CSI ? 2031 l

Fixes #5626
2026-01-27 10:19:26 -08:00
meganrogge a20ff565b0 add showCursorImmediately option 2026-01-13 10:36:35 -06:00
Daniel Imms ee47054678 Implement win32-input-mode
Fixes #2357
2026-01-10 05:27:03 -08:00
Daniel Imms c624a47780 Maintain different buffer flags, stack limit, tests 2026-01-09 11:59:50 -08:00
Daniel Imms 2265fa2ade Implement kitty keyboard protocol (CSI u)
Fixes #4198
2026-01-09 05:59:57 -08:00
Chris LloydandClaude 7228e2e2dc Add synchronized output support (DEC mode 2026)
Implement synchronized output mode (CSI ? 2026 h/l) which allows
applications to batch terminal updates and render them atomically,
preventing screen tearing during rapid output.

Features:
- BSU (CSI ? 2026 h) pauses rendering, buffering row updates
- ESU (CSI ? 2026 l) flushes buffer and renders atomically
- Configurable timeout via synchronizedOutputTimeout option (default 5s)
- Exposed via terminal.modes.synchronizedOutputMode

Closes #3375

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 11:16:25 -08:00
Anthony Kim 67cf25989a only send codes, not the data when in trace 2025-10-17 11:26:34 -07:00
Anthony KimandDaniel Imms f87e574971 Update src/common/services/CoreService.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
2025-10-17 11:23:24 -07:00
Anthony Kim 5269462817 Only log character codes for verbose/trace 2025-10-17 10:12:10 -07:00
Daniel Imms b579649a39 Revert to cursor options after DECSCUSR 0
Fixes #3293
2024-12-20 10:34:05 -08:00
Daniel Imms 144bdb5dd0 Move over to vs disposables 2024-07-14 16:19:20 -07:00
Daniel Imms 90ff6f3d06 Migrate most EventEmitter to base/ Emitter 2024-07-14 07:41:56 -07:00
Daniel Imms 921da1a2ea Ignore no-unused-vars in .api, organize all remaining imports 2023-08-23 04:47:53 -07:00
Daniel Imms 4ee4a0f988 Merge branch 'master' into cleanup_coreservice 2022-12-11 07:36:01 -08:00
Daniel Imms d6b8a21219 Avoid passing circular callback into CoreService ctor 2022-12-11 07:35:11 -08:00
Jason Lin 9e84895141 polish 2022-12-07 10:12:43 +11:00
Jason Lin 73d20c1d3b Add option scrollOnKeypress
Note that we also change the existing behavior a bit:
CoreService.triggerDataEvent() will not scroll to the bottom unless
`wasUserInput` is also true. This actually seems to be the intended
behavior according to the doc just above
ICoreService.triggerDataEvent().
2022-12-06 14:29:18 +11:00
Daniel Imms 4d97729010 Revert "Merge pull request #4166 from Tyriar/event_with_emitter"
This reverts commit d22f7c9edd, reversing
changes made to 1f8e6f0952.
2022-10-06 09:48:54 -07:00
Daniel Imms ed15a8e170 Create new event with emitter object to simplify code 2022-10-01 08:45:40 -07:00
Daniel Imms 1a22c44f2b Make all emitters readonly 2022-10-01 08:02:32 -07:00
Daniel Imms cf9949840b Use readonly over getter for exposing events
Fixes #4164
2022-10-01 07:52:26 -07:00
Simon Lamon 1dcc1d1baf fix test and replace options with rawOptions 2022-01-08 08:20:50 +00:00
Daniel Imms b75e42a56c Fix terminal object leaking 2020-05-03 12:46:37 -07:00
Jörg Breitbart e1be294147 Merge branch 'master' into reverse_wraparound 2020-04-27 16:11:39 +02:00
Jörg Breitbart ab2c8c7382 Merge branch 'master' into reverse_wraparound 2020-04-26 15:59:10 +02:00
Daniel Imms 37996bcd15 Move sendFocus to core service 2020-04-25 13:26:06 -07:00
Daniel Imms d5729f9216 Move insertMode into core service 2020-04-25 11:26:20 -07:00
Daniel Imms 4cec11be9c Move bracketed paste mode to coreservice 2020-04-25 11:11:05 -07:00
Daniel Imms 9817754f92 Fix explicit access 2020-04-14 06:23:11 -07:00
Daniel Imms 7609a5456e Fix most lgtm warnings 2020-04-10 14:08:28 -07:00
Jörg Breitbart 0c703276b1 fix behavior, first BS tests 2020-02-17 12:22:53 +01:00
Daniel Imms dc61fae12a Move applicationKeypad into core service 2019-12-18 11:23:57 +11:00
Daniel Imms dada7fe728 Move origin mode into core service 2019-12-18 11:20:36 +11:00
Daniel Imms bff74b1d7d Move wraparound mode into core service modes 2019-12-18 11:16:27 +11:00
Daniel Imms 224fb5c6a2 Move charset into own service 2019-12-18 10:53:05 +11:00
Daniel Imms 05e1cd8478 Move charset logic into core service 2019-12-18 10:32:38 +11:00
Jörg Breitbart b780abaf3b add onBinary on CoreService, use for DEFAULT mouse reports 2019-11-13 23:46:01 +01:00
Daniel Imms 873de2b127 Move cursor render layer to browser 2019-11-07 18:39:46 -08:00
Daniel Imms 9d7935f8bd Move cursorState into core service 2019-11-07 18:21:06 -08:00
Daniel Imms 761e437c69 Allow lazy evaluated log params 2019-09-12 13:38:30 -07:00
Daniel Imms 293f54e8dd Improve debug logging by printing character codes 2019-09-12 11:06:22 -07:00
Daniel Imms d2a311b128 Debug log data being sent 2019-07-22 10:42:40 -07:00
Daniel Imms a0e2c9b270 Fix naming issue with serviceBrand 2019-07-13 23:45:25 -07:00
Daniel Imms 5cc8ad802c Get type safety in DI, fix character joiner not using buffer service 2019-07-13 22:02:13 -07:00
Daniel Imms 21fbe25858 Dependency Injection prototype 2019-07-13 19:50:16 -07:00
Daniel Imms 4d22d1d008 Reset modes on reset 2019-06-29 14:15:04 -07:00
Daniel Imms 33a640a7a8 Move applicationCursor into core service 2019-06-23 14:06:06 -07:00