Commit Graph

1065 Commits

Author SHA1 Message Date
Chaohui Wang
15ca95a31b Migrate to TwoStatePreference
SwitchPreference and SwitchPreferenceCompat are both TwoStatePreference.

Using TwoStatePreference in Java will helps migration in the future.

Bug: 306771414
Test: manual - check Settings pages
Change-Id: I84e1d7b09451106797c2b23d127855c6976678ca
2023-10-23 09:28:57 +00:00
Alice Kuo
55b8e79016 Merge changes from topic "le_audio_allowlist" into main
* changes:
  Config LE audio connection by default
  LE Audio Allowlist toggle behavior refactor
  Remove allowlist reboot behavior
  Change the LE Audio Allowlist toggle wording
2023-10-14 08:59:51 +00:00
Peiyong Lin
ccf778a8a0 Merge "Allow ANGLE developer option toggle UI enabled if ANGLE is enabled." into main 2023-10-13 04:57:32 +00:00
Peiyong Lin
8e6af783ce Allow ANGLE developer option toggle UI enabled if ANGLE is enabled.
Previously the ANGLE developer option toggle UI was disabled by default
and a user would need to use adb command to set the debug property to
true to enable it, and every reboot would reset the debug property to
false again and hence disable the toggle UI again. However, since ANGLE
is still in experiment, we would like to make sure it's not easy to
enable but easy to disable. This patch keeps ANGLE toggle UI enabled
when ANGLE is enabled so that users can easily disable. Once ANGLE is
disabled, if the debug property is not set to true, the toggle UI will
remain disabled.

Bug: b/293503000
Test: atest -c GraphicsDriverEnableAngleAsSystemDriverControllerJUnitTest
Test: atest SettingsRoboTests:GraphicsDriverEnableAngleAsSystemDriverControllerTest
Change-Id: I2e63431cd0d8cf4712fc278646627fbf34a2b542
2023-10-13 00:36:36 +00:00
Alice Kuo
ddec75bb39 Config LE audio connection by default
Use LE audio connection by default, and allow to have the differenct
configuration per project (system property). As using LE audio connection by
default, the toggle, "Show LE audio toggle in Device Details", would be
useless, hide this toggle based on the project configuration

Bug: 300012501
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothLeDeviceDetailsPreferenceControllerTest
Change-Id: Ia4df48d6a71b5b9f11bd91a69971c8393412da13
2023-10-13 01:22:36 +08:00
Alice Kuo
b2336ea7db LE Audio Allowlist toggle behavior refactor
The patch contains below behavior changes
1. hide this toggle as the device doesn't enable LE audio profile
2. disable this toggle as bluetooth off, or LE audio feature is disabled
   dynamically
3. disable this toggle if the device doesn't configure to use LE audio
   connection by default
4. switch toggle on to bypass LE Audio allowlist

Bug: 300012501
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothLeAudioAllowListPreferenceControllerTest
Change-Id: I5ae9c860ba22047fc03ffde7ad3b3f44f9a9a9f0
2023-10-13 01:22:18 +08:00
Alice Kuo
f8767cdd31 Remove allowlist reboot behavior
As we switch to use allowlist or bypass it, it would only impact the
default connection after the paring. So based on it, we don't need to
force device reboot to apply the setting

Bug: 300012501
Test: m SettingsGoogle
Change-Id: I0b63a68e1263692e922968c122b96b5635b9861f
2023-10-13 01:22:06 +08:00
Alice Kuo
c41abccb0f Change the LE Audio Allowlist toggle wording
Change the wording from "Enable LE Audio Allowlist" to "Bypass LE Audio
Allowlist"

Bug: 300012501
Test: m SettingsGoogle
Change-Id: Ifc6544e443856d03d408783ecb070c5002ff14a1
2023-10-13 01:21:21 +08:00
Piotr Wilczyński
176a63a1db Back up peak refresh rate and min refresh rate
It's possible that in the future the peak refresh rate setting will have multiple values (e.g. 90, 120). For that reason, we shouldn't convert it to a boolean like in the previous CLs (ag/24604787, ag/24604847).

- set peak/min refresh rate to infinity if it's the highest refresh rate so that when we restore the setting on another device, we also choose the highest refresh rate
- back up peak/min refresh rate and add validators
- upgrade settings in SettingsProvider
- create a utils class - RefreshRateSettingsUtils

Bug: 211737588
Test: atest DisplayModeDirectorTest
Test: atest ForcePeakRefreshRatePreferenceControllerTest
Test: atest PeakRefreshRatePreferenceControllerTest
Test: atest SettingsBackupTest
Test: atest SettingsProviderTest
Test: atest RefreshRateSettingsUtilsTest
Change-Id: Ie1d8cfc76e42c7d98c4a36743463ccaf3ca5d483
2023-10-10 14:10:38 +00:00
Sudheer Shanka
8af457e732 Merge "Provide SuspendDialogInfo when quarantining an app." into main 2023-09-28 20:20:46 +00:00
Sudheer Shanka
b5441bf782 Provide SuspendDialogInfo when quarantining an app.
Customize the dialog to include a button to allow
users to take an app out of the quarantine state.

Bug: 297934650
Test: atest tests/robotests/src/com/android/settings/development/quarantine/QuarantinedAppsScreenControllerTest.java
Change-Id: I1b6e9f057fed91ae131602fd6d6ddf5e23958a65
2023-09-28 14:48:15 +00:00
Peiyong Lin
21c967bc96 Merge "Add debug property to safe guard ANGLE developer option UI." into udc-qpr-dev am: e456cb72f9 am: 759a3fda7b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24842231

Change-Id: Iec2e7a51a9b0179fceef6182a1bd9cd2668ddab0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-26 21:34:17 +00:00
Peiyong Lin
774378530f Add debug property to safe guard ANGLE developer option UI.
Add a debug property to guard ANGLE developer option UI, only when the
debug property is enabled will ANGLE developer option UI be enabled.

Add further clarification in the text to indicate that this is an
experimental feature.

Bug: b/287909344
Test: atest -c GraphicsDriverEnableAngleAsSystemDriverControllerJUnitTest
Test: atest -c GraphicsDriverEnableAngleAsSystemDriverControllerTest
Change-Id: Ife31f4b0426f3ce107f86cfbaf3f1aeca567e250
2023-09-25 18:33:00 +00:00
Peter Kalauskas
80e914a263 Enable use_resource_processor for all sysui deps
This will make the build faster

Test: m checkbuild
Bug: 295208392
Change-Id: If75acb6b1c3f204e3686c20cef609f7cfabe15cf
2023-09-21 23:09:39 +00:00
Sudheer Shanka
08710ee575 Merge "Add controls in dev options to quarantine apps." into main 2023-09-21 22:47:30 +00:00
Treehugger Robot
d7d8184bb7 Merge "Use system properties for the le audio toggle ui config instead" into udc-qpr-dev am: 2d7a469264 am: b15719119e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24768698

Change-Id: I88024462c4587db39a5e6671223504a5b7938c49
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 08:00:32 +00:00
Sudheer Shanka
abbb5c4dc3 Add controls in dev options to quarantine apps.
Bug: 297934650
Test: m -j RunSettingsRoboTests
Test: atest SettingsUnitTests
Change-Id: Ic0f35b370c04dd4ed3baaf3610b46ff1b37a0463
2023-09-18 07:27:37 +00:00
Alice Kuo
aa734eb52a Use system properties for the le audio toggle ui config instead
Config LE audio UI per devices. Change to use system properties instead

Bug: 300807171
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothLeAudioDeviceDetailsPreferenceControllerTest
Change-Id: Id0d624f516b9fdbe2380e5f10da5c69b08eea6a4
2023-09-18 03:05:59 +00:00
Kean Mariotti
95b375e2b4 Revert^2 Remove Winscope tracing QS development tile
This commit removes the obsolete QS development tile for Winscope
tracing as now Winscope traces can be collected via Traceur.

Bug: 295816837
Test: N/A
Change-Id: I7658537579cd054af092945aab553a4e17997273
2023-09-01 10:36:29 +00:00
Priyanka Advani
7b4cfbca95 Merge "Revert "Remove Winscope tracing QS development tile"" into main 2023-09-01 03:14:34 +00:00
Diwas Sharma
e08ceb575c Revert "Remove Winscope tracing QS development tile"
This reverts commit 513e014963.

Reason for revert: 298512106

Change-Id: I5efa947b17b8d33cfe8ca3350c2279903e5239af
2023-09-01 00:41:22 +00:00
Kean Mariotti
698657dead Merge "Remove Winscope tracing QS development tile" into main 2023-08-31 22:06:52 +00:00
Sukesh Ram
a1530bf4e4 Remove Windowing Prototype 1 from Codebase
Refactor codebase to remove desktop windowing Proto1 as it is no longer supported in favor of proto2. (https://docs.google.com/document/d/1bWix49k1XmI97I1AgWEbvQKSD-PuKyJIyYdvb9PYJKk/edit)

Test: aTest WMShellUnitTests
Bug: 297217817
Change-Id: Ie864810a6842cea4a98520b48e74dffbdbd7da1c
2023-08-30 18:08:25 +00:00
Kean Mariotti
513e014963 Remove Winscope tracing QS development tile
This commit removes the obsolete QS development tile for Winscope
tracing as now Winscope traces can be collected via Traceur.

Bug: 295816837
Test: N/A
Change-Id: I15bd011d8d44293c0407e00a5550cc9fbe5e561c
2023-08-22 16:19:51 +00:00
Chaohui Wang
cc2133ba8e Clean up unused fields from EntityHeaderController
Bug: 295260929
Test: manual - on pages with header
Test: robo test
Change-Id: Icebd63dbb5d3d44b4b46d3bececb8b65b30b4883
2023-08-21 13:58:07 +08:00
Chaohui Wang
8e2ae547d6 Clean up FeatureFactory.getFeature()
Bug: 286764889
Test: m Settings
Change-Id: I7e472e6b0ca6b7a735c1b92742ddf06c545176fc
2023-08-08 08:41:48 +00:00
Chaohui Wang
2541381259 Fix references to resources for Settings
Bug: 293810334
Test: m Settings
Change-Id: Ie140278f492ef7e1c062ec1ecae2866c521a86aa
2023-08-08 01:56:05 +00:00
Edgar Wang
873c321726 Merge "Make Quick setttings developer tiles searchable" into main 2023-08-03 06:22:22 +00:00
Edgar Wang
f77ff76950 Make Quick setttings developer tiles searchable
Bug: 286365859
Test: manual verify
Change-Id: I2b3578d4aa80d48a4dcc29cfaac2f25089f0d4e8
2023-08-02 09:25:23 +00:00
Brandon Liu
28800ec247 Developer option for Grammatical Gender
Bug: b/272626712
Test: Added and verified affected atests pass
Change-Id: Ie07f80d608b78dfce3309533ac02d9a907e5e7b4
2023-07-19 17:29:50 +00:00
Treehugger Robot
56a76c7038 Merge "Show LE audio toggle in Device Detail by default" into udc-qpr-dev am: 2fdc9c943b am: f07e5f7520
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24002323

Change-Id: I642988621d5e208cf5acbab6e88ecd3fdae45e41
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-17 22:18:35 +00:00
Patty Huang
698ce52a17 Show LE audio toggle in Device Detail by default
Bug: 289884263
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothLeAudioDeviceDetailsPreferenceControllerTest
Test: Checks the LE Audio toggle is shown in Device Detail by default
Change-Id: I3affeebd9b2c59d24f4eaa76a1a22a714e968976
2023-07-10 11:05:35 +08:00
Treehugger Robot
89889d73d4 Merge "Do not show LE audio toggle in Device Detail by default" into udc-d1-dev am: 1f9f114495 am: 20b82c3646 am: 07678daaf7
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23898723

Change-Id: I8d284b59c2d74a91e58d1e47eddc86f16ea5ed49
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-07 12:05:39 +00:00
Treehugger Robot
07678daaf7 Merge "Do not show LE audio toggle in Device Detail by default" into udc-d1-dev am: 1f9f114495 am: 20b82c3646
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23898723

Change-Id: I302b91cd8502cca57a28e74cbbf72cf962d6468f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-07 11:21:28 +00:00
Treehugger Robot
5da1b03545 Merge "Do not show LE audio toggle in Device Detail by default" into udc-d1-dev am: 1f9f114495
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23898723

Change-Id: I2398f07f2f4936ab26a59a2df285ea3dae05bb94
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-07 10:42:29 +00:00
Patty Huang
627a584f39 Do not show LE audio toggle in Device Detail by default
Bug: 289884263
Bug: 289957406

Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothLeAudioDeviceDetailsPreferenceControllerTest
Test: Checks the LE Audio toggle is not shown in Device Detail by default
Change-Id: I2c6430c791dd852d238d7122a72f218f395c4a0b
2023-07-05 11:51:50 +08:00
Rambo Wang
7d44d3276a Fix Settings app ANR due to blocking IDumpstateDevice IPC call
This CL fixes the ANR by moving possible blocking IDumpstateDevice
IPC call from main thread to background thread.

Settings develop options depends on IDumpstateDevice IPC call to
set and get Vendor Verbose Logging feature. The IPC may occasionally
get blocked in system_server which is extremely busy (e.g. during
bugreport generating). This may cause Settings app crashing with ANR.

Bug: 287126040
Bug: 280015761
Test: atest EnableVerboseVendorLoggingPreferenceControllerTest
Test: Verbose Vendor Logging regression
Test: Stress test (heavily trigger on/off during BR generating)
Merged-In: I0b88ef089097930b62dcb1cb7d6fe9990356ab5d
Change-Id: I0b88ef089097930b62dcb1cb7d6fe9990356ab5d
(cherry picked from commit f7b8d687bf)
2023-06-19 16:51:01 +00:00
TreeHugger Robot
7f45861797 Merge "Fix Settings app ANR due to blocking IDumpstateDevice IPC call" 2023-06-19 05:20:22 +00:00
Rambo Wang
f7b8d687bf Fix Settings app ANR due to blocking IDumpstateDevice IPC call
This CL fixes the ANR by moving possible blocking IDumpstateDevice
IPC call from main thread to background thread.

Settings develop options depends on IDumpstateDevice IPC call to
set and get Vendor Verbose Logging feature. The IPC may occasionally
get blocked in system_server which is extremely busy (e.g. during
bugreport generating). This may cause Settings app crashing with ANR.

Bug: 287126040
Bug: 280015761
Test: atest EnableVerboseVendorLoggingPreferenceControllerTest
Test: Verbose Vendor Logging regression
Test: Stress test (heavily trigger on/off during BR generating)
Change-Id: I0b88ef089097930b62dcb1cb7d6fe9990356ab5d
2023-06-16 17:05:10 +00:00
Chaohui Wang
f355bc2e01 Merge "Migrate PlatformCompat App List to SPA" into udc-qpr-dev am: 879ff5f271 am: 78981afdc2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23410196

Change-Id: I09189fc2dfe6789db9c7745dd43cf5168c2e9dfc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-16 09:24:26 +00:00
Chaohui Wang
ed6d6c9e0f Migrate PlatformCompat App List to SPA
So hidden modules are not shown in the list.

This will also improve the developer experience.

Bug: 273913035
Test: Manually with App Compatibility Changes
Test: Unit test
Change-Id: Ic78a51819159a0f848db6173f751b1be8c6b1e70
2023-06-15 09:37:11 +00:00
TreeHugger Robot
b4409c9bf3 Merge "Default show LE audio toggle in Device Detail" into udc-d1-dev am: df23aab9bf am: aac695129e am: 374aefc2d7
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23486040

Change-Id: I5c6a6d3c6b3698c07585e06c00073e7c7c76e19a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-02 18:10:46 +00:00
TreeHugger Robot
aac695129e Merge "Default show LE audio toggle in Device Detail" into udc-d1-dev am: df23aab9bf
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23486040

Change-Id: I5202aa1f9202a906ef197a0f60209edf73df7ab5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-02 15:56:27 +00:00
Prabir Pradhan
edbc95e817 Merge "Add "Show key presses" to input developer options" into udc-qpr-dev am: 8fca8a72dc am: 753647d584
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23356796

Change-Id: I9c43018307252742022d19443c3423fa4ee05550
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-01 18:24:09 +00:00
Prabir Pradhan
8fca8a72dc Merge "Add "Show key presses" to input developer options" into udc-qpr-dev 2023-06-01 17:37:44 +00:00
Patty Huang
3e980c7c8f Default show LE audio toggle in Device Detail
Bug: 284790607
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothLeAudioDeviceDetailsPreferenceControllerTest
Test: Checks the LE Audio toggle is shown in Device Detail by default
Change-Id: Id301815513e8066941d3e4c44ab2e7b4d5ed011b
2023-06-01 20:36:34 +08:00
Yuxin Hu
e7c3c0fa70 Merge "Fix "Enable ANGLE" switch behavior when Developer Option Switch is off" into udc-dev am: 67c72c01cb am: b67e1d5371
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23360519

Change-Id: I6f25d8783e9c94335bd8f58c969b8e14c82f9147
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-25 19:45:48 +00:00
Yuxin Hu
0183cfd816 Fix "Enable ANGLE" switch behavior when Developer Option Switch is off
Fix below bugs:
1) When developer option switch is turned off,
"Enable ANGLE" switch is not disabled. Fixed it in
GraphicsDriverEnableAngleAsSystemDriverController::update().

2) When user turns off developer option switch,
a restart is not always mandatory. However, we should ask
user to restart the device is "Enable ANGLE" is forced to
change due to developer option switch turning off.
Fixed it in DevelopmentSettingsDashboardFragment::onSwitchChanged().

3) When user turns off developer option switch and
the reboot dialog pops up, user can dismiss the dialog by
not clicking either POSITIVE_BUTTON or NEGATIVE_BUTTON.
We should enforce user to click the button and disallow the
option to dimiss the dialog by touching screen areas
outside the window's bounds.
Fixed it in DisableDevSettingsDialogFragment.java.

Did a few clean-up and in
GraphicsDriverEnableAngleAsSystemDriverController.java, and updated
unit test to reflect new code behavior.

Bug: b/270994705
Test: m; flash and device can boot.
Test: atest -c GraphicsDriverEnableAngleAsSystemDriverControllerJUnitTest
Test: atest GraphicsDriverEnableAngleAsSystemDriverControllerTest
Test: atest SettingsRoboTests:FreeformWindowsPreferenceControllerTest
Test: atest SettingsRoboTests:DesktopModePreferenceControllerTest

Change-Id: I199b2fe59b6ad948b753793254c822a293d8b40d
2023-05-24 01:37:35 +00:00
Michael Groover
602ff9045a Merge "Do not allow Sensors Off to be toggled from the lock screen" 2023-05-22 19:12:44 +00:00
Michael Groover
f8b0cdd6ff Do not allow Sensors Off to be toggled from the lock screen
When the Sensors Off quick settings tile was originally added, the
primary concern was the tile accidentally being toggled off from
the lock screen. However, if Sensors Off can be toggled on from
the lock screen, this could be enabled on a stolen device to
prevent determining the location of the device. This commit
updates the Sensors Off tile to prevent its state from being
modified at all from the lock screen.

Bug: 282071050
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SensorsOffTest
Test: Manually verified tile couldn't be toggled when device locked
Change-Id: Ib2ea1d92c0b215ebeaf33fb8e4f5e7e297133b82
2023-05-22 19:12:35 +00:00