diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2023-05-05 23:38:21 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2023-05-05 23:38:21 +0200 |
commit | 08039f0bfcd35efca2a075bbf49fe3e45d89d5bf (patch) | |
tree | 62152c893faf4b24a6925fdebe2a9b40f2bfe1fd /src/device-provider-upower.c | |
parent | e62300da9bf1eedbbdb1579f75b0d75d351e6950 (diff) | |
parent | 8f7c0cdbfd3ac5166a9628f917a0184fe5a44628 (diff) | |
download | ayatana-indicator-power-08039f0bfcd35efca2a075bbf49fe3e45d89d5bf.tar.gz ayatana-indicator-power-08039f0bfcd35efca2a075bbf49fe3e45d89d5bf.tar.bz2 ayatana-indicator-power-08039f0bfcd35efca2a075bbf49fe3e45d89d5bf.zip |
Merge branch 'tari01-pr/adapt-to-level-ido'
Attributes GH PR #76: https://github.com/AyatanaIndicators/ayatana-indicator-power/pull/76
Diffstat (limited to 'src/device-provider-upower.c')
-rw-r--r-- | src/device-provider-upower.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/device-provider-upower.c b/src/device-provider-upower.c index f9b5e18..dbbe5f1 100644 --- a/src/device-provider-upower.c +++ b/src/device-provider-upower.c @@ -1,8 +1,10 @@ /* * Copyright 2013 Canonical Ltd. + * Copyright 2023 Robert Tari * * Authors: * Charles Kerr <charles.kerr@canonical.com> + * Robert Tari <robert@tari.in> * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public License version 3, as published @@ -108,6 +110,7 @@ on_get_all_response (GObject * o, GAsyncResult * res, gpointer gdata) else { guint32 kind = 0; + gchar *model; guint32 state = 0; gdouble percentage = 0; gint64 time_to_empty = 0; @@ -119,6 +122,7 @@ on_get_all_response (GObject * o, GAsyncResult * res, gpointer gdata) GVariant * dict = g_variant_get_child_value (response, 0); g_variant_lookup (dict, "Type", "u", &kind); + g_variant_lookup (dict, "Model", "s", &model); g_variant_lookup (dict, "State", "u", &state); g_variant_lookup (dict, "Percentage", "d", &percentage); g_variant_lookup (dict, "TimeToEmpty", "x", &time_to_empty); @@ -129,6 +133,7 @@ on_get_all_response (GObject * o, GAsyncResult * res, gpointer gdata) if ((device = g_hash_table_lookup (p->devices, data->path))) { g_object_set (device, INDICATOR_POWER_DEVICE_KIND, (gint)kind, + INDICATOR_POWER_DEVICE_MODEL, model, INDICATOR_POWER_DEVICE_STATE, (gint)state, INDICATOR_POWER_DEVICE_OBJECT_PATH, data->path, INDICATOR_POWER_DEVICE_PERCENTAGE, percentage, @@ -140,6 +145,7 @@ on_get_all_response (GObject * o, GAsyncResult * res, gpointer gdata) { device = indicator_power_device_new (data->path, kind, + model, percentage, state, (time_t)time, @@ -344,6 +350,14 @@ on_device_properties_changed(GDBusConnection * connection G_GNUC_UNUSED, NULL); changed = TRUE; } + else if (!g_strcmp0(key, "Model")) + { + const gchar *s = g_variant_get_string(value, NULL); + g_object_set(device, + INDICATOR_POWER_DEVICE_MODEL, s, + NULL); + changed = TRUE; + } else if (!g_strcmp0(key, "State")) { const guint32 u = g_variant_get_uint32(value); |