Commit Graph

5 Commits

Author SHA1 Message Date
spirit 95036915f6 feat: Add loading progress indicator
CI / build (push) Has been cancelled
CI / lint (push) Has been cancelled
- ProgressBar in activity_main.xml (top of screen)
- LoadingProgress.kt utility with WebChromeClient
- Shows during page load, hides on complete
- Smooth UX with slight hide delay

Integration: webView.setupProgressBar(binding.progressBar)
2026-02-03 15:17:27 +00:00
spirit 3c0c31fe67 feat: Add network error handling
CI / build (push) Has been cancelled
CI / lint (push) Has been cancelled
- error.html: User-friendly error page with retry button
- ErrorHandler.kt: Utility for handling WebView errors
- ErrorHandlerTest.kt: Unit tests for error handling

Shows friendly error page on network failures instead of blank/broken page.
Includes error code display and one-tap retry.
2026-02-03 15:16:14 +00:00
spirit 68a486cf9b test: Add comprehensive unit tests
- IdleTimerTest.kt: 6 tests for timeout calculations
- ConfigValidationTest.kt: 16 tests for config validation
  - Homepage URL validation
  - Admin PIN validation (4-8 digits)
  - Whitelist parsing and normalization
- Updated IMPROVEMENTS.md with test coverage

Total unit tests: 29
2026-02-03 15:13:23 +00:00
pluto 4f2430d354 fix(security): Whitelist bypass vulnerability
- Fixed URL whitelist to use proper domain boundary matching
- Added WhitelistTest.kt with 6 test cases
- Added IMPROVEMENTS.md with code review notes

Security fix identified by Spirit 👻
Co-authored-by: Spirit <spirit@hobbs.farm>
Co-authored-by: Margaret <margaret@hobbs.farm>
2026-02-03 09:11:06 -06:00
pluto 6dc1a73d2e feat: MVP implementation - Kiosk Browser
- Fullscreen WebView with immersive mode
- URL whitelist system
- Admin PIN-protected settings
- Boot receiver for auto-launch
- Idle timeout with homepage reset
- Lock Task Mode support
- Material Design 3 UI

Team: Pluto (coordinator), Margaret, Spirit
2026-02-03 09:09:20 -06:00