Merge "Use a config flag instead of a RO flag for showing Manage Storage."

This commit is contained in:
Daniel Nishi
2016-09-19 20:36:02 +00:00
committed by Android (Google) Code Review
3 changed files with 49 additions and 5 deletions

View File

@@ -55,4 +55,7 @@
<!-- When true enable gesture setting. --> <!-- When true enable gesture setting. -->
<bool name="config_gesture_settings_enabled">false</bool> <bool name="config_gesture_settings_enabled">false</bool>
<!-- If the Storage Manager settings are enabled. -->
<bool name="config_storage_manager_settings_enabled">false</bool>
</resources> </resources>

View File

@@ -30,7 +30,6 @@ import android.content.pm.PackageManager;
import android.content.pm.UserInfo; import android.content.pm.UserInfo;
import android.os.Bundle; import android.os.Bundle;
import android.os.Environment; import android.os.Environment;
import android.os.SystemProperties;
import android.os.UserHandle; import android.os.UserHandle;
import android.os.UserManager; import android.os.UserManager;
import android.os.storage.StorageEventListener; import android.os.storage.StorageEventListener;
@@ -93,8 +92,6 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
private static final String AUTHORITY_MEDIA = "com.android.providers.media.documents"; private static final String AUTHORITY_MEDIA = "com.android.providers.media.documents";
private static final String STORAGE_MANAGER_PROPERTY = "ro.storage_manager.enabled";
private static final int[] ITEMS_NO_SHOW_SHARED = new int[] { private static final int[] ITEMS_NO_SHOW_SHARED = new int[] {
R.string.storage_detail_apps, R.string.storage_detail_apps,
R.string.storage_detail_system, R.string.storage_detail_system,
@@ -218,7 +215,7 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
screen.removeAll(); screen.removeAll();
if (SystemProperties.getBoolean(STORAGE_MANAGER_PROPERTY, false)) { if (getResources().getBoolean(R.bool.config_storage_manager_settings_enabled)) {
addPreference(screen, mAutomaticStorageManagement); addPreference(screen, mAutomaticStorageManagement);
} }
addPreference(screen, mSummary); addPreference(screen, mSummary);
@@ -410,7 +407,8 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
mount.setVisible(false); mount.setVisible(false);
unmount.setVisible(false); unmount.setVisible(false);
format.setVisible(false); format.setVisible(false);
manage.setVisible(SystemProperties.getBoolean(STORAGE_MANAGER_PROPERTY, false)); manage.setVisible(getResources().getBoolean(
R.bool.config_storage_manager_settings_enabled));
} else { } else {
rename.setVisible(mVolume.getType() == VolumeInfo.TYPE_PRIVATE); rename.setVisible(mVolume.getType() == VolumeInfo.TYPE_PRIVATE);
mount.setVisible(mVolume.getState() == VolumeInfo.STATE_UNMOUNTED); mount.setVisible(mVolume.getState() == VolumeInfo.STATE_UNMOUNTED);

View File

@@ -0,0 +1,43 @@
/*
* 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.tests;
import android.app.Instrumentation;
import android.content.Intent;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest;
import android.support.test.runner.AndroidJUnit4;
import com.android.settings.Settings;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.assertion.ViewAssertions.doesNotExist;
import static android.support.test.espresso.assertion.ViewAssertions.matches;
import static android.support.test.espresso.matcher.ViewMatchers.withText;
@RunWith(AndroidJUnit4.class)
@SmallTest
public class PrivateVolumeSettingsTest {
@Test
public void test_ManageStorageNotShown() {
Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();
instrumentation.startActivitySync(
new Intent(android.provider.Settings.ACTION_INTERNAL_STORAGE_SETTINGS));
onView(withText(com.android.settings.R.string.storage_menu_manage)).check(doesNotExist());
}
}