diff --git a/CLAUDE.md b/CLAUDE.md index ecf61f0..119921d 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -10,7 +10,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co - **Full keyboard navigation** - No mouse required for any configuration task - **Screen reader compatible** - Works seamlessly with Orca and other assistive technologies - **Window mode by default** - Opens configuration window directly (use `--tray` for system tray) -- **English-only interface** - Translation system removed for simplicity and better screen reader performance +- **English-only interface** - Translation system removed for simplicity - **Separate config directory** - Uses `~/.config/thunderpad/` to coexist with QJoyPad ## Critical Development Principle @@ -52,7 +52,7 @@ cmake .. -DCMAKE_BUILD_TYPE=Debug - Qt5Widgets, Qt5X11Extras - libudev (optional, for automatic device detection) - Linux joystick driver support -- For accessibility testing: Orca screen reader +- For accessibility testing: Orca screen reader or Cthulhu screen reader ## Code Architecture @@ -135,19 +135,19 @@ All source code has been systematically updated: ```bash # Build and run locally (default: window mode) make -./thunderpad +DISPLAY=:0 ./thunderpad # Test with system tray mode -./thunderpad --tray +DISPLAY=:0 ./thunderpad --tray # Test with specific layout -./thunderpad "layout-name" +DISPLAY=:0 ./thunderpad "layout-name" # Update device list in running instance -./thunderpad --update +DISPLAY=:0 ./thunderpad --update # Test accessibility with screen reader -# Start Orca first, then launch thunderpad +# Start Orca or Cthulhu first, then launch thunderpad ``` ### Accessibility Testing Requirements @@ -160,7 +160,7 @@ make - Ensure Escape key behavior is consistent 2. **Screen Reader Test**: - - Launch with Orca running + - Launch with Orca or Cthulhu running - Verify all interface elements are announced properly - Check that focus changes are announced - Ensure list items have descriptive labels @@ -191,7 +191,6 @@ make 5. **Keyboard-only operation**: Every function accessible via keyboard ### Removed Features (For Accessibility) -- **Translation system**: English-only interface reduces complexity - **FlashRadioArray widgets**: Replaced with standard Qt accessible widgets - **Click-to-configure interfaces**: Replaced with explicit configure buttons - **System tray requirement**: Optional with `--tray` flag @@ -255,7 +254,6 @@ src/ - **Interface redesign**: Complete overhaul for keyboard navigation - **Widget replacement**: Accessible alternatives to custom widgets - **Default behavior**: Window mode instead of system tray -- **Translation removal**: English-only for screen reader performance - **Focus management**: Explicit tab order and focus policies ### Development Impact @@ -291,4 +289,4 @@ src/ - Preserve core joystick mapping functionality - Ensure coexistence capability with QJoyPad installations -Remember: **Accessibility is not optional** - it's the core mission of ThunderPad. \ No newline at end of file +Remember: **Accessibility is not optional** - it's the core mission of ThunderPad.