pub struct Workspace {
pub id: u64,
pub idx: u8,
pub name: Option<String>,
pub output: Option<String>,
pub is_urgent: bool,
pub is_active: bool,
pub is_focused: bool,
pub active_window_id: Option<u64>,
}Expand description
A workspace.
Fields§
§id: u64Unique id of this workspace.
This id remains constant regardless of the workspace moving around and across monitors.
Do not assume that workspace ids will always increase without wrapping, or start at 1. That is an implementation detail subject to change. For example, ids may change to be randomly generated for each new workspace.
idx: u8Index of the workspace on its monitor.
This is the same index you can use for requests like niri msg action focus-workspace.
This index will change as you move and re-order workspace. It is merely the workspace’s current position on its monitor. Workspaces on different monitors can have the same index.
If you need a unique workspace id that doesn’t change, see Self::id.
name: Option<String>Optional name of the workspace.
output: Option<String>Name of the output that the workspace is on.
Can be None if no outputs are currently connected.
is_urgent: boolWhether the workspace currently has an urgent window in its output.
is_active: boolWhether the workspace is currently active on its output.
Every output has one active workspace, the one that is currently visible on that output.
is_focused: boolWhether the workspace is currently focused.
There’s only one focused workspace across all outputs.
active_window_id: Option<u64>Id of the active window on this workspace, if any.