History log of /frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f095f8366bac52ac1eeb2b3eb1a403294ceeb541 31-Jan-2017 Rubin Xu <rubinxu@google.com> Add escrow token support to synthetic password flow

Escrow token provides an alternative way to derive synthetic password for a
given user. In the new flow, a pre-provisioned escrow token
should be able to do anything the user password can do, since they both
derives the synthetici password which is the master key in the new auth flow.

Test: runtest frameworks-services -c com.android.server.SyntheticPasswordTests
Bug: 33126414
Change-Id: Ib5ee38fd61f66de3245427ce992ebc12f1873a26
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
3bf722a8d54ca7192dfe07ee7b73eac7d25ccac5 15-Dec-2016 Rubin Xu <rubinxu@google.com> Add synthetic password to authentication flow

The user password is used to unlock a per-user synthetic password which
serves the purpose of what the user password previsouly achieves (protect
keystore, vold disk encryption, auth token generation).

Test: runtest frameworks-services -c com.android.server.SyntheticPasswordTests
Test: manual
1. Start with fresh device, enable synthetic password with "adb shell cmd lock_settings sp 1"
1.1 add device lock, reboot and verify (positive & negative); change device lock, reboot and verify.
1.2 Inflate a work profile, reboot and verify device lock. check SID with "adb shell dumpsys lock_settings"
1.3 Un-unify and add work challenge, reboot and verify work challenge and SID.
1.4 Re-unify work challenge, reboot and verify.
1.5 Clear device lock, reboot and verify lock and SID.

2. Start with a fresh device, add a device lock and inflate a work profile.
2.1 Enable synthetic password, note current SID
2.2 Reboot and unlock device. Verify synthetic password is generated and SID remains.
2.3 Clear device lock, reboot and verify (SID should be cleared)

3. Start with a fresh device, inflate a work profile, add separate work challenge
3.1 Enable synthetic password, not current SID
3.2 Reboot and unlock device and profile. Verify synthetic password is generated.
3.3 Clear device lock only, reboot and verify (work profile SID should remain)

All steps tested on marlin (FBE) and bullhead (FDE)

Bug: 33126414
Change-Id: Idb9ebfc7bba2fe40670c5fee2189e873d9704540
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a55b168b5d5a0584b2411793f870a7849c5014f1 31-Jan-2017 Rubin Xu <rubinxu@google.com> Small tweaks in LockSettingsService

Paves way for synthetic password flow: Two notable changes:
1. when unify/un-unify work challenges, provide the old work profile password.
2. when clearing lock, supply old credentials.

Test: Unit test to be added in a follow up CL.
Bug: 33126414
Change-Id: I2a9553c5e7cc701338436e99e5a1289cebd1eda9
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
0cbc19e4a66f7db51596b57ca91afc6f5b27f3b4 09-Dec-2016 Rubin Xu <rubinxu@google.com> Add unit tests for LockSettingsService

Add infrastructure and first sets of unit tests for LockSettingsService

Bug: 33126408
Test: runtest frameworks-services -c com.android.server.LockSettingsServiceTests
Change-Id: I4f3b7f6eaef7122f72b06bd11ce49134a093fe35
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
e1c8372fb6e728e1202ddef51cb1a8954c049919 24-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix NPE in LockPatternUtils"
4929a5d3b434a6915d64e449b234b40b8eff9993 24-Jan-2017 Rubin Xu <rubinxu@google.com> Fix NPE in LockPatternUtils

mDevicePolicyManager field can be null if getDevicePolicyManager()
is never called. A previous refactor removed an apparent unused call
to getDevicePolicyManager(), leading to NPE when mDevicePolicyManager
is accessed. We should always use getDevicePolicyManager() to access
DevicePolicyManager instance.

Test: manual
Bug: 34612758
Change-Id: Ic964b4ee4e3c56301295b8f0629bd005c732c5c4
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
327323d2b337077433fe02438a79cc98e91799e3 12-Jan-2017 Zachary Iqbal <zacharyi@google.com> Added an onDeviceUnlockLockout callback to TrustAgentService.

Test: Manually tested onDeviceUnlockLockout being called with an actual
TestAgentService implementation.

Notes:
- Active Trust Agents are no longer killed/unbinded from when a temporary
device lockout occurs. Instead, the onDeviceUnlockLockout callback of
the agent is called.

Change-Id: Ifa0984d1d7e5153568334d736e9ebd5a00ef1297
Bug: 34198873
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
1de89b3bec2f296763f3ecde9a36ecbca2110f3d 30-Nov-2016 Rubin Xu <rubinxu@google.com> Refactor LockSettingsService to unify the handling of pattern and password

Also fix LockSettingsStorageTests. More unit tests on LockSettingsService
to be added in the next CL.

Bug: 33126408
Test: runtest frameworks-services -c com.android.server.LockSettingsStorageTests
Change-Id: I0f143b26fed1d5ae122fba3b57bd39c7793ad8d9
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5daf273b7e3272269c53eda20ce494d0e7a365b5 14-Nov-2016 Andrew Scull <ascull@google.com> Don't save the password metrics to disk.

Only store the metrics in RAM, computing them at first log in.

Test: com.android.cts.devicepolicy.DeviceAdminHostSideTestApi24
Bug: 32793550
Change-Id: Iaf9516c193f054331e3e2c68cb3f627bd543b408
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
c52f867875ed7f671bf897f11e359e8104ce8795 18-Nov-2016 Michal Karpinski <mkarpinski@google.com> Strong auth timeout for trust agents

The fingerprint timeout tracking in KeyguardUpdateMonitor has been
extended with use of StrongAuthTracker.

Test: timeout will be CTS tested, testing of unlocking TBD
Bug: 29825955
Change-Id: I5cc49ef46631c412f2d1db88e68a308322b27027
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
2250d56a0b47b93016018340c8f4040325aa5611 08-Nov-2016 Sudheer Shanka <sudheersai@google.com> Rename MountService to StorageManagerService.

Bug: 30977067
Test: Existing tests pass
Change-Id: Ieac0f11c2b249dcd60441b14c1f391e6f8131d42
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5f9e6f37b276fac7be6db982c9cb7fbd93150c4a 02-Aug-2016 Andrew Scull <ascull@google.com> Refactor password metric computation.

This unifies previously duplicated code.

Bug: 30558331
Test: runtest -x frameworks/base/core/tests/coretests/src/android/app/admin/PasswordMetricsTest.java
Change-Id: I37678b83a03d4f05b9894d4b00e9a741d1a8df27
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
367e0761c5af88b3b82ffd1c62bad374f40514e0 11-Aug-2016 Adrian Roos <roosa@google.com> Only disable trust agents after lockout am: 9d6fc9246b am: 73b2f5981e
am: bbf52f2e85

Change-Id: I4606854b24313cc8231aaa0ce3ea33ea909f68b0
9d6fc9246ba0b726872a6a8dabe6c334292c3a10 11-Aug-2016 Adrian Roos <roosa@google.com> Only disable trust agents after lockout

Previously trust agents would be disabled even after one
wrong attempt. Now we wait for the cooldown (usually 5 attempts),
the same as fingerprint.

Also adds a TrustArchive entry of when device policy changes are sent to
trust agents.

Bug: 30037948
Change-Id: I9e284d994ddae45ef66b5b8b601297c63d8ba667
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
6097da897adc3e97ccfebb20b7ece743b970e37e 18-Jul-2016 Jim Miller <jaggies@google.com> Merge \\"Fix vulnerability in LockSettings service\\" into nyc-mr1-dev am: 6ad9c16ffd
am: 623362c5ab

Change-Id: I7d604ab0a4c76672a765a064011574cd427aac64
29d157bf0557bda04ffeda64f2dd4239d91aa5f4 16-Jul-2016 Jim Miller <jaggies@google.com> Fix vulnerability in LockSettings service

Fixes bug 30003944

Change-Id: I8700d4424c6186c8d5e71d2fdede0223ad86904d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a47967b820edccb9517698d8c2a1740626360373 13-Jul-2016 Adrian Roos <roosa@google.com> Merge \\"Allow LockPatternUtils usage on non-looper threads\\" into nyc-mr1-dev am: feaa2bfb39
am: 1642d8df0d

Change-Id: I0bfc272cef3cee1e76f1b3bc5f8f0908bd24f2e5
7a3bf7c46e54cf226f86e3eeedb100a159f08d00 13-Jul-2016 Adrian Roos <roosa@google.com> Allow LockPatternUtils usage on non-looper threads

Fixes an issue where LPU could no longer
be used on a non-looper thread even though
the looper is only used for a certain callback.

Now only using that callback mechanism is fatal
on a non-looper thread.

Change-Id: I2d766bd6c913e345ed6a3500b486263c8bc12b07
Fixes: 30076804
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
d1c50f66f66bfcbff5585921490e877d50d0b0a4 11-Jul-2016 Selim Cinek <cinek@google.com> resolve merge conflicts of 6e57aae to master

Change-Id: I929929ad41df4439996755b605d084bfdcf3428a
e8fde5d9666eea10307cbc27f4b1a94d3cbb4ec9 01-Jul-2016 Jorim Jaggi <jjaggi@google.com> Improve initial unlock delay (1/2)

When checking for the credentials, we add a new callback
onEarlyVerified which gets called as soon as we know that the
credential was correct.

In KeyguardUpdateMonitor, we track the unlocked state of the user,
and if it's still locked, we slow down all the transitions to allow
for a more gradual unlock experience.

Bug: 29007436

Change-Id: I406d228f9f3e41e07fe3292a61df175a7f579e4d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
2eff745087f71ec9f5909bec272cda1132462609 09-Jun-2016 Evan Rosky <erosky@google.com> Add option to disable lockscreen by default

Bug: 27502832
Change-Id: I3e5d024c07a69f3fea1c0450040898c53b732183
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
4401e24add2b33caaafcd21567184b955ab2654d 08-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Move legacy full disk encryption code to Settings." into nyc-dev
525ca53b4fad0bb0a344188518f6567c841a0961 04-Jun-2016 Jim Miller <jaggies@google.com> Move legacy full disk encryption code to Settings.

Fixes bug 27617297

Change-Id: I59455cc1fc46949348d2922834724ab40c14f886
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
1cb6f9d8a4827d50e26bf83068a928e47c5c1f1e 26-May-2016 Ricky Wai <rickywai@google.com> Merge "Add resetKeyStore() in LockSettingsService" into nyc-dev
d398244513c62c9ea14a0f1c6ffef832e803c16f 24-May-2016 Ricky Wai <rickywai@google.com> Hide work profile key in user credentials screen

Bug: 28878708
Change-Id: Ib250fae2388b061430d93b7d65133002ce664993
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
4613fe41ac9e817e76d7087de45bf01f4a6584d6 24-May-2016 Ricky Wai <rickywai@google.com> Add resetKeyStore() in LockSettingsService

Before resetKeyStore(), it will back up child profile keys,
and will be restored after primary profile keystore is cleared.

Bug: 28878708
Change-Id: I0cb4a1f885d468894bc7eb95af694328bf92ce16
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a0940d33dcbac0245ad5467d9c302f8eaee615dc 16-May-2016 Victor Chang <vichang@google.com> New api in LockSettingsService to get StrongAuth synchronously

Not all client needs to monitor the StrongAuth, e.g. ConfirmDeviceCredentialBaseFragment
Provide a quick method to get StrongAuth

Bug: 28752364
Change-Id: Iecfd217046da38e43297bdd5832cf7d637b979ed
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
4ab7e595a5deef72448da950f2f973bc0c90fe18 14-Apr-2016 Adrian Roos <roosa@google.com> StrongAuthTracker: Don't rely on USER_PRESENT

USER_PRESENT is sent via the background queue. A delay
there can cause us not to recognize that the user has
unlocked and prompt for the credential again, when trust
or fingerprint would be sufficient.

Also removes an obsolete reference to USER_PRESENT from
TrustManagerService.

Change-Id: Ie8d1a180170df5f0c8f9e71660504fd71eeacd99
Fixes: 27830458
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
53940d4c7f45a26d8b571982a1f8f4b8094aa5e0 05-Apr-2016 Ricky Wai <rickywai@google.com> Fingerprint should confirm device lock when unified

When unified and adding a fingerprint, the user is prompted to set up
a backup

Bug:27419438
Change-Id: I3e857fa07c50ee0904f685b721595ef6cfe729f9
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
dc283a897680ffd33c4d15535ebe778ba5b42c43 24-Mar-2016 Ricky Wai <rickywai@google.com> Keymaster init for work profile

Changes:
(1) When unified work challenge is enabled and screen lock is secure
- Store work profile secure key in primary profile
- When primary user keystore unlocked, unlock work profile keystore
- When primary user change lock to none, remove work secure key
(2) When unified work challenge is enabled but screen lock is not secure
- When screen lock changes to secure, store work secure key in primary
(3) When user changes work challenge from unified to separated
- Remove work secure key in primary
(4) When user changes work challenge from separate to unified
- Do (1) and (2)

Bug: 27460698

Change-Id: I8f77bde5dc6b8e59c90256e75c5990100e93366b
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
79675b326c5d5f49af1e2314b3d6b1466c857fe2 30-Mar-2016 Toni Barzic <tbarzic@google.com> Teach keyguard about PASSWORD_QUALITY_MANAGED

PASSWORD_QUALITY_MANAGED should have password security mode,
rather than None.

BUG=27923581

Change-Id: I6b2aeee0a79a37a868d7d30117c77f73495892ad
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
20be5d62471d520eed3a52d90c11944464a71c07 26-Feb-2016 Paul Lawrence <paullawrence@google.com> Add API to IMountService to get encryption state

Bug: 18002358
Change-Id: If7d9c9a5ed38ac37849fcf638ec10c76d2f419a1
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
de2dabbad69ff905d30bb4148a26a5d51c5a1a4d 01-Mar-2016 Jeff Sharkey <jsharkey@android.com> Skip boot prompt for both native and emulated FBE.

Bug: 27412530
Change-Id: I53d39392ccab54cb79cf6cc1e51923ad7b5a3b0c
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
51e41ad887a2e30a1366f0a3b4750f0204912b8e 11-Feb-2016 Clara Bayarri <clarabayarri@google.com> Add support for current failed lock attempts and max attempts

This is needed from Settings to show a message informing the user
of the number of attempts before their work profile gets wiped
when using ConfirmDeviceCredentials.

Bug: 26677759
Change-Id: I4b16f7dc2f415d0ce0215a3b7a646f98fabece33
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5c21c7037192128b2cbcc42c596e290c001f4090 29-Jan-2016 Paul Lawrence <paullawrence@google.com> Add APIs to allow detection of encryption type

Change-Id: Ic80086386afcf7b674cac676443690151c80e181
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
ed8a5b35790d1b9c296b435c3c4a33d254bfd70a 29-Jan-2016 Robin Lee <rgl@google.com> Merge "Replace broken UserHandle.SYSTEM check in LPU"
d39113ea00b650f5778ed3d5dea6664c5d06f5b4 22-Jan-2016 Robin Lee <rgl@google.com> Replace broken UserHandle.SYSTEM check in LPU

ActivityManager.getCurrentUser returns the user currently in the
foreground, not the calling or affected process.

Note:
---
This is just an API for setting the default suggestion when choosing a
new lock type in Settings, so it's not much of a security problem
(background users/profiles could only modify the suggestion, not the
actual encryption setting).

Change-Id: I98c62be7c5726f99fea0ec9320ad9d85cce850ef
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
8591f86ef7cdc34423cdf0869ebe4ce59bf00e47 27-Jan-2016 Clara Bayarri <clarabayarri@google.com> Merge "Check if the profile password would comply as the device lock"
a7aa4d6f0b91e050c083c19459b0c8b265c92617 20-Jan-2016 Rakesh Iyer <rni@google.com> Allow smart unlock right after boot.

This change enables relaxing the constraint by which
strong authentication is needed after device reboot.

There are very limited use cases where this might be
safe, one of which is in a car. Cars head units usually
are protected physically by the car and have hardware
anti-theft mechanisms so we can potentially allow for
Android to allow users to use smart unlock to avoid the
lockscreen just after boot.

This change adds in a config flag that sets the default
trust flags, which can be set to allow smart unlock after
boot for car head units.

Bug: 26559008
Change-Id: Id6338a97b617ddaf3d2fae5d51235429a42b81cc
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
d7693917a7c7348cb12692116d2693314c29e809 22-Jan-2016 Clara Bayarri <clarabayarri@google.com> Check if the profile password would comply as the device lock

Bug: 26801330
Change-Id: Ide31464dd0292ca97b03abe08cdde5b41d517b66
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
c13723f22e476b4558061942c001ee62eaca79e4 12-Jan-2016 Adrian Roos <roosa@google.com> Improved trust error messaging (1/2)

Tracks why trust agents are disabled and shows
a generic message on the keyguard. Dedicated strings
in follow-up.

Bug: 22704995
Change-Id: Ibb4fd9c9386c4dc12f0734004502b9a9cc6ded79
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
8d35de84456cec0c0e0c340d6444dcd4f46663b8 12-Jan-2016 Clara Bayarri <clarabayarri@google.com> Fix missing MANAGE_USER error on calls to isDeviceSecure

A poorly placed clear identity was causing some crashes as
apps were required to have the MANAGE_USERS permission to
query if the current user is secured.

Change-Id: I1120b1e4405e78389fcbcb3e7d1dba8c80500da3
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a1771110d67fa7361f92d92f2e91019882ce3305 18-Dec-2015 Clara Bayarri <clarabayarri@google.com> Create Work Challenge per-user condition

Change the current static condition to a per-user condition so we
can check and enable/disable the work challenge properly. Also add
an isAllowed API, as the Work Challenge can only be used when the
user's DPC targets N or above to maintain backwards compatibility.

Change-Id: I0cb8b475838816801868ffb24726407aa257b4de
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5a0fed684150f53d2d4293408f445f6092c24183 15-Dec-2015 Bryce Lee <brycelee@google.com> Allow access to deprecated LOCK_PATTERN_ENABLED flag. am: 4614596a39 am: 36393a5674 am: 4ab8b0696a
am: 0510ad1bc9

* commit '0510ad1bc9a2da4fa84f1a5417a218dba48563e3':
Allow access to deprecated LOCK_PATTERN_ENABLED flag.
4614596a395b6c86fff3f35a07edda2e848d743c 14-Dec-2015 Bryce Lee <brycelee@google.com> Allow access to deprecated LOCK_PATTERN_ENABLED flag.

It is possible that older platforms may have not cleared the lock pattern,
but instead only checked this flag to determine the lock pattern enabled
state. In such cases, upgrading to a platform with that only checks the
lock pattern can lead to the lock screen being re-enabled by accident.
These new methods allow this condition to be identified and resolved.

Bug: 26029690
Change-Id: I8f7ebc0e1915049afe49c219c87010aa38a16244
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
10ad84a17d7248488c1653bacc9f20d3a7193999 01-Dec-2015 Clara Bayarri <clarabayarri@google.com> Create a separate Work Challenge check

This allows us to tell lock checks from FBE checks separately,
and will be useful when dealing with password unification.

Change-Id: Ifbea425f749fee4d6d51faddd8b64bf717a1a5f8
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
6644cd9630be363a25af5e1327f41e16ca868556 10-Nov-2015 Andrei Stingaceanu <stg@google.com> Introduce APIs in DPM for setting/getting the device owner info

This information, if set, will be shown in the lock screen instead
of the user owner information and the settings tile will be made readonly
(implementation in following CLs).

Bug: 22547309
Change-Id: Ic826d8049bc67f5e8fcfa6a91aa2017247c93b11
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
84b6bb1826bce8265f342c840c774cf8df9dbf49 29-Sep-2015 Bill Rassieur <rassb@google.com> am 6e78bb42: am 2711eb4c: am 3de2d53a: am c25d5460: Merge "Fix jank: Don\'t write lockout deadline if not needed" into mnc-dr-dev

* commit '6e78bb42fc8af64f4f2208b48585451793e303c9':
Fix jank: Don't write lockout deadline if not needed
e3e6d56b94b2c196659e15deffed9dc9028fa974 28-Sep-2015 Jorim Jaggi <jjaggi@google.com> Fix jank: Don't write lockout deadline if not needed

In the longterm, we should move these synchronous writes
off the main thread, but in the short term, avoiding an unnecessary
write is good enough for the main case.

Bug: 24471234
Change-Id: Id996ff29e61410cd077760a06d7868a413ae88da
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
3dee67f35c9895ec48a954e3dfb631c088efaa47 16-Sep-2015 Andres Morales <anmorales@google.com> am 3b715ce8: am 8d9ba684: am 5b78fda9: am 38e6e4ef: Merge "reset lockout deadline on device reboot" into mnc-dr-dev

* commit '3b715ce887d01845b3da7d8c1212dae60da231a5':
reset lockout deadline on device reboot
38e6e4ef98ea1f116902725c282df9fb061a224e 16-Sep-2015 Andres Morales <anmorales@google.com> Merge "reset lockout deadline on device reboot" into mnc-dr-dev
c76925031d0e7031bfc59904ce419c80324ef6ce 10-Sep-2015 Jorim Jaggi <jjaggi@google.com> am 35a88c06: am f27035d9: am 131d541a: am 16093fe3: Revert "Disable fingerprint after force lock"

* commit '35a88c065e24248ff6036eb3c5a581a1a520f8fe':
Revert "Disable fingerprint after force lock"
16093fe3f0d824731a53a264a132504deb08421a 10-Sep-2015 Jorim Jaggi <jjaggi@google.com> Revert "Disable fingerprint after force lock"

Bug: 23827042
This reverts commit 0cb50efdc2d3ecaa9f1b2163109e8fff1b23f0e7.

Change-Id: I40251500b2dcf95e63ce39a768e11a50b26fb923
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a4e23375663ac3a2b6115da71e6711282f03492d 08-Sep-2015 Andres Morales <anmorales@google.com> reset lockout deadline on device reboot

Gatekeeper retains lockouts after reboot, but framework
doesn't. This causes odd behavior on a reboot after a lockout
as gatekeeper refuses to check the password and the framework
thinks it's an invalid attempt. Reset the lockout deadline
if we notice the clock reset in the framework.

Bug: 23681267

Change-Id: I3127ccd8f205494af5a8ed2b44d4370c37cc2f8f
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
c0c140a1368a08dca3a834d175ea1825d3fb567b 04-Sep-2015 Adrian Roos <roosa@google.com> am 5b92de04: am 6bd2f87e: am bd2ad550: am 34411e8f: Merge "Don\'t disable fingerprint when entering wrong credential" into mnc-dr-dev

* commit '5b92de04b7ff9954a50e54a86f11443a904fa547':
Don't disable fingerprint when entering wrong credential
af4ab3e2d3665c72889bf2337c744eca6c7d5e86 02-Sep-2015 Adrian Roos <roosa@google.com> Don't disable fingerprint when entering wrong credential

Bug: 23748205
Change-Id: I0ee2a0562d5ef2992a6a4b40d235601b19dcef16
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
e6da9bb7c6e4eef6ccb09325ba1a7b19c0c4809f 01-Sep-2015 Adrian Roos <roosa@google.com> am e803c9ed: am 9cb060d0: am 7e1775d2: am 78195312: Merge "Disable fingerprint after force lock" into mnc-dr-dev

* commit 'e803c9ed7f1ae5f31f041e7c6ce14d91965b7ada':
Disable fingerprint after force lock
0cb50efdc2d3ecaa9f1b2163109e8fff1b23f0e7 29-Aug-2015 Adrian Roos <roosa@google.com> Disable fingerprint after force lock

Bug: 23275072
Change-Id: Icaeffaa1fa22a4a800ddf0f38105099557c74317
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
86c69ddefd503e93887d7728b5ce072522747527 28-Aug-2015 Xiaohui Chen <xiaohuic@google.com> Cleanup USER_OWNER for cryptkeeper

Bug: 19913735
Change-Id: I1105081aa2cb97d20afbd1e38d65c18c94e37a40
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
7f5ef05b3f0417e863aaac0f663364582f30c626 26-Aug-2015 Adrian Roos <roosa@google.com> am 60aff469: am f90169d1: am 5bc2a2c0: am d56892da: Merge "Disable fingerprint after user lockout" into mnc-dr-dev

* commit '60aff469b2abd8787ba4c3d326909128b57d06ea':
Disable fingerprint after user lockout
873010dfeea11e0f9982c66ad9bdc990d055b129 26-Aug-2015 Adrian Roos <roosa@google.com> Disable fingerprint after user lockout

Bug: 22677859
Change-Id: I38b918d2e40b5bb423f2e5c171fe65bed8d440a6
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
e3b07451c3ca7064cb70f1829cf35963cba74bd8 22-Aug-2015 Adrian Roos <roosa@google.com> resolved conflicts for merge of bcc26c02 to master

Change-Id: I4260ff0d090cfa9741fd3adcfcadcbbff6839388
b5e4722891e7bbf2fffcd995af02838667a3abab 15-Aug-2015 Adrian Roos <roosa@google.com> Add StrongAuthTracker

Bug: 22846469
Bug: 22115393
Change-Id: I6ef5322d02e540fc043e7f20d3aabf595ce7c224
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
aa26294de3ad97859637f65f6e70eb773541a767 06-May-2015 Xiyuan Xia <xiyuan@google.com> Enforce LPU security checks are not called on the main thread

Bug: 20697812
Change-Id: I97c7ee0f05e4583b36062b7627aef695ab99204d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
e40bad8cf9397becdf05776c775c8286d3de46fa 28-May-2015 Andres Morales <anmorales@google.com> [LockSettings] migrate patterns to be indexed at '1'

Base zero patterns (ones where the top left is idx 0)
are not handled properly by scrypt. Add logic to re-enroll
base zero patterns such that the top left is idx 1.

Bug: 21433955
Change-Id: I7f67f2c67d40dd1be6c62117710dc3b0392275a2
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5ccfe51d8b9ae4f73a3b0fdb553b807cf5691582 27-May-2015 Andres Morales <anmorales@google.com> Merge "[LockSettings] migrate password attempt throttling to hardware" into mnc-dev
2397427cb1a0bad8a42e6a342dcf29b31e40a234 15-May-2015 Andres Morales <anmorales@google.com> [LockSettings] migrate password attempt throttling to hardware

leverage root protected, cryptographically secured hardware
if available

Bug: 21118563
Change-Id: Ifa804c5a0728bfd14466eb2a84051bace6d33d57
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
d8fdb338918e63bbab2e65bdb2f4d12320a1b24a 18-May-2015 Paul Lawrence <paullawrence@google.com> Honor password visible setting in CryptKeeper

Bug: 20184626

Change-Id: Ida0f34299947a5d4067406cc6e029fb841077804
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
688af6c5743d4ef5d08537b02b23fdde24a3c348 15-May-2015 Paul Lawrence <paullawrence@google.com> DOn't save encryption settings when not encrypted

If this setting is saved when unencrypted, it will apply after encryption
and cause the user to get the wrong default in the 'Require pattern to start
device' dialog.

Bug: 21105662
Change-Id: Ibd2918abb6af27e20dc03a1a10f4cad1033bc575
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
d6aa6cb0cc8c70a30434048e25e14643b1645755 17-Apr-2015 Adrian Roos <roosa@google.com> Remove LockPatternUtils.getCurrentUser()

Bug: 18931518
Change-Id: I177eefe466c12217cf64c85b872f71bc23c7bf05
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
8150d2a2a12b38598fd55d8ae3c3b5662ec3520f 17-Apr-2015 Adrian Roos <roosa@google.com> Require explicit userId in LockPatternUtils

Bug: 18931518
Change-Id: Ib03f37df9135f0324a998c62d165d8eea46328c8
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
4eb6a36922f5e98fe181c0326cc5721f0e7589ca 02-Apr-2015 Andrei Kapishnikov <kapishnikov@google.com> Introduced DO_NOT_ASK_CREDENTIALS_ON_BOOT flag

A new flag for DPM.resetPassword() method that specifies that the
device should be decrypted without asking for the password or pattern.

Bug 19250601

Related CL in Settings App: https://googleplex-android-review.git.corp.google.com/#/c/670206

Change-Id: I9ca3472dc18e66e618ff772dee16ca4a450e9997
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
95bbbdd097fb9ac410ca829df4be4e90992d2b48 15-Apr-2015 Wen ZHANG <wenzhang@google.com> Set REQUIRE_PASSWORD_TO_DECRYPT to false when insecure screen lock is
enabled

Some users run into a problem when choosing a secure screen lock with
accessiblity enabled that they will not be warned the screen lock may
not be available when they unlock their devices. One cause is
REQUIRE_PASSWORD_TO_DECRYPT is not set back to false when users choose
to use an insecure lock screen. So when they decide to change back to a
secure screen lock, the warning message will not be shown.

Bug: 18799150
Change-Id: I52bdc93e7a5ce3c4f7715057c73b4de280b443f6
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
d9fc85ac27742adbe89e54fd35f3cb2469e94b91 10-Apr-2015 Andres Morales <anmorales@google.com> Add challenge to IGateKeeperService

required for enrolling secondary auth form-factors

Change-Id: Id5a1eb1ed22f01fbaabe8e4ebddfc42d58322625
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
8fa5665f0e757cec0063fb4cf1354f1596f93a91 31-Mar-2015 Andres Morales <anmorales@google.com> Wire up GateKeeper to LockSettingsService

Adds:
- Communication to GKService
- password upgrade flow
- enroll takes previous credential

Change-Id: I0161b64642be3d0e34ff4a9e6e3ca8569f2d7c0a
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
51ed794e2f4489c57e1e854fa872aef352d6c28a 07-Apr-2015 Benjamin Franz <bfranz@google.com> Allow disabling the lock screen when multiple users are present

Disallowing disabling the lock screen when multiple switchable users
are present on the device was a legacy from the time when the lock
screen was the only way of switching between users. As we offer other
ways to switch users now, e.g. quick settings, we no longer need this
check.

Also introduce a per user version of disabling the lock screen.

Bug: 19962043
Change-Id: I131568a5dadd1706762b8a626e8f9b06e973b7ae
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5bb72554549c5cc722d5666180d1219b33e1f70a 05-Feb-2015 Adrian Roos <roosa@google.com> Merge "Ensure new credentails are valid"
f80e66ce9a57c4d3abf97e582c89292623b3904d 15-Jan-2015 Adrian Roos <roosa@google.com> Ensure new credentails are valid

Follow-up to I6f369eb60f8f6bb1e33384cd06534c713ab52e79

Bug: 18931518
Change-Id: I311b255a034b0cec8fee70b0f4938e6ebb20d95e
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
c2e01683b34029729262e2fb346ceea4bfe4b4b6 15-Jan-2015 Adrian Roos <roosa@google.com> Remove UI code from LockPatternUtils

Bug: 18931518
Change-Id: I951166f675731ec7a2bc51585e0a51e0cd92611d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
9dd16ebcf2a25c189a39b72847d3db2b1189cb4d 08-Jan-2015 Adrian Roos <roosa@google.com> LockPatternUtils clean up continued

- Deprecate Settings.Secure.LOCK_PATTERN_ENABLED
- Remove unused permanent lock out
- Disallow empty/null arguments to saveLockPattern and saveLockPassword
- Refactor repeated quality checks

Change-Id: I6f369eb60f8f6bb1e33384cd06534c713ab52e79
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
dce0122ea2d27474890d5e18ba4b7e4d06303e53 07-Jan-2015 Adrian Roos <roosa@google.com> Explicitly specify user on LPU's private methods

Also fixes a bug in DevicePolicyManagerService where
the wrong user was used.

Bug: 18931518
Change-Id: I7ae8ecfdb1c835cdee7eafa2b96e1ec8b712977b
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
db0f76e1d85f8cb878a9540ac1b692636f9fd89e 07-Jan-2015 Adrian Roos <roosa@google.com> Directly dispatch USER_REMOVED to LockSettingsService

Bug: 18931518
Change-Id: Ibaf875a06868ae3196115d77eed6874daf2fec16
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
230635efe7ffb09d6dc56bfd9193aa1d89c8a898 07-Jan-2015 Adrian Roos <roosa@google.com> Purge biometric weak and keyguard widgets

Bug: 18931518
Change-Id: I5da41908b1d6895a69f981e139f2d268327fafcd
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
25c29c19474e5cb359473d3d36fdb1eddb90f50b 17-Dec-2014 Narayan Kamath <narayan@google.com> am 6d41504d: Merge "Move frameworks users over to libcore hex encoding API."
automerge: 681e6df1

* commit '681e6df1221ca7671f574d368d428f62184448b0':
Move frameworks users over to libcore hex encoding API.
78108a3e52c20ad0a481a8419c2d2c9722b53400 16-Dec-2014 Narayan Kamath <narayan@google.com> Move frameworks users over to libcore hex encoding API.

Removes dependency on apache-http.

bug: 18027885
Change-Id: I508db016747985ecdd68e02d5d4efcd0ddd694df
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f8f56bce428bb2b89d1d572ccd2d604761dbbce8 20-Nov-2014 Adrian Roos <roosa@google.com> Fix DPM.resetPassword("")

While we're at it, also fix some multi-user issues in
LockPatternUtils.

Bug: 17496766
Change-Id: I8e557ea640fa589817c8f8f818c91463585d5ea7
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
50bfeec868157106e8b60abf8964cb24462af182 20-Nov-2014 Adrian Roos <roosa@google.com> Update KeyguardManager.isDeviceLocked API

Bug: 18414067
Change-Id: I0715714c2c9a122f578ec0c6f508faae12e6f752
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
138b83347b8da29166ee2eb09fa8126686bda3c7 11-Nov-2014 Adrian Roos <roosa@google.com> Obliterate LockPatternUtilsCache

It is disabled dead code already and not useful anymore
with the new caching in LockSettingsService.

Bug: 18163444
Change-Id: Icc184e923e0fbeab31ed128336c01f835b24c6f2
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
450ce9fc8a1522819aec151433e6f509dfe60690 29-Oct-2014 Adrian Roos <roosa@google.com> Disable LockPatternUtilsCache

Also fix a bug where hasPattern and hasPassword were
not invalidated properly.

Bug: 18163444
Change-Id: I5bd8cc4e7c0d00497ee7a42f3c34449aa3f95a6c
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
dd5de719c5a0d39030f94d931c0ab1bed1f147f8 17-Oct-2014 Jim Miller <jaggies@google.com> Add utility methods to LockPatternUtils for encryption

This enables a change in Settings that allows device
encryption to be disabled by the user.

Fixes bug 17881324

Change-Id: I34dfc586df1a598bf969dc82adf8537a2730d345
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
cd410ba4e816b657020cafb23e69206734726b42 17-Oct-2014 Amith Yamasani <yamasani@google.com> Use the correct method to check if device is encrypted

DPM's method will return false if encrypted by default password,
preventing the changing of encryption password to lockscreen password.

Check if the device is encrypted by some means, instead.

Also fix a SecurityException when Device Admin queries encryption state
(recent regression)

Bug: 17881324
Change-Id: Id897e61c5e254ab3f8dc569285428a73005303ea
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
6848dc8e3b54fb27047836d8026c4c9971754607 14-Oct-2014 Jim Miller <jaggies@google.com> Add a checkbox option to 'require password to decrypt'

Fixes bug 17881324

Change-Id: Id94e593a172d686339c736473226fece1bb749ee
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
16e4a1aade2b73edfdaa42aa86a3893fd039fc62 30-Sep-2014 Svetoslav <svetoslavganov@google.com> Use default encryption password if an accessibility service is enabled.

When device is encrypted the user has to authenticate in order to decrypt
the data partition which is required for running accessibility services
and Text-To-Speech. In order to address this issue we are falling back
to use the default password if there is an enabled accessibility service
and the user has secure lock. This will enable the user to authenticate
when accessibility layer is completely functional.

bug:17671790

Change-Id: Iafffe7bcd234008cf91ffb5011b21b803dca227a
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f839b4fcb6b179529585765517895a8c90fe315b 26-Sep-2014 Elliott Hughes <enh@google.com> Set the system locale correctly even on an encrypted device.

Bug: 17659622
Change-Id: Ibbbd5b959bfab5345f20b556c4720d0910b50084
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
625e8f595978693a079c4c20ac8d70e8710947e9 26-Sep-2014 Adrian Roos <roosa@google.com> Merge "Ensure that setting an empty password clears it" into lmp-dev
3a5a0be61ec7ea08884c80817c226f7cfe531a67 25-Sep-2014 Paul Lawrence <paullawrence@google.com> Fix pause when setting pin/pattern/password

Move setting encryption pin/pattern/password into a separate thread

Bug: 17554587
Change-Id: Ifdf2ed5aa9ca08d68bb2ed08c8985203c24dcb9f
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
ab7dae58cc831471b9a677575ac3dccd17779925 25-Sep-2014 Adrian Roos <roosa@google.com> Ensure that setting an empty password clears it

Bug: 17496766
Change-Id: I7c29b632519247bc5675a05ef6cc90902fec8527
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
61d9409239c5ed360ffc2181eee6b981aad9192b 16-Sep-2014 Adam Lesinski <adamlesinski@google.com> Show the lockscreen when more than 1 user is present

Bug:17399024
Change-Id: Iaf2ea2747cbcd9db45ba9faa7c8fe0389a799855
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
ef9f6f957d897ea0ed82114185b8fa3fefd4917b 13-Sep-2014 Tyler Gunn <tgunn@google.com> Renaming Telecomm to Telecom.

- Changing package from android.telecomm to android.telecom
- Changing package from com.android.telecomm to
com.android.server.telecomm.
- Renaming TelecommManager to TelecomManager.

Bug: 17364651
Change-Id: I192cb5d189f55db012ea72ee82ccc5aedbc21638
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
cc5179f0e3725a5f3c140fc57d719e18b7aa104f 04-Sep-2014 Yorke Lee <yorkelee@google.com> Use TelecommManager APIs to detect if we are in a call

Bug: 17335666
Change-Id: I5f443c76041e51a2eca903db924fb26031dde055
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
1572ee379e1d070c7ad1c37a626ed25db5341a3e 01-Sep-2014 Adrian Roos <roosa@google.com> Trust: Look at the security unlock method of the right user

Follow up to Ic9e93862c722ebc529f5b2010b9cea941f569ce7.

Bug: 17107213
Change-Id: I8f3c19aedeaca3f265c98a4fb60ab74b115fca47
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
e4b1d57dfd89035a67984e1a295d5ef5b97953be 26-Aug-2014 Nancy Chen <nancychen@google.com> Merge "API review PhoneManager -> TelecommManager. Rename methods (6/6)" into lmp-dev
396ac76fd37fbc1ad6f8268cb3beb9d003067271 25-Aug-2014 Paul Lawrence <paullawrence@google.com> Show PIN screen with all PINs, not just simple ones

Bug: 17194645
Change-Id: I8b8ccd2b7cf6dbfac567492387d4f4fd61258a34
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
0eb1e402c7e612887e38dc5516f11506b11fd835 22-Aug-2014 Nancy Chen <nancychen@google.com> API review PhoneManager -> TelecommManager. Rename methods (6/6)

PhoneManager
- handlePinMMI docs should explain what a Pin is and what MMI is
- rename isInAPhoneCall to isInCall
- rename showCallScreen to showInCallScreen
- merge this class into TelecommManager, we don't need both

Bug: 16960458

Change-Id: I7d573e27ed093f2ddb7849703cc62f9916835393
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
076e72554d4367a0377047fe7eb2e3ea73c5baec 22-Aug-2014 Adrian Roos <roosa@google.com> Merge "Only run TrustAgentServices for users with secure keyguards" into lmp-dev
4b9e324b6f59f49a8ca4bc4cd8b38a5ea005a6b2 20-Aug-2014 Adrian Roos <roosa@google.com> Only run TrustAgentServices for users with secure keyguards

Bug: 17107213
Change-Id: Ic9e93862c722ebc529f5b2010b9cea941f569ce7
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
878ba0a266246f29e8145612a2a58e5e997b018c 20-Aug-2014 Paul Lawrence <paullawrence@google.com> Save PatternVisible setting to crypto header

Bug: 17059314
Change-Id: Ic64c64567f70ea11030cabfd33b57f77fb23dac7
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
235510e67210f90de30c2d5582a2077ccc589619 13-Aug-2014 Jose Lima <joselima@google.com> Made AlarmClockInfo a nested class in AlarmManager

Bug: 16959028
Change-Id: I150eaaff765d1e214c3621c1bf50162ec0dac8ec
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
4f994eb2ddbe68b0eada89dcaae34c079df55c7e 23-Jul-2014 Adrian Roos <roosa@google.com> Disable trust agents after wrong credential is entered

Bug: 16498202
Change-Id: I36f2e80aec8c04bcb6e6d9f1b0e2ebb8fc49998e
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
987672d2621fa5278dbf48cbef46c50d3fafe4c1 18-Jul-2014 Geoffrey Borggaard <geoffreyb@google.com> Fixes setting password through DevicePolicyManager

LockPatternUtils wasn't taking the userId into account when
looking up the salt.
Bug: 16204999

Change-Id: I0626b5a0a55c244122c24fb4446f270918f3187c
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
edad7b24c17fa501f59af3c159e94e7b590e4145 13-Jul-2014 Adrian Roos <roosa@google.com> Update LockPatternUtils to new alarm API

Change-Id: Idc6c2865b86e467e1e254452326f327f145177b0
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a0ee004abf1e8988ece2d19ff5a3bef333763c9b 16-Jul-2014 Brian Colonna <bcolonna@google.com> Bug 16152902: Disabling FUL in keyguard and screen lock settings

This is the framework change needed to switch from Face Unlock as
a standard unlock mechanism to Face Unlock as a trustlet. This
forces isBiometricWeakInstalled() to return false such that neither
keyguard nor Screen Lock Settings thinks it exists. This means FUL
is no longer a screen lock option.

If Face Unlock was already enabled and someone updates to this build,
the screen lock automatically switches to the backup lock. That
functionality was already built-in so everything would continue to
work if Face Unlock decided to disappear from someone's device.

Change-Id: I407f6e1d75bfe40c7142c2508c2d68867e02d858
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
85516d028b2dcc7ebc09f4a68085836aa26191d5 01-Feb-2014 Jim Miller <jaggies@google.com> Add new "pin complex" type to supported keyguard PINs

This adds a feature to allow DevicePolicyAdmins to prevent using
simple PINs, which are defined as those containing more than 3
repeated values. Examples include '1234', '2468', '1111', '9876', etc.

Bug 12081139

Change-Id: I4ebe1c76a48087dcd7c878e9bd79a4e3ee2a27fe
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
0bae09fdde0905e24f6c3079d9e01c669d046289 07-Jul-2014 Santos Cordon <santoscordon@google.com> Move showCallScreen & isInAPhoneCall to PhoneManager.

Change-Id: I852da78ae80eba120932fb7acb1e5c3db2a8f18a
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
ba45bcb36437aefa5fe2a3e72388a01debb90813 03-Jul-2014 Paul Lawrence <paullawrence@google.com> Fix DeviceManagerAdmin with empty password

Checked for null, but need to check for "" as well

Bug: 15832986
Change-Id: I3dc5d61717180180229f2395eef1dbe54d812d54
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
2c12cfa1d53b586ae8a8d6aca64a4de771dc85b0 25-Jun-2014 Adrian Roos <roosa@google.com> Trust Agents: Add facility to request credential entry

Bug: 15871777
Change-Id: I43c80151f6403ff62961aeb3dc7aafe049e18a62
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
3534ede5722b98c5be1526ba0bc2cd8acfbe0e55 29-May-2014 Santos Cordon <santoscordon@google.com> Update showCallScreen to use Telecomm (1/6)

- Add API methods to InCallService and ITelecommService.
- Remove old methods from ITelephony.
- Route the TelephonyManager methods through ITelecommService instead of
ITelephony.
- Update Lock screen to use TelephonyManager instead of ITelephony.

Bug: 15008165
Change-Id: Ib674e2e48efaa1cc97d1513dc2c2b27fdb343657
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
4f7884542ce8fba5bfed01ed834a32e6d3e2dea5 22-May-2014 Adrian Roos <roosa@google.com> Add a cache to LockPatternUtils

Caches responses from LockSettingsService in the client process.

Bug: 15088101
Change-Id: If77c5ec45f52a02c800d50cb8550bfcb180f301d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
431207343f25647640fb04bd91a09528faeec0e8 15-Apr-2014 Jim Miller <jaggies@google.com> Default to PASSWORD_QUALITY_UNSPECIFIED

This changes methods in LockPatternUtils to default to PASSWORD_QUALITY_UNSPECIFIED
instead of PASSWORD_QUALITY_SOMETHING. This was confusing device encryption tools on a
freshly installed device that has never had a PIN, pattern or password set up.

Change-Id: If9b62a71220ed7520b6730201e55e34e89c0357d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
e51dcf98a4ddb1340cffba88059ad89f0b90909a 18-Mar-2014 Paul Lawrence <paullawrence@google.com> Save OwnerInfo so CryptKeeper can display at boot time

Requires vold change from
https://googleplex-android-review.git.corp.google.com/#/c/435164/

Bug: 13526708
Change-Id: I33153df9961832f72c3b8103bd5e1d3a17e77df3
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
df42723d6b717fd2882c98c930a0f93c75af2474 01-Apr-2014 Paul Lawrence <paullawrence@google.com> Merge "Don't double prompt on booting encrypted device"
82142c21dd333307682d5f4bb09de3ab3ccfa06c 27-Mar-2014 Adrian Roos <roosa@google.com> Define trust agent framework components

Adds the TrustManager system service that allows
registering for changes to the trust status and
reporting events that are important to trust agents.

Bug: 13723878
Change-Id: I7d0d2ea86fd755702d31aa5d49cac038a6cd4301
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
945490c12e32b1c13b9097c00702558260b2011f 27-Mar-2014 Paul Lawrence <paullawrence@google.com> Don't double prompt on booting encrypted device

vold will store password securely until KeyGuard requests it
and hands it on to KeyStore.

This is a revision of

https://googleplex-android-review.git.corp.google.com/#/c/418123/

which was reverted. It had two bugs in LockSettingsService.checkVoldPassword.
1) We were not checking password for null, which caused an exception
2) checkPattern/checkPassword return true if there is no saved pattern or password.
This leads to situations where we get true returned even when the password
doesn't match. Call the correct one based on what is there, not what vold
thinks ought to be there.

Bug: 12990752
Change-Id: I05315753387b1e508de5aa79b5a68ad7315791d4
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
6ee7d25010d4f23b44a151f3953225ba253de8af 26-Mar-2014 Paul Lawrence <paullawrence@google.com> Revert "Don't prompt at boot if we already did that when decrypting"

This reverts commit 493e3e7e6523fd94cc1acae3e45935a1227d58c3.

Should fixes

Bug: 13611885
Bug: 13656830
Change-Id: I117c988bb6679f44f8add4fcc18f45cb8238dfb4
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
493e3e7e6523fd94cc1acae3e45935a1227d58c3 06-Feb-2014 Paul Lawrence <paullawrence@google.com> Don't prompt at boot if we already did that when decrypting

vold will store password securely until KeyGuard requests it
and hands it on to KeyStore.

Needs matching vold changes from
https://googleplex-android-review.git.corp.google.com/#/c/432050/

Bug: 12990752
Change-Id: I930ed8180cf0b8feb1e58db043d5fb6dff1bab20
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
0a18029075fbe5e5da396c66ef26cfa7e7f1a082 13-Feb-2014 Paul Lawrence <paullawrence@google.com> Clean up a few minor issues

Make public some constants, remove unused imports.

See https://googleplex-android-review.git.corp.google.com/#/c/412885/
for when these were introduced.

Change-Id: I90d0e33a411ebdd84c36e3d9afae70d2f2847538
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
8e39736f91a08961cf59c87075e61d9026833b50 28-Jan-2014 Paul Lawrence <paullawrence@google.com> Support default, pattern, pin and password encryption types

Java plumbing to expose methods to get/set encryption type in
IMountService, and hooking up of those methods to the Settings app
so the type is set correctly.

Needs matching vold changes from
https://googleplex-android-review.googlesource.com/#/c/412649/

Bug: 8769627
Change-Id: I70c0ed72d11f5ab6f0958a7f9c101b6822b13baa
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
0cf13701d69c79ccd4011472e5c58bf9b4a24726 29-Nov-2013 Kenny Guy <kennyguy@google.com> Fix setLong so it actualy uses userHandle passed in.

Change-Id: Iddcd02b25890cf0a8d5569699b53e97b8640000d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
6090995951c6e2e4dcf38102f01793f8a94166e1 19-Nov-2013 John Spurlock <jspurlock@google.com> Remove unused imports from frameworks/base.

Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
e38c8e28ba50d5fe7f4f2bc5fe68a9f10bafe0f0 25-Sep-2013 Jim Miller <jaggies@google.com> Fix accessibility for all-caps items in keyguard

This fixes a bug where TTS on all-caps items doesn't work for
Buttons. The fix is to use translation (ala. TextView.setAllCaps()),
which just affects rendering and not the original text string.

Fix bug 10912259

Change-Id: Id8cba927819c979fe699353219d45f8b0f9f5aac
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
de1af08dd3a073f007ae4b8a114352cae3775028 11-Sep-2013 Jim Miller <jaggies@google.com> Fix keyguard/Keystore storage issue

Keystore stored keys broke when keyguard was moved out of the system process
due to Keystore enforcing the calling app to be in the system process.

The fix moves the critical code into LockSettingsService, which continues
to live in the system process.

Fixes bug 10201270

Change-Id: I16e2de018e85b01265634dcfbefd7f06740dafa8
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f45bb403884f30ecb383698ef1bcb1c7dc1964b8 21-Aug-2013 Jim Miller <jaggies@google.com> Add setting to disable keyguard widgets

This allows disabling keyguard widgets through Settings.
On new devices, the setting is turned off by default. If the
user currently has widgets in keyguard, then we keep them
and re-enable the setting.

Change-Id: I7258921231d439925ac8627105710efa99309094
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
3569e9e50c3a467e9094d24272b8e1f091ac8d86 17-Apr-2013 Jim Miller <jaggies@google.com> resolved conflicts for merge of 2f6a2526 to master

Change-Id: Ie51d3a63f4d4d5bad7ef16ad84ef6ad5acdaa64a
187ec581c66fec49a5ee7db8edec6d9eb0e209fc 16-Apr-2013 Jim Miller <jaggies@google.com> Move owner info from Settings.Secure to LockSettings

Fixes bug 8512972

Change-Id: Ic046aff0332b78489dda08b1e9e71f4c16154f10
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
78c48f6c1700ab8d507dd7bf7ebef404913648bd 02-Mar-2013 Jim Miller <jaggies@google.com> Fix multi-user support in keyguard.

This fixes a bug where user0's credentials were required of all users.

LockPatternUtils used to check for the system process of the caller
to determine which user id to use. Now that keyguard is in its own
process, this can no longer be used.

The fix is to use the permission system to see if the calling process
is allowed to interact across users and if so, use the id of the current
user.

Change-Id: I2d7111938bb3bf381f72698c9fa4fb848d237153
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
7a96c39c510923ef73bbb06ab20109f0168b8eb1 15-Nov-2012 Jeff Sharkey <jsharkey@android.com> Move lingering services to services.jar.

This helps reduce the pressure on framework.jar, and makes it clear
that it should only be used by the system_server.

Bug: 7333397
Change-Id: I0858904239535380fbf30562b793e277d8c3f054
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
fff5614caecb0d2944b1bc206aaab0d3acb17670 29-Nov-2012 Michael Jurka <mikejurka@google.com> Disable adding keyguard widgets until setup is done

Bug: 7504154

Change-Id: I865f0139bb328e6b9b19493e0d8f9f086e2ebc38
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f7614fc7442e9cf2df89d4230af3f56f03a74c6e 26-Nov-2012 Winson Chung <winsonc@google.com> Removing unecessary additional lock metadata from QuickSettings user tile.

Change-Id: I89ec94385eb3cdd46ad6942bf8989fb04d5c0370
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
3c9297c3cb739b9aec9ccff7e4e3e05006edb836 08-Nov-2012 Jim Miller <jaggies@google.com> Merge "Attempt to fix NegativeArraySizeException crash in keyguard" into jb-mr1-lockscreen-dev
192d6d4ee271c0782a3bf5d8c64e42eb22d1a6fa 07-Nov-2012 Michael Jurka <mikejurka@google.com> Allowing rotation while adding lockscreen widgets

Also cleaning up some unused code

Bug: 7468012
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a97686096265c2b718e15f806bca352675e5cd2d 07-Nov-2012 Jim Miller <jaggies@google.com> Attempt to fix NegativeArraySizeException crash in keyguard

Fixes bug 7490924

Change-Id: I974c9b7a4fb3de536efe9d47cdd480190772a1be
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
76017cad4f7af95380ee5eaf6dc610bb46088a9c 07-Nov-2012 Michael Jurka <mikejurka@google.com> Removing sticky widgets in lockscreen

Also adding mechanism to show a widget after
adding it

Change-Id: Ic4d49e6ef1343c38fa731b0ed2a327c55b678abf
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
51117262c8fadb6d227d137e83ad66996b013141 05-Nov-2012 Jim Miller <jaggies@google.com> Handle DevicePolicyManagement and safe mode when inflating widgets

Bug 7459120
Bug 7444159
Bug 7444016

Change-Id: I7966ec510da8113ac571b5a4b9dc48dd291396e8
Conflicts:
policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
67a871d85732e582c70a2a1d85ef4419eb658a12 02-Nov-2012 Michael Jurka <mikejurka@google.com> Use clock's widget as the default keyguard widget

Also, if we have no widgets in lockscreen,
reinflate the default widget. If that fails,
inflate the built-in clock (KeyguardStatusView)

Change-Id: I2e90ab0893c993a755700e075e4a8ac5a685e0f2
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
fc753c0cf676000b1c2d3cb2728af85a9b49f795 31-Oct-2012 Michael Jurka <mikejurka@google.com> Use new keyguard appwidget picker

Also, remove ability to filter widgets by feature
in appwidget picker in anticipation of api change

Change-Id: I325de0b98f03d3a250758d504229ea27794b5330
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5f050e5c2c1616c7f0795c4f13e42a5d150b8015 27-Oct-2012 John Spurlock <jspurlock@google.com> Use settings to persist sticky widget.

Addressing some comments:
- Sticky widget is now saved in a user-scoped setting.
- Removed multi-user widget from computation (obsolete).
- Removed status widget from computation (just use right-most).
- Removed duplicate isMusicPlaying logic.

(frameworks/base)

Change-Id: I8ef8f826677d78ac24da52adf2d99d47c8d965ac
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
229dd8b3559257ba31f31299d1d2fc4d1ba14bbb 27-Oct-2012 Michael Jurka <mikejurka@google.com> Fix bug where it wasn't possible to add widgets

- Happened when you were down to 0 widgets (which
won't be possible in future, but fixing this as
well)
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
358148e386a20801430aaf6f3f7ca02807cd71c3 26-Oct-2012 John Spurlock <jspurlock@google.com> Implement "sticky" widget logic.

(frameworks/base)
Used after screen-off, and after launching camera.

Bug: 7418847
Change-Id: I5179e6af13be4494fde77fde2cdb5610ab888dac
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
1254f2f42f7173ef51d0034975ab5cb7d44f8209 25-Oct-2012 Michael Jurka <mikejurka@google.com> Persist reordering/deleting widgets on keyguard

Also, clean up warnings from unused imports

Change-Id: Id0ef12a584ffdaa8a4fb64ffe93d0dda0af398ec
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
8b3dd40019db2c5744b3adceb75a231311bc00b7 25-Oct-2012 Michael Jurka <mikejurka@google.com> Fix build
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
aa2859ae61098509495b7938e32a6d59d37561be 24-Oct-2012 Michael Jurka <mikejurka@google.com> Adding ability to add multiple widgets to keyguard

Bug: 7381803
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5ed9d680409c83fbfd7b617d7f257305d3c34b62 10-Oct-2012 Jeff Sharkey <jsharkey@android.com> Move lockscreen to using haptic feedback setting.

This removes lockscreen-specific "Vibrate on touch" setting, and
changes it to use the haptic feedback setting instead.

Bug: 7318772
Change-Id: I637c392a1aaa22403cb20da4723f90c3b2e3de19
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f752202bee88e31ce765483ba2efa6999ae9c9ad 04-Oct-2012 Adam Cohen <adamcohen@google.com> Plumbing to allow keyguard to be shown with user switcher (issue 7175023)

-> Also reduced calls to lockNow, and moved this call in ActivityManagerService

Change-Id: I9ba34ca902f7c0f71fa4ec302104688ca8d11f55
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
ee82f8fa2d47fc1dbfc29582ae348b3c45ff8fe0 02-Oct-2012 Jim Miller <jaggies@google.com> Fix camera disambiguation in secure keyguard

When there are multiple activities that respond to MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA_SECURE
we need to show the disambiguation dialog to the user. However the disambiguation "dialog"
is actully an activity themed as a dialog. Hence, we can't show it in the secure keyguard.

This works around the issue by prompting the user for their credentials directly when the
intent needs disambiguation. This will take them out of keyguard and prompt them for
which activity they want to use.

We'll provide a more robust solution in a future release.

Fixes bug 7109816

Change-Id: I94e643d3cb503e1ce6de24c82400b4d5fcbb9d95
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
df8bfe0cf65b4f864eb3eb60c1371f987c79ca20 22-Sep-2012 Kenny Root <kroot@google.com> LockScreen: only set keystore password for owner

Since KeyStore doesn't support multi-user, only unlock or set the
password on the keystore when the "owner" enters a password.

Bug: 7169463
Change-Id: I97b4ba714dc6e400a6e45825c71f81c4629392d8
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
77e95d3d71f10a0d936445e3f3ed90e15c019024 22-Sep-2012 Amith Yamasani <yamasani@google.com> Merge "Show lockscreen widgets for the current user." into jb-mr1-dev
8fd96ec2dc215095d12ef3e9bd7dc50ebc78625e 22-Sep-2012 Amith Yamasani <yamasani@google.com> Show lockscreen widgets for the current user.

Also shows the owner info and next alarm for the current user.
AppWidgetService now assumes that any widgets running in the system process are for the
current user, so that lockscreen shows widgets for the current user

Bug: 7211754
Bug: 7212421

Change-Id: Iaf0edc60e49af0afe42625c0b2dcf100c9ecc178
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
6eeff850b245bd3be3a0e782cd9f28daadf922dc 22-Sep-2012 Jim Miller <jaggies@google.com> Merge "Remove UID checks from LockPatternUtils" into jb-mr1-dev
25645d8bbcced4416122d5dadedcf030a7bc12e5 21-Sep-2012 Jim Miller <jaggies@google.com> Remove UID checks from LockPatternUtils

The UID checks should be unnecessary because LockPatternUtils already relies
on system permission checks in Settings, LockSettings, DevicePolicyManager
and Keystore. These checks should already catch illegal operations.

This was interfering with the stand-alone test app for keyguard.

Change-Id: I2da2a729ca29feae9e962c2e360ec47490bcbbf0
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
20c41d5382b70fa5a24e9ef68f19ce0aedea5234 21-Sep-2012 Michael Jurka <mikejurka@google.com> Add support for changing status widget on security screen

Change-Id: I080fd89eb84445604c602b6e807b55153a7ee129
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
109f1fd80c90409c0d7f21d49989641dfdf2ad1b 20-Sep-2012 Jim Miller <jaggies@google.com> Update keyguard selector view to match UX design spec
- Use new Roboto-Thin font
- Add new keyguard-specific date format
- Layout tweaks to keyguard selector screen.
- Add smart EmergencyButton class
- Add selective upper-casing of components on the display to enable later UX decision
- Work around SIM state bug

Bug: 7094419
Change-Id: Ic7e0f30697c14d4946372509d98ad81bf6a23c92
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f1b674197577e815040cd75ef86d611965d603ad 19-Sep-2012 Craig Mautner <cmautner@google.com> Fix deadlock in LockPatternUtils by using local id.

Activity manager now updates window manager's current user id
directly and immediately rather than waiting for a broadcast
update. Window manager passes this through policy to the
KeyguardViewMediator and into LockPatternUtils. LockPatternUtils
no longer goes to Activity to get the current user id if it finds
that its local id is non-default.

Fixes bug 7193726.

Change-Id: Id5613e7a9fe9e5b49e83c26b74504f587c3998c2
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
599dd7ce9adf8ca067cefb0b191a5ac20ec35a79 15-Sep-2012 Amith Yamasani <yamasani@google.com> DevicePolicyManager per user

Bug: 7136483

Store device policy information for each user and apply them when user switches.

Global proxy can only be controlled by owner.
Camera restriction applies to all users, if any one has an admin that disables it.
Storage encryption can only be controlled by owner, although other users can query the state.
Wipe data will only remove the user if non-zero, wipe the device, if zero.

Change-Id: I359be46c1bc3828fd13d4be3228f11495081c8f2
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a87826c345dbd692a86a340691cf7471a2505809 14-Sep-2012 Amith Yamasani <yamasani@google.com> Merge "Fix face unlock for multiple users" into jb-mr1-dev
4b4b954ddf34af51576441f0e3eca6d19150aada 14-Sep-2012 Amith Yamasani <yamasani@google.com> Fix face unlock for multiple users

Bug: 7152537

Not all instances of LockPatternUtils are getting updated with the current user, so
query it directly from the Activity Manager.

Change-Id: I46395c3e00feecd0edfe4228f8d7966f425519f2
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f229e4d3eb8f910c181f96416c6798f6f305a395 13-Sep-2012 Jim Miller <jaggies@google.com> Add support for settings for lock widgets

Change-Id: Iade094c6f32a7653bdbbd4921d345d68f2443ff4
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f02b60aa4f367516f40cf3d60fffae0c6fe3e1b8 16-Aug-2012 Dianne Hackborn <hackbod@google.com> Rename UserId to UserHandle.

This is the start of turning this into a formal public API.

Change-Id: I5786d2c320f1de41a06ed5d0f65adb68967287a0
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f882f1ad4edd790483924e7bf485fd7c7240d110 11-Apr-2012 Amith Yamasani <yamasani@google.com> Bind to the correct face lock service.

When switching users, bind to the correct instance of FaceLock.

Tried to get the facelock screen to show up when switching users, but it
doesn't. Power off/on works, but not switching between users on the
lockscreen. Maybe a timing issue? Or not calling some function to make
the overlay visible?

Change-Id: I9300971331c7f0ed93ae7da28170342629426b20
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
52c489cd63cca0361f374f7cb392018fabfa8bcc 28-Mar-2012 Amith Yamasani <yamasani@google.com> Lockscreen settings per user

Move all lockscreen related settings to LockSettingsService.
LockPatternUtils uses this through IPC instead of Secure settings.
Migrate old settings to new database managed by LockSettingsService.
Passwords and patterns are stored in a new per-user location, except
for the primary user, for backward compatibility.
KeyguardViewMediator and LockPatternKeyguardView listen for changes
to user and updates the lockscreen.

Settings provider will look for Lock settings in the LockSettings
service now for the entries that used to be stored in Settings.

Change-Id: I956cd5b95e2d9d45a6401af7e270e6a5aa2dcc98
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
574e49ee16c1ab9a83bb6506870a7be540fa1434 27-Mar-2012 Danielle Millett <dmillett@google.com> Fix 6238404: Changed deleteGallery and deleteTempGallery to use broadcasts

Previously since these were starting an activity, if it was called from
outside an activity (for example when calling resetPassword() in
DevicePolicyManager) it throws a run time exception. Since these don't
need UI, they have been changed to be broadcasts.

Change-Id: Id87e3dc868a01f0eed901e8e8007f91f74cd51fe
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
925a7d8f062c2ef275ccb7579889d6f83d0d378e 19-Mar-2012 Danielle Millett <dmillett@google.com> Added a setting for whether biometric weak liveliness is enabled.

The liveliness setting is represented by a bit in
LOCK_BIOMETRIC_WEAK_FLAGS so that more settings can be added if needed.

Change-Id: Ia6c94396d5b84de61f7eeb9a192d0aa925b13507
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
c9237f41a414529b43cc92fdcb9e5887faed2d6f 14-Feb-2012 Steven Ross <stross@google.com> Removing dependence on enable_facelock

With this change, FaceUnlock is enabled by default when installed
fixes 5989485

Change-Id: Icbce3237ff533e8b7b88faf592ac4a1e143d5dc3
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
93708af1329bb278d83c1fac6a623629cb42a3d4 26-Jan-2012 Jim Miller <jaggies@google.com> Fix 5620754: don't show pattern unlock after SIM unlock if not enabled.

This fixes a bug where the device would show pattern unlock after the user
entered the SIM PUK unlock code. The code now correctly determines that
the device isn't secure and thus shouldn't show the unlock screen.

Change-Id: I49fd749592154a4c5840038b92d54ca7ca086074
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5437c220e239dc6276942990bc81c1388cfb176c 10-Jan-2012 Jim Miller <jaggies@google.com> am d3872f55: am 62fad768: Merge "Fix 4560303: Add setting to lock later when power button pressed" into ics-mr1

* commit 'd3872f55045b7ce7be7dd7ae5fff37d7988bdcb2':
Fix 4560303: Add setting to lock later when power button pressed
a4edd151c5266a2c794c95444fed67d19740cee3 07-Jan-2012 Jim Miller <jaggies@google.com> Fix 4560303: Add setting to lock later when power button pressed

This adds a feature to delay locking the device when the power button
is pressed. This fixes a use case where the user wants to turn off
the display (e.g. to save power) but doesn't want to lock the device.

For the case of a secure device (user has a pin/password/pattern),
this will lock the device immediately or not based on the setting.

For the non-secure case, this always "locks" the device to provide easy
access to the camera while preventing unwanted input.

Change-Id: Ie328485c3f7559e26896d761cbf0e69d3f4df4e2
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
2364a222fcba233d66d0a9cde691d1d6e82227db 21-Dec-2011 Danielle Millett <dmillett@google.com> Fix 5783857: Device Policy Manager doesn't allow Face Unlock

This makes it so that if face unlock is enabled and then a device policy
manager that requires something more secure than face unlock is installed,
the user will be forced to choose a new acceptable lock type.

This was previously fixed for the case where the device had been reset, or
the shell was restarted after setting face unlock, but not for the case where the
device remained on between setting face unlock and setting up a device policy
manager.

Also changed the function ordering of saveLockPattern() so that the overloaded
wrapper function is next to the main function.

Change-Id: Ibed8c4ab137ebbc07fb143faef6f047bc6dc4474
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
270826a8878b5470d48d93ca3d518ac93860870d 10-Nov-2011 Jim Miller <jaggies@google.com> Merge "Fix 5555408: allow emergency button to be disabled on SIM/PUK unlock screen" into ics-mr1
1f56edc6cd377eab05d9816e93591a7139cdff96 08-Nov-2011 Jim Miller <jaggies@google.com> Fix 5555408: allow emergency button to be disabled on SIM/PUK unlock screen

Some carriers cannot process emergency calls when the IMSI is not available,
which happens when the SIM is locked. This allows the behavior to be overwritten
in an overlay. When the config variable is set to 'false', the emergency
button no longer appears on the SIM or PUK unlock screens.

Change-Id: I3127bfd5e7ebfabea997fbe048cc474e48b7a81c
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
044a0a76444b22bd4fe3718b110953bbcd3ee35d 07-Nov-2011 Danielle Millett <dmillett@google.com> Showing a congratulations screen after choosing face unlock backup lock

Once a backup lock has been chosen, it sends an intent to show a
congratulations screen. The moveTempGallery function has been moved
inside this new activity so it is no longer needed in LockPatternUtils.

Change-Id: I66868e6e3391b8b740f618fe633047ce388f55ca
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
af1ef9ed034e68db9d6c25f8b174fabf60b779d9 05-Oct-2011 Danielle Millett <dmillett@google.com> Merge "Adding a flag for if biometric weak has ever been used"
7a07219a1fc8cb94ea2694025e26f70d652ad2a1 03-Oct-2011 Danielle Millett <dmillett@google.com> Adding a flag for if biometric weak has ever been used

This flag will be used to show a tutorial screen first time it is used.
The flag is set to true once facelock has been set (via the savePassword or
savePattern when in fallback mode)

Change-Id: I43e3f876810fd32d3d5a5a285201e8054c4b3098
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
c8fb532d456b009e61d38e919277e00939cf894a 04-Oct-2011 Danielle Millett <dmillett@google.com> Fix 5405210: DevicePolicyManager doesn't allow Face Unlock

If Face Unlock is currently enabled when the device policy manager is installed
it now forces the user to choose a new acceptable lock type

Change-Id: I725e923240538df3f706251670bf497857d2a25f
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
cb3521e3bb3615069f1c397219b934d200c59757 04-Oct-2011 Jim Miller <jaggies@google.com> Fix 5185505: allow facelock to be enabled by a setting.

This allows face recognition to be enabled through Settings.Secure,
so we can test on selected devices.

Change-Id: I7f832cafd6a98f4289d618bc8924cd467706b778
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
58396984ef49080d5550919130fc0d869ccf840b 30-Sep-2011 Danielle Millett <dmillett@google.com> Reworked biometric weak check functions

Renamed isBiometricEnabled to isBiometricWeakInstalled. This function
now checks if the system property is set, the facelock package is
installed, and if the phone has a front facing camera. It no longer
checks if facelock is currently set as the unlock method.
Added isBiometricWeakInstalled checks to all cases where facelock is used
in LockPatternKeyguardView

Change-Id: Ia86a7ad6118101c6aab90ffb2ee9c42bf2548149
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
3553c296c0e0951a150f1783b2d0ff0d4bfe06cd 30-Sep-2011 Steven Ross <stross@google.com> Moving fallback check code to Settings

Change-Id: Ife924771d7bfedc6eccc6817172a699569560025
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
329979c9e6cecbcec470ec6f3ac41da82ca58d3f 28-Sep-2011 Steven Ross <stross@google.com> calling back SetupFaceLock to clean up temporary gallery

This is done when the backup lock is complete or canceled.
If successful, the permanent gallery is replaced with the new one.
If canceled, the temporary gallery is deleted

Also deletes the main gallery if the lock type is changed from facial recognition

Change-Id: Id1ce804dec6b71b6410af53c050ad265c4cad5b0
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a2f00da374cd0d9776bc6c4e1cf3c3def990270b 27-Sep-2011 Jim Miller <jaggies@google.com> am b4f0a9f3: Merge "Fix 5326463: rework sim state handling in lockscreen" into ics-factoryrom

* commit 'b4f0a9f3894c1f039168ad672f4aa194999c7cdd':
Fix 5326463: rework sim state handling in lockscreen
3f5f83b54fad4c797f5dbd75f050e4980e839122 27-Sep-2011 Jim Miller <jaggies@google.com> Fix 5326463: rework sim state handling in lockscreen

Previously it was possible to get an inconsistent state because there
were two paths that updated the lock screen sim state. This reworks
the data flow to ensure the same path is always used to update the state.

KeyguardUpdateMonitor now correctly updates the entire state of the callee
whenever a new callback is registered.

In addition, KeyguardUpdateMonitor now caches the phone state in order
to avoid a round-trip binder call in updateEmergencyCallButtonState().
This avoids a condition that could make lockscreen unresponsive while
updating the emergency call button state.

KeyguardStatusViewManager also ensures the TransportControlView is
hidden when created to ensure we don't inappropriately update the carrier
line while waiting for the first callbacks to update the status lines.

Change-Id: I6b3975b703a7d90bac8d0fe29fbc0f1d9c5e0e7d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a0c7a5765dbbd255f9a122ba8829ca44032acde0 23-Sep-2011 Adam Cohen <adamcohen@google.com> am 08ee7fa4: Merge "Fixing emergency dialer flicker on lock screen (issue 5314293)" into ics-factoryrom

* commit '08ee7fa463aee5e83f77789e9a99f17a34ab68b4':
Fixing emergency dialer flicker on lock screen (issue 5314293)
ebcd6bb1b9ac5f898621ba25c37f2e3ccd2ff33b 22-Sep-2011 Adam Cohen <adamcohen@google.com> Fixing emergency dialer flicker on lock screen (issue 5314293)

Change-Id: Ia9bf4acb84923e200b89ee55fc53bc92877001cf
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
73da5fe0feda040b200aa60fff15024ec38d7edc 13-Sep-2011 Danielle Millett <dmillett@google.com> isPasswordEnabled and isPatternEnabled return true if used as backup method

When facelock is enabled, isPasswordEnabled or isPatternEnabled will return true depending
on which one is set as the backup method. This is a cleaner way to handle things, rather than
specific cases for facelock in all the methods that call these functions.

Change-Id: Iacb802b89626dfc13f2306de1a2e622ca9b69427
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
6edf2637e96139735df83907c221cce16d4d7eaa 06-Sep-2011 Jim Miller <jaggies@google.com> Fix 5185505: Add support for weak biometric sensors to lockscreen.

Added binder interfaces to the framework.

Change-Id: I7d55b45baa4d1600ebd2a3828e85c3357cfcfb58
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
4f36995777a4136e8e63ea51cef2ff61df48790d 20-Aug-2011 Jim Miller <jaggies@google.com> Fix 5026428: Rework unlock attempt logic with active DPM to show better messages

Prior to this change, we didn't have a mechanism to warn the user when
they were approaching the wipe data threshold dictated by active DPMs.

Here's the new flow:

- If a device policy manager is installed and sets the max
password attempts, we start warning the user when they are within
a grace period of hitting the max (currently hard-wired to 5).

- We continue to show a dialog after each continued attempt
until the user reaches 0 remaining attempts.

- We now show a message when they hit 0 so they know why their device is
being reset. The device will reboot and wipe data shortly after this final
dialog is shown.

Also increased the criteria for a pattern attempt from 3 dots to 4 dots
since the user can never set a pattern less than 4 in length. This will
greatly reduce the likelihood of a false wipe on the pattern unlock screens
without compromising security.

Change-Id: I28825ef21dfa2e2b6540e743252c6d50c41e5ad7
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
6b05d58018c2806459c121e507c005639b74aee9 18-Jul-2011 Jim Miller <jaggies@google.com> Fix 5044158: Initial pass: add music transport controls to LockScreen

Refactored all lockscreen notifications to go through new KeyguardStatusViewManager.
This is required to intercept messages originally intended for separate TextViews that
are now shown in a single view when showing the transport control view.

Refactor EmergencyCallButton to be handled by common code in KeyguardStatusViewManager.

First pass at LockScreenWidgetCallback for LockScreen "widgets" to send events back to LockScreen.

First pass at LockScreenWidgetInterface, which will be required of Views that want to be rendered on
LockScreen.

Added place-holder TransportControlView until the real one is ready and integrated it into GridLayouts.

Ensured emergencyCallButton is in all views, even if not shown since some devices may lock the user
out if certain criteria isn't met (missing SIM, etc).

Refactored layouts and removed keyguard_screen_status*.xml since layouts are all over the map and
no longer make good use of a shared layout for this.

Minor tweak to MultiWaveView to fix layout issues when placed in GridLayout where the measurement
was being calculated improperly.

Moved EmergencyCallButton to bottom of view where we can.

Removed unused Alpha keyboards from tablet password unlock layouts.

Removed unused views (status2, emergencyCallText screenLocked) from layouts and made common views have common names.

Fixed bug with MultiWave layout in landscape where array was shown in wrong orientation.

Separated clock colors for phones/tablets since they're now different.

Converted remaining phone layouts to use GridLayout.

Start routing audiomanager events to lockscreen views.

Move emergency call button handling to KeyguardStatusViewManager.

Change-Id: I480b0346cfe19aad316fea0c0aaabf8862693636
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
de4c26fa1a5adf3efa8995cbf69e45aa10111b8f 17-Jul-2011 Dianne Hackborn <hackbod@google.com> Fix a couple static leaks.

Change-Id: If2564dc822fbcb3bb3baf270ad2b3c29c78bf421
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
924b7c74960c88660d0d4bae84433c1592a81834 10-Jun-2011 John Wang <johnwang@google.com> am 4d042048: am 08a8f3f9: Merge "Set emergency call text visibility." into honeycomb-LTE

* commit '4d042048243f38d3062ab4719ac26c9154380115':
Set emergency call text visibility.
5328bf0b2e62c2719daf9154edbe81fd819974a6 09-Jun-2011 John Wang <johnwang@google.com> Set emergency call text visibility.

Set emergency call text visibility based on
emergencyCallCapable config for sim missing
and networklock screens.

bug:4392059
Change-Id: Ibfe92405ada7b452927940295c090d88ecd79519
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
de13001f765e30bc29a3a74bfa751cc42e426a93 08-Jun-2011 John Wang <johnwang@google.com> am 1f866589: am 71030e53: Merge "Add SIM PUK unlockscreen." into honeycomb-LTE

* commit '1f8665895f71904b9d757854277cb637841356c3':
Add SIM PUK unlockscreen.
0f7b3f8ba5c2f0b8f96e072bd866c9fb374ebdeb 31-May-2011 John Wang <johnwang@google.com> Add SIM PUK unlockscreen.

Puk unlockscreen is implemented as SimPukUnlockScreen.

Added config_enable_puk_unlock_screen to control the display of puk unlock screen.

Using config_voice_capable to control the display of emergency call button.

bug:4384956

Change-Id: I2b8256b4ecdf3d4f1e85c4e868fac1810cfd29be
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
e2afc2420d29c2d3d04a05ed5839c12f3b267b23 03-Jun-2011 Brian Carlstrom <bdc@google.com> KeyStore.reset changes

restore keystore reset behavior of removing master key.
otherwise after reboot keystore has is LOCKED and not UNINITIALIZED
cmds/keystore/keystore.cpp

when removing password, reset the keystore, so it doesn't remain
locked with a now bogus password.

core/java/com/android/internal/widget/LockPatternUtils.java

Change-Id: If5e0bb50b42599e9ca27a8b91d6cec12528419a1
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5cfee3fabb3482c6a6df1c8b6f21e843cf214527 31-May-2011 Brian Carlstrom <bdc@google.com> Integrating keystore with keyguard (Part 1 of 4)

Summary:

frameworks/base
keystore rewrite
keyguard integration with keystore on keyguard entry or keyguard change
KeyStore API simplification

packages/apps/Settings
Removed com.android.credentials.SET_PASSWORD intent support
Added keyguard requirement for keystore use

packages/apps/CertInstaller
Tracking KeyStore API changes
Fix for NPE in CertInstaller when certificate lacks basic constraints

packages/apps/KeyChain
Tracking KeyStore API changes

Details:

frameworks/base

Move keystore from C to C++ while rewriting password
implementation. Removed global variables. Added many comments.

cmds/keystore/Android.mk
cmds/keystore/keystore.h
cmds/keystore/keystore.c => cmds/keystore/keystore.cpp
cmds/keystore/keystore_cli.c => cmds/keystore/keystore_cli.cpp

Changed saveLockPattern and saveLockPassword to notify the keystore
on changes so that the keystore master key can be reencrypted when
the keyguard changes.

core/java/com/android/internal/widget/LockPatternUtils.java

Changed unlock screens to pass values for keystore unlock or initialization

policy/src/com/android/internal/policy/impl/PasswordUnlockScreen.java
policy/src/com/android/internal/policy/impl/PatternUnlockScreen.java

KeyStore API changes
- renamed test() to state(), which now return a State enum
- made APIs with byte[] key arguments private
- added new KeyStore.isEmpty used to determine if a keyguard is required

keystore/java/android/security/KeyStore.java

In addition to tracking KeyStore API changes, added new testIsEmpty
and improved some existing tests to validate expect values.

keystore/tests/src/android/security/KeyStoreTest.java

packages/apps/Settings

Removing com.android.credentials.SET_PASSWORD intent with the
removal of the ability to set an explicit keystore password now
that the keyguard value is used. Changed to ensure keyguard is
enabled for keystore install or unlock. Cleaned up interwoven
dialog handing into discrete dialog helper classes.

AndroidManifest.xml
src/com/android/settings/CredentialStorage.java

Remove layout for entering new password

res/layout/credentials_dialog.xml

Remove enable credentials checkbox

res/xml/security_settings_misc.xml
src/com/android/settings/SecuritySettings.java

Added ability to specify minimum quality key to ChooseLockGeneric
Activity. Used by CredentialStorage, but could also be used by
CryptKeeperSettings. Changed ChooseLockGeneric to understand
minimum quality for keystore in addition to DPM and device
encryption.

src/com/android/settings/ChooseLockGeneric.java

Changed to use getActivePasswordQuality from
getKeyguardStoredPasswordQuality based on experience in
CredentialStorage. Removed bogus class javadoc.

src/com/android/settings/CryptKeeperSettings.java

Tracking KeyStore API changes

src/com/android/settings/vpn/VpnSettings.java
src/com/android/settings/wifi/WifiSettings.java

Removing now unused string resources

res/values-af/strings.xml
res/values-am/strings.xml
res/values-ar/strings.xml
res/values-bg/strings.xml
res/values-ca/strings.xml
res/values-cs/strings.xml
res/values-da/strings.xml
res/values-de/strings.xml
res/values-el/strings.xml
res/values-en-rGB/strings.xml
res/values-es-rUS/strings.xml
res/values-es/strings.xml
res/values-fa/strings.xml
res/values-fi/strings.xml
res/values-fr/strings.xml
res/values-hr/strings.xml
res/values-hu/strings.xml
res/values-in/strings.xml
res/values-it/strings.xml
res/values-iw/strings.xml
res/values-ja/strings.xml
res/values-ko/strings.xml
res/values-lt/strings.xml
res/values-lv/strings.xml
res/values-ms/strings.xml
res/values-nb/strings.xml
res/values-nl/strings.xml
res/values-pl/strings.xml
res/values-pt-rPT/strings.xml
res/values-pt/strings.xml
res/values-rm/strings.xml
res/values-ro/strings.xml
res/values-ru/strings.xml
res/values-sk/strings.xml
res/values-sl/strings.xml
res/values-sr/strings.xml
res/values-sv/strings.xml
res/values-sw/strings.xml
res/values-th/strings.xml
res/values-tl/strings.xml
res/values-tr/strings.xml
res/values-uk/strings.xml
res/values-vi/strings.xml
res/values-zh-rCN/strings.xml
res/values-zh-rTW/strings.xml
res/values-zu/strings.xml
res/values/strings.xml

packages/apps/CertInstaller

Tracking KeyStore API changes
src/com/android/certinstaller/CertInstaller.java

Fix for NPE in CertInstaller when certificate lacks basic constraints
src/com/android/certinstaller/CredentialHelper.java

packages/apps/KeyChain

Tracking KeyStore API changes
src/com/android/keychain/KeyChainActivity.java
src/com/android/keychain/KeyChainService.java
support/src/com/android/keychain/tests/support/IKeyChainServiceTestSupport.aidl
support/src/com/android/keychain/tests/support/KeyChainServiceTestSupport.java
tests/src/com/android/keychain/tests/KeyChainServiceTest.java

Change-Id: Ic141fb5d4b43d12fe62cb1e29c7cbd891b4be35d
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
929a1c219248b62778807cac8ea256c7ac0fda6a 02-Feb-2011 Brian Carlstrom <bdc@google.com> Removing android.security.MessageDigest

Bug: 3392028
Change-Id: I6b9732da17d086ba00c846c3ad1c7fb39baf9502
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f7b3cd4efd40b7631f36ea014407a850f7dc637e 27-Jan-2011 Jason parks <jparks@google.com> Update the encryption password when the device password is changed.

* Added changeEncryptionPassword() to the MountService.
* Update LockPatternUtils to call changeEncryptionPassword()
when the password is changed.

Note we only require the new password to change the
encryption password.

Bug: 3382129
Change-Id: I26a7e919e325e75e22fa4290da0a8b1b57b55a80
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
2a98a4cbaaf3300036434dd1d44b891ea8a8c932 20-Nov-2010 Jim Miller <jaggies@google.com> Fix 3024522: Add "no lock screen" support to the framework.

This adds a new feature where LockScreen can be disabled to
allow the device to go straight to the home screen when
powered on.

Change-Id: I288e8d5359442c042ae7911340885877a864faff
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
96fd5af681513ab1eadfb17591a9771fd2dfbcff 24-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 0b7b9807 to master

Change-Id: If60aeeb47cd06dcc76b88506688c7e4b58cf2208
90881005182936e443cb6cd9fb7eff21f83206f5 24-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> Don't touch the VFS during window relayout.

yaffs2 is single-threaded and any disk access during window drawing
(or animation in this case) can cause UI stutters / unresponsiveness
for hundreds of milliseconds.

BUG=2941119

Change-Id: Ifdce8337027ab25d1ea844934fa787ffe68263c4
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
c857740f242169f2ca7fd42f0d1268661b399ad6 05-Jun-2010 Konstantin Lopyrev <klopyrev@google.com> Adding support for minimum number of non letter characters.

Change-Id: If54cb7209d65eef826d474d7e0dbbef63d2f2b47
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a15dcfaf2bc7cbd13b30db6766afe3bbaa01db97 25-May-2010 Konstantin Lopyrev <klopyrev@google.com> Fix 2677197: Adding minimum complex character support.

Change-Id: I520bc5f9aa924bf9b5585b2235a91cc96cb99c25
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
3255823de062e981f7bfc7994919207988697e45 21-May-2010 Konstantin Lopyrev <klopyrev@google.com> Fix 2673731: Adding support for password history to Device Admin.

Change-Id: If3240048813e32b2bae79fe5cb8a73aea20ec56c
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
863f22d0451d52cbcccc252ad29858ef1578e709 13-May-2010 Konstantin Lopyrev <klopyrev@google.com> Fix 2673731: Added password history

Change-Id: I88919357abea31062caf96b214823b03cbaa15a4
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
cd70988401be5919e8d1889727bb01c91d56627c 26-Mar-2010 Jim Miller <jaggies@google.com> Fix 2535700: Add support for enforcing password quality

In addition, this change removes old lockpattern constants which were set
to DevicePolicyManager constants anyway.

Change-Id: I05f7f50ca099f4bd87a2d8e1d6dd2bc6f3a2b139
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
85f2c9ce5a0e074df2429a5d66e1754e368a0430 22-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2530103: ActivePassword data in Device Policy Manager needs to be persisted

Also fixes how the quality vs. mode is handled to be more consistent, which also
required introducing a new "alphabetic" quality since it is possible for the user
to enter such a password.

The current password quality and length is stored in the DPM, since at boot it
couldn't figure this out from the stored password.

Change-Id: I519d9b76dd0b4431bcf42920c34dda38c9f1136e
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
a027c95e798d75de1165feebefb2df4d1c7c0927 13-Mar-2010 Jim Miller <jaggies@google.com> Fix 2428368: Fix most of the lockscreen orientation refresh bugs

This change removes the legacy notification of orientation and configuration changed events
from KeyguardUpdateMonitor and moves them into the individual activities. This was necessary
to guarantee order of events.

In addition, to minimize discrepencies due to notification lag, Keyguard screens (LockScreen,
PatternUnlock, etc.) are now responsible for handling onConfigurationChanged() notification and
forwarding them to LockPatternKeyguardView by a call to recreateMe() with the new configuration.

Change-Id: I703daf3e91bc6588e87c844a3ed3d259a6b8ecdf
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
2509d3c11fa247d37d023e32411e6dad15d85b85 08-Mar-2010 Dianne Hackborn <hackbod@google.com> Clear active password in device admin when password is cleared.

Fixes issue #2480213: DevicePolicyManagerService returning true
for isActivePasswordSufficient even though the current password
on the device is not sufficient.

Change-Id: I3cb11311d8696670726d969712a63a7c00cd1ce4
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
156c43545529fb3d731ffdd9c4514d38758e3f06 06-Mar-2010 Amith Yamasani <yamasani@google.com> Move lockscreen settings to secure table to prevent tampering. b/2343673

Migrate old settings to secure on upgrade.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
87bba1ee14279bb14a28d42e27c4ef66d9967bf8 27-Feb-2010 Dianne Hackborn <hackbod@google.com> Move DeviceAdmin APIs to android.app.admin.

Also add ability for admins to hide themselves when not in use,
a facility for admins to not allow other admins to reset
their password, and debug dumping.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
69ac9887459a65a0eebc6f9c450a5b6c2313d713 25-Feb-2010 Jim Miller <jaggies@google.com> Fix 2336057: Provide a way for the user to return to a call from LockScreen.

This makes the "Emergency call" button dual-purpose. If there's a call in progress,
the button will show "Return to call" and take the user back to the call.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
5b0fb3a7e8070ed366a85acc1904d2f34030445d 23-Feb-2010 Jim Miller <jaggies@google.com> Fix 2463886: Allow delayed fetching of DevicePolicyManager in LockPatternUtils.

Today we're seeing a crash that's likely caused by a change in the order in which
system services start.

The crash we're seeing happens in response to user interaction which happens after the
boot process completes, so we should re-fetch the DevicePolicyManager if we weren't
able to get it when LockPatternUtils was constructed.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
9327f4f671de3cbb795612bf4f314ceff88de865 29-Jan-2010 Dianne Hackborn <hackbod@google.com> More device policy work: clarify password modes, monkeying.

Clarifies what the password modes mean, renaming them to "quality"
and updating their documentation and the implementation to follow.

Also adds a facility to find out if a monkey is running, which I
need for the api demo to avoid letting it wipe the device.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
254cb446faa7cb13699d8150eb4cc4f44cb61a2d 28-Jan-2010 Dianne Hackborn <hackbod@google.com> More device admin.

- Clean up device policy manager APIs.
- Implement lockNow(). For now this just turns the screen off to lock the device.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
d47c6ed4a9f2b5bd31f6c806b74701428efe458b 28-Jan-2010 Dianne Hackborn <hackbod@google.com> Bite the bullet and add support for multiple device admins.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
11b019d07f4de0b25e2f863a7bcaad112d847d56 21-Jan-2010 Jim Miller <jaggies@google.com> Fix 2385283: Use device-specific salt when generating hashes for lock passwords.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
df83afaf299666e99c519aa86e7e082b7c116e95 20-Jan-2010 Dianne Hackborn <hackbod@google.com> More device policy manager / admin work.

Update API with some new features, re-arrange how you check for valid
passwords, and start hooking up the back-end implementation.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
31f90b62e8c83270094f5b0b4c75a0e06d72cd75 20-Jan-2010 Jim Miller <jaggies@google.com> Fix 2385283: Add DevicePolicyManager calls to LockScreen.
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
69aa4a953f040277c19c23208bb830f52796c8c6 23-Dec-2009 Jim Miller <jaggies@google.com> Fix 2332563: Add password-lock support to lockscreen
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
678771b8118c3289aff6814775cbb30fa8aada29 21-Aug-2009 Karl Rosaen <krosaen@android.com> New strings and utlity method tweaks associated with updated account unlock screen flow.

- 'setPermanentlyLocked(false)' no longer automatically resets the pattern
- new string for "waiting to verify account" progress dialog
- new string for account unlock screen title when you aren't past the too many
attempts, but just hit the 'forgot pattern' button
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
ba87e3e6c985e7175152993b5efcc7dd2f0e1c93 13-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@138607
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
3001a035439d8134a7d70d796376d1dfbff3cdcd 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java