42 lines
1.4 KiB
Markdown
42 lines
1.4 KiB
Markdown
---
|
|
epic: 8
|
|
story: 8.7
|
|
title: "Windows Theming"
|
|
status: draft
|
|
---
|
|
|
|
## Epic 8 — Windows App (Rust + iced)
|
|
**Goal:** Fast, lightweight native Windows app -- single .exe, no runtime dependencies.
|
|
|
|
### Story 8.7: Windows Theming
|
|
|
|
As a **Windows user**,
|
|
I want CalcPad to match the Windows system theme including dark/light mode and accent colors,
|
|
So that the app looks like a native Windows 11 application.
|
|
|
|
**Acceptance Criteria:**
|
|
|
|
**Given** Windows is set to Light mode
|
|
**When** CalcPad launches
|
|
**Then** the app renders with a light theme
|
|
|
|
**Given** Windows is set to Dark mode
|
|
**When** CalcPad launches
|
|
**Then** the app renders with a dark theme
|
|
|
|
**Given** the system theme changes while CalcPad is running
|
|
**When** the registry key for `AppsUseLightTheme` changes
|
|
**Then** CalcPad detects the change and transitions to the new theme without restart
|
|
|
|
**Given** the user has a custom accent color set in Windows Settings
|
|
**When** CalcPad renders interactive elements (selections, focused borders, buttons)
|
|
**Then** the system accent color is used for those elements
|
|
|
|
**Given** the app is running on Windows 11
|
|
**When** the window renders
|
|
**Then** the custom iced theme approximates the Mica or Acrylic material design where feasible (or uses a flat theme that harmonizes with Windows 11 aesthetics)
|
|
|
|
**Given** the app is running on Windows 10
|
|
**When** the window renders
|
|
**Then** the theme degrades gracefully (no Mica/Acrylic, but still matches light/dark mode)
|