Loading res/values/arrays.xml +16 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,22 @@ */ --> <resources> <string-array name="incorrect_delay_entries"> <item>No delay</item> <item>0.5 seconds</item> <item>1 second</item> <item>1.5 seconds</item> <item>2 seconds</item> </string-array> <string-array name="incorrect_delay_values"> <item>0</item> <item>500</item> <item>1000</item> <item>1500</item> <item>2000</item> </string-array> <string-array name="lockpattern_pin_check_timeout_entries"> <item>0.5 seconds</item> <item>1 second</item> Loading res/values/strings.xml +1 −0 Original line number Diff line number Diff line Loading @@ -1389,6 +1389,7 @@ <string name="lockpattern_settings_show_sliders">Show sliders</string> <string name="lockpattern_settings_custom_msg">Custom message</string> <string name="lockpattern_settings_custom_msg_dialog">Enter a custom message</string> <string name="lockpattern_settings_incorrect_delay_title">Set incorrect pattern delay</string> <!-- Security & location settings screen, setting check box title. This setting controls whether tactile feedback will be produced when the user draws the pattern.--> <string name="lockpattern_settings_enable_tactile_feedback_title">Use tactile feedback</string> <!-- Security & location settings screen, setting option name when user has never set an unlock pattern --> Loading src/com/android/settings/SecuritySettings.java +28 −7 Original line number Diff line number Diff line Loading @@ -55,6 +55,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Observable; import java.util.Observer; import android.util.Log; /** * Gesture lock pattern settings. Loading @@ -65,6 +66,7 @@ public class SecuritySettings extends PreferenceActivity { private static final String KEY_LOCK_ENABLED = "lockenabled"; private static final String KEY_VISIBLE_PATTERN = "visiblepattern"; private static final String KEY_INCORRECT_DELAY = "incorrectdelay"; private static final String KEY_TACTILE_FEEDBACK_ENABLED = "tactilefeedback"; private static final String KEY_PIN_BASED_LOCKING_ENABLED = "pinbasedlocking"; private static final String KEY_PIN_CHECK_TIMEOUT = "pinlockchecktimeout"; Loading @@ -86,6 +88,7 @@ public class SecuritySettings extends PreferenceActivity { private CheckBoxPreference mShowCustomMsg; private EditTextPreference mCustomMsg; //private CheckBoxPreference mShowSliders; private ListPreference mIncorrectDelay; private CheckBoxPreference mTactileFeedback; private CheckBoxPreference mPinBasedLocking; private ListPreference mPinCheckTimeout; Loading Loading @@ -214,6 +217,15 @@ public class SecuritySettings extends PreferenceActivity { inlinePrefCat.addPreference(mShowSliders); */ // incorrect delay mIncorrectDelay = new ListPreference(this); mIncorrectDelay.setKey(KEY_INCORRECT_DELAY); mIncorrectDelay.setTitle(R.string.lockpattern_settings_incorrect_delay_title); mIncorrectDelay.setEntries(R.array.incorrect_delay_entries); mIncorrectDelay.setEntryValues(R.array.incorrect_delay_values); mIncorrectDelay.setOnPreferenceChangeListener(mIncorrectDelayChangeListener); inlinePrefCat.addPreference(mIncorrectDelay); // tactile feedback mTactileFeedback = new CheckBoxPreference(this); mTactileFeedback.setKey(KEY_TACTILE_FEEDBACK_ENABLED); Loading Loading @@ -286,6 +298,7 @@ public class SecuritySettings extends PreferenceActivity { mVisibleDots.setEnabled(patternExists); mShowErrorPath.setEnabled(patternExists); //mShowSliders.setEnabled(!patternExists); mIncorrectDelay.setEnabled(patternExists); mTactileFeedback.setEnabled(patternExists); mPinBasedLocking.setEnabled(!patternExists); mPinCheckTimeout.setEnabled(mLockPatternUtils.isPinLockingEnabled()); Loading @@ -311,16 +324,24 @@ public class SecuritySettings extends PreferenceActivity { mCredentialStorage.resume(); } private Preference.OnPreferenceChangeListener mIncorrectDelayChangeListener = new Preference.OnPreferenceChangeListener() { public boolean onPreferenceChange(Preference preference, Object newValue) { if (preference == mIncorrectDelay) { int value = Integer.parseInt(newValue.toString()); mLockPatternUtils.setIncorrectDelay(value); } return true; } }; private Preference.OnPreferenceChangeListener mOnPinCheckTimeoutChangeListener = new Preference.OnPreferenceChangeListener() { public boolean onPreferenceChange(Preference preference, Object newValue) { if (preference == mPinCheckTimeout) { String value = mPinCheckTimeout.getValue(); int index = mPinCheckTimeout.findIndexOfValue((String) newValue) + 1; mLockPatternUtils.setPinCheckTimeout(PIN_CHECK_TIMEOUT_INTERVAL * index); return true; } return true; Loading Loading
res/values/arrays.xml +16 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,22 @@ */ --> <resources> <string-array name="incorrect_delay_entries"> <item>No delay</item> <item>0.5 seconds</item> <item>1 second</item> <item>1.5 seconds</item> <item>2 seconds</item> </string-array> <string-array name="incorrect_delay_values"> <item>0</item> <item>500</item> <item>1000</item> <item>1500</item> <item>2000</item> </string-array> <string-array name="lockpattern_pin_check_timeout_entries"> <item>0.5 seconds</item> <item>1 second</item> Loading
res/values/strings.xml +1 −0 Original line number Diff line number Diff line Loading @@ -1389,6 +1389,7 @@ <string name="lockpattern_settings_show_sliders">Show sliders</string> <string name="lockpattern_settings_custom_msg">Custom message</string> <string name="lockpattern_settings_custom_msg_dialog">Enter a custom message</string> <string name="lockpattern_settings_incorrect_delay_title">Set incorrect pattern delay</string> <!-- Security & location settings screen, setting check box title. This setting controls whether tactile feedback will be produced when the user draws the pattern.--> <string name="lockpattern_settings_enable_tactile_feedback_title">Use tactile feedback</string> <!-- Security & location settings screen, setting option name when user has never set an unlock pattern --> Loading
src/com/android/settings/SecuritySettings.java +28 −7 Original line number Diff line number Diff line Loading @@ -55,6 +55,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Observable; import java.util.Observer; import android.util.Log; /** * Gesture lock pattern settings. Loading @@ -65,6 +66,7 @@ public class SecuritySettings extends PreferenceActivity { private static final String KEY_LOCK_ENABLED = "lockenabled"; private static final String KEY_VISIBLE_PATTERN = "visiblepattern"; private static final String KEY_INCORRECT_DELAY = "incorrectdelay"; private static final String KEY_TACTILE_FEEDBACK_ENABLED = "tactilefeedback"; private static final String KEY_PIN_BASED_LOCKING_ENABLED = "pinbasedlocking"; private static final String KEY_PIN_CHECK_TIMEOUT = "pinlockchecktimeout"; Loading @@ -86,6 +88,7 @@ public class SecuritySettings extends PreferenceActivity { private CheckBoxPreference mShowCustomMsg; private EditTextPreference mCustomMsg; //private CheckBoxPreference mShowSliders; private ListPreference mIncorrectDelay; private CheckBoxPreference mTactileFeedback; private CheckBoxPreference mPinBasedLocking; private ListPreference mPinCheckTimeout; Loading Loading @@ -214,6 +217,15 @@ public class SecuritySettings extends PreferenceActivity { inlinePrefCat.addPreference(mShowSliders); */ // incorrect delay mIncorrectDelay = new ListPreference(this); mIncorrectDelay.setKey(KEY_INCORRECT_DELAY); mIncorrectDelay.setTitle(R.string.lockpattern_settings_incorrect_delay_title); mIncorrectDelay.setEntries(R.array.incorrect_delay_entries); mIncorrectDelay.setEntryValues(R.array.incorrect_delay_values); mIncorrectDelay.setOnPreferenceChangeListener(mIncorrectDelayChangeListener); inlinePrefCat.addPreference(mIncorrectDelay); // tactile feedback mTactileFeedback = new CheckBoxPreference(this); mTactileFeedback.setKey(KEY_TACTILE_FEEDBACK_ENABLED); Loading Loading @@ -286,6 +298,7 @@ public class SecuritySettings extends PreferenceActivity { mVisibleDots.setEnabled(patternExists); mShowErrorPath.setEnabled(patternExists); //mShowSliders.setEnabled(!patternExists); mIncorrectDelay.setEnabled(patternExists); mTactileFeedback.setEnabled(patternExists); mPinBasedLocking.setEnabled(!patternExists); mPinCheckTimeout.setEnabled(mLockPatternUtils.isPinLockingEnabled()); Loading @@ -311,16 +324,24 @@ public class SecuritySettings extends PreferenceActivity { mCredentialStorage.resume(); } private Preference.OnPreferenceChangeListener mIncorrectDelayChangeListener = new Preference.OnPreferenceChangeListener() { public boolean onPreferenceChange(Preference preference, Object newValue) { if (preference == mIncorrectDelay) { int value = Integer.parseInt(newValue.toString()); mLockPatternUtils.setIncorrectDelay(value); } return true; } }; private Preference.OnPreferenceChangeListener mOnPinCheckTimeoutChangeListener = new Preference.OnPreferenceChangeListener() { public boolean onPreferenceChange(Preference preference, Object newValue) { if (preference == mPinCheckTimeout) { String value = mPinCheckTimeout.getValue(); int index = mPinCheckTimeout.findIndexOfValue((String) newValue) + 1; mLockPatternUtils.setPinCheckTimeout(PIN_CHECK_TIMEOUT_INTERVAL * index); return true; } return true; Loading