diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2018-11-13 19:20:38 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2018-11-13 19:20:38 +0000 |
commit | 8f516adef7ed8861fbe2387c08e3d51b72d3b39c (patch) | |
tree | b4f6bf880dbdac41a92a8d6392c2a372d76442a8 | |
parent | 6bb4b5ca4370353eb8728264672fab1d0031c006 (diff) | |
parent | 9deece9086796e52304db5105fefefad429e336b (diff) | |
download | packages_apps_Settings-android-o-mr1-iot-release-smart-display-r14.tar.gz packages_apps_Settings-android-o-mr1-iot-release-smart-display-r14.tar.bz2 packages_apps_Settings-android-o-mr1-iot-release-smart-display-r14.zip |
Merge "Allow StubVolume to be browseable in Settings"android-o-mr1-iot-release-smart-display-r9android-o-mr1-iot-release-smart-display-r8android-o-mr1-iot-release-smart-display-r5android-o-mr1-iot-release-smart-display-r4android-o-mr1-iot-release-smart-display-r39android-o-mr1-iot-release-smart-display-r30android-o-mr1-iot-release-smart-display-r22android-o-mr1-iot-release-smart-display-r14android-o-mr1-iot-release-smart-clock-r6android-o-mr1-iot-release-smart-clock-r2android-o-mr1-iot-release-smart-clock-fsiandroid-o-mr1-iot-release-smart-clock-fcs
-rw-r--r-- | src/com/android/settings/deviceinfo/StorageSettings.java | 16 | ||||
-rw-r--r-- | tests/robotests/src/com/android/settings/deviceinfo/StorageSettingsTest.java | 12 |
2 files changed, 27 insertions, 1 deletions
diff --git a/src/com/android/settings/deviceinfo/StorageSettings.java b/src/com/android/settings/deviceinfo/StorageSettings.java index 9e4a1e2732..df4a218004 100644 --- a/src/com/android/settings/deviceinfo/StorageSettings.java +++ b/src/com/android/settings/deviceinfo/StorageSettings.java @@ -144,6 +144,7 @@ public class StorageSettings extends SettingsPreferenceFragment implements Index switch (vol.getType()) { case VolumeInfo.TYPE_PRIVATE: case VolumeInfo.TYPE_PUBLIC: + case VolumeInfo.TYPE_STUB: return true; default: return false; @@ -176,7 +177,8 @@ public class StorageSettings extends SettingsPreferenceFragment implements Index final int color = COLOR_PRIVATE[privateCount++ % COLOR_PRIVATE.length]; mInternalCategory.addPreference( new StorageVolumePreference(context, vol, color, volumeTotalBytes)); - } else if (vol.getType() == VolumeInfo.TYPE_PUBLIC) { + } else if (vol.getType() == VolumeInfo.TYPE_PUBLIC + || vol.getType() == VolumeInfo.TYPE_STUB) { mExternalCategory.addPreference( new StorageVolumePreference(context, vol, COLOR_PUBLIC, 0)); } @@ -304,6 +306,8 @@ public class StorageSettings extends SettingsPreferenceFragment implements Index } else if (vol.getType() == VolumeInfo.TYPE_PUBLIC) { return handlePublicVolumeClick(getContext(), vol); + } else if (vol.getType() == VolumeInfo.TYPE_STUB) { + return handleStubVolumeClick(getContext(), vol); } } else if (key.startsWith("disk:")) { @@ -328,6 +332,16 @@ public class StorageSettings extends SettingsPreferenceFragment implements Index } @VisibleForTesting + static boolean handleStubVolumeClick(Context context, VolumeInfo vol) { + final Intent intent = vol.buildBrowseIntent(); + if (vol.isMountedReadable() && intent != null) { + context.startActivity(intent); + return true; + } + return false; + } + + @VisibleForTesting static boolean handlePublicVolumeClick(Context context, VolumeInfo vol) { final Intent intent = vol.buildBrowseIntent(); if (vol.isMountedReadable() && intent != null) { diff --git a/tests/robotests/src/com/android/settings/deviceinfo/StorageSettingsTest.java b/tests/robotests/src/com/android/settings/deviceinfo/StorageSettingsTest.java index 943bd9d263..2142e9a058 100644 --- a/tests/robotests/src/com/android/settings/deviceinfo/StorageSettingsTest.java +++ b/tests/robotests/src/com/android/settings/deviceinfo/StorageSettingsTest.java @@ -102,4 +102,16 @@ public class StorageSettingsTest { verify(mActivity, never()).startActivity(null); verify(mActivity).startActivity(any(Intent.class)); } + + @Test + public void handleStubVolumeClick_startsANonNullActivityWhenVolumeHasNoBrowse() { + VolumeInfo volumeInfo = mock(VolumeInfo.class, RETURNS_DEEP_STUBS); + when(volumeInfo.isMountedReadable()).thenReturn(true); + + StorageSettings.handleStubVolumeClick(mActivity, volumeInfo); + + verify(mActivity, never()).startActivity(null); + verify(mActivity).startActivity(any(Intent.class)); + } + } |