From ea50cbe1bf103372a3461c80cb172f4fb4167088 Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Thu, 4 Jun 2020 16:06:50 -0700 Subject: checkin: before refactoring --- sys/cmd/dway/dway.h | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'sys/cmd/dway/dway.h') diff --git a/sys/cmd/dway/dway.h b/sys/cmd/dway/dway.h index 838e035..ad2dfb3 100644 --- a/sys/cmd/dway/dway.h +++ b/sys/cmd/dway/dway.h @@ -53,6 +53,7 @@ typedef struct Monitor Monitor; typedef struct Layout Layout; typedef struct Client Client; typedef struct Deco Deco; +typedef struct Layer Layer; typedef struct Payload Payload; typedef struct Rule Rule; @@ -93,7 +94,6 @@ struct Mouse } ev; }; - struct Key { uint32 mod; @@ -112,6 +112,24 @@ struct Keyboard } ev; }; +struct Layer +{ + struct wl_list link; + struct wlr_layer_surface_v1 *surf; + + struct { + struct wl_listener map; + struct wl_listener unmap; + struct wl_listener free; + struct wl_listener commit; + struct wl_listener kill; + /* struct wl_listener popup; */ + } ev; + + struct wlr_box dim; + enum zwlr_layer_shell_v1_layer z; +}; + struct Monitor { struct wl_list link; @@ -120,10 +138,15 @@ struct Monitor struct wl_listener draw; struct wl_listener free; } ev; + struct { + struct wl_signal kill; + } sig; struct { struct wlr_box all; struct wlr_box win; } area; + + Layer layers[4]; const Layout *lt[2]; uint seltags; uint sellt; @@ -233,6 +256,11 @@ static void ev·freedecoration(struct wl_listener *ev, void *arg); static void ev·modedecoration(struct wl_listener *ev, void *arg); static void ev·newlayershell(struct wl_listener *ev, void *arg); +static void ev·freelayershell(struct wl_listener *ev, void *arg); +static void ev·maplayershell(struct wl_listener *ev, void *arg); +static void ev·unmaplayershell(struct wl_listener *ev, void *arg); +static void ev·commitlayershell(struct wl_listener *ev, void *arg); +static void ev·killlayershell(struct wl_listener *ev, void *arg); static void ev·setcursor(struct wl_listener *ev, void *arg); static void ev·setsel(struct wl_listener *ev, void *arg); -- cgit v1.2.1