Remove Secure Startup option from Security Settings

Bug: 27440560
Change-Id: Iff700e4e759aea88f8e71f1fdff1837962f84a92
diff --git a/res/xml/security_settings_password_sub.xml b/res/xml/security_settings_password_sub.xml
index 4e591b8..25d00bc 100644
--- a/res/xml/security_settings_password_sub.xml
+++ b/res/xml/security_settings_password_sub.xml
@@ -35,10 +35,5 @@
                 android:title="@string/owner_info_settings_title"
                 android:summary="@string/owner_info_settings_summary"/>
 
-        <SwitchPreference
-            android:key="require_cred_before_startup"
-            android:title="@string/lockpattern_settings_require_cred_before_startup"
-            android:summary="@string/lockpattern_settings_require_password_before_startup_summary"/>
-
 
 </PreferenceScreen>
diff --git a/res/xml/security_settings_pattern_sub.xml b/res/xml/security_settings_pattern_sub.xml
index 1a16572..dcc1b64 100644
--- a/res/xml/security_settings_pattern_sub.xml
+++ b/res/xml/security_settings_pattern_sub.xml
@@ -39,10 +39,5 @@
                 android:title="@string/owner_info_settings_title"
                 android:summary="@string/owner_info_settings_summary"/>
 
-        <SwitchPreference
-            android:key="require_cred_before_startup"
-            android:title="@string/lockpattern_settings_require_cred_before_startup"
-            android:summary="@string/lockpattern_settings_require_pattern_before_startup_summary"/>
-
 
 </PreferenceScreen>
diff --git a/res/xml/security_settings_pin_sub.xml b/res/xml/security_settings_pin_sub.xml
index b69fc55..25d00bc 100644
--- a/res/xml/security_settings_pin_sub.xml
+++ b/res/xml/security_settings_pin_sub.xml
@@ -35,10 +35,5 @@
                 android:title="@string/owner_info_settings_title"
                 android:summary="@string/owner_info_settings_summary"/>
 
-        <SwitchPreference
-            android:key="require_cred_before_startup"
-            android:title="@string/lockpattern_settings_require_cred_before_startup"
-            android:summary="@string/lockpattern_settings_require_pin_before_startup_summary"/>
-
 
 </PreferenceScreen>
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java
index b45a988..92ed249 100644
--- a/src/com/android/settings/SecuritySettings.java
+++ b/src/com/android/settings/SecuritySettings.java
@@ -986,10 +986,6 @@
                 keys.add(KEY_MANAGE_TRUST_AGENTS);
             }
 
-            if (!SecuritySubSettings.canChangeRequireCredentialBeforeStartup(context)) {
-                keys.add(SecuritySubSettings.KEY_REQUIRE_CRED_BEFORE_STARTUP);
-            }
-
             return keys;
         }
     }
@@ -1001,13 +997,10 @@
         private static final String KEY_LOCK_AFTER_TIMEOUT = "lock_after_timeout";
         private static final String KEY_OWNER_INFO_SETTINGS = "owner_info_settings";
         private static final String KEY_POWER_INSTANTLY_LOCKS = "power_button_instantly_locks";
-        private static final String KEY_REQUIRE_CRED_BEFORE_STARTUP = "require_cred_before_startup";
-
-        public static final int REQUEST_CHANGE_REQUIRE_CRED_FOR_START = 2;
 
         // 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_POWER_INSTANTLY_LOCKS, KEY_REQUIRE_CRED_BEFORE_STARTUP };
+                KEY_VISIBLE_PATTERN, KEY_POWER_INSTANTLY_LOCKS };
 
         private TimeoutListPreference mLockAfter;
         private SwitchPreference mVisiblePattern;
@@ -1109,29 +1102,12 @@
                 }
             }
 
-            Preference requireCredForStartup = findPreference(KEY_REQUIRE_CRED_BEFORE_STARTUP);
-            if (requireCredForStartup instanceof SwitchPreference) {
-                ((SwitchPreference) requireCredForStartup).setChecked(
-                        mLockPatternUtils.isCredentialRequiredToDecrypt(false));
-                if (!canChangeRequireCredentialBeforeStartup(getContext())) {
-                    removePreference(KEY_REQUIRE_CRED_BEFORE_STARTUP);
-                }
-            }
-
             for (int i = 0; i < SWITCH_PREFERENCE_KEYS.length; i++) {
                 final Preference pref = findPreference(SWITCH_PREFERENCE_KEYS[i]);
                 if (pref != null) pref.setOnPreferenceChangeListener(this);
             }
         }
 
-        static boolean canChangeRequireCredentialBeforeStartup(Context context) {
-            DevicePolicyManager dpm = context.getSystemService(DevicePolicyManager.class);
-            return UserManager.get(context).isAdminUser()
-                    && UserManager.get(context).isPrimaryUser()
-                    && StorageManager.isBlockEncrypted()
-                    && !dpm.getDoNotAskCredentialsOnBoot();
-        }
-
         private void setupLockAfterPreference() {
             // Compatible with pre-Froyo
             long currentTimeout = Settings.Secure.getLong(getContentResolver(),
@@ -1239,15 +1215,6 @@
                 updateLockAfterPreferenceSummary();
             } else if (KEY_VISIBLE_PATTERN.equals(key)) {
                 mLockPatternUtils.setVisiblePatternEnabled((Boolean) value, MY_USER_ID);
-            } else if (KEY_REQUIRE_CRED_BEFORE_STARTUP.equals(key)) {
-                Bundle extras = new Bundle();
-                extras.putBoolean(
-                        ChooseLockSettingsHelper.EXTRA_KEY_FOR_CHANGE_CRED_REQUIRED_FOR_BOOT, true);
-                startFragment(this,
-                        "com.android.settings.ChooseLockGeneric$ChooseLockGenericFragment",
-                        R.string.lock_settings_picker_title, REQUEST_CHANGE_REQUIRE_CRED_FOR_START,
-                        extras);
-                return false;
             }
             return true;
         }