From daf3903e0695e63a68bdbf15f0079f40e7deaf99 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Wed, 17 Dec 2008 15:44:14 +0100 Subject: [PATCH] Track scanning state changes of Bluetooth devices --- plugins/bluetooth.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/plugins/bluetooth.c b/plugins/bluetooth.c index 2b33c3a..8c83a98 100644 --- a/plugins/bluetooth.c +++ b/plugins/bluetooth.c @@ -114,14 +114,19 @@ static void property_changed(DBusConnection *connection, DBusMessage *message) dbus_message_iter_get_basic(&iter, &key); + dbus_message_iter_next(&iter); + dbus_message_iter_recurse(&iter, &value); + if (g_str_equal(key, "Powered") == TRUE) { gboolean val; - dbus_message_iter_next(&iter); - dbus_message_iter_recurse(&iter, &value); - dbus_message_iter_get_basic(&value, &val); connman_element_set_enabled(device, val); + } else if (g_str_equal(key, "Discovering") == TRUE) { + gboolean val; + + dbus_message_iter_get_basic(&value, &val); + connman_element_set_scanning(device, val); } } @@ -158,14 +163,19 @@ static void properties_reply(DBusPendingCall *call, void *user_data) dbus_message_iter_recurse(&dict, &entry); dbus_message_iter_get_basic(&entry, &key); + dbus_message_iter_next(&entry); + dbus_message_iter_recurse(&entry, &value); + if (g_str_equal(key, "Powered") == TRUE) { gboolean val; - dbus_message_iter_next(&entry); - dbus_message_iter_recurse(&entry, &value); - dbus_message_iter_get_basic(&value, &val); connman_element_set_enabled(device, val); + } else if (g_str_equal(key, "Discovering") == TRUE) { + gboolean val; + + dbus_message_iter_get_basic(&value, &val); + connman_element_set_scanning(device, val); } dbus_message_iter_next(&dict); -- 2.7.4