[−][src]Struct i3ipc::reply::Node
The reply to the get_tree
request.
Fields
focus: Vec<i64>
List of child node IDs (see nodes
, floating_nodes
and id
) in focus order. Traversing
the tree by following the first entry in this array will result in eventually reaching the
one node with focused
set to true.
nodes: Vec<Node>
The child nodes of this container.
floating_nodes: Vec<Node>
The child floating nodes of this container.
id: i64
The internal ID (actually a C pointer value) of this container. Do not make any assumptions about it. You can use it to (re-)identify and address containers when talking to i3.
name: Option<String>
The internal name of this container. For all containers which are part of the tree structure down to the workspace contents, this is set to a nice human-readable name of the container. For containers that have an X11 window, the content is the title (_NET_WM_NAME property) of that window. For all other containers, the content is not defined (yet).
nodetype: NodeType
Type of this container. Can be one of "root", "output", "con", "floating_con", "workspace" or "dockarea".
border: NodeBorder
Can be either "normal", "none" or "1pixel", dependending on the container’s border style.
current_border_width: i32
Number of pixels of the border width.
layout: NodeLayout
Can be either "splith", "splitv", "stacked", "tabbed", "dockarea" or "output". Other values might be possible in the future, should we add new layouts.
percent: Option<f64>
The percentage which this container takes in its parent. A value of null means that the percent property does not make sense for this container, for example for the root container.
rect: (i32, i32, i32, i32)
The (x, y, width, height) absolute display coordinates for this container. Display coordinates means that when you have two 1600x1200 monitors on a single X11 Display (the standard way), the coordinates of the first window on the second monitor are (1600, 0, 1600, 1200).
window_rect: (i32, i32, i32, i32)
The (x, y, width, height) coordinates of the actual client window inside its container. These coordinates are relative to the container and do not include the window decoration (which is actually rendered on the parent container). So for example, when using the default layout, you will have a 2 pixel border on each side, making the window_rect (2, 0, 632, 366).
deco_rect: (i32, i32, i32, i32)
The (x, y, width, height) coordinates of the window decoration inside its container. These coordinates are relative to the container and do not include the actual client window.
geometry: (i32, i32, i32, i32)
The original geometry the window specified when i3 mapped it. Used when switching a window to floating mode, for example.
window: Option<i32>
The X11 window ID of the actual client window inside this container. This field is set to null for split containers or otherwise empty containers. This ID corresponds to what xwininfo(1) and other X11-related tools display (usually in hex).
window_properties: Option<HashMap<WindowProperty, String>>
X11 window properties title, instance, class, window_role and transient_for.
urgent: bool
Whether this container (window, split container, floating container or workspace) has the urgency hint set, directly or indirectly. All parent containers up until the workspace container will be marked urgent if they have at least one urgent child.
focused: bool
Whether this container is currently focused.
Trait Implementations
impl Clone for Node
[src]
fn clone(&self) -> Node
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for Node
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,