Skip to main content

DevelopmentNodeEnvironment_MicrosoftVSCodeDependency_22NodeVersion_Bundle_Clean_Debug_ElectronProfile_EsbuildCompiler_Mountain/Command/
Keybinding.rs

1//! # Keybinding (Tauri command surface)
2//!
3//! Bridges keyboard-shortcut UI requests from Sky into the
4//! `KeybindingProvider` registry. Five wire-bound commands, each in its
5//! own file (file name = Tauri command identifier per the
6//! Naming-Convention exception):
7//!
8//! - `GetResolvedKeybinding::GetResolvedKeybinding` - final resolved bindings
9//!   after merging defaults + extension contributions + user.
10//! - `GetUserKeybindings::GetUserKeybindings` - user overrides (stub).
11//! - `RegisterExtensionKeybindings::RegisterExtensionKeybindings` (stub).
12//! - `UnregisterExtensionKeybindings::UnregisterExtensionKeybindings` (stub).
13//! - `CheckKeybindingConflicts::CheckKeybindingConflicts` - chord overlap
14//!   detection (stub).
15//!
16//! Errors propagate as `Result<Value, String>` for direct frontend
17//! display.
18//!
19//! VS Code reference:
20//! `vs/workbench/services/keybinding/browser/keybindingService.ts`,
21//! `vs/platform/keybinding/common/keybindingResolver.ts`.
22//!
23//! ## Planned Work
24//!
25//! - Weighted resolution (user > extension > default)
26//! - Persistence to ApplicationState
27//! - When-clause context evaluation
28//! - Chord (multi-stroke) sequences
29//! - Platform-specific bindings
30//! - Conflict-resolution UI
31
32pub mod CheckKeybindingConflicts;
33
34pub mod GetResolvedKeybinding;
35
36pub mod GetUserKeybindings;
37
38pub mod RegisterExtensionKeybindings;
39
40pub mod UnregisterExtensionKeybindings;