commit 60a98b87f395618be8d35c1100e019588e255d78 parent 93a911d6e93f760a5139bfe0d1c1eb90886c414f Author: Leonardo Hernández Hernández <leohdz172@protonmail.com> Date: Sun, 13 Nov 2022 16:46:43 -0600 inhibit idle if surface's node is enabled Diffstat:
| M | dwl.c | | | 9 | +++------ |
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/dwl.c b/dwl.c @@ -588,15 +588,12 @@ chvt(const Arg *arg) void checkidleinhibitor(struct wlr_surface *exclude) { - Client *c; int inhibited = 0; + struct wlr_scene_tree *tree; struct wlr_idle_inhibitor_v1 *inhibitor; wl_list_for_each(inhibitor, &idle_inhibit_mgr->inhibitors, link) { - /* In case we can't get a client from the surface assume that it is - * visible, for example a layer surface */ - if (exclude != inhibitor->surface - && (!(c = client_from_wlr_surface(inhibitor->surface)) - || VISIBLEON(c, c->mon))) { + if (exclude != inhibitor->surface && (tree = inhibitor->surface->data) + && tree->node.enabled) { inhibited = 1; break; }