[gnome-flashback] screensaver: simplify GfWatcher
- From: Alberts Muktupāvels <muktupavels src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-flashback] screensaver: simplify GfWatcher
- Date: Tue, 10 Dec 2019 21:34:39 +0000 (UTC)
commit 31c94652838dd248bd0e1fb03b8d1545561a884a
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date: Tue Dec 10 20:13:25 2019 +0200
screensaver: simplify GfWatcher
Previous commit removed status-message-enabled setting because it
was deprecated. Remove related status message, it will not be used.
Note that gnome-screensaver has not shown status messages for more
than 9 years. Related commit:
https://gitlab.gnome.org/Archive/gnome-screensaver/commit/09cce9f6f
Also remove enabled, it is always TRUE.
gnome-flashback/libscreensaver/gf-watcher.c | 102 +++------------------
gnome-flashback/libscreensaver/gf-watcher.h | 17 +---
.../org.gnome.SessionManager.Presence.xml | 6 --
3 files changed, 18 insertions(+), 107 deletions(-)
---
diff --git a/gnome-flashback/libscreensaver/gf-watcher.c b/gnome-flashback/libscreensaver/gf-watcher.c
index c692e0b..09681e8 100644
--- a/gnome-flashback/libscreensaver/gf-watcher.c
+++ b/gnome-flashback/libscreensaver/gf-watcher.c
@@ -1,7 +1,7 @@
/*
* Copyright (C) 2004-2006 William Jon McCann
* Copyright (C) 2008 Red Hat, Inc.
- * Copyright (C) 2016 Alberts Muktupāvels
+ * Copyright (C) 2019 Alberts Muktupāvels
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -38,11 +38,8 @@ struct _GfWatcher
guint presence_id;
GfSmPresenceGen *presence;
- gboolean enabled;
gboolean active;
- gchar *status_message;
-
gboolean idle;
gboolean idle_notice;
guint idle_id;
@@ -55,8 +52,6 @@ enum
IDLE_CHANGED,
IDLE_NOTICE_CHANGED,
- STATUS_MESSAGE_CHANGED,
-
LAST_SIGNAL
};
@@ -152,9 +147,7 @@ set_session_idle (GfWatcher *watcher,
gboolean handled;
if (watcher->idle == idle)
- {
- return FALSE;
- }
+ return FALSE;
handled = FALSE;
g_signal_emit (watcher, signals[IDLE_CHANGED], 0, idle, &handled);
@@ -179,9 +172,7 @@ set_session_idle_notice (GfWatcher *watcher,
gboolean handled;
if (watcher->idle_notice == idle_notice)
- {
- return;
- }
+ return;
handled = FALSE;
g_signal_emit (watcher, signals[IDLE_NOTICE_CHANGED], 0,
@@ -221,9 +212,9 @@ idle_cb (gpointer user_data)
static void
status_changed_cb (GfSmPresenceGen *presence,
+ guint status,
GfWatcher *watcher)
{
- guint status;
gboolean idle;
if (!watcher->active)
@@ -232,7 +223,6 @@ status_changed_cb (GfSmPresenceGen *presence,
return;
}
- status = gf_sm_presence_gen_get_status (presence);
idle = (status == 3);
if (!idle && !watcher->idle_notice)
@@ -253,6 +243,7 @@ status_changed_cb (GfSmPresenceGen *presence,
/* time before idle signal to send notice signal */
watcher->idle_id = g_timeout_add_seconds (10, idle_cb, watcher);
+ g_source_set_name_by_id (watcher->idle_id, "[gnome-flashback] idle_cb");
}
else
{
@@ -261,18 +252,6 @@ status_changed_cb (GfSmPresenceGen *presence,
}
}
-static void
-status_text_changed_cb (GfSmPresenceGen *presence,
- GfWatcher *watcher)
-{
- const gchar *text;
-
- text = gf_sm_presence_gen_get_status_text (presence);
-
- g_free (watcher->status_message);
- watcher->status_message = g_strdup (text);
-}
-
static void
presence_ready_cb (GObject *object,
GAsyncResult *res,
@@ -280,6 +259,7 @@ presence_ready_cb (GObject *object,
{
GfWatcher *watcher;
GError *error;
+ guint status;
watcher = GF_WATCHER (user_data);
@@ -296,11 +276,9 @@ presence_ready_cb (GObject *object,
g_signal_connect (watcher->presence, "status-changed",
G_CALLBACK (status_changed_cb), watcher);
- g_signal_connect (watcher->presence, "status-text-changed",
- G_CALLBACK (status_text_changed_cb), watcher);
- status_changed_cb (watcher->presence, watcher);
- status_text_changed_cb (watcher->presence, watcher);
+ status = gf_sm_presence_gen_get_status (watcher->presence);
+ status_changed_cb (watcher->presence, status, watcher);
}
static void
@@ -335,9 +313,7 @@ set_active_internal (GfWatcher *watcher,
gboolean active)
{
if (watcher->active == active)
- {
- return;
- }
+ return;
watcher->idle = FALSE;
watcher->idle_notice = FALSE;
@@ -374,18 +350,6 @@ gf_watcher_dispose (GObject *object)
G_OBJECT_CLASS (gf_watcher_parent_class)->dispose (object);
}
-static void
-gf_watcher_finalize (GObject *object)
-{
- GfWatcher *watcher;
-
- watcher = GF_WATCHER (object);
-
- g_free (watcher->status_message);
-
- G_OBJECT_CLASS (gf_watcher_parent_class)->finalize (object);
-}
-
static void
install_signals (GObjectClass *object_class)
{
@@ -398,11 +362,6 @@ install_signals (GObjectClass *object_class)
g_signal_new ("idle-notice-changed", GF_TYPE_WATCHER,
G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
G_TYPE_BOOLEAN, 1, G_TYPE_BOOLEAN);
-
- signals[STATUS_MESSAGE_CHANGED] =
- g_signal_new ("status-message-changed", GF_TYPE_WATCHER,
- G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
- G_TYPE_NONE, 0);
}
static void
@@ -413,7 +372,6 @@ gf_watcher_class_init (GfWatcherClass *watcher_class)
object_class = G_OBJECT_CLASS (watcher_class);
object_class->dispose = gf_watcher_dispose;
- object_class->finalize = gf_watcher_finalize;
install_signals (object_class);
}
@@ -421,8 +379,6 @@ gf_watcher_class_init (GfWatcherClass *watcher_class)
static void
gf_watcher_init (GfWatcher *watcher)
{
- watcher->enabled = TRUE;
-
watcher->presence_id = g_bus_watch_name (G_BUS_TYPE_SESSION,
SESSION_MANAGER_DBUS_NAME,
G_BUS_NAME_WATCHER_FLAGS_NONE,
@@ -434,6 +390,7 @@ gf_watcher_init (GfWatcher *watcher)
* not, to try and clean up anything that has gone wrong.
*/
watcher->watchdog_id = g_timeout_add_seconds (600, watchdog_cb, watcher);
+ g_source_set_name_by_id (watcher->watchdog_id, "[gnome-flashback] watchdog_cb");
}
GfWatcher *
@@ -442,30 +399,7 @@ gf_watcher_new (void)
return g_object_new (GF_TYPE_WATCHER, NULL);
}
-void
-gf_watcher_set_enabled (GfWatcher *watcher,
- gboolean enabled)
-{
- if (watcher->enabled == enabled)
- {
- return;
- }
-
- watcher->enabled = enabled;
-
- if (!enabled && watcher->active)
- {
- set_active_internal (watcher, FALSE);
- }
-}
-
gboolean
-gf_watcher_get_enabled (GfWatcher *watcher)
-{
- return watcher->enabled;
-}
-
-void
gf_watcher_set_active (GfWatcher *watcher,
gboolean active)
{
@@ -476,16 +410,12 @@ gf_watcher_set_active (GfWatcher *watcher,
g_debug ("Idle detection is already %s",
active ? "active" : "inactive");
- return;
- }
-
- if (!watcher->enabled)
- {
- g_debug ("Idle detection is disabled, cannot activate");
- return;
+ return FALSE;
}
set_active_internal (watcher, active);
+
+ return TRUE;
}
gboolean
@@ -493,9 +423,3 @@ gf_watcher_get_active (GfWatcher *watcher)
{
return watcher->active;
}
-
-const gchar *
-gf_watcher_get_status_message (GfWatcher *watcher)
-{
- return watcher->status_message;
-}
diff --git a/gnome-flashback/libscreensaver/gf-watcher.h b/gnome-flashback/libscreensaver/gf-watcher.h
index 44b7d53..5fb6451 100644
--- a/gnome-flashback/libscreensaver/gf-watcher.h
+++ b/gnome-flashback/libscreensaver/gf-watcher.h
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2004-2005 William Jon McCann
- * Copyright (C) 2016 Alberts Muktupāvels
+ * Copyright (C) 2019 Alberts Muktupāvels
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -30,19 +30,12 @@ G_BEGIN_DECLS
#define GF_TYPE_WATCHER gf_watcher_get_type ()
G_DECLARE_FINAL_TYPE (GfWatcher, gf_watcher, GF, WATCHER, GObject)
-GfWatcher *gf_watcher_new (void);
+GfWatcher *gf_watcher_new (void);
-void gf_watcher_set_enabled (GfWatcher *watcher,
- gboolean enabled);
+gboolean gf_watcher_set_active (GfWatcher *watcher,
+ gboolean active);
-gboolean gf_watcher_get_enabled (GfWatcher *watcher);
-
-void gf_watcher_set_active (GfWatcher *watcher,
- gboolean active);
-
-gboolean gf_watcher_get_active (GfWatcher *watcher);
-
-const gchar *gf_watcher_get_status_message (GfWatcher *watcher);
+gboolean gf_watcher_get_active (GfWatcher *watcher);
G_END_DECLS
diff --git a/gnome-flashback/libscreensaver/org.gnome.SessionManager.Presence.xml
b/gnome-flashback/libscreensaver/org.gnome.SessionManager.Presence.xml
index 81cb8ca..6b226ca 100644
--- a/gnome-flashback/libscreensaver/org.gnome.SessionManager.Presence.xml
+++ b/gnome-flashback/libscreensaver/org.gnome.SessionManager.Presence.xml
@@ -7,15 +7,9 @@
<property name="status" type="u" access="readwrite" />
- <property name="status-text" type="s" access="readwrite" />
-
<signal name="StatusChanged">
<arg name="status" type="u" direction="in" />
</signal>
- <signal name="StatusTextChanged">
- <arg name="status_text" type="s" direction="in" />
- </signal>
-
</interface>
</node>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]