feat: integrate global keyboard shortcuts across multiple components

- Added `KeyboardShortcutsProvider` to `RootLayout` for centralized keyboard shortcut management.
- Implemented `useGlobalKeyboardShortcuts` in `DailyPageClient`, `KanbanPageClient`, and `HomePageClient` to enhance navigation and task management with keyboard shortcuts.
- Updated `KeyboardShortcuts` component to render a modal for displaying available shortcuts, improving user accessibility.
- Enhanced `Header` component with buttons to open the keyboard shortcuts modal, streamlining user interaction.
This commit is contained in:
Julien Froidefond
2025-09-29 17:29:11 +02:00
parent c1a14f9196
commit 749f69680b
10 changed files with 487 additions and 8 deletions

View File

@@ -1,8 +1,19 @@
'use client';
import { useKeyboardShortcuts } from '@/hooks/useKeyboardShortcuts';
import { useKeyboardShortcutsModal } from '@/contexts/KeyboardShortcutsContext';
import { KeyboardShortcutsModal } from '@/components/ui/KeyboardShortcutsModal';
export function KeyboardShortcuts() {
useKeyboardShortcuts();
return null; // Ce composant ne rend rien, il gère juste les raccourcis
const { isOpen, shortcuts, closeModal } = useKeyboardShortcutsModal();
return (
<KeyboardShortcutsModal
isOpen={isOpen}
onClose={closeModal}
shortcuts={shortcuts}
title="Raccourcis clavier"
/>
);
}