Epic: E
Depends on: TP-17
Source: docs/theme-parser-github-issues.md
Goal
Prevent broken custom themes from breaking app startup.
Files
lib/core/theme/theme_controller.dart
- tests for controller.
Implementation
On ThemeController.load():
- Read selected theme id/path.
- Try registry load.
- If failure:
- set active theme to Querya Dark;
- keep
selectedThemeLoadError;
- do not crash;
- do not delete user setting automatically.
- Preferences can show:
- "Selected theme failed to load. Using Querya Dark."
Acceptance Criteria
- Missing selected file starts app with Querya Dark.
- Invalid selected file starts app with Querya Dark.
- Error visible in Preferences.
- User can choose another theme and clear error.
Tests
- missing file;
- invalid file;
- subsequent valid selection clears error.
Epic: E
Depends on: TP-17
Source:
docs/theme-parser-github-issues.mdGoal
Prevent broken custom themes from breaking app startup.
Files
lib/core/theme/theme_controller.dartImplementation
On
ThemeController.load():selectedThemeLoadError;Acceptance Criteria
Tests