There is a bug where the empty section is
sometimes shown for additional providers. This
is because the logic for calculating the
visibility gets the providers and then the
logic for displaying the list gets the providers
and can result in getting out of sync. This aligns
both sets of logic to use the same data.
Test: ondevice & unit
Bug: 330163369
Change-Id: Icf71c78d67d55c929476f8e699d5893e60a49776
The existing code asks the main user's userManager if there's a
private profile belonging to it. If a private profile exists then the
answer to that question will always be true. So, we always end up
showing the apps from the private profile for the personal case.
We should instead ask the userManager if it belongs to the private
profile or not.
Bug: 327598131
Test: manual
Change-Id: I7bc9d58c371341235579d3456b54ea85f598892b
A new ECM service was introcuded in changeId
I831391e4437b51b3312b5273a2360bd029a3d8ee.
We begin calling it, and update/cleanup method signatures to match.
Note: There are two feature flags:
1. enhancedConfirmationModeApisEnabled - read only, protects the
mainline API.
2. extendEcmToAllSettings - runtime - gates calls to the above APIs.
We use both so we can ramp up in teamfood as needed.
Bug: 297372999
Test: Tested on device
Test: atest SpaPrivilegedLibTests
Test: atest com.android.settings.applications.specialaccess.notificationaccess
Test: atest com.android.settings.datausage
Test: atest PremiumSmsAccessTest
Test: atest RestrictedPreferenceHelperTest
Change-Id: I945ec51df5cd63de548a8ffdd1acc4f09f2301e5
This change enables the remaining settings for ECM, and adds tests for
both this and previous ECM changes.
Bug: 297372999
Test: Tested on device
Test: atest SpaPrivilegedLibTests
Test: atest com.android.settings.applications.specialaccess.notificationaccess
Test: atest com.android.settings.datausage
Test: atest PremiumSmsAccessTest
Test: atest RestrictedPreferenceHelperTest
Change-Id: I73d39d765dba0c1a75111c37b29ccf1c85d2cdd8
There is a case where there is a single primary service (e.g.
a fresh device) and we should hide additional services in that
case.
Test: unit + manual
Bug: 325077523
Change-Id: I9efb785ac3f7a328fdccd138e585f766d46fa282
The limit of 5 providers had two issues, one it did not
reserve one slot for primary which meant that you could
enable 6 and also even though it wouldn't save and would
show an error when you hit that limit the toggle was not
reset which made it look like it was enabled.
Test: on device + unit
Bug: 324426504
Change-Id: Ibec4efd6394835729869194181161fe8ae743e76
This fixes a bug where the picker
is not using the correct user id
and also ensures that the settings
activity uses the correct user when
launched.
Test: flash & test w/ work profile
Bug 322071206
Change-Id: I846593ff9ae320d9bb774e3e79ed9ef41f101ff5
The flakiness was caused by mVisibility
being out of sync and resulting in the
preference being hidden / shown incorrectly.
Test: manual & unit tests
Bug: 322072349
Change-Id: I588da2100b8f2cea38f2bdb63af4e8d19d0efd0b
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
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
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
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
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
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
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
* 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
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
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
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
This CL will enable live update of credential
providers if any are added/removed.
Test: atest
Bug: 264420106
Change-Id: I14804bac17a4efe5eccd3c5824558eace18da186
This CL will enable live update of credential
providers if any are added/removed.
Test: atest
Bug: 264420106
Change-Id: I14804bac17a4efe5eccd3c5824558eace18da186
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
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