Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 82eee7ab authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Floss: Add DBUS API |OnDevicePropertiesChanged|"

parents 1632d1b0 79197087
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -126,6 +126,14 @@ impl BtCallback {
impl IBluetoothCallback for BtCallback {
    fn on_adapter_property_changed(&mut self, _prop: BtPropertyType) {}

    fn on_device_properties_changed(
        &mut self,
        remote_device: BluetoothDevice,
        props: Vec<BtPropertyType>,
    ) {
        print_info!("Bluetooth properties {:?} changed for {:?}", props, remote_device);
    }

    fn on_address_changed(&mut self, addr: String) {
        print_info!("Address changed to {}", &addr);
        self.context.lock().unwrap().adapter_address = Some(addr);
+8 −0
Original line number Diff line number Diff line
@@ -558,6 +558,14 @@ impl IBluetoothCallback for IBluetoothCallbackDBus {
    #[dbus_method("OnAdapterPropertyChanged")]
    fn on_adapter_property_changed(&mut self, prop: BtPropertyType) {}

    #[dbus_method("OnDevicePropertiesChanged")]
    fn on_device_properties_changed(
        &mut self,
        remote_device: BluetoothDevice,
        props: Vec<BtPropertyType>,
    ) {
    }

    #[dbus_method("OnAddressChanged")]
    fn on_address_changed(&mut self, addr: String) {}

+8 −0
Original line number Diff line number Diff line
@@ -79,6 +79,14 @@ impl IBluetoothCallback for BluetoothCallbackDBus {
    fn on_adapter_property_changed(&mut self, prop: BtPropertyType) {
        dbus_generated!()
    }
    #[dbus_method("OnDevicePropertiesChanged")]
    fn on_device_properties_changed(
        &mut self,
        remote_device: BluetoothDevice,
        props: Vec<BtPropertyType>,
    ) {
        dbus_generated!()
    }
    #[dbus_method("OnAddressChanged")]
    fn on_address_changed(&mut self, addr: String) {
        dbus_generated!()
+15 −0
Original line number Diff line number Diff line
@@ -378,6 +378,13 @@ pub trait IBluetoothCallback: RPCProxy {
    /// When any adapter property changes.
    fn on_adapter_property_changed(&mut self, prop: BtPropertyType);

    /// When any device properties change.
    fn on_device_properties_changed(
        &mut self,
        remote_device: BluetoothDevice,
        props: Vec<BtPropertyType>,
    );

    /// When any of the adapter local address is changed.
    fn on_address_changed(&mut self, addr: String);

@@ -1579,6 +1586,14 @@ impl BtifBluetoothCallbacks for Bluetooth {
                    });
                }

                let info = &d.info.clone();
                self.callbacks.for_all_callbacks(|callback| {
                    callback.on_device_properties_changed(
                        info.clone(),
                        properties.clone().into_iter().map(|x| x.get_type()).collect(),
                    );
                });

                self.bluetooth_admin
                    .lock()
                    .unwrap()