diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2024-01-15 10:31:44 +0400 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2024-01-15 10:31:44 +0400 |
| commit | cc4acdf24a0864e061e7ea54d6b3589402f2082d (patch) | |
| tree | 193905d10622fca3b6838bb97015e4c7d4677706 /src/layout/mod.rs | |
| parent | 2506d43bb9b78adbfa291604616363089b4dcc21 (diff) | |
| download | niri-cc4acdf24a0864e061e7ea54d6b3589402f2082d.tar.gz niri-cc4acdf24a0864e061e7ea54d6b3589402f2082d.tar.bz2 niri-cc4acdf24a0864e061e7ea54d6b3589402f2082d.zip | |
Add move-column-to-workspace* binds
As opposed to move-window-to-workspace*
Diffstat (limited to 'src/layout/mod.rs')
| -rw-r--r-- | src/layout/mod.rs | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/layout/mod.rs b/src/layout/mod.rs index fbbd1292..5933b217 100644 --- a/src/layout/mod.rs +++ b/src/layout/mod.rs @@ -897,6 +897,27 @@ impl<W: LayoutElement> Layout<W> { monitor.move_to_workspace(idx); } + pub fn move_column_to_workspace_up(&mut self) { + let Some(monitor) = self.active_monitor() else { + return; + }; + monitor.move_column_to_workspace_up(); + } + + pub fn move_column_to_workspace_down(&mut self) { + let Some(monitor) = self.active_monitor() else { + return; + }; + monitor.move_column_to_workspace_down(); + } + + pub fn move_column_to_workspace(&mut self, idx: usize) { + let Some(monitor) = self.active_monitor() else { + return; + }; + monitor.move_column_to_workspace(idx); + } + pub fn switch_workspace_up(&mut self) { let Some(monitor) = self.active_monitor() else { return; @@ -1608,6 +1629,9 @@ mod tests { MoveWindowToWorkspaceDown, MoveWindowToWorkspaceUp, MoveWindowToWorkspace(#[proptest(strategy = "0..=4usize")] usize), + MoveColumnToWorkspaceDown, + MoveColumnToWorkspaceUp, + MoveColumnToWorkspace(#[proptest(strategy = "0..=4usize")] usize), MoveWorkspaceDown, MoveWorkspaceUp, MoveWindowToOutput(#[proptest(strategy = "1..=5u8")] u8), @@ -1729,6 +1753,9 @@ mod tests { Op::MoveWindowToWorkspaceDown => layout.move_to_workspace_down(), Op::MoveWindowToWorkspaceUp => layout.move_to_workspace_up(), Op::MoveWindowToWorkspace(idx) => layout.move_to_workspace(idx), + Op::MoveColumnToWorkspaceDown => layout.move_column_to_workspace_down(), + Op::MoveColumnToWorkspaceUp => layout.move_column_to_workspace_up(), + Op::MoveColumnToWorkspace(idx) => layout.move_column_to_workspace(idx), Op::MoveWindowToOutput(id) => { let name = format!("output{id}"); let Some(output) = layout.outputs().find(|o| o.name() == name).cloned() else { @@ -1855,6 +1882,11 @@ mod tests { Op::MoveWindowToWorkspace(1), Op::MoveWindowToWorkspace(2), Op::MoveWindowToWorkspace(3), + Op::MoveColumnToWorkspaceDown, + Op::MoveColumnToWorkspaceUp, + Op::MoveColumnToWorkspace(1), + Op::MoveColumnToWorkspace(2), + Op::MoveColumnToWorkspace(3), Op::MoveWindowDown, Op::MoveWindowDownOrToWorkspaceDown, Op::MoveWindowUp, @@ -1977,6 +2009,11 @@ mod tests { Op::MoveWindowToWorkspace(1), Op::MoveWindowToWorkspace(2), Op::MoveWindowToWorkspace(3), + Op::MoveColumnToWorkspaceDown, + Op::MoveColumnToWorkspaceUp, + Op::MoveColumnToWorkspace(1), + Op::MoveColumnToWorkspace(2), + Op::MoveColumnToWorkspace(3), Op::MoveWindowDown, Op::MoveWindowDownOrToWorkspaceDown, Op::MoveWindowUp, |
