diff options
| author | Nippy <nippy@Nippy-Mac-mini.local> | 2026-09-26 18:21:21 +0200 |
|---|---|---|
| committer | Nippy <nippy@Nippy-Mac-mini.local> | 2026-09-26 18:21:21 +0200 |
| commit | a755216ccb467a31cd58eef5ae7c23e084f1750c (patch) | |
| tree | 6a70ad0d9ecf818945e5ef0c927d534967daf19f /raveos-gnome-theme/raveos-gnome-idle-blank | |
| parent | f5a18d3660b3e645c54ca0faf13080830b41c2be (diff) | |
| download | RaveOS-PKGBUILD-a755216ccb467a31cd58eef5ae7c23e084f1750c.tar.gz RaveOS-PKGBUILD-a755216ccb467a31cd58eef5ae7c23e084f1750c.zip | |
fix desktop
Diffstat (limited to 'raveos-gnome-theme/raveos-gnome-idle-blank')
| -rw-r--r-- | raveos-gnome-theme/raveos-gnome-idle-blank | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/raveos-gnome-theme/raveos-gnome-idle-blank b/raveos-gnome-theme/raveos-gnome-idle-blank index 06ee224..44425f9 100644 --- a/raveos-gnome-theme/raveos-gnome-idle-blank +++ b/raveos-gnome-theme/raveos-gnome-idle-blank @@ -11,6 +11,9 @@ DISPLAY_BUS = "org.gnome.Mutter.DisplayConfig" DISPLAY_PATH = "/org/gnome/Mutter/DisplayConfig" IDLE_BUS = "org.gnome.Mutter.IdleMonitor" IDLE_PATH = "/org/gnome/Mutter/IdleMonitor/Core" +SESSION_BUS = "org.gnome.SessionManager" +SESSION_PATH = "/org/gnome/SessionManager" +IDLE_INHIBIT_FLAG = 8 POLL_MS = 2000 WAKE_MS = 1500 @@ -33,6 +36,24 @@ def name_has_owner(bus, name): return False +def is_idle_inhibited(bus): + try: + res = bus.call_sync( + SESSION_BUS, + SESSION_PATH, + SESSION_BUS, + "IsInhibited", + GLib.Variant("(u)", (IDLE_INHIBIT_FLAG,)), + None, + Gio.DBusCallFlags.NONE, + 2000, + None, + ) + return bool(res.unpack()[0]) + except GLib.Error: + return False + + def main(): if "GNOME" not in os.environ.get("XDG_CURRENT_DESKTOP", ""): return 0 @@ -83,6 +104,8 @@ def main(): delay = settings.get_uint("idle-delay") idle = get_idle_ms() if delay > 0 and idle >= delay * 1000 and not state["off"]: + if is_idle_inhibited(bus): + return True set_power(3) state["off"] = True elif state["off"] and idle < WAKE_MS: |