~ruther/dwl

60a98b87f395618be8d35c1100e019588e255d78 — Leonardo Hernández Hernández 2 years ago 93a911d
inhibit idle if surface's node is enabled
1 files changed, 3 insertions(+), 6 deletions(-)

M dwl.c
M dwl.c => dwl.c +3 -6
@@ 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;
		}

Do not follow this link