diff --git a/src/shell/mod.rs b/src/shell/mod.rs index b5ce2f25..b3e7dc00 100644 --- a/src/shell/mod.rs +++ b/src/shell/mod.rs @@ -868,6 +868,28 @@ impl Workspaces { set.active += 1; } set.workspaces.insert(insert_idx, workspace); + + for (i, workspace) in set.workspaces.iter_mut().enumerate() { + workspace_set_idx( + workspace_state, + i as u8 + 1, + set.idx, + &workspace.handle, + ); + } + + if set.group != old_group { + let old_set = self.sets.values_mut().find(|s| s.group == old_group).unwrap(); + for (i, workspace) in old_set.workspaces.iter_mut().enumerate() { + workspace_set_idx( + workspace_state, + i as u8 + 1, + old_set.idx, + &workspace.handle, + ); + } + } + return; } }