mirror of
https://github.com/cage-kiosk/cage.git
synced 2026-02-17 22:06:00 -05:00
layer-shell: initial layer shell v1 implementation
This commit is contained in:
parent
0e946d5a4f
commit
8a11a66d87
8 changed files with 538 additions and 24 deletions
|
|
@ -1,7 +1,41 @@
|
|||
#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_scene_tree *tree;
|
||||
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