Merge "Fix a bug where override filter was always on." into oc-dev am: 408fd90102

am: 7d50d9db12

Change-Id: Ie9e9b3978e7a2f52fdd63e203a740068188dc285
This commit is contained in:
Daniel Nishi
2017-05-04 17:38:31 +00:00
committed by android-build-merger
2 changed files with 27 additions and 12 deletions

View File

@@ -17,6 +17,7 @@
package com.android.settings.applications;
import android.annotation.IdRes;
import android.annotation.Nullable;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
@@ -416,12 +417,15 @@ public class ManageApplications extends InstrumentedPreferenceFragment
if (mListType == LIST_TYPE_HIGH_POWER) {
mFilterAdapter.enableFilter(FILTER_APPS_POWER_WHITELIST_ALL);
}
// Storage filters below.
mApplications.setOverrideFilter(getStorageFilter(mListType, mStorageType, mVolumeUuid));
AppFilter overrideFilter = getOverrideFilter(mListType, mStorageType, mVolumeUuid);
if (overrideFilter != null) {
mApplications.setOverrideFilter(overrideFilter);
}
}
@VisibleForTesting
static AppFilter getStorageFilter(int listType, int storageType, String volumeUuid) {
static @Nullable AppFilter getOverrideFilter(int listType, int storageType, String volumeUuid) {
AppFilter filter = new VolumeFilter(volumeUuid);
if (listType == LIST_TYPE_STORAGE) {
if (storageType == STORAGE_TYPE_MUSIC) {
@@ -437,7 +441,7 @@ public class ManageApplications extends InstrumentedPreferenceFragment
return new CompoundFilter(ApplicationsState.FILTER_MOVIES, filter);
}
return filter;
return null;
}
private int getDefaultFilter() {

View File

@@ -23,14 +23,15 @@ import static org.mockito.Mockito.mock;
import android.content.pm.ApplicationInfo;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.applications.ApplicationsState.AppFilter;
import org.junit.Test;
public class ManageApplicationsTest {
@Test
public void getStorageFilter_filtersVolumeForAudio() {
ApplicationsState.AppFilter filter =
ManageApplications.getStorageFilter(
public void getOverrideFilter_filtersVolumeForAudio() {
AppFilter filter =
ManageApplications.getOverrideFilter(
ManageApplications.LIST_TYPE_STORAGE,
ManageApplications.STORAGE_TYPE_MUSIC,
"uuid");
@@ -44,9 +45,9 @@ public class ManageApplicationsTest {
}
@Test
public void getStorageFilter_filtersVolumeForVideo() {
ApplicationsState.AppFilter filter =
ManageApplications.getStorageFilter(
public void getOverrideFilter_filtersVolumeForVideo() {
AppFilter filter =
ManageApplications.getOverrideFilter(
ManageApplications.LIST_TYPE_MOVIES,
ManageApplications.STORAGE_TYPE_DEFAULT,
"uuid");
@@ -60,9 +61,9 @@ public class ManageApplicationsTest {
}
@Test
public void getStorageFilter_filtersVolumeForGames() {
public void getOverrideFilter_filtersVolumeForGames() {
ApplicationsState.AppFilter filter =
ManageApplications.getStorageFilter(
ManageApplications.getOverrideFilter(
ManageApplications.LIST_TYPE_GAMES,
ManageApplications.STORAGE_TYPE_DEFAULT,
"uuid");
@@ -74,4 +75,14 @@ public class ManageApplicationsTest {
assertThat(filter.filterApp(appEntry)).isTrue();
}
@Test
public void getOverrideFilter_isEmptyNormally() {
ApplicationsState.AppFilter filter =
ManageApplications.getOverrideFilter(
ManageApplications.LIST_TYPE_MAIN,
ManageApplications.STORAGE_TYPE_DEFAULT,
"uuid");
assertThat(filter).isNull();
}
}