aboutsummaryrefslogtreecommitdiff
path: root/include/sway/tree
diff options
context:
space:
mode:
authorAlexander Orzechowski <alex@ozal.ski>2024-01-18 10:02:41 -0500
committerKirill Primak <vyivel@eclair.cafe>2024-01-18 18:36:54 +0300
commit6e5fc4c2aafd211323c6037aa868c075852bfe15 (patch)
treebff87217414fa981d48244c5bc1b253817646783 /include/sway/tree
parentb38ed8b4792928dca3e1580e8160792ea41e25c4 (diff)
scene_graph: Port xwayland
Diffstat (limited to 'include/sway/tree')
-rw-r--r--include/sway/tree/root.h7
-rw-r--r--include/sway/tree/view.h8
2 files changed, 8 insertions, 7 deletions
diff --git a/include/sway/tree/root.h b/include/sway/tree/root.h
index 2f717bae..15df0f55 100644
--- a/include/sway/tree/root.h
+++ b/include/sway/tree/root.h
@@ -47,16 +47,15 @@ struct sway_root {
struct wlr_scene_tree *shell_top;
struct wlr_scene_tree *fullscreen;
struct wlr_scene_tree *fullscreen_global;
+#if HAVE_XWAYLAND
+ struct wlr_scene_tree *unmanaged;
+#endif
struct wlr_scene_tree *shell_overlay;
struct wlr_scene_tree *popup;
struct wlr_scene_tree *seat;
struct wlr_scene_tree *session_lock;
} layers;
-#if HAVE_XWAYLAND
- struct wl_list xwayland_unmanaged; // sway_xwayland_unmanaged::link
-#endif
-
// Includes disabled outputs
struct wl_list all_outputs; // sway_output::link
diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h
index 467d912f..8493958e 100644
--- a/include/sway/tree/view.h
+++ b/include/sway/tree/view.h
@@ -147,6 +147,8 @@ struct sway_xdg_shell_view {
struct sway_xwayland_view {
struct sway_view view;
+ struct wlr_scene_tree *surface_tree;
+
struct wl_listener commit;
struct wl_listener request_move;
struct wl_listener request_resize;
@@ -168,18 +170,18 @@ struct sway_xwayland_view {
struct wl_listener unmap;
struct wl_listener destroy;
struct wl_listener override_redirect;
+
+ struct wl_listener surface_tree_destroy;
};
struct sway_xwayland_unmanaged {
struct wlr_xwayland_surface *wlr_xwayland_surface;
- struct wl_list link;
- int lx, ly;
+ struct wlr_scene_surface *surface_scene;
struct wl_listener request_activate;
struct wl_listener request_configure;
struct wl_listener request_fullscreen;
- struct wl_listener commit;
struct wl_listener set_geometry;
struct wl_listener associate;
struct wl_listener dissociate;