Route domain WallpaperTheme through render_wallpaper

The shell now reads snapshot.appearance.wallpaper and feeds the domain
WallpaperTheme directly into render_wallpaper. The chrome enum is
deleted; the four design themes (Dawn / Violet / Mint / Slate) all map
to base + upper-blob + lower-blob HSLA palettes that approximate the
design's radial gradients with GPUI's 2-stop linear gradient pair.

Switching themes via core.set_wallpaper_theme now propagates through
snapshots into the next render.
This commit is contained in:
2026-05-09 18:48:54 -04:00
parent 53dc40986a
commit 9780fdbc8c
3 changed files with 41 additions and 35 deletions
+2 -2
View File
@@ -7,7 +7,7 @@ use gpui::{
};
use super::chrome::{
PANEL_BG, WallpaperTheme, panel_shadow, render_command_overlay,
PANEL_BG, panel_shadow, render_command_overlay,
render_topbar as render_topbar_chrome, render_wallpaper,
};
use super::sidebar::collapsed_sidebar_active;
@@ -64,7 +64,7 @@ impl ElyShell {
.on_action(cx.listener(Self::on_zoom_in))
.on_action(cx.listener(Self::on_zoom_out))
.text_color(rgb(colors::INK))
.child(render_wallpaper(WallpaperTheme::Dawn))
.child(render_wallpaper(snapshot.appearance.wallpaper()))
.child(
div()
.absolute()