i3ipc-rs
i3ipc-rs copied to clipboard
A Rust library for controlling i3-wm through its IPC interface
This PR adds the `window_type` property. I'm creating this PR now, but we should wait for the upstream changes first: * [x] add `window_type` to i3's IPC response: https://github.com/i3/i3/pull/3797 *...
Getting the window_properties on nodes in the tree results in all `None` (on i3 version 4.20). This is caused by an unknown window_property `"machine"`. ```rust let mut i3 = I3Connection::connect().unwrap();...
Simple way to find a child node, either in nodes or floating_nodes based on a predicate. This pretty much just mirrors what is done here https://github.com/i3/go-i3/blob/36e6ec85cc5a/tree.go#L92 in the go version...
Hi Trevor, There is an i3 feature introduced in i3 4.15 that I would like to use, namely Tick events and messages. This PR implements those. If there's anything you'd...
Hi Trevor, I was writing a small program using your crate and found that I could not easily "serde" the event data to JSON. There are ways around this but...
It seems they both access the same socket file, why are they separate types? Currently, if I want to get the current workspace state at the beginning of my program...
I have this running: ```rust let mut event_listener = i3ipc::I3EventListener::connect().unwrap(); for event in event_listener.listen() { match event.as_ref() { ... } } ``` Then I have a signal handler: ```rust let...
At first glance, I would assume that id should be a usize... ```rust /// The internal ID (actually a C pointer value) of this container. Do not make any ///...
This change makes the following changes: * Add a new feature (`i3-4-18-1`) to support marks in the nodes returned from `get_tree` * Add an example illustrating how to use the...
Unless I'm missing something (which is quite possible!) it looks like the `marks` field of the IPC response to the `get_tree` method is not present in i3ipc-rs. Is there a...