OSDN Git Service

Fix 5428748: Added more options for biometric weak
authorDanielle Millett <dmillett@google.com>
Wed, 19 Oct 2011 17:58:30 +0000 (13:58 -0400)
committerDanielle Millett <dmillett@google.com>
Wed, 19 Oct 2011 17:58:30 +0000 (13:58 -0400)
Adding make pattern visible (for pattern backup only) and vibrate
on touch as options for when biometric weak is enabled.

Change-Id: I6319f4f321779ebc6cf4acbfc0dd49b5014c0c88

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

index 42af769..14d28f2 100644 (file)
             android:summary="@string/unlock_set_unlock_mode_biometric_weak"
             android:persistent="false"/>
 
+        <CheckBoxPreference
+            android:key="visiblepattern"
+            android:title="@string/lockpattern_settings_enable_visible_pattern_title"/>
+
         <ListPreference
             android:key="lock_after_timeout"
             android:title="@string/lock_after_timeout"
             android:entryValues="@array/lock_after_timeout_values"
             android:persistent="false"/>
 
+        <CheckBoxPreference
+            android:key="unlock_tactile_feedback"
+            android:title="@string/lockpattern_settings_enable_tactile_feedback_title"/>
+
         <PreferenceScreen
             android:fragment="com.android.settings.OwnerInfoSettings"
             android:key="owner_info_settings"
index 6023389..5df5805 100644 (file)
@@ -123,7 +123,6 @@ public class SecuritySettings extends SettingsPreferenceFragment
                     resid = R.xml.security_settings_password;
                     break;
             }
-            // TODO: enable facepass options
         }
         addPreferencesFromResource(resid);
 
@@ -153,6 +152,17 @@ public class SecuritySettings extends SettingsPreferenceFragment
         // visible pattern
         mVisiblePattern = (CheckBoxPreference) root.findPreference(KEY_VISIBLE_PATTERN);
 
+        // don't display visible pattern if biometric and backup is not pattern
+        if (resid == R.xml.security_settings_biometric_weak &&
+                mLockPatternUtils.getKeyguardStoredPasswordQuality() !=
+                DevicePolicyManager.PASSWORD_QUALITY_SOMETHING) {
+            PreferenceGroup securityCategory = (PreferenceGroup)
+                    root.findPreference(KEY_SECURITY_CATEGORY);
+            if (securityCategory != null && mVisiblePattern != null) {
+                securityCategory.removePreference(root.findPreference(KEY_VISIBLE_PATTERN));
+            }
+        }
+
         // tactile feedback. Should be common to all unlock preference screens.
         mTactileFeedback = (CheckBoxPreference) root.findPreference(KEY_TACTILE_FEEDBACK_ENABLED);
         if (!((Vibrator) getSystemService(Context.VIBRATOR_SERVICE)).hasVibrator()) {