Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 16af939b authored by Wysie's avatar Wysie
Browse files

Added settings for lockscreen.

parent 1304a486
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1383,6 +1383,12 @@
    <string name="lockpattern_settings_enable_pin_based_locking">Enable PIN lock</string>
    <string name="lockpattern_settings_set_pin_check_timeout">Set PIN check timeout</string>
    <string name="lockpattern_settings_enable_visible_pattern_title">Use visible pattern</string>
    <string name="lockpattern_settings_enable_visible_dots_title">Use visible dots</string>
    <string name="lockpattern_settings_show_error_path">Show incorrect path on error</string>
    <string name="lockpattern_settings_show_custom_msg">Show custom message</string>
    <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>
    <!-- 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 -->
+73 −2
Original line number Diff line number Diff line
@@ -68,6 +68,10 @@ public class SecuritySettings extends PreferenceActivity {
    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";
    private static final String KEY_VISIBLE_DOTS = "visibledots";
    private static final String KEY_SHOW_ERROR_PATH = "showerrorpath";
    private static final String KEY_SHOW_CUSTOM_MSG = "showcustommsg";
    private static final String KEY_SHOW_SLIDERS = "showsliders";

    private static final int CONFIRM_PATTERN_THEN_DISABLE_AND_CLEAR_REQUEST_CODE = 55;

@@ -77,6 +81,11 @@ public class SecuritySettings extends PreferenceActivity {
    private LockPatternUtils mLockPatternUtils;
    private CheckBoxPreference mLockEnabled;
    private CheckBoxPreference mVisiblePattern;
    private CheckBoxPreference mVisibleDots;
    private CheckBoxPreference mShowErrorPath;
    private CheckBoxPreference mShowCustomMsg;
    private EditTextPreference mCustomMsg;
    //private CheckBoxPreference mShowSliders;
    private CheckBoxPreference mTactileFeedback;
    private CheckBoxPreference mPinBasedLocking;
    private ListPreference mPinCheckTimeout;
@@ -172,6 +181,39 @@ public class SecuritySettings extends PreferenceActivity {
        mVisiblePattern.setTitle(R.string.lockpattern_settings_enable_visible_pattern_title);
        inlinePrefCat.addPreference(mVisiblePattern);
        
        // visible dots
        mVisibleDots = new CheckBoxPreference(this);
        mVisibleDots.setKey(KEY_VISIBLE_DOTS);
        mVisibleDots.setTitle(R.string.lockpattern_settings_enable_visible_dots_title);
        inlinePrefCat.addPreference(mVisibleDots);
        
        // error path
        mShowErrorPath = new CheckBoxPreference(this);
        mShowErrorPath.setKey(KEY_SHOW_ERROR_PATH);
        mShowErrorPath.setTitle(R.string.lockpattern_settings_show_error_path);
        inlinePrefCat.addPreference(mShowErrorPath);

        // show custom msg
        mShowCustomMsg = new CheckBoxPreference(this);
        mShowCustomMsg.setKey(KEY_SHOW_CUSTOM_MSG);
        mShowCustomMsg.setTitle(R.string.lockpattern_settings_show_custom_msg);
        inlinePrefCat.addPreference(mShowCustomMsg);
        
        // custom msg
        mCustomMsg = new EditTextPreference(this);
        mCustomMsg.setTitle(R.string.lockpattern_settings_custom_msg);
        mCustomMsg.setDialogTitle(R.string.lockpattern_settings_custom_msg_dialog);
        mCustomMsg.setOnPreferenceChangeListener(mOnCustomMsgChangeListener);
        inlinePrefCat.addPreference(mCustomMsg);

        // show sliders
        /*
        mShowSliders = new CheckBoxPreference(this);
        mShowSliders.setKey(KEY_SHOW_SLIDERS);
        mShowSliders.setTitle(R.string.lockpattern_settings_show_sliders);
        inlinePrefCat.addPreference(mShowSliders);
        */

        // tactile feedback
        mTactileFeedback = new CheckBoxPreference(this);
        mTactileFeedback.setKey(KEY_TACTILE_FEEDBACK_ENABLED);
@@ -241,12 +283,20 @@ public class SecuritySettings extends PreferenceActivity {
        boolean patternExists = mLockPatternUtils.savedPatternExists();
        mLockEnabled.setEnabled(patternExists);
        mVisiblePattern.setEnabled(patternExists);
        mVisibleDots.setEnabled(patternExists);
        mShowErrorPath.setEnabled(patternExists);
        //mShowSliders.setEnabled(!patternExists);        
        mTactileFeedback.setEnabled(patternExists);
        mPinBasedLocking.setEnabled(!patternExists);
        mPinCheckTimeout.setEnabled(mLockPatternUtils.isPinLockingEnabled());

        mLockEnabled.setChecked(mLockPatternUtils.isLockPatternEnabled());
        mVisiblePattern.setChecked(mLockPatternUtils.isVisiblePatternEnabled());
        mVisibleDots.setChecked(mLockPatternUtils.isVisibleDotsEnabled());
        mShowErrorPath.setChecked(mLockPatternUtils.isShowErrorPath());
        mShowCustomMsg.setChecked(mLockPatternUtils.isShowCustomMsg());
        mCustomMsg.setText(mLockPatternUtils.getCustomMsg());
        //mShowSliders.setChecked(mLockPatternUtils.isShowSliders());
        mTactileFeedback.setChecked(mLockPatternUtils.isTactileFeedbackEnabled());
        mPinBasedLocking.setChecked(mLockPatternUtils.isPinLockingEnabled());
        
@@ -277,16 +327,37 @@ public class SecuritySettings extends PreferenceActivity {
			}
		};
		
    private Preference.OnPreferenceChangeListener mOnCustomMsgChangeListener =
    	new Preference.OnPreferenceChangeListener() {
			public boolean onPreferenceChange(Preference preference, Object newValue) {
				if (preference == mCustomMsg) {
					mLockPatternUtils.setCustomMsg(newValue.toString());
				}

				return true;
			}
		};
    
    @Override
    public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen,
            Preference preference) {
        final String key = preference.getKey();

        if (KEY_LOCK_ENABLED.equals(key)) {
            mLockPatternUtils.setLockPatternEnabled(isToggled(preference));
            boolean patternEnabled = isToggled(preference);            
            mLockPatternUtils.setLockPatternEnabled(patternEnabled);
            //mShowSliders.setEnabled(!patternEnabled);
        } else if (KEY_VISIBLE_PATTERN.equals(key)) {
            mLockPatternUtils.setVisiblePatternEnabled(isToggled(preference));
        } else if (KEY_TACTILE_FEEDBACK_ENABLED.equals(key)) {
        } else if (KEY_VISIBLE_DOTS.equals(key)) {
            mLockPatternUtils.setVisibleDotsEnabled(isToggled(preference));
        } else if (KEY_SHOW_ERROR_PATH.equals(key)) {
            mLockPatternUtils.setShowErrorPath(isToggled(preference));
        } else if (KEY_SHOW_CUSTOM_MSG.equals(key)) {
            mLockPatternUtils.setShowCustomMsg(isToggled(preference));
        } /*else if (KEY_SHOW_SLIDERS.equals(key)) {
            mLockPatternUtils.setShowSliders(isToggled(preference));  
        }*/ else if (KEY_TACTILE_FEEDBACK_ENABLED.equals(key)) {
            mLockPatternUtils.setTactileFeedbackEnabled(isToggled(preference));
        } else if (KEY_PIN_BASED_LOCKING_ENABLED.equals(key)) {
            mLockPatternUtils.setPinLockingEnabled(isToggled(preference));