Add summary text to Apps & notifications -> Notifications

Share the summary provider for Apps & notifications -> Notifications ->
Notifications with Apps & notifications -> Notifications so that the
upper level also shows the corresponding notification summary.

Change-Id: Id6879d9a6b00237781320c18591703b3031c9627
Fix: 36376411
Test: make RunSettingsRoboTests
This commit is contained in:
Doris Ling
2017-05-22 15:58:03 -07:00
parent e2878ff155
commit 929bc614de
3 changed files with 132 additions and 5 deletions

View File

@@ -17,7 +17,6 @@ package com.android.settings.applications;
import android.app.Activity;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import com.android.settings.R;
import com.android.settings.dashboard.SummaryLoader;
@@ -29,23 +28,24 @@ import com.android.settings.notification.NotificationBackend;
*/
public class NotificationApps extends ManageApplications {
private static class SummaryProvider implements SummaryLoader.SummaryProvider {
public static class SummaryProvider implements SummaryLoader.SummaryProvider {
private final Context mContext;
private final SummaryLoader mLoader;
private final NotificationBackend mNotificationBackend;
private final PackageManagerWrapper mPackageManager;
private SummaryProvider(Context context, SummaryLoader loader) {
public SummaryProvider(Context context, SummaryLoader loader) {
mContext = context;
mLoader = loader;
mNotificationBackend = new NotificationBackend();
mPackageManager = new PackageManagerWrapperImpl(mContext.getPackageManager());
}
@Override
public void setListening(boolean listening) {
if (listening) {
new AppCounter(mContext,
new PackageManagerWrapperImpl(mContext.getPackageManager())) {
new AppCounter(mContext, mPackageManager) {
@Override
protected void onCountComplete(int num) {
updateSummary(num);

View File

@@ -16,13 +16,17 @@
package com.android.settings.notification;
import android.app.Activity;
import android.content.Context;
import android.provider.SearchIndexableResource;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.applications.NotificationApps;
import com.android.settings.applications.NotificationApps.SummaryProvider;
import com.android.settings.core.PreferenceController;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.gestures.SwipeToNotificationPreferenceController;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
@@ -78,6 +82,15 @@ public class ConfigureNotificationSettings extends DashboardFragment {
return controllers;
}
public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
= new SummaryLoader.SummaryProviderFactory() {
@Override
public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
SummaryLoader summaryLoader) {
return new NotificationApps.SummaryProvider(activity, summaryLoader);
}
};
/**
* For Search.
*/