mirror of
https://github.com/niri-wm/niri.git
synced 2026-06-24 02:01:18 +07:00
layout: Add more ops for proptest to play with
This commit is contained in:
@@ -2445,10 +2445,15 @@ mod tests {
|
|||||||
activate: bool,
|
activate: bool,
|
||||||
},
|
},
|
||||||
CloseWindow(#[proptest(strategy = "1..=5usize")] usize),
|
CloseWindow(#[proptest(strategy = "1..=5usize")] usize),
|
||||||
|
FullscreenWindow(#[proptest(strategy = "1..=5usize")] usize),
|
||||||
FocusColumnLeft,
|
FocusColumnLeft,
|
||||||
FocusColumnRight,
|
FocusColumnRight,
|
||||||
|
FocusWindowDown,
|
||||||
|
FocusWindowUp,
|
||||||
MoveColumnLeft,
|
MoveColumnLeft,
|
||||||
MoveColumnRight,
|
MoveColumnRight,
|
||||||
|
MoveWindowDown,
|
||||||
|
MoveWindowUp,
|
||||||
ConsumeWindowIntoColumn,
|
ConsumeWindowIntoColumn,
|
||||||
ExpelWindowFromColumn,
|
ExpelWindowFromColumn,
|
||||||
FocusWorkspaceDown,
|
FocusWorkspaceDown,
|
||||||
@@ -2457,6 +2462,9 @@ mod tests {
|
|||||||
MoveWindowToWorkspaceDown,
|
MoveWindowToWorkspaceDown,
|
||||||
MoveWindowToWorkspaceUp,
|
MoveWindowToWorkspaceUp,
|
||||||
MoveWindowToWorkspace(#[proptest(strategy = "1..=5u8")] u8),
|
MoveWindowToWorkspace(#[proptest(strategy = "1..=5u8")] u8),
|
||||||
|
MoveWindowToOutput(#[proptest(strategy = "1..=5u8")] u8),
|
||||||
|
SwitchPresetColumnWidth,
|
||||||
|
MaximizeColumn,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Op {
|
impl Op {
|
||||||
@@ -2514,10 +2522,18 @@ mod tests {
|
|||||||
let dummy = TestWindow::new(id, Rectangle::default());
|
let dummy = TestWindow::new(id, Rectangle::default());
|
||||||
monitor_set.remove_window(&dummy);
|
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::FocusColumnLeft => monitor_set.focus_left(),
|
||||||
Op::FocusColumnRight => monitor_set.focus_right(),
|
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::MoveColumnLeft => monitor_set.move_left(),
|
||||||
Op::MoveColumnRight => monitor_set.move_right(),
|
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::ConsumeWindowIntoColumn => monitor_set.consume_into_column(),
|
||||||
Op::ExpelWindowFromColumn => monitor_set.expel_from_column(),
|
Op::ExpelWindowFromColumn => monitor_set.expel_from_column(),
|
||||||
Op::FocusWorkspaceDown => monitor_set.switch_workspace_down(),
|
Op::FocusWorkspaceDown => monitor_set.switch_workspace_down(),
|
||||||
@@ -2526,6 +2542,17 @@ mod tests {
|
|||||||
Op::MoveWindowToWorkspaceDown => monitor_set.move_to_workspace_down(),
|
Op::MoveWindowToWorkspaceDown => monitor_set.move_to_workspace_down(),
|
||||||
Op::MoveWindowToWorkspaceUp => monitor_set.move_to_workspace_up(),
|
Op::MoveWindowToWorkspaceUp => monitor_set.move_to_workspace_up(),
|
||||||
Op::MoveWindowToWorkspace(idx) => monitor_set.move_to_workspace(idx),
|
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(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user