Commit Graph

614 Commits

Author SHA1 Message Date
Haijie Hong
5e79d18636 Merge "Add Nearby share entrypoint in DevicePicker" into main 2025-02-23 23:30:32 -08:00
Jason Hsu
d879711020 Merge "Fix default microphone for calls sometimes not work and not show UI" into main 2025-02-21 08:44:13 -08:00
Haijie Hong
a9e67c0327 Add Nearby share entrypoint in DevicePicker
Bug: 381799866
Test: local build
Flag: com.android.settings.flags.enable_nearby_share_entrypoint
Change-Id: Ied79b9eebe7eaf669e45922787c5b01e504822d8
2025-02-21 17:24:10 +08:00
Ze Li
025fff5a85 Merge "[Battery refactor] Move stylus related functions to BluetoothUtils as util functions." into main 2025-02-20 21:36:37 -08:00
jasonwshsu
691a3fd641 Fix default microphone for calls sometimes not work and not show UI
Root Cause: Only setMicrophonePreferredForCalls and show UI to current device, but audioManager
might hold other device in the same set

Solution: setMicrophonePreferredForCalls to whole device set and also check if any address in device
set contain in audioManager GET_DEVICES_INPUTS list

Bug: 392902067
Test: atest BluetoothDetailsHearingDeviceInputRoutingControllerTest
Flag: EXEMPT bugfix
Change-Id: Ic5846de26df4a8db67fa8efcf474fa4509f7918a
2025-02-21 04:10:03 +08:00
Ze Li
6a29b1c779 [Battery refactor] Move stylus related functions to BluetoothUtils as util functions.
Test: com.android.settings.bluetooth.BluetoothDeviceDetailsFragment, com.android.settings.connecteddevice.stylus.StylusDevicesControllerTest
Bug: 397847825
Flag: EXEMPT utils function
Change-Id: I6819844cd686fe29b8b1c760c3e4035787a2b903
2025-02-20 15:35:01 +08:00
Yiyi Shen
2c5f451b3a [Audiosharing] Revert ag/31626042 (exclude utils)
FP will handle set temp for manual pair in Settings

Test: atest
Flag: com.android.settingslib.flags.enable_temporary_bond_devices_ui
Bug: 392004799
Change-Id: I3afae523ef0d5a6c236a482127a714f422a6e000
2025-02-19 01:23:52 -08:00
Yiyi Shen
6dda673bf0 Merge "Show device in Media devices section if has LEA member connected" into main 2025-02-14 02:03:04 -08:00
Yiyi Shen
fb21686468 Show device in Media devices section if has LEA member connected
Test: atest
Bug: 396009828
Flag: EXEMPT simple fix
Change-Id: Icc6bd1c4fa7cf3c43eec1c4c950fbf778975f803
2025-02-14 14:53:56 +08:00
Ze Li
220312eab7 [Temp bonding] Clean up old guest device logic as requirements changed
Test: manual test
Bug: 362859132
Flag: com.android.settingslib.flags.enable_temporary_bond_devices_ui
Change-Id: If4a471e2058873be5cdb0ee43371333ebdc9a38a
2025-02-13 17:17:29 +08:00
Jason Hsu
29557d6017 Merge "Show intro and footer string according to the device's supported status" into main 2025-02-11 23:44:01 -08:00
jasonwshsu
9cfc96d948 Show intro and footer string according to the device's supported status
Bug: 390078046
Bug: 386121967
Test: atest HearingAidHelperTest HearingDeviceFooterPreferenceControllerTest HearingDeviceIntroPreferenceControllerTest BluetoothDetailsHearingDeviceSettingsControllerTest
Flag: EXEMPT bugfix
Change-Id: I564cdb80cd14f4d2d8e882b64db939449c6936b7
Signed-off-by: Jie Wang <jie.x.wang@sony.com>
Signed-off-by: Jason Hsu <jasonwshsu@google.com>
2025-02-11 17:26:37 +08:00
Yiyi Shen
009747cef9 Merge "[Audiosharing] Block pairing during audio sharing" into main 2025-02-10 21:10:43 -08:00
Yiyi Shen
93f9061794 [Audiosharing] Block pairing during audio sharing
When a) there are two sinks in sharing b) there is at least one temp
bond device connected

Test: atest
Flag: com.android.settingslib.flags.enable_temporary_bond_devices_ui
Bug: 392004799
Change-Id: Id093b4c0b67bdc1db621e0241e79900abbd26c0f
2025-02-10 18:38:53 +08:00
Yiyi Shen
ef77d14185 Merge "[Audiosharing] Set temp bond metadata for just bonded lea buds in sharing" into main 2025-02-10 01:52:41 -08:00
Yiyi Shen
5732773031 [Audiosharing] Set temp bond metadata for just bonded lea buds in sharing
Test: atest
Flag: com.android.settingslib.flags.enable_temporary_bond_devices_ui
Bug: 392004799
Change-Id: I99e9955d00362125b7cbf54e2013c99dd2f9b457
2025-02-07 19:20:29 +08:00
Angela Wang
6f0f6e7cf6 Merge "Hide ambient control when there's no valid control point" into main 2025-02-06 09:17:37 -08:00
Vlad Popa
b136fcfe18 Remove rolled out flag automatic_bt_device_type
This flag has been rolled out in 24Q3 and can be removed.

Test: atest BluetoothDetailsAudioDeviceTypeControllerTest
Bug: 302323921
Flag: EXEMPT removing com.android.media.automatic_bt_device_type
Change-Id: I9997ef60f195b36298c36078eadf6c0a82bc662d
2025-02-05 16:04:50 -08:00
Angela Wang
11debff2be Hide ambient control when there's no valid control point
The preference will be accidentally shown if the device support HAP and
VCP. Make sure to hide the preference when the device doesn't have any
valid ambient control points.

Flag: EXEMPT bugfix
Test: manual test with real device
Test: atest BluetoothDetailsAmbientVolumePreferenceControllerTest
Bug: 388156028
Change-Id: I8162ce8e878baff414e4665c97aaf1c21aa51229
2025-02-05 15:55:41 +00:00
Chung Tang
8a6ea1a106 Accommodate BATT protocol modifications.
Bug: 380790573
Test: atest com.android.settings.bluetooth.AdvancedBluetoothDetailsHeaderControllerTest and Manual
Flag: com.android.settings.flags.enable_battery_level_display

Change-Id: Ibc4eb66aacedaf3a4111d4a411dada6cde1a5b9c
2025-01-22 00:14:53 -08:00
Angela Wang
71f4b0f8e3 Offer a way to hide LE Audio toggle for ASHA device
Flag: EXEMPT bugfix
Bug: 390070780
Test: atest BluetoothDetailsProfilesControllerTest
Test: manually check on real device
Change-Id: I078403f7071c1011acbedae2d1d0e55783cc0661
2025-01-20 06:25:10 +00:00
Chelsea Hao
97ccf7d696 Merge "Use LocalBluetoothLeBroadcastSourceState." into main 2025-01-15 19:11:20 -08:00
chelseahao
47fcd60315 Use LocalBluetoothLeBroadcastSourceState.
Test: atest
Bug: 308368124
Flag: com.android.settingslib.flags.enable_le_audio_sharing
Change-Id: Ic49a6782b63c91e95dd16898b5443585068e45f0
2025-01-15 01:33:49 -08:00
Angela Wang
e87733be63 Merge "Show ambient volume contrl only for hearing devices" into main 2025-01-13 22:44:41 -08:00
Haijie Hong
f761a30040 Fix exception in key missing dialog when rotating screen
BUG: 387915075
Test: atest BluetoothKeyMissingDialogTest
Flag: com.android.settings.flags.enable_bluetooth_key_missing_dialog
Change-Id: I966954f27d074a5ca0dc329cb142c1ab66b3b013
2025-01-13 01:13:02 -08:00
Angela Wang
713efe9334 Show ambient volume contrl only for hearing devices
Flag: EXEMPT bugfix
Bug: 388156028
Test: atest BluetoothDetailsAmbientVolumePreferenceControllerTest
Change-Id: Ia38fd90f798dec9a46366ca15e358b42f7d7fe70
2025-01-13 09:07:08 +00:00
Angela Wang
44e13bf11e Merge "Remove flag enable_hearing_aid_preset_control" into main 2025-01-09 00:04:19 -08:00
Haijie Hong
fd4c6d100d Merge "Add audio sharing entrypoint in device details" into main 2025-01-07 22:32:29 -08:00
Haijie Hong
cdcf50e3d2 Add audio sharing entrypoint in device details
BUG: 383935069
Test: local tested
Flag: com.android.settingslib.flags.enable_le_audio_sharing
Change-Id: Ib90422d262eba84c3a308d8e4c5652d8c5f96808
2025-01-08 13:03:12 +08:00
Angela Wang
a6c383eced Remove flag enable_hearing_aid_preset_control
Flag: EXEMPT remove flag
Bug: 388175226
Test: atest BluetoothDetailsHearingDeviceControllerTest
Change-Id: I97b633f32794feb86e5a940448270ed74ed26387
2025-01-07 08:45:14 +00:00
Ze Li
205c81ed3a [Temp bonding] Hide rename button from device details page for temp bond device
Test: com.android.settings.bluetooth.AdvancedBluetoothDetailsHeaderControllerTest
Bug: 362859132
Flag: com.android.settingslib.flags.enable_temporary_bond_devices_ui
Change-Id: I22d54c322029c606425c8f48b091ad1b53e100de
2025-01-07 15:00:32 +08:00
Ze Li
6856d1ebd3 Merge "[Temp bonding] Hide temp bond devices from existing lists" into main 2025-01-06 02:18:32 -08:00
Ze Li
440de09d47 [Temp bonding] Hide temp bond devices from existing lists
The metadata change listener will be added in later changes.

Test: atest: com.android.settings.bluetooth.ConnectedBluetoothDeviceUpdaterTest
Bug: 362859132
Flag: com.android.settingslib.flags.enable_temporary_bond_devices_ui
Change-Id: I3ba5a978ce66e748fc1a7666fa4f6e84144c2c54
2025-01-03 14:03:10 +08:00
Haijie Hong
967a05a32d Merge "Add content description for battery charging status icon" into main 2025-01-02 02:55:58 -08:00
Haijie Hong
cc28aba208 Add content description for battery charging status icon
BUG: 372622360
Test: atest AdvancedBluetoothDetailsHeaderControllerTest
Flag: EXEMPT minor fix
Change-Id: I23a889e1576c0625cefb91386987df8826c1935f
2024-12-30 16:09:48 +08:00
Jason Hsu
a1046fc847 Merge "[HA Input] Add UI to support hearing device microphone change ability in device details page" into main 2024-12-23 19:50:24 -08:00
jasonwshsu
1258059feb [HA Input] Add UI to support hearing device microphone change ability in device details page
In this patch:
* Add custom dialog preference: HearingDeviceInputRoutingPreference and its controller
* Contain radio group to show 'hearing device microphone' and 'this phone's microphone' for user's preference
* set/get user's preference via BluetoothDevice#isMicrophonePreferredForCalls, BluetoothDevicwe#setMicrophonePreferredForCalls
* check if support HapProfile and if in AudioManager#getDevice(GET_DEVICES_INPUTS) list

Bug: 349255906
Test: atest HearingDeviceInputRoutingPreferenceTest BluetoothDetailsHearingDeviceInputRoutingControllerTest BluetoothDetailsHearingDeviceControllerTest
Flag: com.android.settingslib.flags.hearing_devices_input_routing_control
Change-Id: I2e4dbc7fb98353ed52d0d175df4e8725df6b9a05
2024-12-23 19:57:39 +08:00
Angela Wang
5ccc566161 Migrate SeekBarPreference to SliderPreference
Flag: EXEMPT flag by System prop
Bug: 349675952
Bug: 384648854
Test: manually check the UI
Test: atest AmbientVolumePreferenceTest
Change-Id: Ibe8ba3f8e46337b9771fd4921aee4dea21612e06
2024-12-20 01:17:22 -08:00
Angela Wang
7dfbf6c92e Merge "[Ambient Volume] Migrate to use AmbientVolumeUiController in SettingsLib" into main 2024-12-18 17:52:47 -08:00
Angela Wang
fb1efa69ac Merge changes from topics "ha-aics", "ha-aics-mute", "ha-local-data" into main
* changes:
  [Ambient Volume] Ambient volume icon
  [Ambient Volume] Show value with remote data
  [Ambient Volume] Show value with local data
  [Ambient Volume] UI of volume sliders in Settings
2024-12-17 01:17:38 -08:00
Angela Wang
fc79e74955 [Ambient Volume] Migrate to use AmbientVolumeUiController in SettingsLib
Moove the common ui logic code into settingslib for using in both
settings and systemui.

Flag: com.android.settingslib.flags.hearing_devices_ambient_volume_control
Bug: 357878944
Test: atest AmbientVolumePreferenceTest
Test: atest BluetoothDetailsAmbientVolumePreferenceControllerTest
Change-Id: I97d5ac2d1862fed7249af8b35f04fa36fc47d16d
2024-12-17 06:47:01 +00:00
Angela Wang
0724f2a811 [Ambient Volume] Ambient volume icon
1. Click on the icon on the header will mute/unmute the remote devices in the same set if the remote devices are both mutable.
2. Show different icon when the value of the volume slide bars changed.

Flag: com.android.settingslib.flags.hearing_devices_ambient_volume_control
Bug: 357878944
Test: atest AmbientVolumePreferenceTest
Test: atest BluetoothDetailsAmbientVolumePreferenceControllerTest
Change-Id: I829c5e08f1456c8ef9936d0314045dc8da37cd95
2024-12-17 06:46:59 +00:00
Angela Wang
46537a6576 [Ambient Volume] Show value with remote data
Sync local data with remote data when UI need to refresh and set the
corresponding local value to remote when the control expanded/collapsed.

Flag: com.android.settingslib.flags.hearing_devices_ambient_volume_control
Bug: 357878944
Test: atest BluetoothDetailsAmbientVolumePreferenceControllerTest
Change-Id: If748e696eb62b199d4fd9abafa2300d301a8079c
2024-12-16 15:26:26 +00:00
Angela Wang
c2ca7dadd9 [Ambient Volume] Show value with local data
Flag: com.android.settingslib.flags.hearing_devices_ambient_volume_control
Bug: 357878944
Test: atest BluetoothDetailsAmbientVolumePreferenceControllerTest
Change-Id: I3dad0f5424b44fee6d049fd778c4f8f71db0b58e
2024-12-16 15:24:20 +00:00
Angela Wang
0595aed386 [Ambient Volume] UI of volume sliders in Settings
Collapse/expand the controls when clicking on the hearder with arrow.

Flag: com.android.settingslib.flags.hearing_devices_ambient_volume_control
Bug: 357878944
Test: atest AmbientVolumePreferenceTest
Test: atest BluetoothDetailsAmbientVolumePreferenceControllerTest
Test: atest BluetoothDetailsHearingDeviceControllerTest

Change-Id: I845a4397601e563ed027d7d2a0a13651e95de708
2024-12-16 15:24:19 +00:00
Yiyi Shen
17018dd7e1 Avoid AudioManager#getMode in isFilterMatched
AudioManager#getMode is a slow binder call which should not be called on
UI thread. isFilterMatched will be frequently triggered on UI thread when updating the
Connected devices page.

Cache and update the audio mode when receive onModeChanged callback in
this change. For long term, we should better separate the UI/background
thread tasks in those classes. Also send request to Audio team to
improve the API latency.

Flag: EXEMPT small fix
Bug: 380993178
Test: atest
Change-Id: I054f3fa62f0fdf03b9a436a532ac1fb4738aaf58
2024-12-12 15:25:34 +08:00
Yiyi Shen
c9c088ae34 [Audiosharing] Check profile readiness before adding source
Test: atest
Flag: com.android.settingslib.flags.enable_le_audio_sharing
Bug: 362858921
Change-Id: I9ee6226d1bd16225adf1756678ef7565941d7c60
2024-12-10 17:01:09 +08:00
Haijie Hong
67ac0faf3d Add loading screen for Device details fragment to avoid ANR
BUG: 343317785
Test: local tested
Flag: com.android.settings.flags.enable_bluetooth_device_details_polish
Change-Id: Iad57fc2fe4cb0a3f90e8d01310b9c7ad20d02233
2024-11-29 22:04:31 +08:00
Evan Chen
79e1918413 Merge "Add deviceId in AssociaitonInfo" into main 2024-11-27 21:06:08 +00:00
Haijie Hong
fb9d83ad68 Add metrics for new bluetooth device details
BUG: 343317785
Test: atest DeviceDetailsFragmentFormatterTest
Flag: com.android.settings.flags.enable_bluetooth_device_details_polish
Change-Id: Ic74a885627a1426c338b093dcf949688fe9784d1
2024-11-14 15:34:55 +08:00