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

Commit 6cd558e5 authored by Fan Zhang's avatar Fan Zhang
Browse files

Add divider line below "see all apps" preference

Change-Id: I94cbf47fd987a6ff4c4fabcc3124fae1f0438876
Fix: 62040104
Test: make RunSettingsRoboTests
parent 7fe3dfc4
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -40,6 +40,11 @@
        </Preference>
    </PreferenceCategory>

    <!-- Empty category to draw divider -->
    <PreferenceCategory
        android:key="all_app_info_divider"
        android:order="-190"/>

    <Preference
        android:key="manage_perms"
        android:title="@string/app_permissions"
+7 −0
Original line number Diff line number Diff line
@@ -61,6 +61,8 @@ public class RecentAppsPreferenceController extends PreferenceController
    private static final String TAG = "RecentAppsCtrl";
    private static final String KEY_PREF_CATEGORY = "recent_apps_category";
    @VisibleForTesting
    static final String KEY_DIVIDER = "all_app_info_divider";
    @VisibleForTesting
    static final String KEY_SEE_ALL = "all_app_info";
    private static final int SHOW_RECENT_APP_COUNT = 5;
    private static final Set<String> SKIP_SYSTEM_PACKAGES = new ArraySet<>();
@@ -77,6 +79,7 @@ public class RecentAppsPreferenceController extends PreferenceController

    private PreferenceCategory mCategory;
    private Preference mSeeAllPref;
    private Preference mDivider;
    private boolean mHasRecentApps;

    static {
@@ -121,12 +124,14 @@ public class RecentAppsPreferenceController extends PreferenceController
        super.updateNonIndexableKeys(keys);
        // Don't index category name into search. It's not actionable.
        keys.add(KEY_PREF_CATEGORY);
        keys.add(KEY_DIVIDER);
    }

    @Override
    public void displayPreference(PreferenceScreen screen) {
        mCategory = (PreferenceCategory) screen.findPreference(getPreferenceKey());
        mSeeAllPref = screen.findPreference(KEY_SEE_ALL);
        mDivider = screen.findPreference(KEY_DIVIDER);
        super.displayPreference(screen);
        refreshUi(mCategory.getContext());
    }
@@ -180,6 +185,7 @@ public class RecentAppsPreferenceController extends PreferenceController

    private void displayOnlyAppInfo() {
        mCategory.setTitle(null);
        mDivider.setVisible(false);
        mSeeAllPref.setTitle(R.string.applications_settings);
        mSeeAllPref.setIcon(null);
        int prefCount = mCategory.getPreferenceCount();
@@ -193,6 +199,7 @@ public class RecentAppsPreferenceController extends PreferenceController

    private void displayRecentApps(Context prefContext, List<UsageStats> recentApps) {
        mCategory.setTitle(R.string.recent_app_category_title);
        mDivider.setVisible(true);
        mSeeAllPref.setSummary(null);
        mSeeAllPref.setIcon(R.drawable.ic_chevron_right_24dp);

+8 −1
Original line number Diff line number Diff line
@@ -68,6 +68,8 @@ public class RecentAppsPreferenceControllerTest {
    private PreferenceCategory mCategory;
    @Mock
    private Preference mSeeAllPref;
    @Mock
    private PreferenceCategory mDivider;
    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
    private Context mMockContext;
    @Mock
@@ -94,6 +96,8 @@ public class RecentAppsPreferenceControllerTest {

        when(mScreen.findPreference(RecentAppsPreferenceController.KEY_SEE_ALL))
                .thenReturn(mSeeAllPref);
        when(mScreen.findPreference(RecentAppsPreferenceController.KEY_DIVIDER))
                .thenReturn(mDivider);
        when(mCategory.getContext()).thenReturn(mContext);
    }

@@ -108,7 +112,8 @@ public class RecentAppsPreferenceControllerTest {

        mController.updateNonIndexableKeys(nonIndexable);

        assertThat(nonIndexable).containsExactly(mController.getPreferenceKey());
        assertThat(nonIndexable).containsAllOf(mController.getPreferenceKey(),
                RecentAppsPreferenceController.KEY_DIVIDER);
    }

    @Test
@@ -136,6 +141,7 @@ public class RecentAppsPreferenceControllerTest {
        verify(mCategory).setTitle(null);
        verify(mSeeAllPref).setTitle(R.string.applications_settings);
        verify(mSeeAllPref).setIcon(null);
        verify(mDivider).setVisible(false);
    }

    @Test
@@ -180,6 +186,7 @@ public class RecentAppsPreferenceControllerTest {

        verify(mSeeAllPref).setSummary(null);
        verify(mSeeAllPref).setIcon(R.drawable.ic_chevron_right_24dp);
        verify(mDivider).setVisible(true);
    }

    @Test