diff options
author | Ronan Pigott <ronan@rjp.ie> | 2022-11-30 11:54:50 -0700 |
---|---|---|
committer | Ronan Pigott <ronan@rjp.ie> | 2023-02-05 00:53:47 -0700 |
commit | 4cda9ee3a3aa122f3f1a6f570d8befa78083c1b5 (patch) | |
tree | dbb1675b116264d102847d929dec5a9c76c3c88d /sway/xdg_activation_v1.c | |
parent | launcher: make launcher context seat aware (diff) | |
download | sway-4cda9ee3a3aa122f3f1a6f570d8befa78083c1b5.tar.gz sway-4cda9ee3a3aa122f3f1a6f570d8befa78083c1b5.tar.zst sway-4cda9ee3a3aa122f3f1a6f570d8befa78083c1b5.zip |
launcher: support external launcher tokens
Diffstat (limited to 'sway/xdg_activation_v1.c')
-rw-r--r-- | sway/xdg_activation_v1.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sway/xdg_activation_v1.c b/sway/xdg_activation_v1.c index c20e42c1..614f51cd 100644 --- a/sway/xdg_activation_v1.c +++ b/sway/xdg_activation_v1.c | |||
@@ -1,6 +1,7 @@ | |||
1 | #include <wlr/types/wlr_xdg_activation_v1.h> | 1 | #include <wlr/types/wlr_xdg_activation_v1.h> |
2 | #include "sway/desktop/launcher.h" | 2 | #include "sway/desktop/launcher.h" |
3 | #include "sway/tree/view.h" | 3 | #include "sway/tree/view.h" |
4 | #include "sway/tree/workspace.h" | ||
4 | 5 | ||
5 | void xdg_activation_v1_handle_request_activate(struct wl_listener *listener, | 6 | void xdg_activation_v1_handle_request_activate(struct wl_listener *listener, |
6 | void *data) { | 7 | void *data) { |
@@ -38,3 +39,15 @@ void xdg_activation_v1_handle_request_activate(struct wl_listener *listener, | |||
38 | view_request_activate(view, seat); | 39 | view_request_activate(view, seat); |
39 | } | 40 | } |
40 | } | 41 | } |
42 | |||
43 | void xdg_activation_v1_handle_new_token(struct wl_listener *listener, void *data) { | ||
44 | struct wlr_xdg_activation_token_v1 *token = data; | ||
45 | struct sway_seat *seat = token->seat ? token->seat->data : | ||
46 | input_manager_current_seat(); | ||
47 | |||
48 | struct sway_workspace *ws = seat_get_focused_workspace(seat); | ||
49 | if (ws) { | ||
50 | launcher_ctx_create(token, &ws->node); | ||
51 | return; | ||
52 | } | ||
53 | } | ||