diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/sway/server.h | 4 | ||||
-rw-r--r-- | include/sway/view.h | 16 |
2 files changed, 20 insertions, 0 deletions
diff --git a/include/sway/server.h b/include/sway/server.h index bfdb7b8a..3fa72e84 100644 --- a/include/sway/server.h +++ b/include/sway/server.h | |||
@@ -31,6 +31,9 @@ struct sway_server { | |||
31 | struct wlr_xdg_shell_v6 *xdg_shell_v6; | 31 | struct wlr_xdg_shell_v6 *xdg_shell_v6; |
32 | struct wl_listener xdg_shell_v6_surface; | 32 | struct wl_listener xdg_shell_v6_surface; |
33 | 33 | ||
34 | struct wlr_xwayland *xwayland; | ||
35 | struct wl_listener xwayland_surface; | ||
36 | |||
34 | struct wlr_wl_shell *wl_shell; | 37 | struct wlr_wl_shell *wl_shell; |
35 | struct wl_listener wl_shell_surface; | 38 | struct wl_listener wl_shell_surface; |
36 | }; | 39 | }; |
@@ -45,6 +48,7 @@ void output_add_notify(struct wl_listener *listener, void *data); | |||
45 | void output_remove_notify(struct wl_listener *listener, void *data); | 48 | void output_remove_notify(struct wl_listener *listener, void *data); |
46 | 49 | ||
47 | void handle_xdg_shell_v6_surface(struct wl_listener *listener, void *data); | 50 | void handle_xdg_shell_v6_surface(struct wl_listener *listener, void *data); |
51 | void handle_xwayland_surface(struct wl_listener *listener, void *data); | ||
48 | void handle_wl_shell_surface(struct wl_listener *listener, void *data); | 52 | void handle_wl_shell_surface(struct wl_listener *listener, void *data); |
49 | 53 | ||
50 | #endif | 54 | #endif |
diff --git a/include/sway/view.h b/include/sway/view.h index 7aa04794..83ac8285 100644 --- a/include/sway/view.h +++ b/include/sway/view.h | |||
@@ -3,6 +3,7 @@ | |||
3 | #include <wayland-server.h> | 3 | #include <wayland-server.h> |
4 | #include <wlr/types/wlr_surface.h> | 4 | #include <wlr/types/wlr_surface.h> |
5 | #include <wlr/types/wlr_xdg_shell_v6.h> | 5 | #include <wlr/types/wlr_xdg_shell_v6.h> |
6 | #include <wlr/xwayland.h> | ||
6 | 7 | ||
7 | struct sway_container; | 8 | struct sway_container; |
8 | struct sway_view; | 9 | struct sway_view; |
@@ -19,6 +20,19 @@ struct sway_xdg_surface_v6 { | |||
19 | int pending_width, pending_height; | 20 | int pending_width, pending_height; |
20 | }; | 21 | }; |
21 | 22 | ||
23 | struct sway_xwayland_surface { | ||
24 | struct sway_view *view; | ||
25 | |||
26 | struct wl_listener commit; | ||
27 | struct wl_listener request_move; | ||
28 | struct wl_listener request_resize; | ||
29 | struct wl_listener request_maximize; | ||
30 | struct wl_listener request_configure; | ||
31 | struct wl_listener destroy; | ||
32 | |||
33 | int pending_width, pending_height; | ||
34 | }; | ||
35 | |||
22 | struct sway_wl_shell_surface { | 36 | struct sway_wl_shell_surface { |
23 | struct sway_view *view; | 37 | struct sway_view *view; |
24 | 38 | ||
@@ -58,11 +72,13 @@ struct sway_view { | |||
58 | 72 | ||
59 | union { | 73 | union { |
60 | struct wlr_xdg_surface_v6 *wlr_xdg_surface_v6; | 74 | struct wlr_xdg_surface_v6 *wlr_xdg_surface_v6; |
75 | struct wlr_xwayland_surface *wlr_xwayland_surface; | ||
61 | struct wlr_wl_shell_surface *wlr_wl_shell_surface; | 76 | struct wlr_wl_shell_surface *wlr_wl_shell_surface; |
62 | }; | 77 | }; |
63 | 78 | ||
64 | union { | 79 | union { |
65 | struct sway_xdg_surface_v6 *sway_xdg_surface_v6; | 80 | struct sway_xdg_surface_v6 *sway_xdg_surface_v6; |
81 | struct sway_xwayland_surface *sway_xwayland_surface; | ||
66 | struct sway_wl_shell_surface *sway_wl_shell_surface; | 82 | struct sway_wl_shell_surface *sway_wl_shell_surface; |
67 | }; | 83 | }; |
68 | 84 | ||