mirror of
https://github.com/nyakang/nyaterm.git
synced 2026-10-04 08:00:50 +00:00
14da429f16f8fdca03e0338622cd557b5d70af93
Twenty-seven of the fields on `NyaTermApp` were quick command panel, overlay and editor state addressed as `self.quick_command_*`. They now live in `QuickCommandFeatureState`, following the shape that `ConnectionFeatureState` already validated: `list`, `editor`, `dialogs`, `import` and `ai` sub-structs, built from a single `QuickCommandFeatureFocus` bundle instead of seven separate `cx.focus_handle()` fields at the app level. The persisted collections stay where they were. `quick_commands` and `quick_command_categories` are store-loaded data, not UI state, so they remain on `NyaTermApp` exactly as the connections list does. Two names get clearer in the move: the row overflow menu is `list.row_menu` rather than a bare `quick_command_menu`, and the editor draft is `editor.draft` rather than `quick_command_editor`, matching `ConnectionEditorFeatureState`. `app_state/mod.rs` no longer imports any of the eleven quick command UI model types, which is the point: the app struct stops knowing how the quick command panel represents its overlays. Field count drops from 585 to 570. The 222 rewritten accesses were anchored on `.quick_command_<field>` with a word boundary and applied longest-name-first, so helpers such as `quick_command_category_label` and fields such as `quick_command_editor_focus` were not caught by shorter prefixes.
Languages
TypeScript
51.2%
Rust
47%
JavaScript
0.7%
CSS
0.5%
PowerShell
0.3%
Other
0.2%