Implement complete keyboard navigation and UI enhancement

Phase 1 - Panel Navigation:
- Add PanelType enum and panel focus state management
- Implement Shift+Tab cycling between panels (System → Services → Backup → Network)
- Add visual focus indicators with blue borders for focused panels
- Preserve existing Tab behavior for host switching

Phase 2 - Dynamic Statusbar:
- Add bottom statusbar with context-aware shortcuts
- Display different shortcuts based on focused panel
- Global shortcuts: Tab, Shift+Tab, Up/Down arrows, Q
- Panel-specific shortcuts: R (Rebuild), Space/R (Services), B (Backup), N (Network)

Phase 3 - Scrolling Support:
- Add scroll state management per host and panel type
- Implement Up/Down arrow key scrolling within focused panels
- Smart scrolling that activates only when content exceeds panel height
- Scroll bounds checking to prevent over-scrolling

Complete keyboard navigation experience with visual feedback and contextual help.
This commit is contained in:
2025-10-23 20:34:45 +02:00
parent 51375e8020
commit 8cb5650fbb
5 changed files with 278 additions and 23 deletions

View File

@@ -40,20 +40,35 @@ Storage:
└─ ● 18% 167.4GB/928.2GB
```
**Outstanding Issue:**
- Dashboard displays "Build: unknown" despite agent collecting metrics correctly
- Need to investigate ZMQ communication or dashboard metric filtering
**Current Status - October 23, 2025:**
- System panel layout fully implemented with blue tree symbols ✅
- Backup panel layout restructured per specification ✅
- Tree symbols now use consistent blue theming across all panels ✅
- Overflow handling restored for all widgets ("... and X more") ✅
- Agent hash display working correctly ✅
### Future Priorities
### Next Implementation Phase: Keyboard Navigation & UI Enhancement
**Keyboard Navigation (Dashboard):**
- Change host switching to "Shift-Tab"
- Add panel navigation with "Tab"
- Add scrolling support for overflow content
**Phase 1 - Panel Navigation (In Progress):**
- Add panel focus state management to TuiApp
- Implement Shift-Tab for panel cycling (System → Services → Backup → Network)
- Keep Tab for host switching as current behavior
- Add visual focus indicators to panel borders
**Remote Execution (Agent/Dashboard):**
- Dynamic statusbar with context shortcuts
- Remote nixos rebuild commands
**Phase 2 - Dynamic Statusbar:**
- Create bottom statusbar showing context-aware shortcuts
- System panel: "R: Rebuild", "S: Services"
- Services panel: "Space: Start/Stop", "R: Restart"
- Backup panel: "B: Trigger Backup"
- Global: "Tab: Switch Host", "Shift-Tab: Switch Panel"
**Phase 3 - Scrolling Support:**
- Add Up/Down arrow key handling within focused panels
- Implement scroll offset tracking for overflow content
- Add scroll position indicators (↑/↓) when needed
**Future - Remote Execution:**
- Remote nixos rebuild commands via dashboard
- Service start/stop/restart controls
- Backup trigger functionality