dwl

My patch set and modifications to dwl
git clone git://git.ethandl.dev/dwl
Log | Files | Refs | README | LICENSE

commit 929d3d9569086963c7597dc1fcd38d59896278bc
parent 40e45a336a2cef9fe76a5144f7da6ffa54110081
Author: Devin J. Pohly <djpohly@gmail.com>
Date:   Sun,  5 Sep 2021 15:55:36 -0500

use type enum to distinguish Client from LayerSurface

Diffstat:
Mdwl.c | 8++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/dwl.c b/dwl.c @@ -65,10 +65,10 @@ /* enums */ enum { CurNormal, CurMove, CurResize }; /* cursor */ +enum { XDGShell, LayerShell, X11Managed, X11Unmanaged }; /* client types */ #ifdef XWAYLAND enum { NetWMWindowTypeDialog, NetWMWindowTypeSplash, NetWMWindowTypeToolbar, NetWMWindowTypeUtility, NetLast }; /* EWMH atoms */ -enum { XDGShell, X11Managed, X11Unmanaged }; /* client types */ #endif typedef union { @@ -87,6 +87,8 @@ typedef struct { typedef struct Monitor Monitor; typedef struct { + /* Must be first */ + unsigned int type; /* XDGShell or X11* */ struct wl_list link; struct wl_list flink; struct wl_list slink; @@ -103,7 +105,6 @@ typedef struct { struct wlr_box geom; /* layout-relative, includes border */ Monitor *mon; #ifdef XWAYLAND - unsigned int type; struct wl_listener activate; struct wl_listener configure; #endif @@ -140,6 +141,8 @@ typedef struct { } Keyboard; typedef struct { + /* Must be first */ + unsigned int type; /* LayerShell */ struct wlr_layer_surface_v1 *layer_surface; struct wl_list link; @@ -917,6 +920,7 @@ createlayersurface(struct wl_listener *listener, void *data) } layersurface = calloc(1, sizeof(LayerSurface)); + layersurface->type = LayerShell; LISTEN(&wlr_layer_surface->surface->events.commit, &layersurface->surface_commit, commitlayersurfacenotify); LISTEN(&wlr_layer_surface->events.destroy, &layersurface->destroy,