- Move PreferenceGroup init method out of isAvailable() condition,
then PreferenceGroup will not be null.
- Update getAvailabilityStatus(), since the controller now may have usb
and dock.
Bug: 110712414
Test: make -j42 RunSettingsRoboTests
Change-Id: I4d85a42c26fb20d319e7321177b271933be3fdb0
The issue is happened when BT is disabled then navigate to
"Connected devices". BluetoothDeviceUpdater didn't update
UI when BT is disabled. Remove all device from preference when
BT is disabled.
Bug: 80090956
Test: make -j42 RunSettingsRoboTests
Change-Id: Ia1fd8cfbcf95d712a1a702fdf101ff98186b76cd
* Align with the changes of Bluetooth metadata APIs.
* Move metadata utils from Settings to SettingsLib.
Bug: 124448651
Test: make RunSettingsRoboTests
Change-Id: Ic9ad91536ef3ff6807a08bbffa3dd796ef1ad523
If we recycle it in OnStop() and this page isn't destoried,
it will crash when we revisit it.
Fixes: 130185099
Test: RunSettingsRoboTests
Change-Id: I4d3c1c12debcccb1ee7d676a1c5accece0b42e09
Usecase:
1. Start advertising from DUT (using BLE Smartertooth app).
2. Scan and connect from central device.
3. Now initiate bond from central and accept pairing request.
(Consent Pairing Dialog will be shown on DUT)
4. Notification will be received for PASSKEY CONFIRMATION Dialog.
Do not open notification and let it timeout.
5. Repeat steps 2 and 3. At step 3, Passkey Confirmation pairing
dialog is show instead of Consent pairing dialog.
Issue:
Wrong Pairing Popup is shown. Passkey Confirmation pairing
dialog is show instead of Consent pairing dialog.
Reproducible Rate: 100%
Root Cause:
PendingIntent created for showing pairing notification are getting
reused as only FLAG_ONE_SHOT is used. This flag is not updating new
extra's in the pending intent.
Fix:
Use flag FLAG_UPDATE_CURRENT in pending Intent.
Test: Tested above mentioned testcase and pairing scenarios.
Fix: 129479787
Bug: 129456113
Change-Id: I46813f355cd796cee1b472774b494c8580b39784
notifyHierarchyChanged() is used before when we have
connected/disconnect deivce in same list. So only use it in
DevicePickerFragment.java, not other normal fragments.
Also that call will rebuild whole preference list, which is heavy.
Bug: 119479725
Test: Manual
Change-Id: I06cf221588001b38634fec9f02dee8bc1e561ea8
Add new method to get rainbow bt icon and also refactor
AdaptiveHomepageIcon:
1. Rename
2. Add ConstantState
Bug: 126425211
Test: RunSettingsRoboTests
Change-Id: Idb8aaf253d0d9e2ab33d8852f093e6689ebadde4
Changed out BatteryMeterDrawable to inherit from ThemedBatteryDrawable
instead of BatteryMeterDrawableBase. Also removed warning text paint
because it seemed unused and simplified the interface.
Bug: 123705805
Test: visual
Change-Id: I30496e3d8881803d9d3d8a316c10387482a8f610
If it is updated, we need to refresh UI to display latest information
Fixes: 124455912
Test: RunSettingsRoboTests
Change-Id: I73b03f4931e3c2b0d367bbd2d3b2057b26c84b59
1. Update isAvailable() in controller
2. Update method to get fast pair icon
Bug: 124455912
Test: RunSettingsRoboTests
Change-Id: I24a04c8c91d74e9b8b7e8746ad6279fafa37f0a9
1. Add callback to listen to device update
2. Add charging support for bt battery icon
3. When disconnected, only show main icon
Follow CL will update battery icon to show exclamation when it is
low.
Bug: 124455912
Test: RunSettingsRoboTests
Change-Id: I03fb3bf4c4b77711e14b1f2f53733771b525fe4b
Also update detail page to accept cold start:
1. Check whether profile is ready
2. When it is ready, refresh UI
Bug: 123665527
Test: SettingsRoboTests
Change-Id: I39382fd97e9da46fca08cd2e4a3ef15d32703664
As for unthethered headset, get BT data from BT metadata, rather than
CachedBluetoothDevice
Bug: 122460277
Test: RunSettingsRoboTests
Change-Id: Ifb5507cbbce9602726ba272c12d1bf95eff91001
If device supports metadata, then we display advanced UI in Bluetooth
details header. This CL adds layout for this header.
In advanced layout, it will show:
1. Device name
2. Left, right and case icon
3. Left, right and case battery level
Once API is ready, following CL will get metadata from it and set it
to UI.
Bug: 122460277
Test: RunSettingsRoboTests
Change-Id: Ide044cf9705f350b431b2cb3a9ad82cc4425a17e
Make sure setSliceUri is invoked even when it is null, where we create
SliceLiveData.
Then in lifecycle, if LiveData is not null, we will register observer.
Bug: 120803703
Test: Manual
Change-Id: I56caf2abf04c4a251ebafa5deb599d44b1c7fe92
Move edit icon in bluetooth detail page,
from header back to action bar.
Change-Id: I6afd7c611fe4db8c6c27921b5da316d8a1a000db
Fixes: 76206922
Test: make RunSettingsRoboTests
If DashboardFragment detects blocker controllers, it won't display
until:
1. All blocking controllers finish bg works.
2. Timeout
This CL adds UiBlockerController to control this behavior and
BlockingSlicePreferenceController as an example.
Bug: 120803703
Test: atest SettingsUnitTests
Change-Id: I66fc194776d46ee49b3ec7685f3167834e673ba2
Also add method to get settings uri for specific device. Use feature
provider here because it give us more flexibility.
Bug: 120803703
Test: RunSettingsRoboTests
Change-Id: I6f4840e76279c02a75b95fdecd822a72cb0b42e5
Reuse the PreferenceController and LayoutPreference however create
specific one for slice:
1. SlicePreference: container to inject slice view
2. SlicePreferenceController: handle updates for slice
Also add styles for it with default layout.
Bug: 120803703
Test: RunSettingsRoboTests
Change-Id: I6ab083ad57117e6198dcba37702a25213da78719
For current design, message sharing option only display when
mapPermisson != CachedBluetoothDevice.ACCESS_UNKNOWN. MAP permisson only
saved when user reject requset twice or accept request, if user just
reject once, permission will be ACCESS_UNKNOWN and message sharing
option will not display. This patch remove the check of
MessageRejectionCount and always save message permission choice.
Bug: 120291728
Test: reject message access request and check device details page
Change-Id: I071491d3c4134ed348e195f054b6557e397cdd6a
Since we moved old ActionButtonPreference into
SettingsLib, we need to update new imports and
declaration in Settings source code.
Test: robotest, manual test
Bug: 120005054
Change-Id: I1e3514ba68a856071c81534d54c99c3d1a11a8ca
- Replace new SliceAction with SliceAction.createDeeplink() or
SliceAction.create()
Test: make RunSettingsRoboTests
Change-Id: Ied34469d2220d8220a2dcc6c2fb4d32dd9cd9b8c
Fixes: 119879284
- Remove LayoutPreference in Settings source code.
- Remove unused style, layout
- Replace old imports to com.android.settingslib.widget.LayoutPreference
- Replace old XML tag to com.android.settingslib.widget.LayoutPreference
Test: robotest, manual test
Bug: 120005054
Change-Id: I9ae1ae14a16f443e11ac5d75b6038c7c5e253844
Since new UI design only exist two button in layout,
we don't need these methods anymore.
Test: robotest
Bug: 116346008
Change-Id: If2e8f7dddb9c13e480438f36fe3c5d6affa4e9ff