mirror of
https://github.com/cage-kiosk/cage.git
synced 2026-03-22 05:34:01 -04:00
layer-shell: initial layer shell v1 implementation
This commit is contained in:
parent
ff59479eb6
commit
889e027b40
7 changed files with 521 additions and 14 deletions
|
|
@ -1,7 +1,40 @@
|
|||
#ifndef CG_LAYER_SHELL_V1_H
|
||||
#define CG_LAYER_SHELL_V1_H
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <wayland-server-core.h>
|
||||
#include <wlr/types/wlr_layer_shell_v1.h>
|
||||
#include <wlr/types/wlr_scene.h>
|
||||
|
||||
struct cg_output;
|
||||
|
||||
struct cg_layer_surface {
|
||||
struct wl_listener map;
|
||||
struct wl_listener unmap;
|
||||
struct wl_listener surface_commit;
|
||||
struct wl_listener node_destroy;
|
||||
struct wl_listener new_popup;
|
||||
|
||||
bool mapped;
|
||||
|
||||
struct wlr_scene_tree *popups;
|
||||
|
||||
struct cg_output *output;
|
||||
struct wl_list link; // cg_output::layer_surfaces
|
||||
|
||||
struct wlr_scene_layer_surface_v1 *scene;
|
||||
struct wlr_layer_surface_v1 *layer_surface;
|
||||
};
|
||||
|
||||
struct cg_layer_popup {
|
||||
struct wlr_xdg_popup *wlr_popup;
|
||||
struct wlr_scene_tree *scene;
|
||||
struct cg_layer_surface *toplevel;
|
||||
|
||||
struct wl_listener destroy;
|
||||
struct wl_listener new_popup;
|
||||
struct wl_listener commit;
|
||||
};
|
||||
|
||||
void handle_layer_shell_v1_surface_new(struct wl_listener *listener, void *data);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue