diff --git a/modules/desktop-environment/home/panels/eww/configDir/bottomBar/workspaces.yuck b/modules/desktop-environment/home/panels/eww/configDir/bottomBar/workspaces.yuck index 96e37a5..16215ff 100644 --- a/modules/desktop-environment/home/panels/eww/configDir/bottomBar/workspaces.yuck +++ b/modules/desktop-environment/home/panels/eww/configDir/bottomBar/workspaces.yuck @@ -3,8 +3,8 @@ :class "workspaces" (for workspace in workspaces (button - :style "border-bottom: 4px solid ${workspace.color}" - :class "${workspace.active ? "focused" : 0}" + :style "border-bottom: 4px solid ${workspace.color}${workspace.active ? "; background-color: #3c3836" : ""}" + :class "${workspace.focused ? "focused" : ""}" :onclick "swaymsg workspace ${workspace.name}" (label :text "${workspace.idx}") ) diff --git a/modules/desktop-environment/home/panels/eww/configDir/eww.css b/modules/desktop-environment/home/panels/eww/configDir/eww.css index a61a23f..81a6604 100644 --- a/modules/desktop-environment/home/panels/eww/configDir/eww.css +++ b/modules/desktop-environment/home/panels/eww/configDir/eww.css @@ -10,10 +10,6 @@ label { border: 0px; } -.workspaces button.urgent { - background-color: #cc241d; -} - .workspaces button.focused { background-color: #504935; } @@ -37,4 +33,4 @@ label { .traveldingsWindow { border-radius: 15px; -} +} \ No newline at end of file diff --git a/programs/bar-ws-monitor/src/main.rs b/programs/bar-ws-monitor/src/main.rs index 23cfb6e..31d7d34 100644 --- a/programs/bar-ws-monitor/src/main.rs +++ b/programs/bar-ws-monitor/src/main.rs @@ -46,6 +46,7 @@ fn main() -> Result<(), std::io::Error> { .values() .map(|it| it.clone()) .collect::>(); + workspaces.sort_by(|a, b| a.idx.cmp(&b.idx)); workspaces.sort_by(|a, b| { a.output @@ -71,13 +72,21 @@ fn main() -> Result<(), std::io::Error> { let results = workspaces .iter() - .map(|ws| WsData { - color: output_colors_lut[&ws.output.clone().expect("unreachable")] - [if ws.is_active { 1 } else { 0 }], - idx: ws.idx, - focused: ws.is_focused, - active: ws.is_active, - }) + .map( + |Workspace { + idx, + output, + is_active, + is_focused, + .. + }| WsData { + color: output_colors_lut[&output.clone().expect("unreachable")] + [if *is_active { 1 } else { 0 }], + idx: *idx, + focused: *is_focused, + active: *is_active, + }, + ) .collect::>(); println!("{}", serde_json::to_string(&results).unwrap());