Merge "Add divider line below "see all apps" preference" into oc-dr1-dev
diff --git a/res/xml/app_and_notification.xml b/res/xml/app_and_notification.xml
index 47fc378..4a5ee1d 100644
--- a/res/xml/app_and_notification.xml
+++ b/res/xml/app_and_notification.xml
@@ -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"
diff --git a/src/com/android/settings/applications/AppAndNotificationDashboardFragment.java b/src/com/android/settings/applications/AppAndNotificationDashboardFragment.java
index df1430c..e0fc2b0 100644
--- a/src/com/android/settings/applications/AppAndNotificationDashboardFragment.java
+++ b/src/com/android/settings/applications/AppAndNotificationDashboardFragment.java
@@ -50,7 +50,7 @@
@Override
public void onAttach(Context context) {
super.onAttach(context);
- mProgressiveDisclosureMixin.setTileLimit(3);
+ mProgressiveDisclosureMixin.setTileLimit(4);
}
@Override
diff --git a/src/com/android/settings/applications/RecentAppsPreferenceController.java b/src/com/android/settings/applications/RecentAppsPreferenceController.java
index f540832..dd95605 100644
--- a/src/com/android/settings/applications/RecentAppsPreferenceController.java
+++ b/src/com/android/settings/applications/RecentAppsPreferenceController.java
@@ -62,6 +62,8 @@
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<>();
@@ -78,6 +80,7 @@
private PreferenceCategory mCategory;
private Preference mSeeAllPref;
+ private Preference mDivider;
private boolean mHasRecentApps;
static {
@@ -122,12 +125,14 @@
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());
}
@@ -181,6 +186,7 @@
private void displayOnlyAppInfo() {
mCategory.setTitle(null);
+ mDivider.setVisible(false);
mSeeAllPref.setTitle(R.string.applications_settings);
mSeeAllPref.setIcon(null);
int prefCount = mCategory.getPreferenceCount();
@@ -194,6 +200,7 @@
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);
diff --git a/tests/robotests/src/com/android/settings/applications/RecentAppsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/RecentAppsPreferenceControllerTest.java
index c89fff8..4403991 100644
--- a/tests/robotests/src/com/android/settings/applications/RecentAppsPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/RecentAppsPreferenceControllerTest.java
@@ -72,6 +72,8 @@
private PreferenceCategory mCategory;
@Mock
private Preference mSeeAllPref;
+ @Mock
+ private PreferenceCategory mDivider;
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
private Context mMockContext;
@Mock
@@ -98,6 +100,8 @@
when(mScreen.findPreference(RecentAppsPreferenceController.KEY_SEE_ALL))
.thenReturn(mSeeAllPref);
+ when(mScreen.findPreference(RecentAppsPreferenceController.KEY_DIVIDER))
+ .thenReturn(mDivider);
when(mCategory.getContext()).thenReturn(mContext);
}
@@ -112,7 +116,8 @@
mController.updateNonIndexableKeys(nonIndexable);
- assertThat(nonIndexable).containsExactly(mController.getPreferenceKey());
+ assertThat(nonIndexable).containsAllOf(mController.getPreferenceKey(),
+ RecentAppsPreferenceController.KEY_DIVIDER);
}
@Test
@@ -140,6 +145,7 @@
verify(mCategory).setTitle(null);
verify(mSeeAllPref).setTitle(R.string.applications_settings);
verify(mSeeAllPref).setIcon(null);
+ verify(mDivider).setVisible(false);
}
@Test
@@ -186,6 +192,7 @@
verify(mSeeAllPref).setSummary(null);
verify(mSeeAllPref).setIcon(R.drawable.ic_chevron_right_24dp);
+ verify(mDivider).setVisible(true);
}
@Test