dwl

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

commit 7b1fe7e5f2b92f025063cc98ebdb1791945e2f4a
parent 803a9ba98d6976c71e92973e3af6096476984fa3
Author: Leonardo Hernández Hernández <leohdz172@protonmail.com>
Date:   Fri, 16 Dec 2022 17:24:45 -0600

fix checking idle inhibit state

checking `bypass_surface_visibility` first, could cause that even if the idle
inhibitor is being destroyed it will disable idle tracking

and if we couldn't get its scene tree, then assume that the surface is visible

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

diff --git a/dwl.c b/dwl.c @@ -627,8 +627,8 @@ checkidleinhibitor(struct wlr_surface *exclude) wl_list_for_each(inhibitor, &idle_inhibit_mgr->inhibitors, link) { struct wlr_surface *surface = wlr_surface_get_root_surface(inhibitor->surface); struct wlr_scene_tree *tree = surface->data; - if (bypass_surface_visibility || (exclude != surface - && tree && tree->node.enabled)) { + if (exclude != surface && (bypass_surface_visibility || (!tree + || tree->node.enabled))) { inhibited = 1; break; }