diff options
Diffstat (limited to 'intern/ghost/intern/GHOST_SystemWayland.h')
-rw-r--r-- | intern/ghost/intern/GHOST_SystemWayland.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/intern/ghost/intern/GHOST_SystemWayland.h b/intern/ghost/intern/GHOST_SystemWayland.h index f08e9fdcf9c..a8e8d8ddc45 100644 --- a/intern/ghost/intern/GHOST_SystemWayland.h +++ b/intern/ghost/intern/GHOST_SystemWayland.h @@ -23,6 +23,7 @@ # include <libdecor.h> #endif +#include <mutex> #include <string> class GHOST_WindowWayland; @@ -51,6 +52,8 @@ void ghost_wl_dynload_libraries_exit(); #endif struct GWL_Output { + GHOST_SystemWayland *system = nullptr; + struct wl_output *wl_output = nullptr; struct zxdg_output_v1 *xdg_output = nullptr; /** Dimensions in pixels. */ @@ -84,7 +87,8 @@ struct GWL_Output { class GHOST_SystemWayland : public GHOST_System { public: - GHOST_SystemWayland(); + GHOST_SystemWayland(bool background); + GHOST_SystemWayland() : GHOST_SystemWayland(true){}; ~GHOST_SystemWayland() override; @@ -174,6 +178,9 @@ class GHOST_SystemWayland : public GHOST_System { /* WAYLAND utility functions. */ + /** Set this seat to be active. */ + void seat_active_set(const struct GWL_Seat *seat); + /** Clear all references to this surface to prevent accessing NULL pointers. */ void window_surface_unref(const wl_surface *wl_surface); @@ -185,8 +192,6 @@ class GHOST_SystemWayland : public GHOST_System { wl_surface *wl_surface, int scale); - struct GWL_SimpleBuffer *clipboard_data(bool selection) const; - #ifdef WITH_GHOST_WAYLAND_LIBDECOR static bool use_libdecor_runtime(); #endif |