Commit Graph

237 Commits

Author SHA1 Message Date
Kevin Chyn
d7b4b1b951 ChooseLockPassword shows wrong string when confirmed password is wrong
Fixes: 70561469

Test: try to setup a password/pin, but type in a wrong pw/pin
      when confirming. the button should stay as "confirm" instead of
      reverting to "next"

Change-Id: Iea570c2d869b9d561b26046d30d08f40abca0c93
2018-02-28 17:28:15 -08:00
Maurice Lam
212dd952a1 Improve pattern layout for tiiiny screens
On small screens < sw400dp,
- Don't show icon
- Don't show "Screen lock options" button

Test: cd tests/robotests && mma
Bug: 72764729
Change-Id: I8d9863d43c877fcc18f504d91d3183760b3fafc2
2018-02-15 12:19:09 -08:00
Doris Ling
72489725c6 Change superclass to InstrumentedFragment.
- for fragments that do not implement the preference screen, change them
to inherit from InstrumentedFragment instead.

Change-Id: I791c2634024bd2c248efea955be5c680180d735c
Fixes: 68277111
Test: make RunSettingsRoboTests
2018-02-02 13:41:16 -08:00
Fan Zhang
73dc479ab5 Remove security settings v1 code
Change-Id: I958ed1588009b91f64cd8ecb98208e72a891903e
Fixes: 32953042
Test: robotests
2018-01-29 13:17:05 -08:00
Ajay Nadathur
7b1d96a345 Skip option missing on pattern lock screen
- Skip present during suw/deferred + non-fingerprint flow
- Skip hidden when opened from settings
- Skip hidden during suw/deferred when trying to setup up fingerprint

Test: Manually verified, robolectric tests updated
bug: 71763670
Change-Id: Ie3aac68a6d04c7727320af83532640580248bd47
2018-01-11 14:30:12 -08:00
Ajay Nadathur
b14b996dbf Propagate extras when switching between choose lock activities
bug: 71715828
Test: Manually tested, added robolectric test
Change-Id: Ide18c94f52fe896aee0636ef702cd808b7d88638
2018-01-10 14:10:54 -08:00
Ajay Nadathur
a63075f0eb Merge "Show 'screen lock options' on all lock screen types" 2018-01-05 21:19:14 +00:00
Ajay Nadathur
a1314df69c Show 'screen lock options' on all lock screen types
bug: 66239135
Test: Manually tested and verified, robo tests updated
Change-Id: I42ae63661b5d5061fea848e2c1e8a0c8943864e4
2018-01-05 11:03:31 -08:00
Jeff Sharkey
05d1b4c00e Merge "Unlock all users before moving or migrating." 2018-01-04 22:25:01 +00:00
Jeff Sharkey
219ec91e1a Unlock all users before moving or migrating.
When moving apps or shared storage between storage media on FBE
devices, we need all users to be unlocked to successfully move
the data.  This change asks the user to enter the credentials for
any locked users as part of the moving/migration wizard flows.

To do this we relax Utils.enforceSameOwner() to let us prompt for the
credentials of unrelated users, but we carefully only extend this
capability to callers interacting with the "internal" activities,
which require the MANAGE_USERS permission.

Test: builds, boots, users are unlocked before moving
Bug: 29923055, 25861755
Change-Id: Ifaeb2557c4f8c4354e1d380eaa0e413768ee239f
2017-12-19 15:07:05 -07:00
Alexandru-Andrei Rotaru
aeb3e4473b Check password blacklist when setting credential
If the password is valid by all other checks, see if it is present on
the blacklist and disallow it if it is.

Test: set a password blacklist, try and set a blacklisted password and
see an explanation, set a non-blacklisted password successfully.
Test: make ROBOTEST_FILTER=ChooseLockPasswordTest RunSettingsRoboTests

Bug: 63578054
Fix: 65659151
Change-Id: Id155b824ad4b5839c23b6f5fd3fdfdcfc78c3df1
2017-12-18 13:34:21 +00:00
Fan Zhang
e0b0e9f902 Refactor help menu stuff into a controller
This is a clean up to action bar menu item pattern, we will use the same
pattern to build search icon on all pages in a later change.

Bug: 68814716
Test: robotests
Change-Id: Iedd3ec263e8ccb63ed75ec7a95b28c00878b1de4
2017-11-29 15:51:04 -08:00
Fan Zhang
a681094e8a Convert SecuritySubSetting into DashboardFragment
Bug: 32953042
Test: robotests
Change-Id: Iecdb0a42695644ff8aa095bcd49b5ccb16aa46d4
2017-11-06 17:26:25 -08:00
TreeHugger Robot
10d0518fa3 Merge "Update confirm button label" 2017-10-30 19:09:34 +00:00
Doris Ling
ed4685fafb Update activity titles for fragments without preference screen.
1. Move getPreferenceScreenResId() from individual subclass to
InstrumentedPreferenceFragment.

2. Removed InstrumentedPreferenceFragment.getTitle() and let the
preference fragments that do not have preference screen set the activity
title directly instead.

3. Removed OptionsMenuFragment as all it does is call
setHasOptionMenu().
- changed subclasses of OptionsMenuFragment to extend from
InstrumentedPreferenceFragment directly.
- none of the exisitng subclasses actually implements the option menu
related methods to provide any option menu. So, the setHasOptionMenu()
call is not added to the subclasses.

4. Update Languages preference title.
- launch the fragment from the preference controller instead of from the
default handling, as we need the title res id at launch time to get it
work properly when retrieving the title from back stack.

Bug: 64564191
Test: blaze-bin/screenshots/android/i18nscreenshots/i18nscreenshots
Change-Id: Ibecdcab32cbaed8bf604ec5ebe0a926b4e489a7d
2017-10-26 12:01:06 -07:00
Maurice Lam
ac8024ef44 Update confirm button label
Test: Existing tests pass
Bug: 65123475
Change-Id: Ib730507db54fe2bab881fa040ead737c6736ee1a
2017-10-18 16:16:35 -07:00
Pavel Grafov
24ff765731 Preserve old password when handling SET_NEW_PASSWORD. am: 40e187b364
am: 51f15da8e6

Change-Id: I9b46697d14579ab8aedfffcdfd14ddc02cad5cf0
2017-10-17 17:35:30 +00:00
Pavel Grafov
40e187b364 Preserve old password when handling SET_NEW_PASSWORD.
Currently the only way mUserPassword can be set is when it comes
from onActivityResult. This way when the user chooses "Continue
without Pixel Imprint", and we switch ChooseLockGeneric->InternalActivity,
mUserPassword becomes null (it is not preserved in intent extras).
And then this null is used in getLockPasswordIntent which causes the issue.

Another issues is that when the user chooses to use fingerprint,
mHasChallenge is set to true and password is not forwarded to
ChooseLock(Password|Pattern). I changed the intent builders so that both
old password and challenge can be sent at the same time, so the password
is not lost when fingerprint is set.

Bug: 67672081
Test: cd packages/apps/Settings/tests/robotests/ && mma
Test: manual, adb shell am start -a android.app.action.SET_NEW_PASSWORD,
      tried setting pin/password with and without fingerprint.
Test: manual, tried to change lock via Settings -> Security&Location
Test: manual, set pin + fingerprint in Setup Wizard, FBE and FDE devices
Test: manual, set pin + added account, used pin to unlock FRP in SUW
Change-Id: I38d56d84f95c63fef24c2aa1a031d629f22756a1
2017-10-17 13:19:35 +01:00
Fan Zhang
31f699c281 Move code from SuggestionChecks to FeatureProvider
This is step one to deprecate SuggestionChecks. Moving logic into
SuggestionFeatureProvider allows potential logic override and improves
testability.

Also moved isSuggestionComplete tests to corresponding activity/pref
controller test.

Bug: 65065268
Test: robotests
Change-Id: I2071d30fc58bb84acad2083ca03cfcf7d41f10cb
2017-09-29 11:36:16 -07:00
TreeHugger Robot
4314866a22 Merge "Update strings for pattern screens" 2017-09-19 03:57:59 +00:00
Doris Ling
dee1a22c45 Consolidate all wrappers used for testing.
- Add the wrapper package and move all wrappers to the wrapper package.
- Get rid of some wrapper interface/impl implementation and have a
wrapper class directly.

Bug: 65634579
Test: make RunSettingsRoboTests
Change-Id: Ic757d8f7bacfa7a034c7e692205bc1dc4b0e1de1
2017-09-14 18:24:49 -07:00
TreeHugger Robot
a15ec6d888 Merge "Removed unused use of setting launch stack id." 2017-09-14 15:44:14 +00:00
Wale Ogunwale
0221a56c25 Removed unused use of setting launch stack id.
Why are you setting to what is already the default?

Test: N/A
Change-Id: I507d526db96d5e595e00289eea9ec84dfb87556d
2017-09-12 17:07:44 -07:00
TreeHugger Robot
06fd05eb93 Merge "Add OWNERS for folder password" 2017-09-12 23:48:55 +00:00
Maurice Lam
7f5e1960f6 Update strings for pattern screens
Test: Manual
Bug: 64339681
Change-Id: I8c68b80a000988734c13cb40e2c049a83a787f2e
2017-09-11 15:35:18 -07:00
Maurice Lam
d78ea6af4a Don't default to PIN on non FBE devices
So that EncryptionInterstitial is shown as part of the flow

Test: cd tests/robotests && mma
Bug: 65192141
Change-Id: I13e8b9059aae39cef2a8509f9f0eee1cd0808220
2017-09-08 13:31:58 -07:00
Maurice Lam
f2063cff30 Don't default to PIN on non FBE devices. DO NOT MERGE
So that EncryptionInterstitial is shown as part of the flow

Test: cd tests/robotests && mma
Bug: 65192141
Change-Id: I13e8b9059aae39cef2a8509f9f0eee1cd0808220
2017-09-08 18:58:27 +00:00
jackqdyulei
1caec026da Add OWNERS for folder password
Bug: 65294119
Test: Build
Change-Id: Id1c2d9233643a18c1e104255a9e2b8b1aaefc44e
2017-09-08 11:17:43 -07:00
Adrian Roos
1262f39600 FRP: Use SUW theme for factory reset protection flow
Bug: 37224506
Test: adb shell settings put global device_provisioned 0 && adb shell am start -a android.app.action.CONFIRM_FRP_CREDENTIAL com.android.settings; verify it uses correct theme
Change-Id: I237d8d84840398ebfdc97bf99dce07447042b349
2017-09-05 13:52:26 +02:00
Charles He
1d6cec8ca2 Merge "Clear "Wrong pattern" prompt automatically." into oc-mr1-dev 2017-08-21 16:04:38 +00:00
Charles He
caf9510923 Clear "Wrong pattern" prompt automatically.
When the user enters a wrong pattern/pin/password, a "Wrong
pattern/pin/password" text shows up on ConfirmLockPattern or
ConfirmLockPassword screen. In ConfirmLockPassword, it disappears
automatically after 3 seconds, whereas it doesn't in ConfirmLockPattern.

In this change, we make the prompt in ConfirmLockPattern disappear
automatically as well.

Bug: 64781905
Test: manual
Test: make RunSettingsRoboTests
Change-Id: I53a25576413671ced4197064d51fbcc397733265
2017-08-18 17:35:27 +01:00
Maurice Lam
209410dd2a Fix bad string reference
The source string was removed but there are still references to it.
Updating the references as well in this CL.

Test: mma with ANDROID_AAPT_IGNORE on locale files
Bug: 64763091
Change-Id: I43ef63207e884cbaa92ff3853b0f1fd690cf05f8
2017-08-16 13:39:12 -07:00
Maurice Lam
2bb6238044 Don't launch Choose Lock again if recreating
When ChooseLockGeneric is recreated, don't automatically launch
ChooseLock[Password/Pattern] even if the corresponding intent extras
are specified, because one would have been launched in the previous
onCreate.

Test: Manual
Bug: 64605627
Change-Id: I227a14abb2f4dd6c4577186a3d8164df0bec7791
2017-08-15 16:26:05 -07:00
Maurice Lam
3eb4c8333e Update strings for screen lock setup
Test: Manual, existing tests pass
Bug: 64084524
Change-Id: Iff4b004aaf504ae3d574428e41bf91fd46a66f30
2017-08-11 13:12:20 -07:00
TreeHugger Robot
0ed0319005 Merge "Show confirmation dialog when user tries to skip fingerprint" into oc-mr1-dev 2017-08-09 20:15:20 +00:00
TreeHugger Robot
54d816fd90 Merge "Misc fixes for settings" into oc-mr1-dev 2017-08-09 17:52:49 +00:00
Ajay Nadathur
bf3a135170 Show confirmation dialog when user tries to skip fingerprint
- After the user finished adding lock screen, if the user tries to skip
fingerprint setup, show a confirmation dialog

bug: 64092225
Test: Manually tested; robolectric tests also added
Change-Id: Iba5088a9db93153988942cf78f11077f427e50cb
2017-08-09 17:51:50 +00:00
TreeHugger Robot
a147d4a616 Merge "FRP: Add dedicated explanation strings for ConfirmCredential" into oc-mr1-dev 2017-08-09 13:36:40 +00:00
Adrian Roos
6600ddec73 FRP: Add dedicated explanation strings for ConfirmCredential
Change-Id: I1bf63898509032560cd302fde9dfe05473336e49
Fixes: 63958816
Test: adb shell settings put global device_provisioned 1 && adb shell am start -a android.app.action.CONFIRM_FRP_CREDENTIAL; verify strings
2017-08-09 11:08:13 +00:00
Fan Zhang
6d479d99a9 Misc fixes for settings
- Set device credential's Window flag to be SECURE. This prevents
  showing any pattern/pin in recent list.
- Disable tap sound on entity header

Fixes: 64339515
Fixes: 64413598
Test: visual
Test: runtest --path \
      tests/app/src/com/android/settings/password/ChooseLockGenericTest.java
2017-08-08 10:34:03 -07:00
Ajay Nadathur
be2246bee7 Add 'clear' button to pin/password lock screen
bug: 62904466
Test: Manually tested, added functional tests
Change-Id: I5f5555d99b47550a8fef6995222d12155b4072a9
2017-08-03 17:46:51 +00:00
Ajay Nadathur
044485b850 Merge "Use fingerprint icons during setupwizard flow" into oc-dr1-dev
am: f5ebc6f7ed

Change-Id: Ia91197e1d6ee74fd890887330da1eaeb932cd5cb
2017-07-26 22:02:33 +00:00
Ajay Nadathur
7af28ecb66 Use fingerprint icons during setupwizard flow
Use fingerprint icon when lock screens are loaded on
fingerprint setup's behalf.

bug: 63809908
Test: Manually tested and verified. Also added robolectric tests
Change-Id: I773a1eec2466e7ab626cc3330f5ce987a21b048f
2017-07-24 11:45:13 -07:00
Tarandeep Singh
f29b32b4ce Merge "Show keypad while setting PIN in setup wizard" into oc-dr1-dev am: 0288cf34f4
am: c61fc4a6bc

Change-Id: I7dc293be5cd7028131e3bb5f7f81d515a4231cc5
2017-07-15 02:11:42 +00:00
TreeHugger Robot
0288cf34f4 Merge "Show keypad while setting PIN in setup wizard" into oc-dr1-dev 2017-07-15 01:59:39 +00:00
Tarandeep Singh
b0bcbed372 Show keypad while setting PIN in setup wizard
Currently The activity not requesting showSoftInput() and hence keypad
doesn't show up.
Activity.onResume(), we should call ImeAwareEditText.scheduleSoftInput()
to request schedule ShowSoftInput() when EditText gains focus.

Fixes: 63582564
Test: Manually launch com.google.android.setupwizard/.SetupWizardTestActivity

Change-Id: Ib75ba0f361b8b46c3b717cc1ffb864726958ed82
2017-07-14 13:42:11 -07:00
TreeHugger Robot
becd4e689c Merge "Fix PIN/password lock UI update when locked out." 2017-07-14 18:25:03 +00:00
Charles He
170801b6f8 Fix PIN/password lock UI update when locked out.
The ConfirmLockPassword screen (responsible for both PIN and password
locks) should not accept any input during the lock-out period after
consecutive incorrect unlock attempts. However, this is broken if the
activity is resumed from a paused state (e.g. from Recents).

In this CL, we clean up the logic around updating the UI controls, which
fixes the issue above and also hopefully simplifies potential future
work.

Bug: 63277910
Test: make RunSettingsRoboTests
Test: manual, both unified and separate work challenge
Change-Id: I752a5911d4445bf0caeea299ca3eb182e1defc62
2017-07-13 11:44:08 +01:00
Ajay Nadathur
00dda696cd Merge "Do not show options if screen lock types is empty" into oc-dr1-dev am: 0bde6dcb18
am: 3d627974d6

Change-Id: Ib062bcdfc23008dab14622e4741fca6dc30e5950
2017-07-12 18:11:47 +00:00
Ajay Nadathur
17d66bea42 Do not show options if screen lock types is empty
Bug: 63311251
Test: Manually tested on device
Change-Id: Ia56a0791b89635efb4f8305f39b586b8054271cf
2017-07-11 18:09:49 -07:00