pause to fix nav/theme

This commit is contained in:
Michael Freno
2026-02-04 12:38:35 -05:00
parent cdabf2c3e0
commit 624a6ba022
20 changed files with 1078 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
# 06. Implement Left/Right Layer Navigation Controls
meta:
id: podtui-navigation-theming-improvements-06
feature: podtui-navigation-theming-improvements
priority: P2
depends_on: [podtui-navigation-theming-improvements-05]
tags: [implementation, navigation, keyboard]
objective:
- Implement left/right arrow key navigation between layers
- Add keyboard handlers for <left> and <right> keys
- Update navigation state to track current layer index
deliverables:
- Updated Navigation component with left/right navigation
- Keyboard handler implementation in App.tsx
- Updated layer management logic
steps:
- Read references/keyboard/REFERENCE.md for keyboard handling patterns
- Design layer index management (currentLayer, maxLayers)
- Update Navigation component to show layer navigation hints
- Add <left> and <right> key handlers in App.tsx useAppKeyboard hook
- Update layerDepth signal to reflect current layer index
- Add visual indicators for current layer position
- Update layer rendering to show active layer with left/right arrows
- Test navigation between layers
- Ensure keyboard shortcuts don't conflict with page-specific shortcuts
tests:
- Unit: Test keyboard handler with mocked key events
- Integration: Test left/right navigation between layers
acceptance_criteria:
- <left> key navigates to previous layer
- <right> key navigates to next layer
- Current layer is visually indicated
- Navigation hints are shown in Navigation component
- No keyboard conflicts with page-specific shortcuts
- Navigation works correctly at layer boundaries
validation:
- Run `bun run start` and test left/right navigation
- Verify current layer is highlighted
- Check that navigation hints are visible
- Test at layer boundaries (first/last layer)
- Verify no conflicts with page shortcuts
notes:
- Use references/keyboard/REFERENCE.md for proper keyboard handling patterns
- Consider accessibility and screen reader support
- Ensure consistent behavior across all pages
- Test with different terminal sizes