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

Commit d1c39e6f authored by John Lai's avatar John Lai Committed by Automerger Merge Worker
Browse files

Merge "Floss: Adds get_discoverable_mode into BluetoothQA" am: 0c0eff61 am: 04c5a7a5

parents b9ecf52f 04c5a7a5
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -482,12 +482,14 @@ impl CommandHandler {
                let context = self.lock_context();
                let adapter_dbus = context.adapter_dbus.as_ref().unwrap();
                let qa_legacy_dbus = context.qa_legacy_dbus.as_ref().unwrap();
                let qa_dbus = context.qa_dbus.as_ref().unwrap();
                let name = adapter_dbus.get_name();
                let uuids = adapter_dbus.get_uuids();
                let is_discoverable = adapter_dbus.get_discoverable();
                let is_connectable = qa_legacy_dbus.get_connectable();
                let alias = qa_legacy_dbus.get_alias();
                let modalias = qa_legacy_dbus.get_modalias();
                let discoverable_mode = qa_dbus.get_discoverable_mode();
                let discoverable_timeout = adapter_dbus.get_discoverable_timeout();
                let cod = adapter_dbus.get_bluetooth_class();
                let multi_adv_supported = adapter_dbus.is_multi_advertisement_supported();
@@ -511,6 +513,7 @@ impl CommandHandler {
                print_info!("Modalias: {}", modalias);
                print_info!("State: {}", if enabled { "enabled" } else { "disabled" });
                print_info!("Discoverable: {}", is_discoverable);
                print_info!("Discoverable mode: {:?}", discoverable_mode);
                print_info!("DiscoverableTimeout: {}s", discoverable_timeout);
                print_info!("Connectable: {}", is_connectable);
                print_info!("Class: {:#06x}", cod);
+4 −0
Original line number Diff line number Diff line
@@ -2273,4 +2273,8 @@ impl IBluetoothQA for BluetoothQADBus {
    fn rfcomm_send_msc(&self, dlci: u8, addr: String) {
        dbus_generated!()
    }
    #[dbus_method("GetDiscoverableMode")]
    fn get_discoverable_mode(&self) -> BtDiscMode {
        dbus_generated!()
    }
}
+5 −0
Original line number Diff line number Diff line
use btstack::bluetooth_qa::IBluetoothQA;

use bt_topshim::btif::BtDiscMode;
use dbus_macros::{dbus_method, generate_dbus_exporter};
use dbus_projection::dbus_generated;

@@ -17,4 +18,8 @@ impl IBluetoothQA for IBluetoothQADBus {
    fn rfcomm_send_msc(&self, dlci: u8, addr: String) {
        dbus_generated!()
    }
    #[dbus_method("GetDiscoverableMode")]
    fn get_discoverable_mode(&self) -> BtDiscMode {
        dbus_generated!()
    }
}
+2 −2
Original line number Diff line number Diff line
@@ -745,7 +745,7 @@ impl Bluetooth {
    }

    /// Returns adapter's discoverable mode.
    pub fn get_discoverable_mode(&self) -> BtDiscMode {
    pub fn get_discoverable_mode_internal(&self) -> BtDiscMode {
        let off_mode = BtDiscMode::NonDiscoverable;

        match self.properties.get(&BtPropertyType::AdapterScanMode) {
@@ -763,7 +763,7 @@ impl Bluetooth {

    /// Caches the discoverable mode into BluetoothQA.
    pub fn cache_discoverable_mode_into_qa(&self) {
        let disc_mode = self.get_discoverable_mode();
        let disc_mode = self.get_discoverable_mode_internal();

        let txl = self.tx.clone();
        tokio::spawn(async move {
+6 −0
Original line number Diff line number Diff line
@@ -8,6 +8,9 @@ use tokio::sync::mpsc::Sender;
pub trait IBluetoothQA {
    fn add_media_player(&self, name: String, browsing_supported: bool);
    fn rfcomm_send_msc(&self, dlci: u8, addr: String);

    /// Returns adapter's discoverable mode.
    fn get_discoverable_mode(&self) -> BtDiscMode;
}

pub struct BluetoothQA {
@@ -38,4 +41,7 @@ impl IBluetoothQA for BluetoothQA {
            let _ = txl.send(Message::QaRfcommSendMsc(dlci, addr)).await;
        });
    }
    fn get_discoverable_mode(&self) -> BtDiscMode {
        self.disc_mode.clone()
    }
}
Loading