aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/rootston/config.h1
-rw-r--r--include/rootston/desktop.h1
-rw-r--r--include/wlr/xwayland.h22
3 files changed, 15 insertions, 9 deletions
diff --git a/include/rootston/config.h b/include/rootston/config.h
index 0a67ac1e..97a8baab 100644
--- a/include/rootston/config.h
+++ b/include/rootston/config.h
@@ -60,6 +60,7 @@ struct roots_cursor_config {
struct roots_config {
bool xwayland;
+ bool xwayland_lazy;
struct wl_list outputs;
struct wl_list devices;
diff --git a/include/rootston/desktop.h b/include/rootston/desktop.h
index f150147b..83ff2ea8 100644
--- a/include/rootston/desktop.h
+++ b/include/rootston/desktop.h
@@ -65,7 +65,6 @@ struct roots_desktop {
#ifdef WLR_HAS_XWAYLAND
struct wlr_xwayland *xwayland;
struct wl_listener xwayland_surface;
- struct wl_listener xwayland_ready;
#endif
};
diff --git a/include/wlr/xwayland.h b/include/wlr/xwayland.h
index 53c777d7..3507e547 100644
--- a/include/wlr/xwayland.h
+++ b/include/wlr/xwayland.h
@@ -13,20 +13,26 @@ struct wlr_xwayland_cursor;
struct wlr_xwayland {
pid_t pid;
- int display;
- int x_fd[2], wl_fd[2], wm_fd[2];
struct wl_client *client;
- struct wl_display *wl_display;
- struct wlr_compositor *compositor;
- time_t server_start;
-
struct wl_event_source *sigusr1_source;
struct wl_listener client_destroy;
struct wl_listener display_destroy;
struct wlr_xwm *xwm;
struct wlr_xwayland_cursor *cursor;
+ int wm_fd[2], wl_fd[2];
+
+ time_t server_start;
- /* Anything above seat is reset on Xwayland restart, rest is conserved */
+ /* Anything above display is reset on Xwayland restart, rest is conserved */
+
+ int display;
+ int x_fd[2];
+ struct wl_event_source *x_fd_read_event[2];
+
+ bool lazy;
+
+ struct wl_display *wl_display;
+ struct wlr_compositor *compositor;
struct wlr_seat *seat;
struct wl_listener seat_destroy;
@@ -169,7 +175,7 @@ struct wlr_xwayland_resize_event {
};
struct wlr_xwayland *wlr_xwayland_create(struct wl_display *wl_display,
- struct wlr_compositor *compositor);
+ struct wlr_compositor *compositor, bool lazy);
void wlr_xwayland_destroy(struct wlr_xwayland *wlr_xwayland);