Merge "Move legacy full disk encryption code to Settings." into nyc-dev
diff --git a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
index 355031d..4e2ebce 100644
--- a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
@@ -30,6 +30,7 @@
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.UserHandle;
+import android.os.storage.StorageManager;
 import android.provider.Settings;
 import android.text.TextUtils;
 import android.view.LayoutInflater;
@@ -191,6 +192,16 @@
         mSwitchBar.setCheckedInternal(checked);
     }
 
+    /**
+     * Return whether the device is encrypted with legacy full disk encryption. Newer devices
+     * should be using File Based Encryption.
+     *
+     * @return true if device is encrypted
+     */
+    private boolean isFullDiskEncrypted() {
+        return StorageManager.isNonDefaultBlockEncrypted();
+    }
+
     private View createEnableDialogContentView(AccessibilityServiceInfo info) {
         LayoutInflater inflater = (LayoutInflater) getSystemService(
                 Context.LAYOUT_INFLATER_SERVICE);
@@ -200,7 +211,7 @@
 
         TextView encryptionWarningView = (TextView) content.findViewById(
                 R.id.encryption_warning);
-        if (LockPatternUtils.isDeviceEncrypted()) {
+        if (isFullDiskEncrypted()) {
             String text = getString(R.string.enable_service_encryption_warning,
                     info.getResolveInfo().loadLabel(getPackageManager()));
             encryptionWarningView.setText(text);
@@ -273,7 +284,7 @@
                 // The user confirmed that they accept weaker encryption when
                 // enabling the accessibility service, so change encryption.
                 // Since we came here asynchronously, check encryption again.
-                if (LockPatternUtils.isDeviceEncrypted()) {
+                if (isFullDiskEncrypted()) {
                     mLockPatternUtils.clearEncryptionPassword();
                     Settings.Global.putInt(getContentResolver(),
                             Settings.Global.REQUIRE_PASSWORD_TO_DECRYPT, 0);
@@ -290,7 +301,7 @@
         switch (which) {
             case DialogInterface.BUTTON_POSITIVE:
                 if (mShownDialogId == DIALOG_ID_ENABLE_WARNING) {
-                    if (LockPatternUtils.isDeviceEncrypted()) {
+                    if (isFullDiskEncrypted()) {
                         String title = createConfirmCredentialReasonMessage();
                         Intent intent = ConfirmDeviceCredentialActivity.createIntent(title, null);
                         startActivityForResult(intent,