mirror of
https://github.com/swaywm/sway.git
synced 2025-11-17 06:59:48 -05:00
Merge pull request #3206 from RedSoxFan/ipc-subscribe
Implement support for swaymsg -t SUBSCRIBE [-m]
This commit is contained in:
commit
67c7cc53ae
3 changed files with 76 additions and 18 deletions
|
|
@ -668,7 +668,8 @@ void ipc_client_handle_command(struct ipc_client *client) {
|
|||
// TODO: Check if they're permitted to use these events
|
||||
struct json_object *request = json_tokener_parse(buf);
|
||||
if (request == NULL) {
|
||||
client_valid = ipc_send_reply(client, "{\"success\": false}", 18);
|
||||
const char msg[] = "[{\"success\": false}]";
|
||||
client_valid = ipc_send_reply(client, msg, strlen(msg));
|
||||
wlr_log(WLR_INFO, "Failed to parse subscribe request");
|
||||
goto exit_cleanup;
|
||||
}
|
||||
|
|
@ -695,8 +696,8 @@ void ipc_client_handle_command(struct ipc_client *client) {
|
|||
client->subscribed_events |= event_mask(IPC_EVENT_TICK);
|
||||
is_tick = true;
|
||||
} else {
|
||||
client_valid =
|
||||
ipc_send_reply(client, "{\"success\": false}", 18);
|
||||
const char msg[] = "[{\"success\": false}]";
|
||||
client_valid = ipc_send_reply(client, msg, strlen(msg));
|
||||
json_object_put(request);
|
||||
wlr_log(WLR_INFO, "Unsupported event type in subscribe request");
|
||||
goto exit_cleanup;
|
||||
|
|
@ -704,10 +705,12 @@ void ipc_client_handle_command(struct ipc_client *client) {
|
|||
}
|
||||
|
||||
json_object_put(request);
|
||||
client_valid = ipc_send_reply(client, "{\"success\": true}", 17);
|
||||
const char msg[] = "[{\"success\": true}]";
|
||||
client_valid = ipc_send_reply(client, msg, strlen(msg));
|
||||
if (is_tick) {
|
||||
client->current_command = IPC_EVENT_TICK;
|
||||
ipc_send_reply(client, "{\"first\": true, \"payload\": \"\"}", 30);
|
||||
const char tickmsg[] = "{\"first\": true, \"payload\": \"\"}";
|
||||
ipc_send_reply(client, tickmsg, strlen(tickmsg));
|
||||
}
|
||||
goto exit_cleanup;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue