summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/keyguard/KeyguardPatternView.java
AgeCommit message (Collapse)Author
2022-03-15Merge SP2A.220305.013Haamed Gheibi
Bug: 220074017 Change-Id: Idfdd94e902f656ac65a2a75dfdd199f6f85ba472
2021-04-29Change generic container ids to be more specificHeemin Seog
CarSystemUI has an overlayable.xml for OEMs to overlay. However there are name collisions for R.id.container for some library we depend on. Bug: 186786197 Test: manual Change-Id: Ibb7c2d36e37a039baa7bcddc68b4633ba05bf013
2021-01-15Add jank instrumentation logic in keyguardAhan Wu
Add instrument logic in keyguard for jank. Bug: 169221091 Bug: 169220724 Test: Manually Change-Id: I18e36bd7ae10693ce974c1bb54b384a29d890ef7
2020-09-24Revert^2 "9/N Clean Up Keyguard Class Structure"Dave Mankoff
b00c929394cb6bce158265af9606a8eb5a79e47a Change-Id: I42d17262a789d2eb106a924b442a9d3debcc35e4
2020-09-24Revert^2 "6/N Add Controller for KeyguardPatternView"Dave Mankoff
87f6d21e679af9f783777d21f08c46f8bcaf04c0 Change-Id: Id01e3ba154a6fe1d73f720b9389920dad60332ac
2020-09-24Revert^2 "4/N Setup Controller fo KeyguardSecurityContainer."Dave Mankoff
0d6a9012a73a2d999d52aaefca0a6ad52322db31 Change-Id: I881bbcdc63fcbafa8966064cccb7ce1edc710062
2020-09-22Revert "4/N Setup Controller fo KeyguardSecurityContainer."Dave Mankoff
Revert submission 12585643-b166448040-keyguard-message-area Reason for revert: http://b/169081305 & http://b/169020145 Reverted Changes: I6fa05012c:4/N Setup Controller fo KeyguardSecurityContainer.... Iecf265744:5/N Add KeyguardSecurityViewFlipperController. I90ab99b2f:6/N Add Controller for KeyguardPatternView I4b74eddd1:7/N controllers for remaining Keyguard Password Vi... I805286374:8/N Remove View Injection from KeyguardMessageArea... I362755980:9/N Clean Up Keyguard Class Structure Change-Id: I7683b2234b601032ee606fbaabd474c5e2f6e989 Fixes: 169081305 Fixes: 169020145
2020-09-22Revert "6/N Add Controller for KeyguardPatternView"Dave Mankoff
Revert submission 12585643-b166448040-keyguard-message-area Reason for revert: http://b/169081305 & http://b/169020145 Reverted Changes: I6fa05012c:4/N Setup Controller fo KeyguardSecurityContainer.... Iecf265744:5/N Add KeyguardSecurityViewFlipperController. I90ab99b2f:6/N Add Controller for KeyguardPatternView I4b74eddd1:7/N controllers for remaining Keyguard Password Vi... I805286374:8/N Remove View Injection from KeyguardMessageArea... I362755980:9/N Clean Up Keyguard Class Structure Change-Id: I11dff38ad9c36e0de5eec8f6e8662a173e1191cc Fixes: 169081305 Fixes: 169020145
2020-09-22Revert "9/N Clean Up Keyguard Class Structure"Dave Mankoff
Revert submission 12585643-b166448040-keyguard-message-area Reason for revert: http://b/169081305 & http://b/169020145 Reverted Changes: I6fa05012c:4/N Setup Controller fo KeyguardSecurityContainer.... Iecf265744:5/N Add KeyguardSecurityViewFlipperController. I90ab99b2f:6/N Add Controller for KeyguardPatternView I4b74eddd1:7/N controllers for remaining Keyguard Password Vi... I805286374:8/N Remove View Injection from KeyguardMessageArea... I362755980:9/N Clean Up Keyguard Class Structure Change-Id: Ic62f199a51a15d8384450b8f181f3c5a0b988d7f Fixes: 169081305 Fixes: 169020145
2020-09-169/N Clean Up Keyguard Class StructureDave Mankoff
KeyguardInputView no longer implements KeyguardSecurityView. This cl seeks to clean up some of the lingering vestiges from this large chain of refactors. I have manually tested none, swipe, pattern, pin, and password views for successfully unlocking, as well as multiple failed attempts resulting in temporary lock outs. Fixes: 166448040 Test: atest SystemUITests && manual Change-Id: I36275598001184e774677cf2dbb16dec8dc7ab5b
2020-09-166/N Add Controller for KeyguardPatternViewDave Mankoff
Test: manual && atest SystemUITests Bug: 166448040 Change-Id: I90ab99b2f241e21fdfcaeefb2e9443a1d3f2c9be
2020-09-164/N Setup Controller fo KeyguardSecurityContainer.Dave Mankoff
Move the guts of KeyguardSecurityContainer into KeyguardSecurityContainerController. This removes a lot of Dependency#get calls, and is another step towards simplifying our view inflation process. CustomViews that previously implemented KeyguardSecurityView now all extend KeyguardInputView, allowing them to be simultaneously treated as one while also being recognized as a View (the interface required a lot of casting back and forth to a View). LockscreenUtil is made a Singleton in this CL. Bug: 166448040 Test: atest SystemUITests && manual Change-Id: I6fa05012c55f5e003ab551d2f8360891a62fa2a7
2020-07-17Resume-on-Reboot: remove special stringKenny Root
User feedback shows that this string causes confusion that the update is going to start immediately. Bug: 161179448 Test: Fake OTA test Change-Id: I9590ebf76c81ef104f490ba31ada7c482cd70d56
2020-04-06Update bouncer fingerprint lockout logicKevin Chyn
Do not request fingerprint auth if the user is locked out and they have attempted credential on bouncer. This fixes an issue where the incorrect PIN/Pattern/Password message would be overwritten by the fingerprint lockout message. KeyguardUpdateMonitor controlls biometric requests for lockscreen/bouncer, so poke in credential attempts so it can be used for determining if biometric should be requested. Fixes: 141960543 Test: 1) set up PIN/Pattern/Password and fingerprint 2) reject fingerprint 5 times, then swipe up to bouncer 3) note that "too many attempts" message is shown 4) enter wrong PIN/Pattern/Password 5) note that from now on, this current bouncer session will only show credential-related errors Change-Id: Ifb837b29f93caa5b8762bd5609ca09601b6e4784
2020-01-07Support Resume on RebootKenny Root
When an OTA is downloaded, the RecoverySystem can be triggered to store the user's lock screen knowledge factor in a secure way using the IRebootEscrow HAL. This will allow the credential encrypted (CE) storage, keymaster credentials, and possibly others to be unlocked when the device reboots after an OTA. Bug: 63928581 Test: atest FrameworksServicesTests:RebootEscrowDataTest \ FrameworksServicesTests:LockSettingsServiceTests \ FrameworksServicesTests:RecoverySystemServiceTest \ FrameworksServicesTests:RebootEscrowManagerTests Test: use fake OTA console app to apply update Change-Id: I59df6942b27ea2bdd11b757922f5169085a325f0
2019-10-08Introduce LockscreenCredentialRubin Xu
* Wrap credential bytes and type into one single object. * Update all external APIs dealing with lockscreen passoword to use the LockscreenCredential class. Remove existing variants that handles pin/password/pattern separately. * Coerce password quality passed to LockSettingsService into one of UNSPECIFIED, PATTERN, NUMERIC or ALPHABETIC (explained below). * Update all clients & tests to interface with LockscreenCredential. Note: LockscreenCredential distinguishes between PIN and password in its public interfaces, this is to pave the way for the next patch of formally introducing a CREDENTIAL_TYPE_PIN type and getting rid of the requestedQuality being passed along (whose sole purpose nowadays is to distinguish between PIN and password) For now LockscreenCredential still uses the quality value internally to make that distinction. This does result in a change to what quality values LockSettingsService receives as part of credential change: after this CL LSS will only see the quality being one of UNSPECIFIED, PATTERN, NUMERIC or ALPHABETIC, while it used to receive other qualities (NUMERIC_COMPLEX, ALPHANUMERIC etc) if device admin sets a password policy. This shouldn't make any behaviour changes though, because the new range of values is still sufficient to distinguish between PIN/Pattern/Password, which is what the consumers of the stored quality care about. Bug: 65239740 Test: atest com.android.server.locksettings Test: atest com.android.server.devicepolicy.DevicePolicyManagerTest Test: atest com.android.internal.widget.LockPatternUtilsTest Test: atest com.android.internal.widget.LockscreenCredentialTest Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.password Test: atest MixedManagedProfileOwnerTest#testResetPasswordWithToken Test: atest MixedDeviceOwnerTest#testResetPasswordWithToken Test: manually set an PIN/Pattern/Password; then change to PIN/Pattern/Password; finally remove password Test: manually create a work profile; try unify and ununify work challenge. Test: manually test lockscreen FRP flow (change password via Settings / DPC) Change-Id: I04cc04057c96292a7b1b672bff2a09d594ea9b3c
2019-09-01[DO NOT MERGE] qt-qpr1-sysui-dev @ build 5814791Hyunyoung Song
Test: presubmit setup on source branch Bug: 130289146 Create a Gradle build for SystemUI Bug: 136279712 Daggerize FalsingManager Bug: 137324767 "Unable to instantiate service com.android.systemui.doze.DozeService" exception breaks launcher tests Bug: 137563419 Remove Bouncer reveal delay from bypass flow Bug: 138787339 Allow Services and Activities to be injected into directly. Bug: 139128921 [AS 3.5 RC2, SDK API 29 rev 2] Overload resolution ambiguity: while removing element from HashMap Bug: 64712476 Import translations for dev branches Change-Id: Ib7fd4706c070907fd556c3532957f3b1b046de6d
2019-08-31Fix the looper that KeyguardUpdateMonitor is using.Dave Mankoff
Bug: 139051615 Test: atest SystemUITests && atest SystemUIGoogleTests Change-Id: Ic4dd5978001c208504c137cee41f363d7e70b1b5
2019-08-07Stop face auth requests when users are typingLucas Dupin
We don't want the bouncer to be dismissed right under the user's finger when typing. Let's abort face auth after we start typing. Test: solve challenge when face auth is running Test: repeat for pin/pattern/password Fixes: 136525169 Change-Id: I8f1ccbca4be9c84f5cb108618b84aefe03b74cc4
2019-06-13Do not let pattern be draggedLucas Dupin
Test: drag accross pattern Test: start dragging from edges Test: start drawing, drag outside the bounds Test: repeat on small and large device Fixes: 132687980 Change-Id: Idab9279dd7cb002cbd43aab0ce1d48f265d39f04
2019-05-21Merge "Bouncer retry polish" into qt-devLucas Dupin
am: d38f0d3440 Change-Id: Ifbcb7efaaacb9a86d9f4adb6a0e0c846f40c41bf
2019-05-20Bouncer retry polishLucas Dupin
Fixes: 133192281 Test: manually drag pattern and pin areas Change-Id: I2746badd64350416fd4c62b717a098a2fc1ce136
2019-05-16Face auth messaging cleanupLucas Dupin
Do not show timeout message, and ask user to swipe up to retry when auth fails. Fixes: 132465944 Test: biometric error on bouncer and LS Test: wait for face timeout Change-Id: Iec757f25d5f09b05ac02811e2eeef6ac98f63f16
2019-05-15Calculate pattern bounds correctlyLucas Dupin
Use stable position on screen to calculate if pattern should be dragged or not. Before we were only comparing bounds to events, that would be on different coordinates (on a parent for example.) Test: draw pattern starting at top left Test: draw pattern starting at bottom right Fixes: 132687980 Change-Id: Ibe2d7fc113bf8bc3a9ab4910b3ab21062b59e7f3
2019-05-08Allow users to swipe up on bouncer to retry authLucas Dupin
This will be enabled whenever face authentication is available. It's not possible to swipe on the pattern area. Test: manual (with pin, pattern and password) Fixes: 128036528 Change-Id: I8a4a9f7243db90be63df7d4e18125a1de3a591d9
2019-04-18Move padlock to the top of the lock screenLucas Dupin
Test: tap on notification on lock screen Test: tap on notification on shade locked Test: swipe down from the top expanding QS Test: swipe up from LS Test: switch between pin, pattern and password Test: add and remove locked sim card Test: atest KeyguardBottomAreaTest Test: atest KeyguardClockPositionAlgorithmTest Test: atest KeyguardMessageAreaTest Test: atest KeyguardIndicationControllerTest Test: atest StatusBarKeyguardViewManagerTest Test: atest KeyguardBouncerTest Test: atest KeyguardPatternViewTest Fixes: 130398499 Fixes: 130298363 Fixes: 129784068 Fixes: 130223966 Change-Id: Ib1706de259fa4b1f4ef13f654cbd931457733d82
2018-10-09Fix regression where promptReason would dissapearLucas Dupin
Bug: 111850911 Test: visual Test: atest KeyguardPatternViewTest Change-Id: I10dc09e369f962786dd108bafca3c21ed21a8481
2018-09-24Clear pattern message when showing it againLucas Dupin
Change-Id: Ic68d78babbbd5f2c3fa2b97f49847c7f028c4210 Fixes: 111850911 Test: atest KeyguardPatternViewTest Test: manual
2018-08-23Set stealth mode during inflationLucas Dupin
Test: manual Change-Id: If321158a788ac46fc20f8bfbb67bcbfb154c6018 Fixes: 112526923
2018-07-20Show the user switcher only when the bouncer cancel button is pressed.Aarthi Balachander
Bug: 110534280 Test: Tested on device Change-Id: Iff465ebf5089e023a27e1ec192a580c20b35d242 (cherry picked from commit e2a6edceb007847cc8026b47c365a68610a074f7)
2018-05-22[SystemUI] To plumb down ColorStateList all the way down instead of int ↵Jason Chang
colors in KeyguardHostView.java and its collaborative files. To plumb down ColorStateList all the way down instead of int colors in KeyguardHostView.java and its collaborative files. Bug: 79721803 Test: manually test for UI Change-Id: I69df1a13db5153ca36cf39f7b818d6c3d27ee107
2018-05-16Do not reset security message when pattern resumesLucas Dupin
Change-Id: Ia18b98c97612a4998eda52356ef9eafd1c3ad48d Fixes: 78235570 Test: manual
2018-04-09Add Cancel button in Car KeyguardJian Jin
Change-Id: I0c44f3583fe1dadade1e1b01229571ab7eb29643 Fixes: 74964857 Test: Manually tested on Mojave
2018-02-22Use accessibility pane API in keyguardPhil Weaver
Using the new accessibility pane title API to identify the pattern, pin, and password unlock screens. Bug: 73131182 Test: Verified that accessibility events are properly sent when unlocking the phone with each of the lock methods. Change-Id: I32594f4736b503e7f9e3be96e9f77a84ffcadc54
2018-01-11Allow custom keyguard "prompt reason"Lucas Dupin
Adds the possibility of presenting a custom message on the keyboard if you're trying to dismiss the keyguard. This is particularly useful when you're showing the bouncer because custom authentication (SmarLock) failed. Test: launch FLAG_SHOW_WHEN_LOCKED activity and call KeyguardManager#requestDismissKeyguard Fixes: 63940122 Change-Id: I0d88c0e59521887efa56d74874062b2b14970e4e
2017-12-06Add latency logging for rotationJason Monk
Move LatencyTracker and sysui_latency to make this possible Fixes: 67862696 Test: atest platform_testing/tests/perf/PerfTransitionTest/src/com/android/apptransition/tests/LatencyTests.java#testRotationLatency Change-Id: I42e3218355c162d4ba04b0f2c49e031156b5a357
2017-08-30Fix "too many attempts" pluralization on bouncerKevin Chyn
Bug: 35027821 Test: manual test of pin/pattern/pass authentication Change-Id: I67fcd0977554dbd1b0394e4210d9ee7e668b77d9
2017-04-14Remove unnecessary casts on calls to findViewByIdAlan Viverette
Just frameworks/ this time. More paths to come. Bug: 24137209 Test: make -j32 Change-Id: Iff27abd26fa43296ac2fff8f534fc6742d2ae80c
2017-02-10Move Keyguard to SystemUIJason Monk
Test: make Change-Id: I3abb67e2b022737d2aa0226bb07f3966ad68fff7