2018-07-13 12:40:56 +00:00
|
|
|
/*
|
|
|
|
* This an unstable interface of wlroots. No guarantees are made regarding the
|
|
|
|
* future consistency of this API.
|
|
|
|
*/
|
|
|
|
#ifndef WLR_USE_UNSTABLE
|
|
|
|
#error "Add -DWLR_USE_UNSTABLE to enable unstable wlroots features"
|
|
|
|
#endif
|
|
|
|
|
2017-09-23 08:26:01 +00:00
|
|
|
#ifndef WLR_TYPES_WLR_COMPOSITOR_H
|
|
|
|
#define WLR_TYPES_WLR_COMPOSITOR_H
|
|
|
|
|
2019-07-27 08:53:54 +00:00
|
|
|
#include <wayland-server-core.h>
|
2018-03-19 22:16:29 +00:00
|
|
|
#include <wlr/render/wlr_renderer.h>
|
2017-06-28 22:51:58 +00:00
|
|
|
|
2018-04-05 17:58:41 +00:00
|
|
|
struct wlr_surface;
|
|
|
|
|
2018-04-21 18:02:39 +00:00
|
|
|
struct wlr_subcompositor {
|
2018-07-08 18:21:31 +00:00
|
|
|
struct wl_global *global;
|
2018-04-21 18:02:39 +00:00
|
|
|
};
|
2018-04-21 17:40:25 +00:00
|
|
|
|
2017-08-19 19:48:20 +00:00
|
|
|
struct wlr_compositor {
|
2018-07-08 18:21:31 +00:00
|
|
|
struct wl_global *global;
|
2017-08-03 13:50:45 +00:00
|
|
|
struct wlr_renderer *renderer;
|
2017-12-06 23:44:45 +00:00
|
|
|
|
2018-04-21 18:02:39 +00:00
|
|
|
struct wlr_subcompositor subcompositor;
|
|
|
|
|
2017-12-06 23:44:45 +00:00
|
|
|
struct wl_listener display_destroy;
|
2017-08-19 20:14:51 +00:00
|
|
|
|
2017-08-20 17:50:28 +00:00
|
|
|
struct {
|
2018-01-21 13:22:33 +00:00
|
|
|
struct wl_signal new_surface;
|
2018-02-23 09:20:53 +00:00
|
|
|
struct wl_signal destroy;
|
2017-08-20 17:50:28 +00:00
|
|
|
} events;
|
2017-06-28 22:51:58 +00:00
|
|
|
};
|
|
|
|
|
2017-08-19 21:16:19 +00:00
|
|
|
struct wlr_compositor *wlr_compositor_create(struct wl_display *display,
|
2018-06-30 09:13:30 +00:00
|
|
|
struct wlr_renderer *renderer);
|
2017-06-28 22:51:58 +00:00
|
|
|
|
2018-04-05 17:58:41 +00:00
|
|
|
bool wlr_surface_is_subsurface(struct wlr_surface *surface);
|
|
|
|
|
2018-11-26 22:16:40 +00:00
|
|
|
/**
|
|
|
|
* Get a subsurface from a surface. Can return NULL if the subsurface has been
|
|
|
|
* destroyed.
|
|
|
|
*/
|
2018-06-30 09:13:30 +00:00
|
|
|
struct wlr_subsurface *wlr_subsurface_from_wlr_surface(
|
|
|
|
struct wlr_surface *surface);
|
2018-04-05 17:58:41 +00:00
|
|
|
|
2017-06-28 22:51:58 +00:00
|
|
|
#endif
|