Merge "Reduce gap above user list in multiuser settings." into tm-dev
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 214d32a..9986e34 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -1846,7 +1846,7 @@
android:exported="true"
android:clearTaskOnLaunch="true"
android:theme="@style/Theme.Settings.NoActionBar">
- <intent-filter>
+ <intent-filter android:priority="1000">
<action android:name="android.app.action.ADD_DEVICE_ADMIN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
diff --git a/res/layout/confirm_convert_fbe.xml b/res/layout/confirm_convert_fbe.xml
deleted file mode 100644
index 537c368..0000000
--- a/res/layout/confirm_convert_fbe.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical"
- android:layout_marginBottom="12dp" >
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginStart="12dp"
- android:layout_marginEnd="12dp"
- android:layout_marginTop="12dp"
- android:textSize="18sp"
- android:text="@string/confirm_convert_to_fbe_warning" />
-
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="fill_parent"
- android:layout_gravity="center"
- android:orientation="horizontal">
- <Button
- android:id="@+id/button_confirm_convert_fbe"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="bottom"
- android:layout_marginBottom="12dp"
- android:text="@string/button_confirm_convert_fbe" />
- </LinearLayout>
-
-</LinearLayout>
diff --git a/res/layout/convert_fbe.xml b/res/layout/convert_fbe.xml
deleted file mode 100644
index d1e0cea..0000000
--- a/res/layout/convert_fbe.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2015 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical"
- android:layout_marginBottom="12dp" >
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginStart="@dimen/preference_no_icon_padding_start"
- android:layout_marginEnd="12dp"
- android:layout_marginTop="12dp"
- android:textSize="18sp"
- android:text="@string/convert_to_fbe_warning" />
-
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="fill_parent"
- android:layout_gravity="center"
- android:orientation="horizontal">
- <Button
- android:id="@+id/button_convert_fbe"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="bottom"
- android:layout_marginBottom="12dp"
- android:text="@string/button_convert_fbe" />
- </LinearLayout>
-
-</LinearLayout>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index a6e2e3b..cd5f71a 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -5253,6 +5253,14 @@
<string name="accessibility_magnification_switch_shortcut_positive_button">Switch to accessibility button</string>
<!-- Title for the cancel button in accessibility switch shortcut dialog to keep the config shortcut value. [CHAR LIMIT=54] -->
<string name="accessibility_magnification_switch_shortcut_negative_button">Use triple-tap</string>
+ <!-- Title for the accessibility magnification triple tap warning dialog. [CHAR LIMIT=48] -->
+ <string name="accessibility_magnification_triple_tap_warning_title">This may slow down your keyboard</string>
+ <!-- Message for the accessibility magnification triple tap warning dialog. [CHAR LIMIT=none] -->
+ <string name="accessibility_magnification_triple_tap_warning_message">When using triple-tap to magnify part of your screen, you may notice issues over the keyboard.\n\nTo avoid this, you can change your magnification shortcut from triple-tap to another option.\n<annotation id="link">Change setting</annotation></string>
+ <!-- Title for the continue button in accessibility triple tap warning dialog to confirm the action. [CHAR LIMIT=30] -->
+ <string name="accessibility_magnification_triple_tap_warning_positive_button">Continue anyway</string>
+ <!-- Title for the cancel button in accessibility triple tap warning dialog to go back to edit. [CHAR LIMIT=12] -->
+ <string name="accessibility_magnification_triple_tap_warning_negative_button">Cancel</string>
<!-- Title for the accessibility preference screen to enable screen magnification settings. [CHAR LIMIT=35] -->
<string name="accessibility_magnification_service_settings_title">Magnification settings</string>
<!-- Title for the accessibility preference screen to enable triple-tap gesture screen magnification. [CHAR LIMIT=35] -->
@@ -9852,7 +9860,7 @@
<string name="zen_mode_people_calls_messages_section_title">Who can interrupt</string>
<!-- [CHAR LIMIT=NONE] Zen mode settings: people screen footer -->
- <string name="zen_mode_people_footer" translatable="false">Even if messaging or calling apps can\u0027t notify you, people you choose here can still reach you through those apps</string>
+ <string name="zen_mode_people_footer">Even if messaging or calling apps can\u0027t notify you, people you choose here can still reach you through those apps</string>
<!-- [CHAR LIMIT=40] Zen mode settings: Allow calls toggle title -->
<string name="zen_mode_calls_title">Calls</string>
@@ -11596,11 +11604,6 @@
<!-- Title for the See more preference item in Special app access settings [CHAR LIMIT=30] -->
<string name="special_access_more">See more</string>
- <!-- Developer option to convert to file encryption - final warning -->
- <string name="confirm_convert_to_fbe_warning">Really wipe user data and convert to file encryption?</string>
- <!-- Developer option to convert to file encryption - final button -->
- <string name="button_confirm_convert_fbe">Wipe and convert</string>
-
<!-- Reset rate-limiting in the system service ShortcutManager. "ShortcutManager" is the name of a system service and not translatable.
If the word "rate-limit" is hard to translate, use "Reset ShortcutManager API call limit" as the source text, which means
the same thing in this context.
diff --git a/res/xml/development_settings.xml b/res/xml/development_settings.xml
index 75395c0..9867419 100644
--- a/res/xml/development_settings.xml
+++ b/res/xml/development_settings.xml
@@ -92,12 +92,6 @@
android:summary="@string/runningservices_settings_summary"
android:fragment="com.android.settings.applications.RunningServices" />
- <Preference
- android:key="convert_to_file_encryption"
- android:title="@string/convert_to_file_encryption"
- android:summary="@string/convert_to_file_encryption_enabled"
- android:fragment="com.android.settings.applications.ConvertToFbe" />
-
<com.android.settings.development.ColorModePreference
android:key="picture_color_mode"
android:title="@string/picture_color_mode"
diff --git a/src/com/android/settings/applications/ConfirmConvertToFbe.java b/src/com/android/settings/applications/ConfirmConvertToFbe.java
deleted file mode 100644
index 35ddc6b..0000000
--- a/src/com/android/settings/applications/ConfirmConvertToFbe.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.settings.applications;
-
-import android.app.settings.SettingsEnums;
-import android.content.Intent;
-import android.os.Bundle;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
-
-import com.android.settings.R;
-import com.android.settings.SettingsPreferenceFragment;
-
-public class ConfirmConvertToFbe extends SettingsPreferenceFragment {
- static final String TAG = "ConfirmConvertToFBE";
-
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- View rootView = inflater.inflate(R.layout.confirm_convert_fbe, null);
-
- final Button button = (Button) rootView.findViewById(R.id.button_confirm_convert_fbe);
- button.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- Intent intent = new Intent(Intent.ACTION_FACTORY_RESET);
- intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);
- intent.setPackage("android");
- intent.putExtra(Intent.EXTRA_REASON, "convert_fbe");
- getActivity().sendBroadcast(intent);
- }
- });
-
- return rootView;
- }
-
- @Override
- public int getMetricsCategory() {
- return SettingsEnums.CONVERT_FBE_CONFIRM;
- }
-}
diff --git a/src/com/android/settings/applications/ConvertToFbe.java b/src/com/android/settings/applications/ConvertToFbe.java
deleted file mode 100644
index d470011..0000000
--- a/src/com/android/settings/applications/ConvertToFbe.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.settings.applications;
-
-import android.annotation.Nullable;
-import android.app.Activity;
-import android.app.settings.SettingsEnums;
-import android.content.Intent;
-import android.content.res.Resources;
-import android.os.Bundle;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
-
-import com.android.settings.R;
-import com.android.settings.core.InstrumentedFragment;
-import com.android.settings.core.SubSettingLauncher;
-import com.android.settings.password.ChooseLockSettingsHelper;
-
-/* Class to prompt for conversion of userdata to file based encryption
- */
-public class ConvertToFbe extends InstrumentedFragment {
- static final String TAG = "ConvertToFBE";
- private static final int KEYGUARD_REQUEST = 55;
-
- private boolean runKeyguardConfirmation(int request) {
- Resources res = getActivity().getResources();
- final ChooseLockSettingsHelper.Builder builder =
- new ChooseLockSettingsHelper.Builder(getActivity(), this);
- return builder.setRequestCode(request)
- .setTitle(res.getText(R.string.convert_to_file_encryption))
- .show();
- }
-
- @Override
- public void onCreate(@Nullable Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- getActivity().setTitle(R.string.convert_to_file_encryption);
- }
-
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- View rootView = inflater.inflate(R.layout.convert_fbe, null);
-
- final Button button = rootView.findViewById(R.id.button_convert_fbe);
- button.setOnClickListener(v -> {
- if (!runKeyguardConfirmation(KEYGUARD_REQUEST)) {
- convert();
- }
- });
-
- return rootView;
- }
-
- @Override
- public void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
-
- if (requestCode != KEYGUARD_REQUEST) {
- return;
- }
-
- // If the user entered a valid keyguard credential, start the conversion
- // process
- if (resultCode == Activity.RESULT_OK) {
- convert();
- }
- }
-
- private void convert() {
- new SubSettingLauncher(getContext())
- .setDestination(ConfirmConvertToFbe.class.getName())
- .setTitleRes(R.string.convert_to_file_encryption)
- .setSourceMetricsCategory(getMetricsCategory())
- .launch();
- }
-
- @Override
- public int getMetricsCategory() {
- return SettingsEnums.CONVERT_FBE;
- }
-}
diff --git a/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java b/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
index 636404e..085a372 100644
--- a/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
+++ b/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
@@ -505,7 +505,6 @@
controllers.add(new HdcpCheckingPreferenceController(context));
controllers.add(new BluetoothSnoopLogPreferenceController(context));
controllers.add(new OemUnlockPreferenceController(context, activity, fragment));
- controllers.add(new FileEncryptionPreferenceController(context));
controllers.add(new PictureColorModePreferenceController(context, lifecycle));
controllers.add(new WebViewAppPreferenceController(context));
controllers.add(new CoolColorTemperaturePreferenceController(context));
diff --git a/src/com/android/settings/development/FileEncryptionPreferenceController.java b/src/com/android/settings/development/FileEncryptionPreferenceController.java
deleted file mode 100644
index 82a58ba..0000000
--- a/src/com/android/settings/development/FileEncryptionPreferenceController.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.development;
-
-import android.content.Context;
-import android.os.RemoteException;
-import android.os.ServiceManager;
-import android.os.storage.IStorageManager;
-import android.text.TextUtils;
-import android.sysprop.CryptoProperties;
-import androidx.annotation.VisibleForTesting;
-import androidx.preference.Preference;
-
-import com.android.settings.R;
-import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settingslib.development.DeveloperOptionsPreferenceController;
-
-public class FileEncryptionPreferenceController extends DeveloperOptionsPreferenceController
- implements PreferenceControllerMixin {
-
- private static final String KEY_CONVERT_FBE = "convert_to_file_encryption";
- private static final String KEY_STORAGE_MANAGER = "mount";
-
- private final IStorageManager mStorageManager;
-
- public FileEncryptionPreferenceController(Context context) {
- super(context);
-
- mStorageManager = getStorageManager();
- }
-
- @Override
- public boolean isAvailable() {
- if (mStorageManager == null) {
- return false;
- }
-
- try {
- return mStorageManager.isConvertibleToFBE();
- } catch (RemoteException e) {
- return false;
- }
- }
-
- @Override
- public String getPreferenceKey() {
- return KEY_CONVERT_FBE;
- }
-
- @Override
- public void updateState(Preference preference) {
- if (CryptoProperties.type().orElse(CryptoProperties.type_values.NONE) !=
- CryptoProperties.type_values.FILE) {
- return;
- }
-
- mPreference.setEnabled(false);
- mPreference.setSummary(
- mContext.getResources().getString(R.string.convert_to_file_encryption_done));
- }
-
- private IStorageManager getStorageManager() {
- try {
- return IStorageManager.Stub.asInterface(
- ServiceManager.getService(KEY_STORAGE_MANAGER));
- } catch (VerifyError e) {
- // Used for tests since Robolectric cannot initialize this class.
- return null;
- }
- }
-}
\ No newline at end of file
diff --git a/src/com/android/settings/network/telephony/RenameMobileNetworkDialogFragment.java b/src/com/android/settings/network/telephony/RenameMobileNetworkDialogFragment.java
index 5f20894..ec48c82 100644
--- a/src/com/android/settings/network/telephony/RenameMobileNetworkDialogFragment.java
+++ b/src/com/android/settings/network/telephony/RenameMobileNetworkDialogFragment.java
@@ -184,7 +184,10 @@
phoneTitle.setVisibility(info.isOpportunistic() ? View.GONE : View.VISIBLE);
final TextView phoneNumber = view.findViewById(R.id.number_value);
- phoneNumber.setText(DeviceInfoUtils.getBidiFormattedPhoneNumber(getContext(), info));
+ final String pn = DeviceInfoUtils.getBidiFormattedPhoneNumber(getContext(), info);
+ if (!TextUtils.isEmpty(pn)) {
+ phoneNumber.setText(pn);
+ }
}
@Override
diff --git a/src/com/android/settings/wifi/dpp/WifiDppQrCodeScannerFragment.java b/src/com/android/settings/wifi/dpp/WifiDppQrCodeScannerFragment.java
index d8bdf32..528fbc3 100644
--- a/src/com/android/settings/wifi/dpp/WifiDppQrCodeScannerFragment.java
+++ b/src/com/android/settings/wifi/dpp/WifiDppQrCodeScannerFragment.java
@@ -168,10 +168,18 @@
break;
case MESSAGE_SCAN_ZXING_WIFI_FORMAT_SUCCESS:
+ final Context context = getContext();
+ if (context == null) {
+ // Context may be null if the message is received after the Activity has
+ // been destroyed
+ Log.d(TAG, "Scan success but context is null");
+ return;
+ }
+
// We may get 2 WifiConfiguration if the QR code has no password in it,
// one for open network and one for enhanced open network.
final WifiManager wifiManager =
- getContext().getSystemService(WifiManager.class);
+ context.getSystemService(WifiManager.class);
final WifiNetworkConfig qrCodeWifiNetworkConfig =
(WifiNetworkConfig)msg.obj;
final List<WifiConfiguration> qrCodeWifiConfigurations =
diff --git a/src/com/android/settings/wifi/qrcode/QrCamera.java b/src/com/android/settings/wifi/qrcode/QrCamera.java
index 3865eb1..d07c543 100644
--- a/src/com/android/settings/wifi/qrcode/QrCamera.java
+++ b/src/com/android/settings/wifi/qrcode/QrCamera.java
@@ -124,6 +124,7 @@
}
if (mCamera != null) {
mCamera.stopPreview();
+ releaseCamera();
}
}
diff --git a/tests/robotests/assets/exempt_not_implementing_index_provider b/tests/robotests/assets/exempt_not_implementing_index_provider
index d4a1c2e..6a1a1ff 100644
--- a/tests/robotests/assets/exempt_not_implementing_index_provider
+++ b/tests/robotests/assets/exempt_not_implementing_index_provider
@@ -15,7 +15,6 @@
com.android.settings.applications.appinfo.WriteSettingsDetails
com.android.settings.applications.AppLaunchSettings
com.android.settings.applications.AppStorageSettings
-com.android.settings.applications.ConfirmConvertToFbe
com.android.settings.applications.ProcessStatsDetail
com.android.settings.applications.ProcessStatsSummary
com.android.settings.applications.ProcessStatsUi
diff --git a/tests/robotests/src/com/android/settings/development/FileEncryptionPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/FileEncryptionPreferenceControllerTest.java
deleted file mode 100644
index 0784a61..0000000
--- a/tests/robotests/src/com/android/settings/development/FileEncryptionPreferenceControllerTest.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.development;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.ArgumentMatchers.anyBoolean;
-import static org.mockito.ArgumentMatchers.anyString;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.content.Context;
-import android.os.RemoteException;
-import android.os.storage.IStorageManager;
-import android.sysprop.CryptoProperties;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceScreen;
-
-import com.android.settings.R;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RobolectricTestRunner;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.util.ReflectionHelpers;
-
-@RunWith(RobolectricTestRunner.class)
-public class FileEncryptionPreferenceControllerTest {
-
- @Mock
- private Preference mPreference;
- @Mock
- private PreferenceScreen mPreferenceScreen;
- @Mock
- private IStorageManager mStorageManager;
-
- private Context mContext;
- private FileEncryptionPreferenceController mController;
-
- @Before
- public void setup() {
- MockitoAnnotations.initMocks(this);
- mContext = RuntimeEnvironment.application;
- mController = new FileEncryptionPreferenceController(mContext);
- when(mPreferenceScreen.findPreference(mController.getPreferenceKey()))
- .thenReturn(mPreference);
- }
-
- @Test
- public void isAvailable_storageManagerNull_shouldBeFalse() {
- ReflectionHelpers.setField(mController, "mStorageManager", null);
-
- assertThat(mController.isAvailable()).isFalse();
- }
-
- @Test
- public void isAvailable_notConvertibleToFBE_shouldBeFalse() throws RemoteException {
- ReflectionHelpers.setField(mController, "mStorageManager", mStorageManager);
- when(mStorageManager.isConvertibleToFBE()).thenReturn(false);
-
- assertThat(mController.isAvailable()).isFalse();
- }
-
- @Test
- public void isAvailable_convertibleToFBE_shouldBeTrue() throws RemoteException {
- ReflectionHelpers.setField(mController, "mStorageManager", mStorageManager);
- when(mStorageManager.isConvertibleToFBE()).thenReturn(true);
-
- assertThat(mController.isAvailable()).isTrue();
- }
-
- @Test
- public void updateState_settingIsNotFile_shouldDoNothing() throws RemoteException {
- ReflectionHelpers.setField(mController, "mStorageManager", mStorageManager);
- when(mStorageManager.isConvertibleToFBE()).thenReturn(true);
- mController.displayPreference(mPreferenceScreen);
- CryptoProperties.type(CryptoProperties.type_values.NONE);
-
- mController.updateState(mPreference);
-
- verify(mPreference, never()).setEnabled(anyBoolean());
- verify(mPreference, never()).setSummary(anyString());
- }
-
- @Test
- public void updateState_settingIsFile_shouldSetSummaryAndDisablePreference()
- throws RemoteException {
- ReflectionHelpers.setField(mController, "mStorageManager", mStorageManager);
- when(mStorageManager.isConvertibleToFBE()).thenReturn(true);
- mController.displayPreference(mPreferenceScreen);
- CryptoProperties.type(CryptoProperties.type_values.FILE);
-
- mController.updateState(mPreference);
-
- verify(mPreference).setEnabled(false);
- verify(mPreference).setSummary(mContext.getString(R.string.convert_to_file_encryption_done));
- }
-}