Loading system/gd/rust/linux/client/src/command_handler.rs +3 −0 Original line number Diff line number Diff line Loading @@ -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(); Loading @@ -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); Loading system/gd/rust/linux/client/src/dbus_iface.rs +4 −0 Original line number Diff line number Diff line Loading @@ -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!() } } system/gd/rust/linux/service/src/iface_bluetooth_qa.rs +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; Loading @@ -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!() } } system/gd/rust/linux/stack/src/bluetooth.rs +2 −2 Original line number Diff line number Diff line Loading @@ -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) { Loading @@ -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 { Loading system/gd/rust/linux/stack/src/bluetooth_qa.rs +6 −0 Original line number Diff line number Diff line Loading @@ -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 { Loading Loading @@ -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
system/gd/rust/linux/client/src/command_handler.rs +3 −0 Original line number Diff line number Diff line Loading @@ -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(); Loading @@ -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); Loading
system/gd/rust/linux/client/src/dbus_iface.rs +4 −0 Original line number Diff line number Diff line Loading @@ -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!() } }
system/gd/rust/linux/service/src/iface_bluetooth_qa.rs +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; Loading @@ -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!() } }
system/gd/rust/linux/stack/src/bluetooth.rs +2 −2 Original line number Diff line number Diff line Loading @@ -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) { Loading @@ -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 { Loading
system/gd/rust/linux/stack/src/bluetooth_qa.rs +6 −0 Original line number Diff line number Diff line Loading @@ -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 { Loading Loading @@ -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() } }