def check_idle_inhibitor(self) -> None:
        """
        Checks if any window that is currently mapped has idle inhibitor
        and if so inhibits idle
        """
        assert self.qtile is not None

        for win in self.qtile.windows_map.values():
            if not isinstance(win, window.Internal) and win.is_idle_inhibited:
                # TODO: do we also need to check that the window is mapped?
                self.idle.set_inhibited(True)
                return

        self.idle.set_inhibited(False)

        Checks if any window that is currently mapped has idle inhibitor
        and if so inhibits idle
        
libqtile/backend/wayland/core.py