dwl

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

commit e6bcf95e2e69a0b9598d6f3e201b46ad817889ca
parent a5a7445deef2d3e451e3a69f10d437db719fce6b
Author: Devin J. Pohly <djpohly@gmail.com>
Date:   Thu, 23 Apr 2020 21:29:28 -0500

use the focus stack to determine stacking order

Suddenly we have autoraise!

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

diff --git a/dwl.c b/dwl.c @@ -822,9 +822,9 @@ rendermon(struct wl_listener *listener, void *data) wlr_renderer_clear(drw, rootcolor); /* Each subsequent window we render is rendered on top of the last. Because - * our client list is ordered front-to-back, we iterate over it backwards. */ + * our focus stack is ordered front-to-back, we iterate over it backwards. */ Client *c; - wl_list_for_each_reverse(c, &clients, link) { + wl_list_for_each_reverse(c, &fstack, flink) { /* Only render clients which are on this monitor. */ /* XXX consider checking wlr_output_layout_intersects, in case a * window can be seen on multiple outputs */ @@ -1241,9 +1241,9 @@ xytoclient(double x, double y, struct wlr_surface **surface, double *sx, double *sy) { /* This iterates over all of our surfaces and attempts to find one under the - * cursor. This relies on clients being ordered from top-to-bottom. */ + * cursor. This relies on fstack being ordered from top-to-bottom. */ Client *c; - wl_list_for_each(c, &clients, link) { + wl_list_for_each(c, &fstack, flink) { /* Skip clients that aren't visible */ if (!VISIBLEON(c, c->mon)) continue;