From c72940837c24b5df99c95667befe2e4e5c64575a Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Fri, 11 May 2018 23:51:47 +1000 Subject: Implement IPC get_seats command --- include/ipc.h | 1 + include/sway/config.h | 4 +++- include/sway/ipc-json.h | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/ipc.h b/include/ipc.h index 9665a88d..83b3b386 100644 --- a/include/ipc.h +++ b/include/ipc.h @@ -14,6 +14,7 @@ enum ipc_command_type { IPC_GET_VERSION = 7, IPC_GET_INPUTS = 8, IPC_GET_CLIPBOARD = 9, + IPC_GET_SEATS = 10, // Events send from sway to clients. Events have the highest bits set. IPC_EVENT_WORKSPACE = ((1<<31) | 0), IPC_EVENT_OUTPUT = ((1<<31) | 1), diff --git a/include/sway/config.h b/include/sway/config.h index a0e7e81f..b20458cb 100644 --- a/include/sway/config.h +++ b/include/sway/config.h @@ -263,8 +263,10 @@ enum ipc_feature { IPC_FEATURE_EVENT_BINDING = 4096, IPC_FEATURE_EVENT_INPUT = 8192, IPC_FEATURE_GET_CLIPBOARD = 16384, + IPC_FEATURE_GET_SEATS = 32768, - IPC_FEATURE_ALL_COMMANDS = 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 16384, + IPC_FEATURE_ALL_COMMANDS = + 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 16384 | 32768, IPC_FEATURE_ALL_EVENTS = 256 | 512 | 1024 | 2048 | 4096 | 8192, IPC_FEATURE_ALL = IPC_FEATURE_ALL_COMMANDS | IPC_FEATURE_ALL_EVENTS, diff --git a/include/sway/ipc-json.h b/include/sway/ipc-json.h index 7d87d377..440e3a24 100644 --- a/include/sway/ipc-json.h +++ b/include/sway/ipc-json.h @@ -9,6 +9,7 @@ json_object *ipc_json_get_version(); json_object *ipc_json_describe_container(struct sway_container *c); json_object *ipc_json_describe_container_recursive(struct sway_container *c); json_object *ipc_json_describe_input(struct sway_input_device *device); +json_object *ipc_json_describe_seat(struct sway_seat *seat); json_object *ipc_json_describe_bar_config(struct bar_config *bar); #endif -- cgit v1.2.3-54-g00ecf From 28eb97299e564daee96d3af1f9130d6439f170f6 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Sat, 12 May 2018 18:22:21 +1000 Subject: Fix conflicting IPC command type constants with i3's --- include/ipc.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/ipc.h b/include/ipc.h index 83b3b386..8172c782 100644 --- a/include/ipc.h +++ b/include/ipc.h @@ -4,6 +4,7 @@ #define event_mask(ev) (1 << (ev & 0x7F)) enum ipc_command_type { + // i3 command types - see i3's I3_REPLY_TYPE constants IPC_COMMAND = 0, IPC_GET_WORKSPACES = 1, IPC_SUBSCRIBE = 2, @@ -12,10 +13,13 @@ enum ipc_command_type { IPC_GET_MARKS = 5, IPC_GET_BAR_CONFIG = 6, IPC_GET_VERSION = 7, - IPC_GET_INPUTS = 8, - IPC_GET_CLIPBOARD = 9, - IPC_GET_SEATS = 10, - // Events send from sway to clients. Events have the highest bits set. + + // sway-specific command types + IPC_GET_INPUTS = 100, + IPC_GET_CLIPBOARD = 101, + IPC_GET_SEATS = 102, + + // Events sent from sway to clients. Events have the highest bits set. IPC_EVENT_WORKSPACE = ((1<<31) | 0), IPC_EVENT_OUTPUT = ((1<<31) | 1), IPC_EVENT_MODE = ((1<<31) | 2), -- cgit v1.2.3-54-g00ecf