diff options
author | Gary Kramlich <grim@reaperworld.com> | 2021-10-28 23:26:03 -0500 |
---|---|---|
committer | Gary Kramlich <grim@reaperworld.com> | 2021-10-28 23:26:03 -0500 |
commit | 4c87f8512f54d3f28ed079a5420ee33fb9aa9024 (patch) | |
tree | 8f34d9a3b24566b733b12d48fb148455c392ffa7 /pidgin/gtkidle.c | |
parent | 881579bfe822407d0069c36b6a07523c91bc8b73 (diff) | |
download | pidgin-4c87f8512f54d3f28ed079a5420ee33fb9aa9024.tar.gz |
Separate the preproc mess of gtkidle out from a single function to multiple functions
Testing Done:
Compiled on linux.
Reviewed at https://reviews.imfreedom.org/r/1110/
Diffstat (limited to 'pidgin/gtkidle.c')
-rw-r--r-- | pidgin/gtkidle.c | 82 |
1 files changed, 37 insertions, 45 deletions
diff --git a/pidgin/gtkidle.c b/pidgin/gtkidle.c index c1afca28b4..5b2f7f0705 100644 --- a/pidgin/gtkidle.c +++ b/pidgin/gtkidle.c @@ -45,49 +45,19 @@ struct _PidginIdle { GObject parent; }; -#if !defined(HAVE_IOKIT) && !defined(_WIN32) -typedef struct { - gchar *bus_name; - gchar *object_path; - gchar *iface_name; -} PidginDBusScreenSaverInfo; - -static const PidginDBusScreenSaverInfo screensavers[] = { - { - "org.freedesktop.ScreenSaver", - "/org/freedesktop/ScreenSaver", - "org.freedesktop.ScreenSaver" - }, { - "org.gnome.ScreenSaver", - "/org/gnome/ScreenSaver", - "org.gnome.ScreenSaver" - }, { - "org.kde.ScreenSaver", - "/org/kde/ScreenSaver", - "org.kde.ScreenSaver" - }, -}; -#endif /* !HAVE_IOKIT && !_WIN32 */ - /****************************************************************************** - * PurpleIdleUI Implementation + * PurpleIdleUi Implementation *****************************************************************************/ +#ifdef _WIN32 +static time_t +pidgin_idle_get_idle_time(PurpleIdleUi *ui) { + return (GetTickCount() - winpidgin_get_lastactive()) / 1000; +} +#endif /* _WIN32 */ -/* - * pidgin_get_time_idle: - * - * Get the number of seconds the user has been idle. In Unix-world - * this is based on the DBus ScreenSaver interfaces. In MS Windows this - * is based on keyboard/mouse usage information obtained from the OS. - * In MacOS X, this is based on keyboard/mouse usage information - * obtained from the OS, if configure detected IOKit. Otherwise, - * MacOS X is handled as a case of Unix. - * - * Returns: The number of seconds the user has been idle. - */ +#ifdef HAVE_IOKIT static time_t pidgin_idle_get_idle_time(PurpleIdleUi *ui) { -# ifdef HAVE_IOKIT /* Query the IOKit API */ double idleSeconds = -1; io_iterator_t iter = 0; @@ -112,11 +82,34 @@ pidgin_idle_get_idle_time(PurpleIdleUi *ui) { IOObjectRelease(iter); } return idleSeconds; -# else -# ifdef _WIN32 - /* Query Windows */ - return (GetTickCount() - winpidgin_get_lastactive()) / 1000; -# else +} +#endif /* HAVE_IOKIT */ + +#if !defined(_WIN32) && !defined(HAVE_IOKIT) +typedef struct { + gchar *bus_name; + gchar *object_path; + gchar *iface_name; +} PidginDBusScreenSaverInfo; + +static const PidginDBusScreenSaverInfo screensavers[] = { + { + "org.freedesktop.ScreenSaver", + "/org/freedesktop/ScreenSaver", + "org.freedesktop.ScreenSaver" + }, { + "org.gnome.ScreenSaver", + "/org/gnome/ScreenSaver", + "org.gnome.ScreenSaver" + }, { + "org.kde.ScreenSaver", + "/org/kde/ScreenSaver", + "org.kde.ScreenSaver" + }, +}; + +static time_t +pidgin_idle_get_idle_time(PurpleIdleUi *ui) { static guint idx = 0; GApplication *app; GDBusConnection *conn; @@ -188,9 +181,8 @@ pidgin_idle_get_idle_time(PurpleIdleUi *ui) { g_variant_unref(reply); return active_time; -# endif /* !_WIN32 */ -# endif /* !HAVE_IOKIT */ } +#endif /* !defined(_WIN32) && !defined(HAVE_IOKIT) */ static void pidgin_idle_purple_ui_init(PurpleIdleUiInterface *iface) { |