Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 408fd901 authored by Daniel Nishi's avatar Daniel Nishi Committed by Android (Google) Code Review
Browse files

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

parents 607b4d05 bf1f9369
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -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() {
+19 −8
Original line number Diff line number Diff line
@@ -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();
    }
}