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
1. Set biometric_auth_pattern_view_size: 348dp (portrait)
2. Set resilience size 248dp~348dp for landscape mode
biometric_auth_pattern_view_(max_)size
3. Set 348dp size for sw410dp when display density < 560
Set 248dp-348dp resilience size for sw410dp-land
4. Add sw392dp sw392dp-land with density 440 projects
5. Set sw600dp/sw720dp/sw800dp for large screen device
6. Reference dimen biometric_auth_pattern_view_size in style
7. Remove redundant dup AuthCredentialPatternContainerStyle
8. Remove max & min bounds from AuthCredentialPatternContainerStyle
9. Remove unused choose_lockscreen_min_height dimen
10. Reduce footerText min hight to reserve more space for pattern view
Bug: 234847272
Bug: 243008023
Bug: 243699695
Test: manual
Test: m RunSettingsRoboTests -j30 ROBOTEST_FILTER=\
ChooseLockPatternTest
Test: m RunSettingsRoboTests -j30 ROBOTEST_FILTER=\
SetupChooseLockPatternTest
Change-Id: Icfc2932279aa9e3a065030dbb7ff73f12ed6d081
Merged-In: Icfc2932279aa9e3a065030dbb7ff73f12ed6d081
Since Android 10, new devices have been required to use FBE (File Based
Encryption) instead of FDE (Full Disk Encryption). FDE support was
already removed from system components such as init and vold.
Therefore, the CryptKeeper activity is no longer needed. Remove it.
Note: this CL only removes CryptKeeper itself, i.e. the activity which
runs at boot time on devices that are using FDE or are being encrypted
with FDE in-place. Later CLs will remove FDE-specific code from the
Settings app.
Bug: 208476087
Change-Id: I4aaf795e8cee1ff3cdd55a41c975273c8faeefa9
The toolbar needs to be disabled to remove the empty space at the top
of the page. Also added the landscape layout xml.
Bug: 193602141
Test: atest SettingsUnitTests and manual
Change-Id: I30368835979b360a8f09e16f70adf57064784517
* Split screen into two halves, where the left
side includes the title and the right side
includes the recycler view, floating action
button and action buttons.
* https://screenshot.googleplex.com/6Co6kn2DyXZRGNZ
* https://screenshot.googleplex.com/6uwHAGuRHjNcStN
Bug: 189193577
Test: manual testing via TestDPC
RequestManageCredentialsTest
Change-Id: I9c82a7471c885658aacb40b22166ec801e2833ca
The landscape layout can be removed now, since for UDFPS,
we do not use this page for the "find sensor" functionality anymore.
Instead, we show the edu animation.
Bug: 187460696
Test: manual
Change-Id: Ic2e15ecf73c42b8a0cea4ea8996b1b7dd2f3b4f2
The description in the setup flow would follow the new style to align to the left.
Bug: 188593594
Test: atest & manual
Change-Id: Idfc00f51710d725d5c653396902446f29861cb88
- Using the SUW library API to enable the new style
- Removing some obsolete layouts which are using in landscape mode
- Verifying that these pages are using the new style
Fix: 188438375
Test: visual verified
1) Register a screen lock
2) Navigate to Settings > Security > Screen lock
2) See and check if the Pattern/PIN/Password confirmation page is using
the new style
Change-Id: I076dbf36388fa3badf4da409bcda83a5b368f13c
- Fix the problem with invisible title
- Fix the wrong layout for landscape mode
- Apply color extraction
Fix: 185076320
Fix: 182339941
Fix: 182440016
Fix: 184715547
Fix: 183710293
Test: robotests and visual verified
Change-Id: Ib8e2a015bc52fcac2d285777972177e53bde7489
- Using GlifLayout api to set title and description
- Hide the header area for landscape mode
Bug: 179317709
Test: visual verified
1) Settings -> Security -> Screen lock -> Pattern
2) Try setting screen lock if there's no pattern
3) Rotate the screen during the settings flow and see if there's
an empty space leaving in the left side
4) Settings -> Security -> Fingerprint
5) Device will display a confirm lock pattern page
6) Rotate the screen and see if there's an empty space left
Change-Id: I16f614eceb873f40b7c48583223aedcbcbd7447d
Bug: 181614043
Test: visual verified
1) Settings -> Security -> Fingerprint
2) Follow the setup flow to find sensor page and enrolling page
3) Rotate your device and see if fingerprint icon is overlapping with
the title.
Change-Id: Ia1202e9688f2472c8063287164f4fc8f479cdae9
- Refine the portrait layout to be reused for landscape
- Add strings for UDFPS enrollment
- Remove the landcaspe layout since it is no longer used.
Fixes: 171294253
Test: visual verified
Change-Id: Ibbfa5515437e2c2a348db9b621b4e60ba922a383
SUW library can support landscape mode. It reuse the portrait layout to
render the screen for landscape. So we don't need to have a layout for
it. This change is to move the description to a subtitle and remove the
unused layout.
Bug: 179234361
Bug: 171294253
Bug: 179317709
Test: visual verified
Change-Id: Icfb3be799c1b4e190691731638aaa3467cadf624
The attribute sudMarginSides would be removed, after it splits to sudMarginStart and sudMarginEnd.
Bug: 173747770
Bug: 173752328
Test: atest & manual test
Change-Id: If2d72aa5d6ab75a4386d3c09f5a649e20bc59b1b
Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference
Bug: 161896447
Test: robotest & manual
Change-Id: I94969f6903d047b9bc41b1e8c14096c92c460b38
The string of the CTA under "Settings > Storage" from "Free up space" to
"Manage storage" to match the new ux flow.
Test: visual
Fix: 150782402
Change-Id: Ic636d73b92f11f6f332475d591ff92633083bc85
Currently if a work profile with a separate lock is turned off
(a.k.a. in quiet mode), and the user has forgotten the password,
profile owner app cannot use DPM.resetPasswordWithToken because
the profile user is not running.
In BYOD case the user can remove and re-provision the profile but
in the new COPE mode (a.k.a. on an organization owned device with
work profile) it is not possible to remove the profile. So full
factory reset is required.
This CL allows the user to start the profile in locked state
(a.k.a direct boot mode) so that the admin can reset the password.
This CL adds "Forgot my password" button to work profile credential prompt
if all of the following conditions are true:
* Work profile is turned off
* Profile owner app is capable of running in direct boot mode.
* Profile owner app has an active password reset token.
* The device is an FBE device (otherwise profile will be unlocked).
Clicking this button starts the profile in locked state and shows an
activity to the user that instruct them to go to their IT admin.
Bug: 143516540
Test: manual
Change-Id: I832f7121b43e39161c5afa816f44ce89584b66e2
* Updated FrameLayout of work profile lock in Settings to use GlifLayout
* Removed old background image of work profile lock
* Updated text for PIN, password and pattern
* Added enterprise logo to work profile lock
Bug: 141290838
Test: Manual testing
atest com.android.settings.password
Change-Id: Ie09974857b6c76a182a8075b9e1964a2e0af0de9
- Add a new layout for the landscape mode.
- Update the logic to show image when has no any visible preference.
Bug: 141559275
Test: manual view
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.nfc
Change-Id: Ib59ad3347e0635c07d61d557d75f8feaf78ff23c
Currently in split-screen mode if work challenge window is made too narrow,
the dots of the pattern will go beyond window/screen boundaries. This change
makes pattern behave in the same way as primary profile pattern does, see
confirm_lock_pattern_normal.xml
Fixes: 133135598
Test: manual, resizing work challenge in portrait and landscape.
Change-Id: I40649911c2b7c587bf0b7e4a5c0449a5c2b7abb0
1. Use GlifLayout in all fragments
2. Fragments use 32dp icon instead of 48 dp
3. Replace ScrollView & ProgressBar & Header & Footer of original layout with GlifLayout design
4. Remove ActionBar (no more back button on screen top)
Bug: 129021867
Test: manual
Change-Id: I2fda48cb7f7819b2c8dd85c10d39e1f187463bd8
1. When camera area overlaps display cutout, it's onLayout size is 0/0.
To fix it, use ConstraintLayout to specify width and height in layout file.
2. When scanned a QR code and there is an error, set camera area frame line
back to unfocused color.
Bug: 124399763
Test: manual test
Change-Id: I7575efd0ccfb58d114acc3dcca6978d68b801f91
1. Change lock screen title and remove description
2. In QR code generator screen, change summary and show password under QR code picture
Bug: 128920152
Bug: 128576809
Test: manual test
Change-Id: Id096d7f417308df14ffe50c618644750aa991df8
UI Fixes include:
- Fix height of bottom bar
- Fix start / end padding of See More and Done buttons
- Remove scroll shadow in recycler view
- Consolidate most layout code into a single file, only
separating the distinguished elements into the landscape file.
I cannot fix b/126731930 until a Slice bug is fixed, where the top
padding is applied to the bottom of sliceview instead.
Fixes: 126720235
Fixes: 126720220
Fixes: 126720167
Test: manual inspection & layout inspector
Change-Id: I6e3434aabe221134e7278f92bab34122719c179a
Show error message for corresponding Wi-Fi DPP error code. And
1. To update error message only from each fragment,
remove some callbacks which calls from fragment to activity.
2. After clicking 'Share Wi-Fi' button, hide it before Wi-Fi DPP handshake completes.
3. Show 'Done' button for some error codes.
4. Use ViewModel to call startEasyConnectAsConfiguratorInitiator and
startEasyConnectAsEnrolleeInitiator because a lifecycle object
does not receive an Executor callback after configurator change.
5. In WifiDppQrCodeScannerFragment, show an error message for 10s instead of 2s
since new added error messages may carry more information.
6. Show a different error message for enrollee handshake success but Wi-Fi
connection fail case.
7. stop camera when scanned a Wi-Fi DPP QR code for enrollee.
8. In QR code scanner fragment, support to show error message after
configuration change.
Bug: 124247872
Bug: 124491247
Test: manual test
atest WifiQrCodeTest
atest WifiDppConfiguratorActivityTest
atest WifiDppEnrolleeActivityTest
atest WifiDppQrCodeGeneratorFragmentTest
atest WifiDppQrCodeScannerFragmentTest
atest WifiNetworkListFragmentTest
atest WifiDppChooseSavedWifiNetworkFragmentTest
Change-Id: Id130215e9ddafac8bc4c68238deda48ce99b4255
The button doesn't even respond due to other code changes.
Buttons are now created in java using SUW library
Change-Id: I96943c973e23a06fe5f07c074f2c35f4bcc05dd3
Fixes: 122371369
Test: Only footer button shows