Add centered workspace thumbnails to overview

Render a tinted, scrollable workspace strip with live thumbnails, output-scaled font labels and a subtle selected-workspace outline. Keep the window grid background-free and support workspace selection without exiting overview.

Animate strip opacity independently with precise fade tolerances and continuous reversal, and expose toggle-overview through feresectl.
This commit is contained in:
Samuel Onoja committed 2026-09-26 15:13:13 +01:00
1 parent 0709484efb
commit b422448d88
11 files changed
+775 -52

No files matched your search

+14
View File
@@ -167,6 +167,8 @@ impl Default for InactiveDimConfig {
#[derive(Debug, Default, Deserialize)]
struct ThemeConfig {
#[serde(default)]
typography: OverviewTypographyConfig,
#[serde(default)]
background: crate::wallpaper::WallpaperConfig,
#[serde(default)]
@@ -182,11 +184,23 @@ struct ThemeConfig {
}
impl Config {
pub(crate) fn overview_font_family(&self) -> String {
self.theme
.typography
.font_family
.clone()
.unwrap_or_else(|| "sans-serif".into())
}
pub(crate) fn wallpaper_settings(&self) -> crate::wallpaper::WallpaperConfig {
self.theme.background.clone()
}
}
#[derive(Debug, Default, Deserialize)]
struct OverviewTypographyConfig {
font_family: Option<String>,
}
#[derive(Debug, Default, Deserialize)]
struct ThemeSurfaceConfig {
#[serde(default)]