feat: enhance keybinding management by integrating keybindingsEnabled state and updating related hooks

This commit is contained in:
Anwarul Islam
2025-07-18 08:05:02 +06:00
parent cdae10ca0a
commit 8e4661951d
2 changed files with 17 additions and 17 deletions
+12
View File
@@ -43,6 +43,7 @@ export interface KeybindingConflict {
interface KeybindingsState {
keybindings: KeybindingConfig;
isCustomized: boolean;
keybindingsEnabled: boolean;
// Actions
updateKeybinding: (key: string, action: ActionWithOptionalArgs) => void;
@@ -50,6 +51,8 @@ interface KeybindingsState {
resetToDefaults: () => void;
importKeybindings: (config: KeybindingConfig) => void;
exportKeybindings: () => KeybindingConfig;
enableKeybindings: () => void;
disableKeybindings: () => void;
// Validation
validateKeybinding: (
@@ -67,6 +70,7 @@ export const useKeybindingsStore = create<KeybindingsState>()(
(set, get) => ({
keybindings: { ...defaultKeybindings },
isCustomized: false,
keybindingsEnabled: true,
updateKeybinding: (key: string, action: ActionWithOptionalArgs) => {
set((state) => {
@@ -99,6 +103,14 @@ export const useKeybindingsStore = create<KeybindingsState>()(
});
},
enableKeybindings: () => {
set({ keybindingsEnabled: true });
},
disableKeybindings: () => {
set({ keybindingsEnabled: false });
},
importKeybindings: (config: KeybindingConfig) => {
set({
keybindings: { ...config },