Replace sidebar header with workspace picker row

The design's sidebar opens with an ELY title row plus a three-part
workspace picker: a layout-grid tile (opens spaces settings), a glass
pill showing the active space's emoji + name (cycles to next space on
click), and a plus button (opens spaces settings). The previous header
was a static title + space-name label that did not match the design.

Cycle behaviour reuses the existing select_next_space core API to avoid
introducing a new state flow; the existing SelectNextSpace shortcut
delegates through the same helper.
This commit is contained in:
2026-05-09 17:55:35 -04:00
parent dcd4bb4c48
commit 7508767014
4 changed files with 209 additions and 34 deletions
+4
View File
@@ -87,6 +87,10 @@ impl ElyShell {
window: &mut Window,
cx: &mut Context<Self>,
) {
self.cycle_to_next_space(window, cx);
}
pub(super) fn cycle_to_next_space(&mut self, window: &mut Window, cx: &mut Context<Self>) {
if let ShellState::Ready(core) = &mut self.state
&& core.select_next_space().is_ok()
{