Add the Fusion Black and Fusion White themes

Fusion Black pairs near-black chrome with a paper-white canvas, so the
drawing is the only bright thing on screen. That breaks the assumption
in theme_canvas_background that the canvas follows the chrome, hence
the explicit lookup: falling through to the palette would paint model
space black and undo the point of the theme.

Both keep a blue accent rather than going fully greyscale. Selection
highlight defaults to the theme primary, and a white primary would be
invisible against a white canvas.

These are Theme::Custom values and so are absent from iced's
Theme::ALL. all_themes() is the list to enumerate from now; the picker
in the options dialog uses it, and parse_theme_name resolves both by
name.
This commit is contained in:
Matus Mastena committed 2026-09-17 16:51:41 +02:00
1 parent a570f4ac16
commit 648b261fd1
4 files changed
+163 -4

No files matched your search

+1 -1
View File
@@ -179,7 +179,7 @@ pub fn view_window<'a>(
.copied()
.find(|candidate| *candidate == default_save_format);
let theme_options = Theme::ALL
let theme_options = crate::app::config::all_themes()
.iter()
.map(ToString::to_string)
.chain(std::iter::once("Custom".to_string()))