Commit Graph

13987 Commits

Author SHA1 Message Date
Diya Bera
327eaf16fb Removed subtext from side fps enrollment flow
Test: Manual (Try to enroll your fingerprint in a side fps device, and
observe that there is no subtext in landscape mode)
Bug: 267271891

Change-Id: Iba4c13e8083ecb92f8033882af9147f14071e726
Merged-in: Iba4c13e8083ecb92f8033882af9147f14071e726
2023-03-02 18:42:02 +00:00
Darrell Shi
6b6c68fd94 Merge "Hide "additional info" when active dream does not support." into tm-qpr-dev 2023-02-24 16:10:13 +00:00
TreeHugger Robot
694742152d Merge "Reduce jank on DND apps page" into tm-qpr-dev 2023-02-21 18:15:25 +00:00
menghanli
e1ce633dd4 fix(tablet assets): update a11y button navigation asset for tablets
Fix: 269707768
Test: Go to Settings > Accessibility > Accessibility shortcuts > Accessibility button > Location to "Navigation bar".
Change-Id: I2d56a104848c93d8e6d138c849d05b4a77388c3b
2023-02-18 08:43:36 +08:00
Julia Reynolds
9f7af5946e Reduce jank on DND apps page
1) Remove call to redisplay the api when registering our app listener -
this meant all preferences were always removed/readded on page load
because the app list isn't ready at that time
2) Stop rebuilding the UI for events we don't care about
3) Keep existing preferences when possible and just do the diff of prefs
that need to be added/removed

Fixes: 234298144
Test: ZenModeAddBypassingAppsPreferenceControllerTest
Test: ZenModeAllBypassingAppsPreferenceControllerTest
Test: manually view page; add & remove apps that have dnd breakthrough
Change-Id: I57b36d36135dd25d1d2fd73073cf6b7a033659a6
2023-02-17 13:39:19 +00:00
TreeHugger Robot
1692714346 Merge "RESTRICT AUTOMERGE Fix certain Accessibility Settings subpages use wrong resources" into tm-qpr-dev 2023-02-17 09:02:46 +00:00
Darrell Shi
86113ae01f Hide "additional info" when active dream does not support.
Only show the "additional info", which displays dream complications,
when supported by the user selected dream.

Test: make -j86 RunSettingsRoboTests
ROBOTEST_FILTER="com.android.settings.dream.DreamSettingsTest"
Test: verified on device switching between different dreams
Bug: 223860510
Fix: 223860510

Change-Id: I63872ea9ab9f42be47f8e2f7c3835b55056e6588
2023-02-17 00:40:02 +00:00
menghanli
3fba0ee402 RESTRICT AUTOMERGE Fix certain Accessibility Settings subpages use wrong resources
Root cause: Portrait mode does not always respect the sw600dp qualifier and instead uses the phone (default) resources.
Solution: Using the product to customize the tablet and phone cases is better way than using the configuration qualifier.

Bug: 269130587
Test: Manual testing
Change-Id: I90cc44f1e9bccf8950a4d89f70119ba5e3c0bfdc
(cherry-pick of commit bea25c7513)
2023-02-16 05:59:01 +00:00
Behnam Heydarshahi
d9c3cf855f Muting ring volume slider disables notification
With volume_separate_notification flag enbaled, muting ring volume
slice will cause notification volume slice to gray out.

There used to be a bug in which notification slice would not get
updated in response to a change in ring volume mute/unmute broadcast.
The resulting erroneous behavior was notification slider would get to
zero but not get grayed out. To fix that bug, VolumeSliceHelper listens
to ring stream mute/unmute broadcasts and forwards them to notification
slice.

Bug: b/266072907
Test: make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER="NotificationVolumePreferenceControllerTest|VolumeSliceHelperTest" RunSettingsRoboTests -j40

Change-Id: I2ab51f1272bf99a0c3d9ca285354052d00910c90
2023-02-15 15:43:08 +00:00
Behnam Heydarshahi
d89de47399 Merge "Propagate mute event to both ring volume slices" into tm-qpr-dev 2023-02-15 14:28:15 +00:00
menghanli
991b70c720 Add a done button to vision setting pages in setup flow
Root cause: User feels confused because the particular screen doesn't have a back button but at that moment of the setup flow the regular UI gestures didn't even work.
Solution: Add a done button to the vision settings pages for clearer navigation. This change combines parts of commit 5e931b2c23 and commit dd2ec775c8.

Bug: 262995569
Test: make RunSettingsRoboTests ROBOTEST_FILTER=FragmentForSetupWizardTest
Change-Id: Id3a0d78389e0e6c11b5b5cf016b37673fde7f286
Merged-In: Id3a0d78389e0e6c11b5b5cf016b37673fde7f286
(cherry picked from commit dd2ec775c8)
2023-02-15 06:32:57 +08:00
Behnam Heydarshahi
236bbcb8bc Propagate mute event to both ring volume slices
Fix a bug where introduction of a separate_ring_volume slice meant that
the original ring_volume slice would not get notified of ring stream
muting event.

Bug: b/266855922

Test: make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER=VolumeSliceHelperTest RunSettingsRoboTests -j40
Change-Id: Ifb5ebe4e7d9bde3d14336891cce3fbee167a5911
2023-02-13 14:50:27 +00:00
Diya Bera
7eb40da9c4 Add animation for progress bar and lottie in fingerprint enrollment
Test: Manual - While enrolling a fingerprint, onHelp will cause the
lottie and progress bar to shake
Bug: 266838595

Change-Id: I547d86182a87846aca7d025b35a008675f449e2e
Merged-in: I547d86182a87846aca7d025b35a008675f449e2e
2023-02-07 22:48:55 +00:00
Josh Hou
1739114d44 Merge "Fix the security vulnerability issue in AppLocalePickerActivity" into tm-qpr-dev 2023-02-02 00:15:12 +00:00
Diya Bera
1021b58ae5 Tests for SUW in work mode
Bug: 247049655
Test: m RunSettingsRoboTests -j30 ROBOTEST_FILTER=MultiBiometricEnrollHelperTest
Change-Id: Ifabb96a90c340bc9306cc0f033ba103c614f32a9
2023-02-01 22:05:09 +00:00
Josh Hou
5d7d1665fe Fix the security vulnerability issue in AppLocalePickerActivity
Examine whether the packages is allowed to display app locales list when creating the AppLocalePickerActivity, and examine whether the target user is the same as the calling user.

Bug: 257954050
Test: Follows the test step listed in b/257954050#comment14
Change-Id: I2e25a308bcba6ea0edee89c7a78465f766bdbeac
Merged-In: I2e25a308bcba6ea0edee89c7a78465f766bdbeac
2023-02-01 15:42:22 +08:00
Steve Elliott
f127bc13b0 Setting to control seen notification filtering
Test: manual
  1. adb shell settings put secure \
     lock_screen_show_only_unseen_notifications <0|1>
  2. Settings > Notifications > General > Show only new notifications on
     lock screen
  3. Toggle setting
  Observe: if setting is enabled, seen notifications are filtered from
           the lockscreen, and vice versa
Bug: 254647461
Change-Id: I4f6e35a1d918095cea25a97f72ddd08869ad9b31
2023-01-19 22:22:30 +00:00
TreeHugger Robot
66e23eb89c Merge "5/ Refine SetupChooseLockPattern layout by design" into tm-qpr-dev 2023-01-17 03:56:35 +00:00
Behnam Heydarshahi
cf022d4537 Merge "Ring & notif vol missing on a largescreen device" into tm-qpr-dev 2023-01-12 16:15:27 +00:00
Josep del Río
98bfab5f23 Merge "NEW Use Mockito 4.6.1 API" into tm-qpr-dev 2023-01-12 14:17:44 +00:00
Bill Lin
34d144265d Merge changes from topics "disable_face_enroll_inSUW", "tuscany_FaceEnrollFoldPage" into tm-qpr-dev
* changes:
  3-1/ Impl FoldProvider.FoldCallback for Face enroll activities
  2-1/ Add config_suw_support_face_enroll to customize SUW face enroll flow
  Fix face enroll introduction crash after 10mins
2023-01-12 06:47:45 +00:00
Sorin Basca
a962b4b712 NEW Use Mockito 4.6.1 API
Addressing skipping merge issue

Bug: 236636175
Test: atest SettingsRoboTests
Change-Id: Ie7caae0ea9aa212f1ee06d6fe89fa0776979e4e6
Merged-In: I2cfda684059520f6ddd1e72c55f1ab1ec9c99e8b
2023-01-12 01:35:44 +00:00
Behnam Heydarshahi
18469d2975 Ring & notif vol missing on a largescreen device
Before:
"Ring & notification volume" showed up in volume panel and in volume
settings.

Now (what prompted this bugreport):
A device config was changed to mark it not voice capable.
"Ring & notification volume" disappeared from both places;
"Notification volume" showed up only in volume settings, not panel.

Fix: the voice capable should not be a factor when determining
availability for ring/notification slices.

After this fix is applied:
"Ring & notification volume" to reappear at both settings and panel.

Bug: 256548882

Test: make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER="VolumePanelTest|RingVolumePreferenceControllerTest|NotificationVolumePreferenceControllerTest|SeparateRingVolumePreferenceController" RunSettingsRoboTests -j40

Change-Id: Ie2b1913bde6a64303c4d9fde3724889f949c363b
2023-01-11 22:14:29 +00:00
Joshua McCloskey
b8695b8e76 Added performant auth feature
Test: Manually verified in settings that the performant auth
feature(fingerprint) is disabled by default
Bug: 261216422
Bug: 265031172

Change-Id: I6422b12f801d038fa514758eca34efcbfdeef27a
2023-01-11 16:43:54 +00:00
TreeHugger Robot
61f81ffb07 Merge "Update wallet setting availability" into tm-qpr-dev 2023-01-11 14:54:39 +00:00
lbill
b54ca63996 3-1/ Impl FoldProvider.FoldCallback for Face enroll activities
Create a mechanism to allow OEM config posture guidance with
'config_face_enroll_guidance_page', and customize the config
'config_face_enroll_supported_posture' with standard postures
         0 : DEVICE_POSTURE_UNKNOWN
         1 : DEVICE_POSTURE_CLOSED
         2 : DEVICE_POSTURE_HALF_OPENED
         3 : DEVICE_POSTURE_OPENED
         4 : DEVICE_POSTURE_FLIPPED
For example, if we set 1 for the device, then device only
allow to enroll face in closed(folded) state, if device do
not in the allow state, we will prompt specific guidance
page activity defined in config_face_enroll_guidance_page.

At this stage , we only integrate 2 states OPENED/CLOSED through
ScreenSizeFoldProvider and register for onFoldUpdated() callback
- isFold(DEVICE_POSTURE_CLOSED): finish posture guidance
- !isFold(DEVICE_POSTURE_OPENED): launch posture guidance
- onActivityResult : reset mOnGuidanceShown false

1. Fix A11y lottie animation bug
2. Impl FoldProvider.FoldCallback
3. Register callback to ScreenSizeFoldProvider
4. Integrate back stack, skip, cancel events
   - Back key : RESULT_CANCELED
   - Skip btn : RESULT_SKIP
   - Posture changed : RESULT_FINISHED
5. Set single instance for relative activities
6. FaceEnrollFoldPage listen for onConfigurationChanged()
7. Add empty face_posture_guidance_lottie.json for overlay

Test: atest SettingsGoogleUnitTests
Test: m -j SettingsGoogleRoboTests RunSettingsGoogleRoboTests
Test: m RunSettingsRoboTests ROBOTEST_FILTER= \
      "com.android.settings.biometrics.face.FaceEnrollEducationTest"
Test: m RunSettingsRoboTests ROBOTEST_FILTER= \
      "com.android.settings.biometrics.face.FaceEnrollIntroductionTest"
Test: Manual launch security settings face enroll, unfold device
and observe posture guidance showing fullscreen on top
Test: Fold device ensure the posture guidance activity finish
Bug: 261141826
Fixes: 231908496

Change-Id: Ib9f43f82f7d19f3f187c2f6f8984e76cd843afbc
Merged-In: Ib9f43f82f7d19f3f187c2f6f8984e76cd843afbc
2023-01-09 08:28:26 +00:00
Milton Wu
8e57808247 Fix face enroll introduction crash after 10mins
When requestGatekeeperHat() throws exception in FaceEnrollIntroduction
page, remove gk_pw_handle and recreate activity to trigger confirmLock.

Test: robotest for FaceEnrollIntroductionTest
Bug: 234437174
Change-Id: Ie1dd6f36e4deb3f776e3b39acd165fc47d04f526
Merged-In: Ie1dd6f36e4deb3f776e3b39acd165fc47d04f526
2023-01-09 07:38:59 +00:00
lbill
bbca300b30 5/ Refine SetupChooseLockPattern layout by design
Since the SetupChooseLockPattern include header icon
header title, header sub-title, pattern state description,
LockPatternView and FooterBar, there was a limited room
for LockPatternView especially in the confirm steps which
both header title and pattern description occupy 2 lines space.
Hance the PatternView size used to inconsistence in-between
1st draw and 2nd confirm draw, besides it's visual looks
jumping and small on some device which have smaller display.

This solution includes 3 changes:
1. Organized the pattern view message to leverage
   header sub-title view, then we can resever more space.
   (Set minHeight=2 for sub-title)
2. Set screen_lock_options button visibilty to GONE when
   the stage in 2nd confirmation.(Previously it's INVISIBLE
   and reserve additional space)
3. Let LockPatternView align bottom of FrameLayout to prevent
   the view juming and flicker.
4. Clean up unused forAnyBiometric flag and code.
5. GlifLayout.getDescriptionTextView() == mHeaderView
   Need setDescriptionText() to make the view from GONE -> VISIBLE
6. Polish the stage flow and ensure IntroductionStage show
   correct message
7. Add ChooseLockPattern into embeded activity white list
   Force show ChooseLockPattern in fullscreen in case the Pattern
   view truncated in `NeedToConfirmStage` where the title showing
   2 lines and push pattern view down, and get bad UX in the
   device which integrate a shorter display.
8. Add test cases for all stage and polish legacy test code.

Test: make RunSettingsRoboTests ROBOTEST_FILTER= \
     "com.android.settings.password.SetupChooseLockPatternTest"
Test: make RunSettingsRoboTests ROBOTEST_FILTER= \
     "com.android.settings.password.ChooseLockPatternTest"
Bug: 249974175
Bug: 260027850
Change-Id: I868af9b14ba99af5d78a05f6c2a570ccc07aea15
2023-01-09 05:30:33 +00:00
Karen Lu
869fd2f33e Revert "Use Mockito 4.6.1 API"
Revert submission 20749672-cherrypick-robo-mockito-4.6.1-4rg619yrrf

Reason for revert: Breaking the build on tm-qpr-dev. Bug tracked here: b/264473028

Reverted changes: /q/submissionid:20749672-cherrypick-robo-mockito-4.6.1-4rg619yrrf

Change-Id: Ie9d9d944093752f44eff67627e4a35f4df47e6de
2023-01-05 05:15:10 +00:00
Matt Pietal
c617ae851d Update wallet setting availability
For devices that don't support wallet, don't even show the setting in
a disabled state, which can cause confusion and lead the user to
believe they can enable it somehow.

Fixes: 251089510
Test: WalletPrivacyPreferenceControllerTest
Change-Id: I5d60957f24712bb4d75e72fa5f64cab35b6d6a5f
2023-01-04 21:39:43 +00:00
Behnam Heydarshahi
4f87dd4b56 Implement a separate controller for ring volume
When ring volume is separated from notification, a new xml preferece and
controller is needed for it, so that the settings search can show/hide
the slice correctly.

1. Use a separate preference and controller for ring volume (vs ring &
notification combined)
2. Notification slice in settings no longer grays out when ringer mode
is set to mute or vibrate.
3. Introduce an abstract RingerModeAffected preference controller class
to factor out duplicate code among ring, notification, and separate-ring
controller classes.

Bug: b/259084354

Test:   make ROBOTEST_FILTER=RingVolumePreferenceControllerTest
RunSettingsRoboTests -j40
        make ROBOTEST_FILTER=SeparateRingVolumePreferenceControllerTest
RunSettingsRoboTests -j40
        make ROBOTEST_FILTER=NotificationVolumePreferenceControllerTest
RunSettingsRoboTests -j40
        make ROBOTEST_FILTER=VolumePanelTest RunSettingsRoboTests -j40
	make
ROBOTEST_FILTER=RingerModeAffectedVolumePreferenceControllerTest -j40

Known Issue:
1. When streams are separate and ring volume set to mute/vibrate,
notification is set to zero, but not disabled. So it can be turned on
by user (and in settings the icon will stay mute/vibrate instead of
changing to the normal notification icon).

2. In the above scenario after notification is unmuted in settings,
the notification icon continues to stay vibrate/mute -- should change
to the normal notification icon.

Note: This feature is controlled using a boolean DeviceConfig flag:
systemui/"volume_separate_ring". The default value is 'false', which is
meant to keep the experience the same as before. It will be set to
'true' for teamfood and dogfood. Eventually the flag will be removed and
the code in the 'true' branch will prevail.


Change-Id: Ibec871eafeef4081e96c5e0dd04535565d50a077
2022-12-28 22:33:50 +00:00
Sorin Basca
93c143ed0a Use Mockito 4.6.1 API
Bug: 236636175
Test: m RunSettingsRoboTests
Change-Id: I2cfda684059520f6ddd1e72c55f1ab1ec9c99e8b
Merged-In: I2cfda684059520f6ddd1e72c55f1ab1ec9c99e8b
2022-12-19 22:24:45 +00:00
YK Hung
d388dc1809 Merge "Update string for all defenders" into tm-qpr-dev 2022-12-16 04:51:46 +00:00
William Xiao
0be191aeb7 Merge "Default to timing out to dock user in 1 minute" into tm-qpr-dev 2022-12-15 20:04:15 +00:00
Zhenwei Chen
1eea27ae82 Update string for all defenders
Test: Unit test passed
Bug: 262508668
Change-Id: Ia0126f9761caa43d0746962a9bb77173e9f45ad1
2022-12-15 05:31:18 +00:00
Diya Bera
6b468377c1 Flicker in Fingerprint Enrollment
Fixes: 259707991
Test: m RunSettingsRoboTests -j30 ROBOTEST_FILTER=MessageDisplayControllerTest
Change-Id: I2581dfcc7054c5df1368d5d912dbbc4c8ea01f23
Merged-in: I2581dfcc7054c5df1368d5d912dbbc4c8ea01f23
2022-12-13 18:17:23 +00:00
William Xiao
ea655e9695 Default to timing out to dock user in 1 minute
Previous default was to disable the feature.

Bug: 260123067
Test: verified locally on device that the default is 1 minute for a new
user

Change-Id: I8f577d62b729eb1c1a0579a7b4eb6b50f7f7f0d8
2022-12-12 18:36:30 -08:00
Yi Jiang
1145b26ac7 Creates a flag for auto-rotate with face detection
The flag is enabled by default. And will be disabled on foldable
devices.

Test: locally
Bug: 236249360

Change-Id: I8c90533f6011531a4f00af5f2514579638604067
2022-12-12 19:49:16 +00:00
Darrell Shi
7bae5625a6 Merge "Update screensaver preference summary when on." into tm-qpr-dev 2022-12-12 16:41:38 +00:00
Darrell Shi
d1f5edfc78 Update screensaver preference summary when on.
The summary for screensaver preference is updated to, e.g. "On / Art
gallery".

Bug: 261907383
Test: 'make -j64 RunSettingsRoboTests \
ROBOTEST_FILTER="com.android.settings.dream.DreamSettingsTest"'

Change-Id: I40483f266c42a6e49e513208ba513d469d67f85a
Merged-In: I40483f266c42a6e49e513208ba513d469d67f85a
2022-12-09 17:36:01 +00:00
TreeHugger Robot
47d87cb48d Merge "Check multiple security types for Wi-Fi NetworkRequest" into tm-qpr-dev 2022-12-09 05:26:26 +00:00
Zhenwei Chen
72490ec149 Merge "Fix incorrect dock defender banner icon." into tm-qpr-dev 2022-12-08 03:33:57 +00:00
Weng Su
c4d0597373 Check multiple security types for Wi-Fi NetworkRequest
- The WifiEntry already support multiple security types simultaneously from framework

- For backward compatibility, WifiEntry supports both getSecurity and getSecurityTypes methods

- However, the getSecurity method can only return one type of security, causing NetworkRequest to fail to match another type of security
  - WifiEntry:      getSecurity:WPA2   // getSecurityTypes:{WPA2, WPA3}
  - ReqeustNetwork: getSecurity:WPA3

- Need to use getSecurityTypes to check for matching WifiEntry

Bug: 205943818
Bug: 249713442
Test: manual test
make RunSettingsRoboTests ROBOTEST_FILTER=NetworkRequestDialogFragmentTest

Merged-In: I8848ccd1cb0589284a48ddaa77591f5bf3b41932
Change-Id: I8848ccd1cb0589284a48ddaa77591f5bf3b41932
(cherry picked from commit a88c064842)
2022-12-07 18:15:44 +00:00
Zhenwei Chen
47fa893358 Merge "Fix batteryInfo unit test" into tm-qpr-dev 2022-12-07 08:31:44 +00:00
Zhenwei Chen
36c1e7dc20 Fix incorrect dock defender banner icon.
Screenshots:
https://screenshot.googleplex.com/32YV7V6A6wxBPxc.png
https://screenshot.googleplex.com/77iMZ8CeuE5W8wE.png

Bug: 261156455
Test: Unit tests passed and manual test on the device
Merged-In: I084c9cd52a408efa3b9aeee96a0af0cae481ec79
Change-Id: I084c9cd52a408efa3b9aeee96a0af0cae481ec79
Signed-off-by: Zhenwei Chen <zhenwec@google.com>
(cherry picked from commit 52323128dc)
2022-12-07 05:46:57 +00:00
Zhenwei Chen
b41e06a5fb Fix batteryInfo unit test
Bug:261139453
Test: Unit test passed
Merged-In: I8f94f984dc1bf833653ae49557fdd02f736b365c
Change-Id: I8f94f984dc1bf833653ae49557fdd02f736b365c
Signed-off-by: Zhenwei Chen <zhenwec@google.com>
(cherry picked from commit 54615b3bec)
2022-12-06 06:22:38 +00:00
Alejandro Nijamkin
f31108f11a Specifies nav destination when opening shortcuts.
Doing this will open the correct screen when clicking on "Shortcuts"
under Settings > Display > Lock screen.

Fix: 258471384
Test: manually verified that clicking on it opens the wallpaper picker
experience with the correct page showing.

Change-Id: I627bcb9c9fac7a834f1c9d9cb36b73a6c8817af5
2022-12-02 16:08:32 -08:00
Wesley Wang
1f139628b3 Merge "Fix LoaderCallback.onLoadFinished uncalled issue" into tm-qpr-dev 2022-12-01 06:30:10 +00:00
Arc Wang
252bf820ee Merge "Settings 2-pane deep link vulnerabilities" into tm-qpr-dev 2022-12-01 01:45:56 +00:00
Ale Nijamkin
d81ae0a645 Merge "Brings back "Control from locked device" setting." into tm-qpr-dev 2022-12-01 00:50:42 +00:00