Skip to content

Add shared UI action model and generated panel help - #217

Merged
raiseCatError merged 1 commit into
feature/173-deterministic-presentationfrom
feature/166-actions
Sep 30, 2026
Merged

raiseCatError merged 1 commit into
feature/173-deterministic-presentationfrom
feature/166-actions

Conversation

@raiseCatError

Copy link
Copy Markdown
Owner

Implements #166.

Stacked on #203 (feature/173-deterministic-presentation). Merge #203 first, then retarget this PR to dev.

What changed

  • src/ui/actions.ts: a small UiAction model (stable id, label, help key label, bound key kinds, enabled state) with resolveAction, enabledActions and renderActionHelp. Footers list only enabled actions.
  • Command palette: Enter dispatch and its footer come from paletteActions; Run and move are hidden when there is nothing to run or move over.
  • Layout, syntax and transcript panels share DRAFT_PANEL_ACTIONS instead of three copies of the same footer.

Scope

  • Behavior and key bindings are unchanged; no remappable bindings and no new shortcuts.
  • Every action has a keyboard binding; nothing is pointer-only.
  • Settings, prompt and provider panels keep their existing footers for now.

Verification

Focused tests in tests/uiActions.test.ts (disabled actions, keyboard completeness, narrow width, palette help). Full suite 625/625, typecheck, build and git diff --check clean.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant