Settings should now be able to directly use the equivalent ShortcutUtils functions,
so the unnecessary code is being removed from AccessibilityUtil.
This does cause much behavior to depend on A11yManager instead of Settings.Secure,
so several tests need their conditions updated.
Test: atest com.android.settings.accessibility
Flag: EXEMPT internal refactoring
Bug: 367414968
Change-Id: I95f81f7d78b074def0fe2d1e01f60ceb7e142dac
This fixes an issue where this page was presenting an inaccurate
preference list count to TalkBack because it was including this empty
preference.
(Uses the same flag as other fixes for this same bug, even though the
flag name doesn't make sense here.)
Test: atest EditShortcutsPreferenceFragmentTest
Test: Confirm preference invisible when editing a single feature,
opened from the Settings app
Test: Confirm preference invisible when editing a single feature,
opened from the FAB Drag-to-Edit
Test: Confirm preference still visible when editing multiple features,
opened from the FAB Drag-to-Edit
Test: Confirm TalkBack announces correct item counts in both cases,
including when editing Magnification which has an "advanced"
preference that gets replaced with the triple-tap shortcut.
Bug: 318607873
Flag: com.android.settings.accessibility.toggle_feature_fragment_collection_info
Change-Id: I2e1eb7f66022c1a47d1f96a914294fd8da25549c
Bug: 353700779
Test: atest AccessibilitySettings, ensure new test passes
Test: revert AccessibilitySettings.java change, ensure new test fails
Test: Install poc APKs from the bug, observe issue not reproducible
Flag: NONE security fix
Change-Id: Ie680e80169aa734f2559fe50ef06e4d1eae46779
Make each setting conditionally available based on touchpad or mouse
connected to device.
Bug: 269100659
Test: TrackpadBottomPreferenceControllerTest
Test: TrackpadReverseScrollingPreferenceControllerTest
Test: TrackpadTapToClickPreferenceControllerTest
Test: TrackpadSettingsControllerTest
Flag: android.view.flags.enable_vector_cursor_a11y_settings
Change-Id: I601c29e20d69227779481c0a491256e36cfd268f
Since the class android.security.KeyStore is going away, remove the
unused test utility class ShadowKeyStore that references it.
(ShadowKeyStore was originally used by a test, but
https://r.android.com/1353609 deleted that test.)
Bug: 326508120
Test: build
Flag: TEST_ONLY
Change-Id: I20f2330dee171a0bfe860a1318dc2f962a80bd19
Add createAvailableMediaDeviceGroupController interface to provide
different controller in Settings and SettingsGoogle.
Bug: 324023639
Test: atest
Change-Id: Ibf2ea2620c878e609eb937ff6947f5aaa0b89e7a
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
This reverts commit 19d1d3d15d.
Reason for revert: revert it because this is not the root cause.
bug: 316867690
Change-Id: I0f168dbb64044aa720202af7b1040afd4f028c9c
This reverts commit cf0501e4d7.
Reason for revert: b/317462033, it seems a flaky but revert it first.
Change-Id: Ie1d5e279cca6477fc17d8c27c1ecda8d7a6b2553
**Root cause**
- We can no longer mock the fragment.getActivity method because it's a
final method.
- We need to use custom shadows to implement the method we use but not
shadowed in Robolectric. (e.g. ColorDisplayManager's
isReduceBrightColorsActivated method)
Bug: 300157873
Test: atest AccessibilitySettingsTest
Change-Id: Ia7d039dd2e31e6b4a7b9382827f9006d4133ca1d
Status header (DataUsageSummaryPreference) is not clickable in the
DataUsageSummary.
So remove the legacy logics, to unblock unified default template.
Bug: 234104784
Test: m RunSettingsRoboTests
Change-Id: I3dddf4ec3f84d53fd07afbb62d171942a6acce5d
There have been a few reports on foldables where rotation lock suddenly
changed, without user interaction.
Adding these logs will make it easier to debug the issue.
Bug: 289023967
Bug: 289534937
Bug: 279685215
Test: Manually - Change rotation lock and check logs in dumpsys
Change-Id: I2a877e7b47c863871a2c6ba29ce46e63d28c8008
Current failing tests: ab/I64100010182936387
Had to Ignore some of com.android.settings.accessibility tests, which will be fixed separately
Bug: 261728063
Test: atest SettingsRoboTests -- --test-arg com.android.tradefed.testtype.IsolatedHostTest:java-flags:-XX:CompressedClassSpaceSize=3g
Change-Id: I4a0cb992db924936826e0c9808accc78dddb5f30
According to patch of A-231987122, AOSP restricts app to modify relevant
mobile settings when user is a guest. This change intends to prevent the
slices related to mobile settings from being requested by guest user.
Bug: 278616139
Bug: 277333776
Bug: 262244832
Bug: 278616520
Bug: 278615120
Test: robotests
Change-Id: I4dc4bbfdb5cf76e188e6f62ebfd74ef6fa2fe33b
activity.
Robolectric has shadows for many Android framework's code. With the help
of Robolectric, We don't need
to use mock the return value of every method Activity or Fragment has.
Bug: 283885638
Test: atest AccessibilityDetailsSettingsFragmentTest
Change-Id: I77dfa755e3a1b6a240a06f74b5a6c5984534c831
These methods are being removed from LockPatternUtils because they are
no longer used, so remove them from ShadowLockPatternUtils too.
Bug: 270013005
Change-Id: If196bbef4755c644b3188043ed47e99817bf1856
In legacy flow FaceEnrollIntroduction check maxFacesEnrolled()
then update introduction description and prevent user go to next
enroll step, the CUJ was not good to user, instead bring user
to Face Settings and let user decide the next action(Delete face or
change config) is more make sense.
As any applications could broadcast intent(android.settings.FACE_ENROLL)
to bring FaceEnrollIntroduction up, we add a check in onCreate() and check
if device has been enrolled max face, launch FaceSettingsInternalActivity.
In addition, skip to register any posture change callback when
maxFacesEnrolled() during activity onStart().
Test: atest SettingsGoogleUnitTests
Test: m -j SettingsGoogleRoboTests RunSettingsGoogleRoboTests
Test: m RunSettingsRoboTests ROBOTEST_FILTER= \
"FaceEnrollIntroductionTest"
Test: m RunSettingsRoboTests ROBOTEST_FILTER= \
"FingerprintEnrollIntroductionTest"
Test: Manual enrolled face, unfold device, launch Tips Security page
and click "Set up Face Unlock", device launch Face Settings insteand of
posture guidance page.
Bug: 263830403
Change-Id: Ied8b92259810f954ce6b2daaa9b87fc996ad752a
In Android U+ tablet device, Android introduces headless mode which
running on a main user instead of system user. Therefore, device throw
a security error in HSUM build now.
For now, we check whether current user owns a frp
credential instead. This way also works on non HSUM build.
Test: robo test + run FRP mode in Suw flow.
Fix: 262438904
Change-Id: Ie4c7c470b13b9de8d532e61e9984521cebe7adff