mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-09 00:40:19 +01:00
sleep-monitor: merge RESUMING signal into NMSleepMonitor's SLEEPING signal
Having two signals is more complicated and everybody who cares about
one signal also cares about the other.
(cherry picked from commit 07db1217a9)
This commit is contained in:
parent
af36df2262
commit
ee561f8e89
3 changed files with 14 additions and 37 deletions
|
|
@ -4071,21 +4071,12 @@ impl_manager_sleep (NMManager *self,
|
|||
}
|
||||
|
||||
static void
|
||||
sleeping_cb (NMSleepMonitor *monitor, gpointer user_data)
|
||||
sleeping_cb (NMSleepMonitor *monitor, gboolean is_about_to_suspend, gpointer user_data)
|
||||
{
|
||||
NMManager *self = user_data;
|
||||
|
||||
_LOGD (LOGD_SUSPEND, "Received sleeping signal");
|
||||
_internal_sleep (self, TRUE);
|
||||
}
|
||||
|
||||
static void
|
||||
resuming_cb (NMSleepMonitor *monitor, gpointer user_data)
|
||||
{
|
||||
NMManager *self = user_data;
|
||||
|
||||
_LOGD (LOGD_SUSPEND, "Received resuming signal");
|
||||
_internal_sleep (self, FALSE);
|
||||
_LOGD (LOGD_SUSPEND, "Received %s signal", is_about_to_suspend ? "sleeping" : "resuming");
|
||||
_internal_sleep (self, is_about_to_suspend);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -5276,8 +5267,6 @@ nm_manager_init (NMManager *self)
|
|||
priv->sleep_monitor = g_object_ref (nm_sleep_monitor_get ());
|
||||
g_signal_connect (priv->sleep_monitor, NM_SLEEP_MONITOR_SLEEPING,
|
||||
G_CALLBACK (sleeping_cb), self);
|
||||
g_signal_connect (priv->sleep_monitor, NM_SLEEP_MONITOR_RESUMING,
|
||||
G_CALLBACK (resuming_cb), self);
|
||||
|
||||
/* Listen for authorization changes */
|
||||
g_signal_connect (nm_auth_manager_get (),
|
||||
|
|
@ -5533,7 +5522,6 @@ dispose (GObject *object)
|
|||
|
||||
if (priv->sleep_monitor) {
|
||||
g_signal_handlers_disconnect_by_func (priv->sleep_monitor, sleeping_cb, manager);
|
||||
g_signal_handlers_disconnect_by_func (priv->sleep_monitor, resuming_cb, manager);
|
||||
g_clear_object (&priv->sleep_monitor);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -84,7 +84,6 @@ struct _NMSleepMonitorClass {
|
|||
|
||||
enum {
|
||||
SLEEPING,
|
||||
RESUMING,
|
||||
LAST_SIGNAL,
|
||||
};
|
||||
static guint signals[LAST_SIGNAL] = {0};
|
||||
|
|
@ -238,17 +237,17 @@ sleep_signal (NMSleepMonitor *self,
|
|||
|
||||
_LOGD ("received %s signal", is_about_to_suspend ? "SLEEP" : "RESUME");
|
||||
|
||||
if (is_about_to_suspend) {
|
||||
g_signal_emit (self, signals[SLEEPING], 0);
|
||||
#if !USE_UPOWER
|
||||
drop_inhibitor (self);
|
||||
#endif
|
||||
} else {
|
||||
#if !USE_UPOWER
|
||||
if (!is_about_to_suspend)
|
||||
take_inhibitor (self);
|
||||
#endif
|
||||
g_signal_emit (self, signals[RESUMING], 0);
|
||||
}
|
||||
|
||||
g_signal_emit (self, signals[SLEEPING], 0, is_about_to_suspend);
|
||||
|
||||
#if !USE_UPOWER
|
||||
if (is_about_to_suspend)
|
||||
drop_inhibitor (self);
|
||||
#endif
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -337,13 +336,7 @@ nm_sleep_monitor_class_init (NMSleepMonitorClass *klass)
|
|||
NM_TYPE_SLEEP_MONITOR,
|
||||
G_SIGNAL_RUN_LAST,
|
||||
0, NULL, NULL,
|
||||
g_cclosure_marshal_VOID__VOID,
|
||||
G_TYPE_NONE, 0);
|
||||
signals[RESUMING] = g_signal_new (NM_SLEEP_MONITOR_RESUMING,
|
||||
NM_TYPE_SLEEP_MONITOR,
|
||||
G_SIGNAL_RUN_LAST,
|
||||
0, NULL, NULL,
|
||||
g_cclosure_marshal_VOID__VOID,
|
||||
G_TYPE_NONE, 0);
|
||||
g_cclosure_marshal_VOID__BOOLEAN,
|
||||
G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -13,16 +13,13 @@
|
|||
* with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* (C) Copyright 2012 Red Hat, Inc.
|
||||
* (C) Copyright 2012-2016 Red Hat, Inc.
|
||||
* Author: Matthias Clasen <mclasen@redhat.com>
|
||||
*/
|
||||
|
||||
#ifndef __NETWORKMANAGER_SLEEP_MONITOR_H__
|
||||
#define __NETWORKMANAGER_SLEEP_MONITOR_H__
|
||||
|
||||
|
||||
#include "nm-default.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define NM_TYPE_SLEEP_MONITOR (nm_sleep_monitor_get_type ())
|
||||
|
|
@ -33,7 +30,6 @@ G_BEGIN_DECLS
|
|||
#define NM_IS_SLEEP_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), NM_TYPE_SLEEP_MONITOR))
|
||||
|
||||
#define NM_SLEEP_MONITOR_SLEEPING "sleeping"
|
||||
#define NM_SLEEP_MONITOR_RESUMING "resuming"
|
||||
|
||||
typedef struct _NMSleepMonitorClass NMSleepMonitorClass;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue