diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2023-09-27 13:45:49 +0400 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2023-09-27 13:45:49 +0400 |
| commit | 06d15e4adc427bafd24571495627d6ee5a15fc03 (patch) | |
| tree | 8fb5e6878b571e360ca1f35e91c54c25e6235619 /src | |
| parent | 31ea816d2b5cf9407f8291186e85060578251054 (diff) | |
| download | niri-06d15e4adc427bafd24571495627d6ee5a15fc03.tar.gz niri-06d15e4adc427bafd24571495627d6ee5a15fc03.tar.bz2 niri-06d15e4adc427bafd24571495627d6ee5a15fc03.zip | |
layout: Add more ops for proptest to play with
Diffstat (limited to 'src')
| -rw-r--r-- | src/layout.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/layout.rs b/src/layout.rs index a501c401..8f8fbb87 100644 --- a/src/layout.rs +++ b/src/layout.rs @@ -2445,10 +2445,15 @@ mod tests { activate: bool, }, CloseWindow(#[proptest(strategy = "1..=5usize")] usize), + FullscreenWindow(#[proptest(strategy = "1..=5usize")] usize), FocusColumnLeft, FocusColumnRight, + FocusWindowDown, + FocusWindowUp, MoveColumnLeft, MoveColumnRight, + MoveWindowDown, + MoveWindowUp, ConsumeWindowIntoColumn, ExpelWindowFromColumn, FocusWorkspaceDown, @@ -2457,6 +2462,9 @@ mod tests { MoveWindowToWorkspaceDown, MoveWindowToWorkspaceUp, MoveWindowToWorkspace(#[proptest(strategy = "1..=5u8")] u8), + MoveWindowToOutput(#[proptest(strategy = "1..=5u8")] u8), + SwitchPresetColumnWidth, + MaximizeColumn, } impl Op { @@ -2514,10 +2522,18 @@ mod tests { let dummy = TestWindow::new(id, Rectangle::default()); monitor_set.remove_window(&dummy); } + Op::FullscreenWindow(id) => { + let dummy = TestWindow::new(id, Rectangle::default()); + monitor_set.toggle_fullscreen(&dummy); + } Op::FocusColumnLeft => monitor_set.focus_left(), Op::FocusColumnRight => monitor_set.focus_right(), + Op::FocusWindowDown => monitor_set.focus_down(), + Op::FocusWindowUp => monitor_set.focus_up(), Op::MoveColumnLeft => monitor_set.move_left(), Op::MoveColumnRight => monitor_set.move_right(), + Op::MoveWindowDown => monitor_set.move_down(), + Op::MoveWindowUp => monitor_set.move_up(), Op::ConsumeWindowIntoColumn => monitor_set.consume_into_column(), Op::ExpelWindowFromColumn => monitor_set.expel_from_column(), Op::FocusWorkspaceDown => monitor_set.switch_workspace_down(), @@ -2526,6 +2542,17 @@ mod tests { Op::MoveWindowToWorkspaceDown => monitor_set.move_to_workspace_down(), Op::MoveWindowToWorkspaceUp => monitor_set.move_to_workspace_up(), Op::MoveWindowToWorkspace(idx) => monitor_set.move_to_workspace(idx), + Op::MoveWindowToOutput(id) => { + let name = format!("output{id}"); + let Some(output) = monitor_set.outputs().find(|o| o.name() == name).cloned() + else { + return; + }; + + monitor_set.move_to_output(&output); + } + Op::SwitchPresetColumnWidth => monitor_set.toggle_width(), + Op::MaximizeColumn => monitor_set.toggle_full_width(), } } } |
