|
qi3pc 0.4.1
Qt based library to communicate with i3wm via its IPC API
|
Mapping to the i3wm IPC interface. More...
#include <qi3pc.h>
Classes | |
| struct | ParseError |
| The Err struct contains the attributes of a parsing error from i3wm when trying to run an unparsable command;. More... | |
Public Types | |
| enum class | IpcEvent : quint32 { Workspace = I3_IPC_EVENT_WORKSPACE , Output = I3_IPC_EVENT_OUTPUT , Mode = I3_IPC_EVENT_MODE , Window = I3_IPC_EVENT_WINDOW , BarUpdate = I3_IPC_EVENT_BARCONFIG_UPDATE , Binding = I3_IPC_EVENT_BINDING , Shutdown = I3_IPC_EVENT_SHUTDOWN , Tick = I3_IPC_EVENT_TICK } |
| Types of events offered by i3wm's IPC API. More... | |
| enum class | IpcType : quint32 { Command = I3_IPC_REPLY_TYPE_COMMAND , Workspaces = I3_IPC_REPLY_TYPE_WORKSPACES , Subscribe = I3_IPC_REPLY_TYPE_SUBSCRIBE , Outputs = I3_IPC_REPLY_TYPE_OUTPUTS , Tree = I3_IPC_REPLY_TYPE_TREE , Marks = I3_IPC_REPLY_TYPE_MARKS , BarConfig = I3_IPC_REPLY_TYPE_BAR_CONFIG , Version = I3_IPC_REPLY_TYPE_VERSION , BindingModes = I3_IPC_REPLY_TYPE_BINDING_MODES , Config = I3_IPC_REPLY_TYPE_CONFIG , Tick = I3_IPC_REPLY_TYPE_TICK , Sync = I3_IPC_REPLY_TYPE_SYNC , BindingState = I3_IPC_REPLY_TYPE_GET_BINDING_STATE } |
| Types of message/replies the API send/expect to/from i3wm. More... | |
| enum class | WorkspaceChange { Empty , Focus , Init , Move , Reload , Rename , Restored , Urgent , Unknown } |
| Types of change a workspace event can have. More... | |
| enum class | OutputChange { Unspecified , Unknown } |
| Types of change an output event can have. More... | |
| enum class | WindowChange { New , Close , Focus , Title , Fullscreen , Move , Floating , Urgent , Mark , Unknown } |
| Types of change a window event can have. More... | |
| enum class | ShutdownChange { Restart , Exit , Unknown } |
| Types of change a shutdown event can have. More... | |
| enum class | BindingChange { Run , Unknown } |
| Types of change a binding event can have. More... | |
| using | DataObject = std::optional<std::pair<QJsonObject, qint64>> |
| Optional pair of a JSON object with its last update time. | |
| using | DataArray = std::optional<std::pair<QJsonArray, qint64>> |
| Optional pair of a JSON array with its last update time. | |
| using | DataString = std::optional<std::pair<QString, qint64>> |
| Optional pair of a string with its last update time. | |
| using | Error = std::optional<ParseError> |
| Optional qi3pc::ParseError. The optional is empty when the error could not be parsed. | |
| using | CommandResults = std::vector<std::pair<bool, Error>> |
| Pairs of qi3pc::Error and boolean. | |
| using | Message = std::optional<std::pair<QJsonDocument, quint32>> |
| Optional pair of a JSON document with a qi3pc::IpcType received with a message or an event before it has been processed. | |
Public Slots | |
| void | fetchWorkspaces () |
| Signal to emit to trigger an update of the list of workspace cache. | |
| void | fetchTree () |
| Signal to emit to trigger an update of the (cached) layout tree. | |
| void | fetchOutputs () |
| Signal to emit to trigger an update of the (cached) outputs. | |
| void | fetchMarks () |
| Signal to emit to trigger an update of the (cached) list of marks. | |
| void | fetchBarConfig (const QString &id) |
| Signal to emit to update the (cached) configuration of a certain bar. | |
| void | fetchBarConfigs () |
| Signal to emit to update the list of bar configurations. | |
| void | fetchVersion () |
| Signal to emit to trigger a cache update for the i3wm version. | |
| void | fetchBindingModes () |
| Signal to emit to trigger an update of the (cached) list of modes. | |
| void | fetchConfig () |
| Signal to emit to trigger an update of the (cached) config. | |
| void | fetchBindingState () |
| Request update of the (cached) binding state. | |
Signals | |
| void | commandRan (CommandResults result) |
| Signal emitted when a command have been ran by i3. | |
| void | tickSent (bool success) |
| Signal emitted when a tick have been processed by i3. | |
| void | synced (bool success) |
| Signal emitted when a sync message have been replied to by i3. | |
| void | subscribed (bool success) |
| Signal emitted when a subscribe message have been replied to. | |
| void | workspaceEvent (qi3pc::WorkspaceChange change, const QJsonObject ¤t, const QJsonObject &old) |
| Signal emitted with a workspace event's data preprocessed. | |
| void | outputEvent (qi3pc::OutputChange change) |
| Signal emitted when the output(s) change. | |
| void | modeEvent (QString change, bool pango) |
| Signal emitted when the binding mode changes. | |
| void | windowEvent (qi3pc::WindowChange change, const QJsonObject &container) |
| Signal emitted when a window changes. | |
| void | barUpdateEvent (const QJsonObject &doc) |
| Signal emitted when a bar's configuration have been updated. | |
| void | bindingEvent (qi3pc::BindingChange change, const QJsonObject &binding, const QString &mode) |
| Signal emitteed when a binding have been triggered to run a command. | |
| void | shutdownEvent (qi3pc::ShutdownChange change) |
| Signal emitted when the ipc socket is about to shutdown. | |
| void | tickEvent (const QString &payload) |
| Signal emitted when subscribing to tick events or when a tick message have been sent to the ipc connection. | |
| void | workspacesUpdated (const qi3pc::DataArray &workspaces) |
| Signal emitted when the (cached) list of workspaces have been updated. | |
| void | treeUpdated (const qi3pc::DataObject &tree) |
| Signal emitted when the layout tree cache have been updated. | |
| void | outputsUpdated (const qi3pc::DataArray &outputs) |
| Signal emitted when (cached) outputs have been updated. | |
| void | marksUpdated (const qi3pc::DataArray &marks) |
| Signal emitted when the (cached) list of marks have been updated. | |
| void | barConfigUpdated (const QJsonObject &config) |
| Signal emitted when a specific bar's (cached) config have been updated. At this point the configuration for the bar has been cached. | |
| void | newBarConfig (const QString &id) |
| Signal emitted when a new bar config have been added to the cache. | |
| void | versionUpdated (const qi3pc::DataObject &version) |
| Signal emitted when the (cached) i3 version have been updated. | |
| void | bindingModesUpdated (const qi3pc::DataArray &modes) |
| Signal emitted when the (cached) list of modes have been updated. | |
| void | configUpdated (const qi3pc::DataObject &config) |
| Signal emitted when the (cached) config have been updated. | |
| void | bindingStateUpdated (const qi3pc::DataString &state) |
| Signal emitted when the (cached) current binding state have been updated. | |
Public Member Functions | |
| qi3pc (QObject *parent=nullptr) | |
| Construct a qi3pc object. | |
| qi3pc (const QString &socketPath, QObject *parent) | |
| Construct a qi3pc object connected to the provided socket. | |
| virtual | ~qi3pc () |
| Simple destructor for the qi3pc class. | |
| bool | connect () |
| Start listening to messages and events from the window manager. | |
| bool | isConnected () |
| Check if the connection to the ipc socket is established. | |
| bool | disconnect () |
| Stop listening to messages and events from the window manager. | |
| void | subscribe (const QStringList &events) |
| Subscribe to a list of events. | |
| QString | socketPath () const |
| Get the socket path selected at construction. | |
| template<IpcType Type> requires (Type != IpcType::Subscribe && Type != IpcType::Tick) | |
| void | sendMessage (const QByteArray &payload=QByteArray()) |
| Send a message with the specified type and payload to i3. | |
| void | sendTick (const QByteArray &payload=QByteArray()) |
| Send a tick message with the spoecified payload. | |
| const DataArray & | workspaces () const |
| Get the list of (cached) workspaces. | |
| const DataObject & | tree () const |
| Get the (cached) i3 layout tree. | |
| const DataArray & | outputs () const |
| Get the (cached) list of outputs. | |
| const DataArray & | marks () const |
| Get the (cached) list of set marks. | |
| const DataObject & | barConfigs () const |
| Get the (cached) list of all bar configurations. | |
| const DataObject & | version () const |
| Get the (cached) i3 version object. | |
| const DataArray & | bindingModes () const |
| Get the (cached) list of binding modes. | |
| const DataObject & | config () const |
| Get the (cached) data read from the config file. | |
| const DataString & | bindingState () const |
| Get the (cached) binding state. | |
Static Public Member Functions | |
| static QString | FindSocketPath () |
| Find the path to the i3 ipc local unix socket. | |
| static QString | FindSocketPathFromI3Binary () |
| Find the path to the i3 ipc local unix socket using the i3 binary. | |
Static Public Attributes | |
| static constexpr auto | IpcMagicString = std::string("i3-ipc") |
| static constexpr auto | IpcMagicLength = IpcMagicString.length() |
Private Member Functions | |
| Message | processMessage (QLocalSocket &socket) |
| Read one message using the socket parameter. | |
| void | processEvent () |
| Read data from the event socket. | |
| void | processReply () |
| Read data from the message socket. | |
| void | processWorkspaceEvent (const QJsonDocument &doc) |
| Handle data received from a workspace event. | |
| void | processOutputEvent (const QJsonDocument &doc) |
| Handle data received from an output event. | |
| void | processModeEvent (const QJsonDocument &doc) |
| Handle data received from a mode event. | |
| void | processWindowEvent (const QJsonDocument &doc) |
| Handle data received from a window event. | |
| void | processBarUpdateEvent (const QJsonDocument &doc) |
| Handle data received from a bar update event. | |
| void | processBindingEvent (const QJsonDocument &doc) |
| Handle data received from a binding event. | |
| void | processShutdownEvent (const QJsonDocument &doc) |
| Handle data received from a shutdowm event. | |
| void | processTickEvent (const QJsonDocument &doc) |
| Handle data received from a tick event. | |
| void | processCommandReply (const QJsonDocument &doc) |
| Handle data received from a run command reply. | |
| void | processWorkspaceReply (const QJsonDocument &doc) |
| Handle data received from a workspace reply. | |
| void | processOutputReply (const QJsonDocument &doc) |
| Handle data received from an output reply. | |
| void | processTreeReply (const QJsonDocument &doc) |
| Handle data received from a tree reply. | |
| void | processMarkReply (const QJsonDocument &doc) |
| Handle data received from a mark reply. | |
| void | processBarConfigReply (const QJsonDocument &doc) |
| Handle data received from a bar config reply. | |
| void | processVersionReply (const QJsonDocument &doc) |
| Handle data received from a version reply. | |
| void | processBindingModesReply (const QJsonDocument &doc) |
| Handle data received in a binding mode reply. | |
| void | processConfigReply (const QJsonDocument &doc) |
| Handle data received from a config reply. | |
| void | processTickReply (const QJsonDocument &doc) |
| Handle data received from a tick reply. | |
| void | processSyncReply (const QJsonDocument &doc) |
| Handle data received from a sync reply. | |
| void | processBindingStateReply (const QJsonDocument &doc) |
| Handle data received from a binding state event reply. | |
Static Private Member Functions | |
| static WorkspaceChange | WorkspaceChangeFromString (const QString &s) |
| Convert a string into a workspace change object. | |
| static WindowChange | WindowChangeFromString (const QString &s) |
| Convert a string into a window change object. | |
| static ShutdownChange | ShutdownChangeFromString (const QString &s) |
| Convert a string into a shutdown change object. | |
| static OutputChange | OutputChangeFromString (const QString &s) |
| Convert a string into an output change object. | |
| static BindingChange | BindingChangeFromString (const QString &s) |
| Convert a string into a binding change object. | |
| static void | WritePayload (QLocalSocket &socket, const QByteArray &payload, IpcType type) |
| Send a message with the specified type and payload to i3 using the specified socket. | |
Private Attributes | |
| QString | m_socketPath |
| QLocalSocket | m_eventSocket |
| QLocalSocket | m_messageSocket |
| DataObject | m_tree |
| DataArray | m_workspaces |
| DataArray | m_outputs |
| DataArray | m_marks |
| DataObject | m_barConfigs |
| DataObject | m_version |
| DataArray | m_bindingModes |
| DataString | m_bindingState |
| DataObject | m_config |
Mapping to the i3wm IPC interface.
This is an intuitive layer over the API offered by the i3wm IPC interface. The workflow follows the usual mechanisms available by Qt with signals and slots.
| using qi3pc::DataObject = std::optional<std::pair<QJsonObject, qint64>> |
| using qi3pc::DataArray = std::optional<std::pair<QJsonArray, qint64>> |
| using qi3pc::DataString = std::optional<std::pair<QString, qint64>> |
| using qi3pc::Error = std::optional<ParseError> |
Optional qi3pc::ParseError. The optional is empty when the error could not be parsed.
| using qi3pc::CommandResults = std::vector<std::pair<bool, Error>> |
Pairs of qi3pc::Error and boolean.
For each element, if the boolean is false, the command was ran successfully. Otherwise information about the parse error encountered is in the second element.
| using qi3pc::Message = std::optional<std::pair<QJsonDocument, quint32>> |
Optional pair of a JSON document with a qi3pc::IpcType received with a message or an event before it has been processed.
|
strong |
|
strong |
|
strong |
Types of change a workspace event can have.
Mapping of the change property received in a workspace event.
|
strong |
|
strong |
Types of change a window event can have.
Mapping of the change property received in a window event.
|
strong |
|
strong |
|
explicit |
|
explicit |
Construct a qi3pc object connected to the provided socket.
| socketPath | The path to the server to use (e.g. /tmp/some-service.socket) |
| parent | Parent of the qi3pc object to create (matching Qt conventions). |
Definition at line 11 of file qi3pc.cpp.
References m_barConfigs, m_eventSocket, m_messageSocket, m_socketPath, processEvent(), and processReply().
|
virtual |
Simple destructor for the qi3pc class.
Disconnects the used sockets.
Definition at line 27 of file qi3pc.cpp.
References m_eventSocket, and m_messageSocket.
| bool qi3pc::connect | ( | ) |
Start listening to messages and events from the window manager.
This method may wait up to 3 seconds for the connection to be established. If it takes more than 3 seconds to connect, the connection might be established later, but the returned value will not reflect that.
Definition at line 581 of file qi3pc.cpp.
References m_eventSocket, m_messageSocket, and m_socketPath.
| bool qi3pc::isConnected | ( | ) |
Check if the connection to the ipc socket is established.
Definition at line 622 of file qi3pc.cpp.
References m_eventSocket, and m_messageSocket.
| bool qi3pc::disconnect | ( | ) |
Stop listening to messages and events from the window manager.
Definition at line 602 of file qi3pc.cpp.
References m_eventSocket, and m_messageSocket.
| void qi3pc::subscribe | ( | const QStringList & | events | ) |
Subscribe to a list of events.
| events | A list of strings with the events to subscribe to. |
Definition at line 641 of file qi3pc.cpp.
References m_eventSocket, and WritePayload().
|
static |
Find the path to the i3 ipc local unix socket.
First tries to read the I3SOCK environment variable. If I3SOCK is empty or not set, calls
Definition at line 488 of file qi3pc.cpp.
References FindSocketPathFromI3Binary().
|
static |
| QString qi3pc::socketPath | ( | ) | const |
Get the socket path selected at construction.
Definition at line 512 of file qi3pc.cpp.
References m_socketPath.
|
inline |
Send a message with the specified type and payload to i3.
| Type | The type of the message to send. |
| payload | The content of the message. |
Available message types.
Do not use this method to send qi3pc::IpcType::Subscribe or qi3pc::IpcType::Tick messages, use qi3pc::subscribe and qi3pc::sendTick instead.
Definition at line 345 of file qi3pc.h.
References m_messageSocket, and WritePayload().
| void qi3pc::sendTick | ( | const QByteArray & | payload = QByteArray() | ) |
Send a tick message with the spoecified payload.
| payload | Arbitrary string to send with the tick |
Definition at line 635 of file qi3pc.cpp.
References m_eventSocket, and WritePayload().
| const qi3pc::DataArray & qi3pc::workspaces | ( | ) | const |
Get the list of (cached) workspaces.
Definition at line 519 of file qi3pc.cpp.
References m_workspaces.
| const qi3pc::DataObject & qi3pc::tree | ( | ) | const |
Get the (cached) i3 layout tree.
Definition at line 526 of file qi3pc.cpp.
References m_tree.
| const qi3pc::DataArray & qi3pc::outputs | ( | ) | const |
Get the (cached) list of outputs.
Definition at line 533 of file qi3pc.cpp.
References m_outputs.
| const qi3pc::DataArray & qi3pc::marks | ( | ) | const |
Get the (cached) list of set marks.
Definition at line 540 of file qi3pc.cpp.
References m_marks.
| const qi3pc::DataObject & qi3pc::barConfigs | ( | ) | const |
Get the (cached) list of all bar configurations.
Definition at line 547 of file qi3pc.cpp.
References m_barConfigs.
| const qi3pc::DataObject & qi3pc::version | ( | ) | const |
| const qi3pc::DataArray & qi3pc::bindingModes | ( | ) | const |
Get the (cached) list of binding modes.
Definition at line 561 of file qi3pc.cpp.
References m_bindingModes.
| const qi3pc::DataObject & qi3pc::config | ( | ) | const |
| const qi3pc::DataString & qi3pc::bindingState | ( | ) | const |
Get the (cached) binding state.
Definition at line 575 of file qi3pc.cpp.
References m_bindingState.
|
slot |
Signal to emit to trigger an update of the list of workspace cache.
Definition at line 675 of file qi3pc.cpp.
References sendMessage().
|
slot |
Signal to emit to trigger an update of the (cached) layout tree.
Definition at line 681 of file qi3pc.cpp.
References sendMessage().
|
slot |
Signal to emit to trigger an update of the (cached) outputs.
Definition at line 687 of file qi3pc.cpp.
References sendMessage().
|
slot |
Signal to emit to trigger an update of the (cached) list of marks.
Definition at line 693 of file qi3pc.cpp.
References sendMessage().
|
slot |
Signal to emit to update the (cached) configuration of a certain bar.
| id | String identifying to bar to update. |
Definition at line 723 of file qi3pc.cpp.
References sendMessage().
|
slot |
Signal to emit to update the list of bar configurations.
Definition at line 717 of file qi3pc.cpp.
References sendMessage().
|
slot |
Signal to emit to trigger a cache update for the i3wm version.
Definition at line 699 of file qi3pc.cpp.
References sendMessage().
|
slot |
Signal to emit to trigger an update of the (cached) list of modes.
Definition at line 705 of file qi3pc.cpp.
References sendMessage().
|
slot |
Signal to emit to trigger an update of the (cached) config.
Definition at line 711 of file qi3pc.cpp.
References sendMessage().
|
slot |
Request update of the (cached) binding state.
Definition at line 731 of file qi3pc.cpp.
References sendMessage().
|
private |
Read one message using the socket parameter.
| socket | Local unix socket from which the message is read |
Definition at line 438 of file qi3pc.cpp.
References IpcMagicLength, and IpcMagicString.
|
private |
Read data from the event socket.
Definition at line 37 of file qi3pc.cpp.
References m_eventSocket, processBarUpdateEvent(), processBindingEvent(), processMessage(), processModeEvent(), processOutputEvent(), processShutdownEvent(), processTickEvent(), processTickReply(), processWindowEvent(), processWorkspaceEvent(), and subscribed().
|
private |
Read data from the message socket.
Definition at line 95 of file qi3pc.cpp.
References m_messageSocket, processBarConfigReply(), processBindingModesReply(), processBindingStateReply(), processCommandReply(), processConfigReply(), processMarkReply(), processMessage(), processOutputReply(), processSyncReply(), processTreeReply(), processVersionReply(), and processWorkspaceReply().
|
private |
Handle data received from a workspace event.
| doc | Document containing the data |
Definition at line 269 of file qi3pc.cpp.
References Unknown, WorkspaceChangeFromString(), and workspaceEvent().
|
private |
Handle data received from an output event.
| doc | Document containing the data |
Definition at line 284 of file qi3pc.cpp.
References OutputChangeFromString(), outputEvent(), and Unknown.
|
private |
Handle data received from a mode event.
| doc | Document containing the data |
Definition at line 297 of file qi3pc.cpp.
References modeEvent().
|
private |
Handle data received from a window event.
| doc | Document containing the data |
Definition at line 303 of file qi3pc.cpp.
References Unknown, WindowChangeFromString(), and windowEvent().
|
private |
Handle data received from a bar update event.
| doc | Document containing the data |
Definition at line 316 of file qi3pc.cpp.
References barUpdateEvent().
|
private |
Handle data received from a binding event.
| doc | Document containing the data |
Definition at line 322 of file qi3pc.cpp.
References BindingChangeFromString(), bindingEvent(), and Unknown.
|
private |
Handle data received from a shutdowm event.
| doc | Document containing the data |
Definition at line 335 of file qi3pc.cpp.
References ShutdownChangeFromString(), shutdownEvent(), and Unknown.
|
private |
Handle data received from a tick event.
| doc | Document containing the data |
Definition at line 348 of file qi3pc.cpp.
References tickEvent().
|
private |
Handle data received from a run command reply.
| doc | Document containing the data |
Definition at line 155 of file qi3pc.cpp.
References commandRan(), and qi3pc::ParseError::FromJSON().
|
private |
Handle data received from a workspace reply.
| doc | Document containing the data |
Definition at line 182 of file qi3pc.cpp.
References m_workspaces, and workspacesUpdated().
|
private |
Handle data received from an output reply.
| doc | Document containing the data |
Definition at line 189 of file qi3pc.cpp.
References m_outputs, and outputsUpdated().
|
private |
Handle data received from a tree reply.
| doc | Document containing the data |
Definition at line 196 of file qi3pc.cpp.
References m_tree, and treeUpdated().
|
private |
Handle data received from a mark reply.
| doc | Document containing the data |
Definition at line 203 of file qi3pc.cpp.
References m_marks, and marksUpdated().
|
private |
Handle data received from a bar config reply.
| doc | Document containing the data |
Definition at line 210 of file qi3pc.cpp.
References barConfigUpdated(), config(), m_barConfigs, and newBarConfig().
|
private |
Handle data received from a version reply.
| doc | Document containing the data |
Definition at line 229 of file qi3pc.cpp.
References m_version, and versionUpdated().
|
private |
Handle data received in a binding mode reply.
| doc | Document containing the data |
Definition at line 236 of file qi3pc.cpp.
References bindingModesUpdated(), and m_bindingModes.
|
private |
Handle data received from a config reply.
| doc | Document containing the data |
Definition at line 243 of file qi3pc.cpp.
References configUpdated(), and m_config.
|
private |
Handle data received from a tick reply.
| doc | Document containing the data |
Definition at line 250 of file qi3pc.cpp.
References tickSent().
|
private |
|
private |
Handle data received from a binding state event reply.
| doc | Document containing the data |
Definition at line 262 of file qi3pc.cpp.
References bindingStateUpdated(), and m_bindingState.
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
Convert a string into an output change object.
| s | The string to convert |
Definition at line 418 of file qi3pc.cpp.
References Unknown, and Unspecified.
|
staticprivate |
Convert a string into a binding change object.
| s | The string to convert |
|
staticprivate |
Send a message with the specified type and payload to i3 using the specified socket.
| socket | The socket where the payload should be written. |
| payload | The content to be written on the socket. |
| type | The type of the payload. |
Definition at line 656 of file qi3pc.cpp.
References IpcMagicLength, and IpcMagicString.
|
signal |
Signal emitted when a command have been ran by i3.
| result | Pairs of boolean and optional parse error. |
Use qi3pc::sendMessage to run command with the qi3pc::IpcType::Command type.
|
signal |
Signal emitted when a tick have been processed by i3.
| success |
Use qi3pc::sendMessage to send tick messages with the qi3pc::IpcType::Tick type.
|
signal |
Signal emitted when a sync message have been replied to by i3.
| success |
Use qi3pc::sendMessage to send sync messages with the qi3pc::IpcTypeSync type.
|
signal |
Signal emitted when a subscribe message have been replied to.
| success | Indicates whether the subscription was successfull |
|
signal |
Signal emitted with a workspace event's data preprocessed.
| change | The type of change |
| current | The current workspace |
| old | The old workspace |
|
signal |
Signal emitted when the output(s) change.
| change | The type of change |
|
signal |
Signal emitted when the binding mode changes.
| change | The name of the current mode. |
| pango | Boolean telling whether to display the mode with pango markup. |
|
signal |
Signal emitted when a window changes.
| change | The type of change. |
| container | The parent of the changed window. |
|
signal |
Signal emitted when a bar's configuration have been updated.
| doc | Json object containing the bar configuration. |
|
signal |
Signal emitteed when a binding have been triggered to run a command.
| change | The type of change. |
| binding | The binding that was run. |
| mode | The name of the mode the binding was run in. |
|
signal |
Signal emitted when the ipc socket is about to shutdown.
| change | The type of change. |
|
signal |
Signal emitted when subscribing to tick events or when a tick message have been sent to the ipc connection.
| payload | Arbitrary payload sent with the tick message. |
|
signal |
Signal emitted when the (cached) list of workspaces have been updated.
| workspaces | The last list of workspaces with the update time. |
References workspaces().
|
signal |
Signal emitted when the layout tree cache have been updated.
| tree | The most recent layout tree cached and its update time. |
References tree().
|
signal |
Signal emitted when (cached) outputs have been updated.
| outputs | The latest list of outputs and its update time. |
References outputs().
|
signal |
Signal emitted when the (cached) list of marks have been updated.
| marks | The most recent list of marks and the time when it was updated. |
References marks().
|
signal |
Signal emitted when a specific bar's (cached) config have been updated. At this point the configuration for the bar has been cached.
| config | The relevant bar's configuration. |
References config().
|
signal |
Signal emitted when a new bar config have been added to the cache.
| id | The id of the new bar. |
Only the id is stored at first. Call qi3pc::fetchBarConfig with the appropriate id to update it.
|
signal |
Signal emitted when the (cached) i3 version have been updated.
| version | JSON object with the latest cached version and the time when it was updated. |
References version().
|
signal |
Signal emitted when the (cached) list of modes have been updated.
| modes | The most recent list of modes and the time when it was updated. |
|
signal |
Signal emitted when the (cached) config have been updated.
| config | The most recent config and the time when it was updated. |
References config().
|
signal |
Signal emitted when the (cached) current binding state have been updated.
| state | The most recent binding state and the time when it was updated. |
|
staticconstexpr |
|
staticconstexpr |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |