mirror of
https://github.com/openai/codex.git
synced 2026-11-13 14:46:14 +00:00
Add keybindings for cycling TUI permission modes (#39873)
## What changed - Add unbound `previous_permission_mode` and `next_permission_mode` actions to `tui.keymap.chat` so users can configure shortcuts that cycle through the available built-in permission modes. - Apply shortcut selections only to the active session, without writing them to `config.toml`, and report update failures in the transcript. - Exclude modes disallowed by managed requirements or platform safety checks, reject printable-key bindings, and ignore these bindings in project config. ## Testing - Cover mode cycling, unavailable modes, session-only updates, server errors, stale threads, keymap validation, and project-config sanitization. GitOrigin-RevId: c3cfdf1e732b7b7bfe8f53fcac19a37e593bbfab
This commit is contained in:
1 parent
44e95c857f
commit
2aaefa32b0
32 files changed
+708
-47
No files matched your search
@@ -389,6 +389,7 @@ mod model_popups;
|
||||
mod notifications;
|
||||
use self::notifications::Notification;
|
||||
mod permission_popups;
|
||||
mod permission_shortcuts;
|
||||
mod permissions_menu;
|
||||
pub(crate) use self::permissions_menu::auto_review_available;
|
||||
pub(crate) use self::permissions_menu::cyber_model_approval_reviewer;
|
||||
@@ -696,6 +697,7 @@ pub(crate) struct ChatWidget {
|
||||
safety_buffering_prompt: Option<UserMessage>,
|
||||
/// Main chat-surface bindings resolved from `tui.keymap.chat`.
|
||||
chat_keymap: ChatKeymap,
|
||||
permission_shortcut_pending: bool,
|
||||
/// Keybinding to show for popping the most-recently queued message back
|
||||
/// into the composer. This may differ from the first configured binding
|
||||
/// when the default set includes a terminal-specific fallback.
|
||||
|
||||
Reference in new issue
Block a user