summaryrefslogtreecommitdiff
path: root/devkit-power-gobject
diff options
context:
space:
mode:
authorRichard Hughes <richard@hughsie.com>2009-10-14 10:53:35 +0100
committerRichard Hughes <richard@hughsie.com>2009-10-14 10:53:35 +0100
commitb00791b9bf30bf1089d20062f730e59895096fe8 (patch)
tree917a74ccd57ef498d8f45942234f117a42b40931 /devkit-power-gobject
parentb69e31ef05a18be74c4ff69ed3a6ce79a0550bc2 (diff)
Add g_object_notify() calls for properties on DkpClient
Diffstat (limited to 'devkit-power-gobject')
-rw-r--r--devkit-power-gobject/dkp-client.c36
1 files changed, 30 insertions, 6 deletions
diff --git a/devkit-power-gobject/dkp-client.c b/devkit-power-gobject/dkp-client.c
index f654edd..0f7562c 100644
--- a/devkit-power-gobject/dkp-client.c
+++ b/devkit-power-gobject/dkp-client.c
@@ -265,42 +265,66 @@ dkp_client_ensure_properties (DkpClient *client)
g_warning ("No 'CanSuspend' property");
goto out;
}
- client->priv->can_suspend = g_value_get_boolean (value);
+ ret = g_value_get_boolean (value);
+ if (ret != client->priv->can_suspend) {
+ client->priv->can_suspend = ret;
+ g_object_notify (G_OBJECT(client), "can-suspend");
+ }
value = g_hash_table_lookup (props, "CanHibernate");
if (value == NULL) {
g_warning ("No 'CanHibernate' property");
goto out;
}
- client->priv->can_hibernate = g_value_get_boolean (value);
+ ret = g_value_get_boolean (value);
+ if (ret != client->priv->can_hibernate) {
+ client->priv->can_hibernate = ret;
+ g_object_notify (G_OBJECT(client), "can-hibernate");
+ }
value = g_hash_table_lookup (props, "LidIsClosed");
if (value == NULL) {
g_warning ("No 'LidIsClosed' property");
goto out;
}
- client->priv->lid_is_closed = g_value_get_boolean (value);
+ ret = g_value_get_boolean (value);
+ if (ret != client->priv->lid_is_closed) {
+ client->priv->lid_is_closed = ret;
+ g_object_notify (G_OBJECT(client), "lid-is-closed");
+ }
value = g_hash_table_lookup (props, "OnBattery");
if (value == NULL) {
g_warning ("No 'OnBattery' property");
goto out;
}
- client->priv->on_battery = g_value_get_boolean (value);
+ ret = g_value_get_boolean (value);
+ if (ret != client->priv->on_battery) {
+ client->priv->on_battery = ret;
+ g_object_notify (G_OBJECT(client), "on-battery");
+ }
value = g_hash_table_lookup (props, "OnLowBattery");
if (value == NULL) {
g_warning ("No 'OnLowBattery' property");
goto out;
}
- client->priv->on_low_battery = g_value_get_boolean (value);
+ ret = g_value_get_boolean (value);
+ if (ret != client->priv->on_low_battery) {
+ client->priv->on_low_battery = ret;
+ g_object_notify (G_OBJECT(client), "on-low-battery");
+ }
value = g_hash_table_lookup (props, "LidIsPresent");
if (value == NULL) {
g_warning ("No 'LidIsPresent' property");
goto out;
}
- client->priv->lid_is_present = g_value_get_boolean (value);
+ ret = g_value_get_boolean (value);
+ if (ret != client->priv->lid_is_present) {
+ client->priv->lid_is_present = ret;
+ g_object_notify (G_OBJECT(client), "lid-is-present");
+ }
/* cached */
client->priv->have_properties = TRUE;