diff options
author | eray orçunus <erayorcunus@gmail.com> | 2015-06-17 16:25:45 +0300 |
---|---|---|
committer | Gerrit Code Review <gerrit@cyanogenmod.org> | 2016-02-08 15:05:36 -0800 |
commit | 52400c6f1cd6f582ce7402cac3b099d7d8f3e3b6 (patch) | |
tree | 91f7b83abaf0dcb886d8861a427f286e82d303e0 /src/com | |
parent | aa2912141dd64c1088a27958c5520b74b2807a19 (diff) | |
download | packages_apps_Settings-52400c6f1cd6f582ce7402cac3b099d7d8f3e3b6.zip packages_apps_Settings-52400c6f1cd6f582ce7402cac3b099d7d8f3e3b6.tar.gz packages_apps_Settings-52400c6f1cd6f582ce7402cac3b099d7d8f3e3b6.tar.bz2 |
lockscreen: Add option to pass swipe-up-to-unlock (2/3)
* Option appears on PIN,pattern and password methods
* User should press back button to see notifications, clock etc.
* Instantly hides keyguard if Smart Lock has unlocked phone.
CYNGNOS-1873
Change-Id: I31256770869b20842c69edb4a7a57b2bad7b3ea7
Signed-off-by: eray orçunus <erayorcunus@gmail.com>
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/settings/ChooseLockSettingsHelper.java | 8 | ||||
-rw-r--r-- | src/com/android/settings/SecuritySettings.java | 17 |
2 files changed, 24 insertions, 1 deletions
diff --git a/src/com/android/settings/ChooseLockSettingsHelper.java b/src/com/android/settings/ChooseLockSettingsHelper.java index 665bffe..11d03a7 100644 --- a/src/com/android/settings/ChooseLockSettingsHelper.java +++ b/src/com/android/settings/ChooseLockSettingsHelper.java @@ -25,6 +25,8 @@ import android.os.UserHandle; import com.android.internal.widget.LockPatternUtils; +import org.cyanogenmod.internal.util.CmLockPatternUtils; + public final class ChooseLockSettingsHelper { static final String EXTRA_KEY_TYPE = "type"; @@ -36,12 +38,14 @@ public final class ChooseLockSettingsHelper { private LockPatternUtils mLockPatternUtils; + private CmLockPatternUtils mCmLockPatternUtils; private Activity mActivity; private Fragment mFragment; public ChooseLockSettingsHelper(Activity activity) { mActivity = activity; mLockPatternUtils = new LockPatternUtils(activity); + mCmLockPatternUtils = new CmLockPatternUtils(activity); } public ChooseLockSettingsHelper(Activity activity, Fragment fragment) { @@ -53,6 +57,10 @@ public final class ChooseLockSettingsHelper { return mLockPatternUtils; } + public CmLockPatternUtils cmUtils() { + return mCmLockPatternUtils; + } + /** * If a pattern, password or PIN exists, prompt the user before allowing them to change it. * diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java index 450273b..5551b86 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -62,6 +62,9 @@ import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Index; import com.android.settings.search.Indexable; import com.android.settings.search.SearchIndexableRaw; + +import org.cyanogenmod.internal.util.CmLockPatternUtils; + import cyanogenmod.providers.CMSettings; import java.util.ArrayList; @@ -87,6 +90,7 @@ public class SecuritySettings extends SettingsPreferenceFragment // Lock Settings private static final String KEY_UNLOCK_SET_OR_CHANGE = "unlock_set_or_change"; + private static final String KEY_DIRECTLY_SHOW = "directlyshow"; private static final String KEY_VISIBLE_PATTERN = "visiblepattern"; private static final String KEY_VISIBLE_ERROR_PATTERN = "visible_error_pattern"; private static final String KEY_VISIBLE_DOTS = "visibledots"; @@ -122,7 +126,7 @@ public class SecuritySettings extends SettingsPreferenceFragment // These switch preferences need special handling since they're not all stored in Settings. private static final String SWITCH_PREFERENCE_KEYS[] = { KEY_LOCK_AFTER_TIMEOUT, - KEY_VISIBLE_PATTERN, KEY_VISIBLE_ERROR_PATTERN, KEY_VISIBLE_DOTS, + KEY_VISIBLE_PATTERN, KEY_VISIBLE_ERROR_PATTERN, KEY_VISIBLE_DOTS, KEY_DIRECTLY_SHOW, KEY_POWER_INSTANTLY_LOCKS, KEY_SHOW_PASSWORD, KEY_TOGGLE_INSTALL_APPLICATIONS }; // Only allow one trust agent on the platform. @@ -140,6 +144,7 @@ public class SecuritySettings extends SettingsPreferenceFragment private LockPatternUtils mLockPatternUtils; private ListPreference mLockAfter; + private SwitchPreference mDirectlyShow; private SwitchPreference mVisiblePattern; private SwitchPreference mVisibleErrorPattern; private SwitchPreference mVisibleDots; @@ -301,6 +306,9 @@ public class SecuritySettings extends SettingsPreferenceFragment updateLockAfterPreferenceSummary(); } + // directly show + mDirectlyShow = (SwitchPreference) root.findPreference(KEY_DIRECTLY_SHOW); + // visible pattern mVisiblePattern = (SwitchPreference) root.findPreference(KEY_VISIBLE_PATTERN); @@ -707,6 +715,10 @@ public class SecuritySettings extends SettingsPreferenceFragment createPreferenceHierarchy(); final LockPatternUtils lockPatternUtils = mChooseLockSettingsHelper.utils(); + final CmLockPatternUtils cmLockPatternUtils = mChooseLockSettingsHelper.cmUtils(); + if (mDirectlyShow != null) { + mDirectlyShow.setChecked(cmLockPatternUtils.shouldPassToSecurityView(MY_USER_ID)); + } if (mVisiblePattern != null) { mVisiblePattern.setChecked(lockPatternUtils.isVisiblePatternEnabled(MY_USER_ID)); } @@ -793,6 +805,7 @@ public class SecuritySettings extends SettingsPreferenceFragment boolean result = true; final String key = preference.getKey(); final LockPatternUtils lockPatternUtils = mChooseLockSettingsHelper.utils(); + final CmLockPatternUtils cmLockPatternUtils = mChooseLockSettingsHelper.cmUtils(); if (KEY_LOCK_AFTER_TIMEOUT.equals(key)) { int timeout = Integer.parseInt((String) value); try { @@ -802,6 +815,8 @@ public class SecuritySettings extends SettingsPreferenceFragment Log.e("SecuritySettings", "could not persist lockAfter timeout setting", e); } updateLockAfterPreferenceSummary(); + } else if (KEY_DIRECTLY_SHOW.equals(key)) { + cmLockPatternUtils.setPassToSecurityView((Boolean) value, MY_USER_ID); } else if (KEY_VISIBLE_PATTERN.equals(key)) { lockPatternUtils.setVisiblePatternEnabled((Boolean) value, MY_USER_ID); } else if (KEY_VISIBLE_ERROR_PATTERN.equals(key)) { |