pub enum Action {
Show 84 variants
Quit {
skip_confirmation: bool,
},
PowerOffMonitors {},
PowerOnMonitors {},
Spawn {
command: Vec<String>,
},
DoScreenTransition {
delay_ms: Option<u16>,
},
Screenshot {},
ScreenshotScreen {},
ScreenshotWindow {
id: Option<u64>,
},
CloseWindow {
id: Option<u64>,
},
FullscreenWindow {
id: Option<u64>,
},
FocusWindow {
id: u64,
},
FocusWindowPrevious {},
FocusColumnLeft {},
FocusColumnRight {},
FocusColumnFirst {},
FocusColumnLast {},
FocusColumnRightOrFirst {},
FocusColumnLeftOrLast {},
FocusWindowOrMonitorUp {},
FocusWindowOrMonitorDown {},
FocusColumnOrMonitorLeft {},
FocusColumnOrMonitorRight {},
FocusWindowDown {},
FocusWindowUp {},
FocusWindowDownOrColumnLeft {},
FocusWindowDownOrColumnRight {},
FocusWindowUpOrColumnLeft {},
FocusWindowUpOrColumnRight {},
FocusWindowOrWorkspaceDown {},
FocusWindowOrWorkspaceUp {},
MoveColumnLeft {},
MoveColumnRight {},
MoveColumnToFirst {},
MoveColumnToLast {},
MoveColumnLeftOrToMonitorLeft {},
MoveColumnRightOrToMonitorRight {},
MoveWindowDown {},
MoveWindowUp {},
MoveWindowDownOrToWorkspaceDown {},
MoveWindowUpOrToWorkspaceUp {},
ConsumeOrExpelWindowLeft {
id: Option<u64>,
},
ConsumeOrExpelWindowRight {
id: Option<u64>,
},
ConsumeWindowIntoColumn {},
ExpelWindowFromColumn {},
CenterColumn {},
FocusWorkspaceDown {},
FocusWorkspaceUp {},
FocusWorkspace {
reference: WorkspaceReferenceArg,
},
FocusWorkspacePrevious {},
MoveWindowToWorkspaceDown {},
MoveWindowToWorkspaceUp {},
MoveWindowToWorkspace {
window_id: Option<u64>,
reference: WorkspaceReferenceArg,
},
MoveColumnToWorkspaceDown {},
MoveColumnToWorkspaceUp {},
MoveColumnToWorkspace {
reference: WorkspaceReferenceArg,
},
MoveWorkspaceDown {},
MoveWorkspaceUp {},
FocusMonitorLeft {},
FocusMonitorRight {},
FocusMonitorDown {},
FocusMonitorUp {},
MoveWindowToMonitorLeft {},
MoveWindowToMonitorRight {},
MoveWindowToMonitorDown {},
MoveWindowToMonitorUp {},
MoveColumnToMonitorLeft {},
MoveColumnToMonitorRight {},
MoveColumnToMonitorDown {},
MoveColumnToMonitorUp {},
SetWindowHeight {
id: Option<u64>,
change: SizeChange,
},
ResetWindowHeight {
id: Option<u64>,
},
SwitchPresetColumnWidth {},
SwitchPresetWindowHeight {
id: Option<u64>,
},
MaximizeColumn {},
SetColumnWidth {
change: SizeChange,
},
SwitchLayout {
layout: LayoutSwitchTarget,
},
ShowHotkeyOverlay {},
MoveWorkspaceToMonitorLeft {},
MoveWorkspaceToMonitorRight {},
MoveWorkspaceToMonitorDown {},
MoveWorkspaceToMonitorUp {},
ToggleDebugTint {},
DebugToggleOpaqueRegions {},
DebugToggleDamage {},
}
Expand description
Actions that niri can perform.
Variants§
Quit
Exit niri.
PowerOffMonitors
Power off all monitors via DPMS.
PowerOnMonitors
Power on all monitors via DPMS.
Spawn
Spawn a command.
DoScreenTransition
Do a screen transition.
Fields
Screenshot
Open the screenshot UI.
ScreenshotScreen
Screenshot the focused screen.
ScreenshotWindow
Screenshot a window.
CloseWindow
Close a window.
FullscreenWindow
Toggle fullscreen on a window.
FocusWindow
Focus a window by id.
FocusWindowPrevious
Focus the previously focused window.
FocusColumnLeft
Focus the column to the left.
FocusColumnRight
Focus the column to the right.
FocusColumnFirst
Focus the first column.
FocusColumnLast
Focus the last column.
FocusColumnRightOrFirst
Focus the next column to the right, looping if at end.
FocusColumnLeftOrLast
Focus the next column to the left, looping if at start.
FocusWindowOrMonitorUp
Focus the window or the monitor above.
FocusWindowOrMonitorDown
Focus the window or the monitor below.
FocusColumnOrMonitorLeft
Focus the column or the monitor to the left.
FocusColumnOrMonitorRight
Focus the column or the monitor to the right.
FocusWindowDown
Focus the window below.
FocusWindowUp
Focus the window above.
FocusWindowDownOrColumnLeft
Focus the window below or the column to the left.
FocusWindowDownOrColumnRight
Focus the window below or the column to the right.
FocusWindowUpOrColumnLeft
Focus the window above or the column to the left.
FocusWindowUpOrColumnRight
Focus the window above or the column to the right.
FocusWindowOrWorkspaceDown
Focus the window or the workspace above.
FocusWindowOrWorkspaceUp
Focus the window or the workspace above.
MoveColumnLeft
Move the focused column to the left.
MoveColumnRight
Move the focused column to the right.
MoveColumnToFirst
Move the focused column to the start of the workspace.
MoveColumnToLast
Move the focused column to the end of the workspace.
MoveColumnLeftOrToMonitorLeft
Move the focused column to the left or to the monitor to the left.
MoveColumnRightOrToMonitorRight
Move the focused column to the right or to the monitor to the right.
MoveWindowDown
Move the focused window down in a column.
MoveWindowUp
Move the focused window up in a column.
MoveWindowDownOrToWorkspaceDown
Move the focused window down in a column or to the workspace below.
MoveWindowUpOrToWorkspaceUp
Move the focused window up in a column or to the workspace above.
ConsumeOrExpelWindowLeft
Consume or expel a window left.
ConsumeOrExpelWindowRight
Consume or expel a window right.
ConsumeWindowIntoColumn
Consume the window to the right into the focused column.
ExpelWindowFromColumn
Expel the focused window from the column.
CenterColumn
Center the focused column on the screen.
FocusWorkspaceDown
Focus the workspace below.
FocusWorkspaceUp
Focus the workspace above.
FocusWorkspace
Focus a workspace by reference (index or name).
Fields
reference: WorkspaceReferenceArg
Reference (index or name) of the workspace to focus.
FocusWorkspacePrevious
Focus the previous workspace.
MoveWindowToWorkspaceDown
Move the focused window to the workspace below.
MoveWindowToWorkspaceUp
Move the focused window to the workspace above.
MoveWindowToWorkspace
Move a window to a workspace.
Fields
reference: WorkspaceReferenceArg
Reference (index or name) of the workspace to move the window to.
MoveColumnToWorkspaceDown
Move the focused column to the workspace below.
MoveColumnToWorkspaceUp
Move the focused column to the workspace above.
MoveColumnToWorkspace
Move the focused column to a workspace by reference (index or name).
Fields
reference: WorkspaceReferenceArg
Reference (index or name) of the workspace to move the column to.
MoveWorkspaceDown
Move the focused workspace down.
MoveWorkspaceUp
Move the focused workspace up.
FocusMonitorLeft
Focus the monitor to the left.
FocusMonitorRight
Focus the monitor to the right.
FocusMonitorDown
Focus the monitor below.
FocusMonitorUp
Focus the monitor above.
MoveWindowToMonitorLeft
Move the focused window to the monitor to the left.
MoveWindowToMonitorRight
Move the focused window to the monitor to the right.
MoveWindowToMonitorDown
Move the focused window to the monitor below.
MoveWindowToMonitorUp
Move the focused window to the monitor above.
MoveColumnToMonitorLeft
Move the focused column to the monitor to the left.
MoveColumnToMonitorRight
Move the focused column to the monitor to the right.
MoveColumnToMonitorDown
Move the focused column to the monitor below.
MoveColumnToMonitorUp
Move the focused column to the monitor above.
SetWindowHeight
Change the height of a window.
Fields
change: SizeChange
How to change the height.
ResetWindowHeight
Reset the height of a window back to automatic.
SwitchPresetColumnWidth
Switch between preset column widths.
SwitchPresetWindowHeight
Switch between preset window heights.
MaximizeColumn
Toggle the maximized state of the focused column.
SetColumnWidth
Change the width of the focused column.
Fields
change: SizeChange
How to change the width.
SwitchLayout
Switch between keyboard layouts.
Fields
layout: LayoutSwitchTarget
Layout to switch to.
ShowHotkeyOverlay
Show the hotkey overlay.
MoveWorkspaceToMonitorLeft
Move the focused workspace to the monitor to the left.
MoveWorkspaceToMonitorRight
Move the focused workspace to the monitor to the right.
MoveWorkspaceToMonitorDown
Move the focused workspace to the monitor below.
MoveWorkspaceToMonitorUp
Move the focused workspace to the monitor above.
ToggleDebugTint
Toggle a debug tint on windows.
DebugToggleOpaqueRegions
Toggle visualization of render element opaque regions.
DebugToggleDamage
Toggle visualization of output damage.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Action
impl<'de> Deserialize<'de> for Action
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for Action
impl RefUnwindSafe for Action
impl Send for Action
impl Sync for Action
impl Unpin for Action
impl UnwindSafe for Action
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)