diff options
| author | Jack Jamison <jackqjamison@gmail.com> | 2025-10-11 02:30:18 -0400 |
|---|---|---|
| committer | Jack Jamison <jackqjamison@gmail.com> | 2025-10-11 02:30:18 -0400 |
| commit | f43ec9b27ebe37b799709985f5587e29ec8ef88b (patch) | |
| tree | cfae61b2e1ffc3658bdf67450666f5f0c89b2b92 /layer_surface.c | |
| parent | ba3a68a4f73f6653b1e1b095abc08234dedc504d (diff) | |
refactor to .h files
Diffstat (limited to 'layer_surface.c')
| -rw-r--r-- | layer_surface.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/layer_surface.c b/layer_surface.c index f2779fd..0463677 100644 --- a/layer_surface.c +++ b/layer_surface.c @@ -1,5 +1,25 @@ #include "./state.h" +struct zwlr_layer_surface_v1_listener layer_surface_listener; + +void setup_surface(client_state* state) { + state->surface = wl_compositor_create_surface(state->compositor); + state->layer_surface = zwlr_layer_shell_v1_get_layer_surface( + state->layer_shell, state->surface, NULL, + ZWLR_LAYER_SHELL_V1_LAYER_TOP, "swenu"); + zwlr_layer_surface_v1_add_listener(state->layer_surface, &layer_surface_listener, state); + zwlr_layer_surface_v1_set_size(state->layer_surface, 600, 400); + zwlr_layer_surface_v1_set_anchor(state->layer_surface, ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP | + ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM | + ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT | + ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT); + zwlr_layer_surface_v1_set_exclusive_zone(state->layer_surface, -1); + zwlr_layer_surface_v1_set_margin(state->layer_surface, 0, 0, 0, 0); + zwlr_layer_surface_v1_set_keyboard_interactivity(state->layer_surface, ZWLR_LAYER_SURFACE_V1_KEYBOARD_INTERACTIVITY_EXCLUSIVE); + wl_surface_commit(state->surface); + wl_display_roundtrip(state->display); +} + void configure(void *data, struct zwlr_layer_surface_v1 *zwlr_layer_surface_v1, uint32_t serial, uint32_t width, uint32_t height) { client_state* state = data; state->width = width; |
