* Add AdvancedConnectedDeviceController that used to show which component is available
* Add getConnectedDevices Summary Resource Id() to decide which string should be shown.
Here have 4 cases to shown the string.
case 1: driving mode available and NFC is availalbe, show "Bluetooth, driving mode, NFC"
case 2: driving mode available and NFC is not availalbe, show "Bluetooth, driving mode"
case 3: driving mode not available and NFC is availalbe, show "Bluetooth, NFC"
case 4: driving mode not available and NFC not availalbe, show "Bluetooth"
* Add test to verify the summary string is correct in each condition
* Add test to verify getAvailabilityStatus() is AVAILABLE.
Bug: 79299421
Test: make -j50 RunSettingsRoboTests ROBOTEST_FILTER=AdvancedConnectedDeviceControllerTest
Change-Id: I1048355bbd344db3ab645dd1537b4259eff57f38
Merged-In: I1048355bbd344db3ab645dd1537b4259eff57f38
For settings which can change in the framework, outside of
the settings app and a slice, a Slice needs to be able to
register a listener for these changes.
Adding a getter for an IntentFilter in BasePreferenceControllers
allows us to use the SliceBroadcastRelay in SysUi to listen for
these changes.
Test: robotests
Fixes: 78138654
Change-Id: I579375069ca98fd21b60cd3a69c1a122cabf96e2
Merged-In: Ifa05b651aaa3458c54866f71469964b1a070e458
Remove the obsolete and unsupported DcRtInfo
field from the Debug menu. Since it doesn't
do anything and hasn't for a few releases,
we should make space for things that are
supported and minimize clutter.
Bug: 78791811
Test: manual
Change-Id: Id4cc808bf5c7671408cd5297965d93140aeefe97
This CL removes the long-obsolete NeighboringCellInfo.
From a debug perspective, this info is a subset of the
other info already present, so it just adds clutter
without adding any value.
Bug: 78791811
Test: manual
Change-Id: Iaf275f81e276f63bdd9651ac60a5485bf5bdf160
* Add PreviouslyConnectedDevicePreferenceController to handle the preference should be
enable or disable.
Example: If there are no previously connected devices disable the preference otherwise
enable it.
* Add PreviouslyConnectedDevicePreferenceControllerTest
1. Verify the callback can be registered and unregistered
2. Verify the preference is enable when there
have more than 1 previously connected device
3. Verify the preference is disable when there
have no previously connected device
Bug: 78250052
Test: make -j50 RunSettingsRoboTests
Change-Id: I31b5d416aaf907c3bbf1cb61de6e7401463e3df7
Merged-In: I31b5d416aaf907c3bbf1cb61de6e7401463e3df7
Add DND Slice as a special case, since there is an existing
inheritance structures in the zen mode preference controllers which
would be too risky to change at this point in the release.
Change-Id: If4b7013be35c89695786af2dbbea2edcf7a189f3
Merged-In: Ice608b9a7bd6f38b73e581eb3723f0a2fae96f2b
Test: make RunSettingsRoboTests
Fixes: 67997377
Before this CL, we will drop log for excessive bg anomaly that
target O or higher. This CL doesn't drop it however merge it to
ACTION_ANOMALY_IGNORED
Bug: 79944380
Test: RunSettingsRoboTests
Change-Id: I46d0bdb1191d8843ba373e59afb1b0ba16057661
When airplane mode is off, fall back to default summary
(tether off summary). It should be fine because once tether
state get updated again, it will go through original listener
to update the summary.
Change-Id: Iba9b56f452e72365ea964d841ee156a2625c0ae1
Fixes: 79721162
Test: RunSettingsRoboTests
Also remove the duplicate ic_menu_delete.xml and fix up places where it
was used.
Bug: 77982107
Test: manual
Change-Id: I23ede37b7cdf9bea59b44cd0f817bf0ad0cd1d69
Remove the obsolete and unsupported DcRtInfo
field from the Debug menu. Since it doesn't
do anything and hasn't for a few releases,
we should make space for things that are
supported and minimize clutter.
Bug: 78791811
Test: manual
Change-Id: Id4cc808bf5c7671408cd5297965d93140aeefe97
This CL removes the long-obsolete NeighboringCellInfo.
From a debug perspective, this info is a subset of the
other info already present, so it just adds clutter
without adding any value.
Bug: 78791811
Test: manual
Change-Id: Iaf275f81e276f63bdd9651ac60a5485bf5bdf160
Register for the Link capacity estimate for the
cellular default data connection and report it
in the debug menu.
Bug: 78791811
Test: manual
Merged-In: I73d945dfa192873936107902e0de6d58fc69059b
Change-Id: I73d945dfa192873936107902e0de6d58fc69059b
(cherry picked from commit f10ea32d55)
Add a field to display the PhyChanConfig and register
for this event as part of the PhoneStateListener.
Bug: 78791811
Test: manual
Merged-In: Ic038aa65655f8efa98bf1d6388e7c61761d2eb4a
Change-Id: Ic038aa65655f8efa98bf1d6388e7c61761d2eb4a
(cherry picked from commit 433ca4427c)
Add debug menu support for the serving cell status
indication and the LTE bandwidth in the CellInfo
display.
Bug: 78791811
Test: manual
Merged-In: Ic51858131af671317431e0970bdcaeebcb460931
Change-Id: Ic51858131af671317431e0970bdcaeebcb460931
(cherry picked from commit 6e16fdf399)
Add a custom Wifi Slice to the Settings Slice Provider.
It needs a custom Slice because of the complicated listener logic
in the MasterSwitchPreferenceController, which makes it hard to
work-in synchronous set/get logic.
The one-off Slice requires extra changes, including:
- Including it in getDescendants
- Handling changes to wifi by the framework
This is the first change that uses SettingsLib's broadcast relay,
which allows settings to (un)register IntentFilters to a Uri,
allowing Settings Slices affected by the framework (quicksettings,
connectivity related, volume, etc) to be updated without action
on the Slice.
Fixes: 70622039
Fixes: 67997332
Test: robotests
Change-Id: Ia76738dd6baacd5522d52df2c61ebad86a600282
Merged-In: Ibfe4736beecb833e3f6bb871b2eb5228a5fd3a34
* Add AudioSwitchCallback() in AudioSwitchPreferenceController.
This callback is used to notify SoudSettings to update the dialogFragment UI.
* Add UpdatableListPreferenceDialogFragment that updates the available
options when dialog is shown
* Add test to verify the adapter count when
onListPreferenceUpdated() is called.
Bug: 77783217
Test: make -j50 RunSettingsRoboTests
Change-Id: I8cac1b30ec50df026f4b7722dd1cd2f69e77a4cb
Merged-In: I8cac1b30ec50df026f4b7722dd1cd2f69e77a4cb
* Using getAliasName() instead of getName()
* Add BluetoothDevice isConnected check, when BluetoothDevice is
disconnected. Do not add to the show list.
Bug: 77783217
Test: make -j50 RunSettingsRoboTests
Change-Id: I183fc693eaefd690568ba2f1ec740258b2bb62c8
Register for the Link capacity estimate for the
cellular default data connection and report it
in the debug menu.
Bug: 78791811
Test: manual
Change-Id: I73d945dfa192873936107902e0de6d58fc69059b
Add a field to display the PhyChanConfig and register
for this event as part of the PhoneStateListener.
Bug: 78791811
Test: manual
Change-Id: Ic038aa65655f8efa98bf1d6388e7c61761d2eb4a
Add debug menu support for the serving cell status
indication and the LTE bandwidth in the CellInfo
display.
Bug: 78791811
Test: manual
Change-Id: Ic51858131af671317431e0970bdcaeebcb460931
Usecase:
1.) Make sure BT is turned off.
2.) Go to Settings -> Network & Internet
3.) Press back from Network & Internet.
4.) Repeat above step 2000 times
Expected Result:
No ANR/Crashed should be seen.
Observed Result:
ServiceConnection leak is happening & android setting app get crashed.
Root cause: TetherPreferenceController tries to get
pan Proxy object, when BT is oFF, which is leaking one
service connection each time
Fix: getProfileProxy for Pan must only be called, when BT is
turned on.
Test: lifeCycle_onCreate_shouldNotInitBluetoothPanWhenBluetoothOff
Bug: 79561076
Change-Id: I85208f48ce4dded94020cb156fcdb98b2cc873f9
Merged-In: I85208f48ce4dded94020cb156fcdb98b2cc873f9
Usecase:
1.) Make sure BT is turned off.
2.) Go to Settings -> Network & Internet
3.) Press back from Network & Internet.
4.) Repeat above step 2000 times
Expected Result:
No ANR/Crashed should be seen.
Observed Result:
ServiceConnection leak is happening & android setting app get crashed.
Root cause: TetherPreferenceController tries to get
pan Proxy object, when BT is oFF, which is leaking one
service connection each time
Fix: getProfileProxy for Pan must only be called, when BT is
turned on.
Test: lifeCycle_onCreate_shouldNotInitBluetoothPanWhenBluetoothOff
Bug: 79561076
Change-Id: I85208f48ce4dded94020cb156fcdb98b2cc873f9
(cherry picked from commit 31bcf6225cdabee4f810d4fe55ea32d0d43a9c5c)
(cherry picked from commit 31c799305b480e56bd083a48c6acca11572ebe16)
* Bluetooth and NFC added back to "Connection preferences"
Bug: 79299421
Test: make -j50 RunSettingsRoboTests
Change-Id: I8f4c389c28c7cc752f198be2b59b28b6e9af2c90
Merged-In: I8f4c389c28c7cc752f198be2b59b28b6e9af2c90
Convert below to TogglePreferenceController:
MagnificationNavbarPreferenceController
(Magnify with Button)
MagnificationGesturesPreferenceController
(Magnify with triple-tap)
The two controllers share the same fragment,
Add static method for set/get state in fragment,
And use them in controllers and fragment.
Change-Id: I2bdbdb36be71e1a3ffb557abc5a6115d48de53cf
Merged-In: I2bdbdb36be71e1a3ffb557abc5a6115d48de53cf
Fixes: 67997698
Fixes: 67997726
Test: make RunSettingsRoboTests
To improve context on search surfaces where the
setting may be ambiguous, we set the screentitle
as the summary text as the top priority. If there is
no screentitle or the it matches the title, then we
try to use the controller summary. If the controller
summary is not valid, then we show nothing.
Bug: 79780762
Test: robotests
Change-Id: If4f7f8d4a072125604ede14e3df2afd667fa24b7