mirror of
https://github.com/cage-kiosk/cage.git
synced 2025-10-29 05:40:19 -04:00
With Cage becoming more popular since its mention on Phoronix and
therefore getting more use-cases than just my own project, add XWayland
support. The refactoring of 2cf40f7 makes this much easier. Note that
this is a no-cost addition for those of us not using XWayland as it is a
compile-time option that needs to be explicitly enabled by adding
`-Dxwayland=true` to your meson command.
34 lines
611 B
C
34 lines
611 B
C
#ifndef CG_SERVER_H
|
|
#define CG_SERVER_H
|
|
|
|
#include "config.h"
|
|
|
|
#include <wayland-server.h>
|
|
#include <wlr/backend.h>
|
|
#include <wlr/types/wlr_output_layout.h>
|
|
#ifdef CAGE_HAS_XWAYLAND
|
|
#include <wlr/xwayland.h>
|
|
#endif
|
|
|
|
#include "output.h"
|
|
#include "seat.h"
|
|
|
|
struct cg_server {
|
|
struct wl_display *wl_display;
|
|
struct wlr_backend *backend;
|
|
|
|
struct wl_listener new_xdg_shell_surface;
|
|
struct wl_list views;
|
|
|
|
struct cg_seat *seat;
|
|
|
|
struct wlr_output_layout *output_layout;
|
|
struct cg_output *output;
|
|
struct wl_listener new_output;
|
|
|
|
#if CAGE_HAS_XWAYLAND
|
|
struct wl_listener new_xwayland_surface;
|
|
#endif
|
|
};
|
|
|
|
#endif
|