adapter->endpoints = g_slist_append(adapter->endpoints, endpoint);
info("Endpoint registered: sender=%s path=%s", sender, path);
+#ifdef TIZEN_FEATURE_BLUEZ_MODIFY
+ info("Emit property changed signal for A2dpRole");
+
+ btd_adapter_emit_a2dp_role_changed(adapter->btd_adapter);
+#endif
+
if (err)
*err = 0;
return endpoint;
store_adapter_info(adapter);
}
+
+void btd_adapter_emit_a2dp_role_changed(struct btd_adapter *adapter)
+{
+ if (!adapter) {
+ DBG("Could not emit signal for a2dp role");
+ return;
+ }
+
+ DBG("A2dp role: %u", adapter->a2dp_role);
+
+ g_dbus_emit_property_changed(dbus_conn, adapter->path,
+ ADAPTER_INTERFACE, "A2dpRole");
+}
#endif
static void trigger_pairable_timeout(struct btd_adapter *adapter);
return TRUE;
}
+static gboolean property_get_a2dp_role(const GDBusPropertyTable *property,
+ DBusMessageIter *iter, void *user_data)
+{
+ struct btd_adapter *adapter = user_data;
+ dbus_uint32_t val = adapter->a2dp_role;
+
+ dbus_message_iter_append_basic(iter, DBUS_TYPE_UINT32, &val);
+
+ return TRUE;
+}
+
static gboolean property_get_mode(struct btd_adapter *adapter,
uint32_t setting, DBusMessageIter *iter)
{
{ "SupportedLEFeatures", "as", property_get_supported_le_features},
{ "IpspInitStateChanged", "b", property_get_ipsp_init_state},
{ "LEAddress", "as", property_get_le_address },
+ { "A2dpRole", "u", property_get_a2dp_role },
#endif
{ }
#ifdef TIZEN_FEATURE_BLUEZ_MODIFY
bluetooth_a2dp_role_t btd_adapter_get_a2dp_role(struct btd_adapter *adapter);
void btd_adapter_set_a2dp_role(struct btd_adapter *adapter, bluetooth_a2dp_role_t role);
+void btd_adapter_emit_a2dp_role_changed(struct btd_adapter *adapter);
#endif
uint16_t btd_adapter_get_index(struct btd_adapter *adapter);