dwl

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

commit e5e170e420aafaad4cb851caeca8d652f9949846
parent 39f3b87f3ac83bf143280508a4a23470af9e474d
Author: Devin J. Pohly <djpohly@gmail.com>
Date:   Sat, 25 Jul 2020 11:43:52 -0400

add client.type field

Current options are XDGShell, X11Managed, and X11Unmanaged.

Diffstat:
Mdwl.c | 6+++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/dwl.c b/dwl.c @@ -49,6 +49,7 @@ enum { CurNormal, CurMove, CurResize }; /* cursor */ enum { NetWMWindowTypeDialog, NetWMWindowTypeSplash, NetWMWindowTypeToolbar, NetWMWindowTypeUtility, NetLast }; /* EWMH atoms */ +enum { XDGShell = 0, X11Managed, X11Unmanaged }; /* client types */ typedef union { int i; @@ -78,8 +79,9 @@ typedef struct { struct wl_listener unmap; struct wl_listener destroy; struct wlr_box geom; /* layout-relative, includes border */ - int isx11; Monitor *mon; + unsigned int type; + int isx11; int bw; unsigned int tags; int isfloating; @@ -574,12 +576,14 @@ createnotifyx11(struct wl_listener *listener, void *data) /* Listen to the various events it can emit */ if (!xwayland_surface->override_redirect) { + c->type = X11Managed; c->map.notify = maprequest; c->unmap.notify = unmapnotify; /* Only "managed" windows can be activated */ c->activate.notify = activatex11; wl_signal_add(&xwayland_surface->events.request_activate, &c->activate); } else { + c->type = X11Unmanaged; c->map.notify = maprequestindependent; c->unmap.notify = unmapnotifyindependent; }