mirror of
https://github.com/wwiinnddyy/LanMountainDesktop.git
synced 2026-06-20 23:54:26 +08:00
Introduce unified material/color spec and tests, and refactor appearance plumbing to use MaterialColorSnapshot as the single source of truth. Add .trae material-color-service spec/checklist/tasks and integration/unit tests for plugin mapping and appearance VM behavior. AppearanceChangedEvent extended with new appearance change flags and HasChanged logic. ComponentEditorMaterialThemeAdapter rewritten to accept MaterialColorSnapshot and derive palette from snapshot data. Simplify AppearanceSettingsPageViewModel and related view code: remove legacy preview/custom-seed UI logic, preserve material/color fields when updating theme or corner radius, and update save calls to use with-expressions. Update ComponentEditorWindow to use adapter-provided OnPrimary brush and minor docs updates.
960 B
960 B
Material Color Service Tasks
- Add unified material/color snapshot models and
IMaterialColorService. - Persist wallpaper color source and native wallpaper event preference.
- Add the Material & Color settings page.
- Keep Appearance focused on theme mode, window chrome, and corner radius.
- Route plugin appearance snapshots through the material/color snapshot.
- Route component editor theming through the material/color snapshot.
- Remove legacy color/material preview and save logic from the Appearance page view model.
- Replace legacy positional
ThemeAppearanceSettingsStatewrites with preservingwithupdates where found. - Keep native wallpaper events optional with polling/manual refresh fallback.
- Add regression tests for normalization, plugin mapping, and component editor palette mapping.
- Continue retiring legacy direct consumers of raw theme/wallpaper/Monet tuples when they are touched.