From 10c56d63489506ee852f3ec18f078e60ba1885f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Hern=C3=A1ndez=20Hern=C3=A1ndez?= Date: Wed, 30 Nov 2022 18:51:35 -0600 Subject: [PATCH] add option to allow invisible surfaces to disable idle tracking --- config.def.h | 13 +++++++------ dwl.c | 5 +++-- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/config.def.h b/config.def.h index 0473b40..8f01192 100644 --- a/config.def.h +++ b/config.def.h @@ -1,11 +1,12 @@ /* appearance */ -static const int sloppyfocus = 1; /* focus follows mouse */ -static const unsigned int borderpx = 1; /* border pixel of windows */ -static const float rootcolor[] = {0.3, 0.3, 0.3, 1.0}; -static const float bordercolor[] = {0.5, 0.5, 0.5, 1.0}; -static const float focuscolor[] = {1.0, 0.0, 0.0, 1.0}; +static const int sloppyfocus = 1; /* focus follows mouse */ +static const int bypass_surface_visibility = 0; /* 1 means idle inhibitors will disable idle tracking even if it's surface isn't visible */ +static const unsigned int borderpx = 1; /* border pixel of windows */ +static const float rootcolor[] = {0.3, 0.3, 0.3, 1.0}; +static const float bordercolor[] = {0.5, 0.5, 0.5, 1.0}; +static const float focuscolor[] = {1.0, 0.0, 0.0, 1.0}; /* To conform the xdg-protocol, set the alpha to zero to restore the old behavior */ -static const float fullscreen_bg[] = {0.1, 0.1, 0.1, 1.0}; +static const float fullscreen_bg[] = {0.1, 0.1, 0.1, 1.0}; /* tagging */ static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }; diff --git a/dwl.c b/dwl.c index 4648890..f07a867 100644 --- a/dwl.c +++ b/dwl.c @@ -597,8 +597,9 @@ checkidleinhibitor(struct wlr_surface *exclude) struct wlr_scene_tree *tree; struct wlr_idle_inhibitor_v1 *inhibitor; wl_list_for_each(inhibitor, &idle_inhibit_mgr->inhibitors, link) { - if (exclude != inhibitor->surface && (tree = inhibitor->surface->data) - && tree->node.enabled) { + if (bypass_surface_visibility || (exclude != inhibitor->surface + && (tree = inhibitor->surface->data) + && tree->node.enabled)) { inhibited = 1; break; }