aboutsummaryrefslogtreecommitdiffstats
path: root/sway/xdg_activation_v1.c
diff options
context:
space:
mode:
authorLibravatar Ronan Pigott <ronan@rjp.ie>2022-11-30 11:54:50 -0700
committerLibravatar Ronan Pigott <ronan@rjp.ie>2023-02-05 00:53:47 -0700
commit4cda9ee3a3aa122f3f1a6f570d8befa78083c1b5 (patch)
treedbb1675b116264d102847d929dec5a9c76c3c88d /sway/xdg_activation_v1.c
parentlauncher: make launcher context seat aware (diff)
downloadsway-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.c13
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
5void xdg_activation_v1_handle_request_activate(struct wl_listener *listener, 6void 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
43void 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}