core-agent-ide/codex-rs/tui2/src
Josh McKinney 96a65ff0ed
perf(tui): cap redraw scheduling to 60fps (#8499)
Clamp frame draw notifications in the `FrameRequester` scheduler so we
don't redraw more frequently than a user can perceive.

This applies to both `codex-tui` and `codex-tui2`, and keeps the
draw/dispatch loops simple by centralizing the rate limiting in a small
helper module.

- Add `FrameRateLimiter` (pure, unit-tested) to clamp draw deadlines
- Apply the limiter in the scheduler before emitting `TuiEvent::Draw`
- Use immediate redraw requests for scroll paths (scheduler now
coalesces + clamps)
- Add scheduler tests covering immediate/delayed interactions
2025-12-23 19:10:15 -08:00
..
bin feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
bottom_pane [tui] add optional details to TUI status header (#8293) 2025-12-23 12:40:40 -08:00
chatwidget [tui] add optional details to TUI status header (#8293) 2025-12-23 12:40:40 -08:00
exec_cell feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
notifications Sync tui2 with tui and keep dual-run glue (#7965) 2025-12-12 20:46:18 -08:00
onboarding Change "Team" to "Buisness" and add Education (#8221) 2025-12-18 08:35:22 +00:00
public_widgets feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
render feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
snapshots [tui] add optional details to TUI status header (#8293) 2025-12-23 12:40:40 -08:00
status [tui] add optional details to TUI status header (#8293) 2025-12-23 12:40:40 -08:00
streaming feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
tui perf(tui): cap redraw scheduling to 60fps (#8499) 2025-12-23 19:10:15 -08:00
additional_dirs.rs feat: introduce ExternalSandbox policy (#8290) 2025-12-18 17:02:03 -08:00
app.rs perf(tui): cap redraw scheduling to 60fps (#8499) 2025-12-23 19:10:15 -08:00
app_backtrack.rs Sync tui2 with tui and keep dual-run glue (#7965) 2025-12-12 20:46:18 -08:00
app_event.rs Sync tui2 with tui and keep dual-run glue (#7965) 2025-12-12 20:46:18 -08:00
app_event_sender.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
ascii_animation.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
chatwidget.rs Remove reasoning format (#8484) 2025-12-23 16:01:46 -08:00
cli.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
clipboard_copy.rs WIP: Rework TUI viewport, history printing, and selection/copy (#7601) 2025-12-15 17:20:53 -08:00
clipboard_paste.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
color.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
custom_terminal.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
diff_render.rs fix: fix test that was writing temp file to cwd instead of TMPDIR (#8493) 2025-12-23 15:48:06 -08:00
exec_command.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
file_search.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
frames.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
get_git_diff.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
history_cell.rs Remove reasoning format (#8484) 2025-12-23 16:01:46 -08:00
insert_history.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
key_hint.rs feat(tui2): add copy selection shortcut + UI affordance (#8462) 2025-12-22 18:54:58 -08:00
lib.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
live_wrap.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
main.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
markdown.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
markdown_render.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
markdown_render_tests.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
markdown_stream.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
model_migration.rs caribou (#8265) 2025-12-18 08:58:44 -08:00
oss_selection.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
pager_overlay.rs perf(tui): cap redraw scheduling to 60fps (#8499) 2025-12-23 19:10:15 -08:00
resume_picker.rs chore: migrate from Config::load_from_base_config_with_overrides to ConfigBuilder (#8276) 2025-12-18 16:12:52 -08:00
selection_list.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
session_log.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
shimmer.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
slash_command.rs chore: un-ship undo (#8424) 2025-12-22 09:53:03 +01:00
status_indicator_widget.rs [tui] add optional details to TUI status header (#8293) 2025-12-23 12:40:40 -08:00
style.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
terminal_palette.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
test_backend.rs test(tui2): re-enable ANSI for VT100 tests (#8423) 2025-12-22 00:00:32 -08:00
text_formatting.rs [tui] add optional details to TUI status header (#8293) 2025-12-23 12:40:40 -08:00
tooltips.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
transcript_copy.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
transcript_copy_ui.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
transcript_multi_click.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
transcript_render.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
transcript_selection.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00
tui.rs perf(tui): cap redraw scheduling to 60fps (#8499) 2025-12-23 19:10:15 -08:00
ui_consts.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
update_action.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
update_prompt.rs fix tui2 compile error (#8124) 2025-12-16 11:31:55 -08:00
updates.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
version.rs feat(tui2): copy tui crate and normalize snapshots (#7833) 2025-12-10 22:53:46 +00:00
wrapping.rs feat(tui2): add multi-click transcript selection (#8471) 2025-12-23 21:05:06 +00:00