Commit Graph

153 Commits

Author SHA1 Message Date
Becca Hughes
87117b0183 Merge "Add buttons for new settings design" into main 2024-01-19 22:05:14 +00:00
Becca Hughes
782fcb9bd5 Add buttons for new settings design
This adds a new class called PrimaryProviderPreference
which is responsible for laying out the old cog view if
the feature is disabled and the new button view if it
is enabled.

Screenshots:
https://hsv.googleplex.com/5109836204212224
https://hsv.googleplex.com/5574754636398592
https://hsv.googleplex.com/6737135727017984

Change-Id: I1ad0c59a4afc5be3694b499f66bbd7306dfbee69
Test: Manual test with flag on + off & unit tests
Bug: 300979487
2024-01-19 19:42:14 +00:00
Becca Hughes
7dca691308 Make provider icon sizes consistent
Fixes an issue where the icons under "additional providers"
are not the same size. Also, fixes the unit tests for
CredentialManagerPreferenceController.

https://hsv.googleplex.com/4797855484084224

Test: unit tests and manual on device tests
Bug: 278772478
Change-Id: I88d8694189a7529ccc2d92bf1b74bb5bf2268f46
2024-01-12 16:19:47 +00:00
Graciela Wissen Putri
480d523a0c [3/n] Pre-select fullscreen option if overridden
Settings > Apps > Aspect ratio (experimental)

Pre-select the fullscreen option if all are true:
- device manufacturer has overridden app to fullscreen
- app has not opted out of orientation override
- app has not opted out of user's fullscreen option
- user has not set any aspect ratio (USER_MIN_ASPECT_RATIO_UNSET)

"App default" will have a new value of USER_MIN_ASPECT_RATIO_APP_DEFAULT
if device manufacturer has overridden app to fullscreen, which will
behave the same as USER_MIN_ASPECT_RATIO_UNSET without the
device-applied fullscreen override.

Bug: 310816437
Test: atest UserAspectRatioDetailsTest
      atest UserAspectRatioManagerTest
      atest UserAspectRatioAppPreferenceTest
Change-Id: I6be634bb4369292687b865ce30d902540419183c
2023-12-22 13:15:56 +00:00
Matías Hernández
907b47105b Tag Zen operations from Settings as coming from the user
Bug: 308670715
Test: atest ApprovalPreferenceControllerTest
Change-Id: Id118f867e84f3d742db6b12eab0f34df1357d178
2023-12-18 13:32:32 +01:00
Graciela Wissen Putri
3ced0bd60d Enable all aspect ratio options in UserAspectRatioManagerTest
testGetUserMinAspectRatioEntry fails for foldables and tablets due to
some aspect ratio options being disabled. Mock Resources to return all
default aspect ratio options and strings to make test device agnostic.

Clean up unused variables and remove getLauncherApps in
UserAspectRatioManager.

Add more tests in UserAspectRatioManagerTest.

Fix: 304685321
Test: atest SettingsUnitTests:UserAspectRatioManagerTest
Change-Id: I6f4bbd60863be0c66139955507157619a5fc6662
2023-10-26 12:55:12 +00:00
Graciela Putri
39386158b7 Merge "Remove 4:3 aspect ratio option for foldables" into udc-qpr-dev am: 2147c152ac am: 94f7219937
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/25007832

Change-Id: I08c0fcfe2c81b9c36b63165233e844e975bf93e4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-10-12 10:00:30 +00:00
Graciela Wissen Putri
e6c4beca80 Remove 4:3 aspect ratio option for foldables
Bug: 304260896
Test: atest UserAspectRatioManagerTest
Change-Id: I8a745c90e45e8776eef082e01dc2155fe6b353b6
2023-10-10 17:18:48 +00:00
Eghosa Ewansiha-Vlachavas
2c50be71c5 Fix testGetUserMinAspectRatioEntry for both tablets and foldables am: 136bd906da am: 933b2431fb
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24879571

Change-Id: I1a08e894582e04583bb2f1e26945cae85f1b4fc4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-29 21:51:22 +00:00
Eghosa Ewansiha-Vlachavas
136bd906da Fix testGetUserMinAspectRatioEntry for both tablets and foldables
Tabelts and foldables now have different aspect ratio values in their
config, so we need to test the devices separately as we shouldnt test for
values that are not in the config of the device the test is run on.

Fixes: 302155585
Test: atest SettingsUnitTests:UserAspectRatioManagerTest
Change-Id: I78fa3020501a4be992bb90fea16a6fec4f37594b
2023-09-28 13:23:11 +00:00
Eghosa Ewansiha-Vlachavas
5f624b70ba Merge "[1/n] Aspect ratio settings app list refinement" into udc-qpr-dev am: a3108d5b14 am: 2595f32076
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24854937

Change-Id: Iaa9687110887498c26d246dfed086eb1f8d529af
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-28 12:13:01 +00:00
Eghosa Ewansiha-Vlachavas
6bd9bff2e2 [1/n] Aspect ratio settings app list refinement
All apps list for work profile currently only shows work apps that are
also installed on the normal user. Update filter for list to show all
launcher apps for both users in their respective lists.

Fixes: 301373413
Test: atest SettingsUnitTests:UserAspectRatioManagerTest
Test: atest SettingsSpaUnitTests:UserAspectRatioAppPreferenceTest
Change-Id: Ia0bf15340d1b37dcd926d81598d3e94f448a46fc
2023-09-27 17:30:23 +00:00
Becca Hughes
d7c780aac7 Add missing divider to credman settings
Test: ondevice
Bug: 274126440
Change-Id: I3ba68a749899840c6ed646793e1d65725f10cce8
2023-09-06 10:45:50 -07:00
Graciela Putri
ab7f57b17c Merge "Add opt-out properties for aspect ratio settings" into udc-qpr-dev am: 83c8f47ddd am: 725efb1a5a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24309274

Change-Id: I5cdb28b8929b0ab8dba829ee6e12d880ca6cc27b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-08-16 07:04:50 +00:00
Graciela Wissen Putri
08983e8e63 Add opt-out properties for aspect ratio settings
Don't display aspect ratio options if app has opted out. If app has
opted out only for fullscreen, other aspect ratio options should still
be shown.

Bug: 292583399
Test: UserAspectRatioManagerTest
Change-Id: Ia0b223536407f703826d775468c8f8a0b4822e23
2023-08-15 09:14:21 +00:00
Graciela Putri
677c476a2c Merge "[4/n] Add fullscreen option in user aspect ratio settings" into udc-qpr-dev am: 1f1c2a7db9 am: c97131b90b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24213103

Change-Id: I079c6d10edbba5635e095a29067f21e22945bf85
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-28 19:32:58 +00:00
Graciela Wissen Putri
fa945cc808 [4/n] Add fullscreen option in user aspect ratio settings
Apps > App Info > Advanced > Aspect ratio

Adds fullscreen option to aspect ratio settings gated by fullscreen
build time and runtime flags. If fullscreen option is disabled, return
app default option.

To enable feature:
adb shell device_config put window_manager
enable_app_compat_user_aspect_ratio_settings true
adb shell am force-stop com.android.settings

Bug: 291900454
Test: All Settings CUJs passed
      atest SettingsUnitTests:UserAspectRatioManagerTest
Change-Id: I8f8d0c08ac81f088d6c25e8dfb3550f807f336b6
2023-07-28 10:09:56 +00:00
Graciela Putri
8dffd59e3d Merge "[2/n] Add aspect ratio app list page under apps" into udc-qpr-dev am: 4e86d0d6b3 am: dc86dbe24b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23819684

Change-Id: If7c6f4fa26ea014e40e737f07daae8b72481e2c2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-21 22:58:58 +00:00
Graciela Wissen Putri
b4c4f6cbe6 [2/n] Add aspect ratio app list page under apps
Apps > General > Screen Size

To enable feature:
adb shell device_config put window_manager enable_app_compat_user_aspect_ratio_settings true
adb shell am force-stop com.android.settings

Fix: 287448088
Test: Manual
      atest AspectRatioAppsPageProviderTest
      atest AspectRatioUtilsTest
      All CUJs passed in go/settings-cujs
Change-Id: I4de6c3cbdbdfbc79ed839ec149fb633344dcd3a7
2023-07-21 08:02:09 +00:00
Matías Hernández
412fc3e2c4 Merge "Settings: don't try to allow NLSes with too-long component names" into udc-dev am: 4d34eb2c7a am: 143d105dc9
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23726247

Change-Id: I71f428e90b132c4282827b698623ee1d43c0f7c1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-28 18:35:53 +00:00
Matías Hernández
027f0a46ae Settings: don't try to allow NLSes with too-long component names
* NotificationAccessConfirmationActivity (triggered through CompanionDeviceManager) -> Don't show the dialog, bail out early similarly to other invalid inputs.
* NotificationAccessSettings (from Special App Access) -> No changes, but use the canonical constant now.
* ApprovalPreferenceController (used in NotificationAccessDetails) -> Disable the toggle, unless the NLS was previously approved (in which case it can still be removed).

Fixes: 260570119
Fixes: 286043036
Test: atest + manually
Change-Id: Ifc048311746c027e3683cdcf65f1079d04cf7c56
2023-06-21 17:02:32 +02:00
Becca Hughes
1c5bfbeafd Merge "Align settings with new mocks" into udc-dev am: 21733fa106 am: 1022918da5
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/22912923

Change-Id: Ica4092467ac4a290b5f1a5ec0f7c7905e3928755
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-03 17:36:09 +00:00
Becca Hughes
b21df6c5fc Align settings with new mocks
Test: ondevice
Bug: 278919696
Change-Id: I274126bce3616596c4a81dd3385f0844d8bdbf71
2023-05-02 23:50:22 +00:00
Becca Hughes
428811be05 Fork autofill default app selection am: ddf359d0f8 am: 270b54d8a5
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/22912922

Change-Id: I63239ddc7d287a32afc9b686fe83d1aefef8587b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-02 23:49:18 +00:00
Becca Hughes
ddf359d0f8 Fork autofill default app selection
We are merging the default app selection for autofill
with credman so this forks the existing UI (so we can
flag it off).

Test: ondevice
Bug: 278919696
Change-Id: I96bcf1ff86b169a182b9974f7384c45b474c3d5d
2023-05-02 20:31:14 +00:00
Becca Hughes
7fdbfc7b0e Revert "Rollback decision to merge by package name"
This reverts commit ca542c90cd.

Reason for revert: product changed mind

Change-Id: Ic4b9275e8f19bf2b3e3e51f09162fb6d45e6a5bf
2023-04-28 21:06:00 +00:00
Becca Hughes
99f1d5448d DO NOT MERGE Hide provider from this list if autofill provider
Since we are merging the two lists we should
hide the provider from this list to avoid
duplicates.

Test: local & unit
Bug: 279205251
Change-Id: I70ec4a4bda13bdcd5fd8f82f6ba6045e94d5daa9
2023-04-26 21:23:30 +00:00
Becca Hughes
02ca65edaa Hide provider from this list if autofill provider
Since we are merging the two lists we should
hide the provider from this list to avoid
duplicates.

Test: local & unit
Bug: 279205251
Change-Id: I70ec4a4bda13bdcd5fd8f82f6ba6045e94d5daa9
2023-04-26 16:19:51 +00:00
Philip Junker
9e34ccd80f Merge "List apps which requested the TURN_SCREEN_ON appOp permission" into udc-dev am: 134bea1957 am: a9e09ac0ce
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/22724663

Change-Id: I5d184e66b6581e5eeb6620ed0d17fc493384e602
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-21 10:37:38 +00:00
Philip Junker
134bea1957 Merge "List apps which requested the TURN_SCREEN_ON appOp permission" into udc-dev 2023-04-21 10:07:47 +00:00
Becca Hughes
d8b74b5c39 DO NOT MERGE Live update cred man settings
This CL will enable live update of credential
providers if any are added/removed.

Test: atest
Bug: 264420106
Change-Id: I14804bac17a4efe5eccd3c5824558eace18da186
2023-04-19 22:06:15 +00:00
Becca Hughes
7039cdb12a Live update cred man settings
This CL will enable live update of credential
providers if any are added/removed.

Test: atest
Bug: 264420106
Change-Id: I14804bac17a4efe5eccd3c5824558eace18da186
2023-04-19 16:19:28 +00:00
Philip Junker
ded7f45e6a List apps which requested the TURN_SCREEN_ON appOp permission
This reverts commit 94f08e4ba1.
Reason for revert: Re-land with fix (b/278739832#comment8)

Bug: 272053372
Change-Id: I945e543b6e17b682bc88e9e9b0a79775a71dd6f7
Test: manually installed an app which requests the permission and verified it shows up correctly in Settings > Apps > special app access > Turn screen on
Test: atest AppFilterRegistryTest
Test: atest TurnScreenOnDetailsTest
Test: m -j RunSettingsRoboTests
Test: adb shell am start -a android.settings.TURN_SCREEN_ON_SETTINGS
2023-04-19 11:59:19 +00:00
Becca Hughes
ca542c90cd Rollback decision to merge by package name
At the moment settings aggregates by
package name and it has been decided that
we should do per-service instead.

Test: atest & manual
Bug: 278598419
Change-Id: I6b7c8adac4957f1c3382044208e1642d0b6e3fab
2023-04-18 22:15:50 +00:00
Linyu He
e346dc6779 Merge "Revert "List apps which requested the TURN_SCREEN_ON appOp permi..."" into udc-dev 2023-04-18 19:36:45 +00:00
Liana Kazanova
94f08e4ba1 Revert "List apps which requested the TURN_SCREEN_ON appOp permi..."
Revert submission 22338257-turnScreenOnPermission_pregrant

Reason for revert: b/278739832

Reverted changes: /q/submissionid:22338257-turnScreenOnPermission_pregrant

Change-Id: Iada276497c37c0e89a2cde8706394949d468e8e5
2023-04-18 17:47:14 +00:00
Philip Junker
c57e5c0e2c Merge "List apps which requested the TURN_SCREEN_ON appOp permission" into udc-dev 2023-04-18 15:36:55 +00:00
Philip Junker
58e7b70df3 List apps which requested the TURN_SCREEN_ON appOp permission
Bug: 272053372
Test: manually installed an app which requests the permission and verified it shows up correctly in Settings > Apps > special app access > Turn screen on
Test: atest AppFilterRegistryTest
Test: atest TurnScreenOnDetailsTest
Test: m -j RunSettingsRoboTests
Test: adb shell am start -a android.settings.TURN_SCREEN_ON_SETTINGS
Change-Id: I7c47d4b1c0b33c7ba6209bb64acf93cb07d9a717
2023-04-18 09:12:44 +00:00
Priyanka Advani
57a077f8a5 Revert "Add receiver for app install/uninstall events"
This reverts commit 86e092d84a.

Reason for revert: Probable culprit for b/278615544.

Change-Id: I5ff8730ab3e1974967b8c9f840f0ee3110dad483
2023-04-17 23:05:32 +00:00
Becca Hughes
b69351b06d Add dialog for enabling a provider in settings
Test: manual
Bug: 277923170
Merged-In: I404444115f178faf5545dec9686096fcdfdf73de
Change-Id: I404444115f178faf5545dec9686096fcdfdf73de
2023-04-17 18:06:50 +00:00
Becca Hughes
86e092d84a Add receiver for app install/uninstall events
In order to keep the settings list up to date
we are listening to package manager broadcasts
so when an app is installed, etc it will trigger
a refresh

Bug: 264420106
Test: ondevice & atest
Change-Id: I83be80e88dd03ebce1cb97a66fb759e1ef2537e8
2023-04-17 17:42:03 +00:00
Treehugger Robot
6065f10f11 Merge "Add dialog for enabling a provider in settings" 2023-04-13 23:24:44 +00:00
Becca Hughes
7d407abf58 Add dialog for enabling a provider in settings
Test: manual
Bug: 277923170
Change-Id: I404444115f178faf5545dec9686096fcdfdf73de
2023-04-13 21:29:04 +00:00
Treehugger Robot
b09b6eb551 Merge "Handle corner cases in "Alarms and Reminders" page" into udc-dev am: 3b24bafb80 am: cdda0b8658
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/22609703

Change-Id: I0c26bb3a47410bb60981c99c1aec39d0d4a405cf
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-13 21:13:47 +00:00
Suprabh Shukla
5aeef97cae Handle corner cases in "Alarms and Reminders" page
There are few corner cases and new updates that need to be incorporated:
1. Apps that declare USE_EXACT_ALARM, do not need SCHEDULE_EXACT_ALARM.
   So these should be filtered out, regardless of whather they declared
   the latter.
2. Apps that are in the power allowlist do not need either of the
   permission, and so these should be filtered out as well.

In either case, if the user somehow ends up in the app detail page for
this setting, the switch should get disabled based on existing logic.

Test: make -j RunSettingsRoboTests
Test: Manually by UI inspection:
Settings -> Apps -> Special App access -> Alarms and Reminders
or by running:
adb shell am start -a android.settings.REQUEST_SCHEDULE_EXACT_ALARM

Bug: 232460265
Change-Id: I5aeab49f95260218878bc36f5a4d73a49e5082e4
2023-04-12 19:17:57 -07:00
Becca Hughes
f9f3309fa0 Add service link when no providers are present
Test: ondevice & atest
Bug: 273752971
Merged-In: Ia7080f5c44c2f59a386e00146b898228e5829988
Change-Id: Ia7080f5c44c2f59a386e00146b898228e5829988
2023-03-28 22:51:33 +00:00
Becca Hughes
fbc05225bf Add service link when no providers are present
Test: ondevice & atest
Bug: 273752971
Change-Id: Ia7080f5c44c2f59a386e00146b898228e5829988
2023-03-27 23:01:13 +00:00
Reema Bajwa
4e1eda372c Fix bug in CTS test
Test: CTS
Bug: 274804384

Change-Id: I4e848dbe5bc9926f08fb20a452f0ce6ec8d3ffd5
2023-03-22 20:23:54 +00:00
Becca Hughes
b5f8ba6945 Add settings intent dialog
Add a dialog that can be launched via
an intent to prompt the user to enable
the provider for credman.

Test: make & atest & manual
Bug: 267816998
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:9d74509888b7dd65b287bc68b9445d9e23809cce)
Merged-In: Id88cc7b3bf2829d075fbba87ea5dc0a245b9ae32

Change-Id: Id88cc7b3bf2829d075fbba87ea5dc0a245b9ae32
2023-03-21 22:07:29 +00:00
Becca Hughes
9d74509888 Add settings intent dialog
Add a dialog that can be launched via
an intent to prompt the user to enable
the provider for credman.

Test: make & atest & manual
Bug: 267816998
Change-Id: Id88cc7b3bf2829d075fbba87ea5dc0a245b9ae32
2023-03-21 00:00:40 +00:00