Update empty state for apps bypassing dnd
Test: atest Fixes: 150346679 Change-Id: Iccc5f1fb3dd7ee2c114f8757a020833b3b41e91d
This commit is contained in:
@@ -105,9 +105,7 @@ public class ZenModeAllBypassingAppsPreferenceController extends AbstractPrefere
|
||||
ApplicationsState.AppFilter filter = ApplicationsState.FILTER_ALL_ENABLED;
|
||||
List<ApplicationsState.AppEntry> apps = mAppSession.rebuild(filter,
|
||||
ApplicationsState.ALPHA_COMPARATOR);
|
||||
if (apps != null) {
|
||||
updateNotificationChannelList(apps);
|
||||
}
|
||||
updateNotificationChannelList(apps);
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
@@ -116,6 +114,8 @@ public class ZenModeAllBypassingAppsPreferenceController extends AbstractPrefere
|
||||
return;
|
||||
}
|
||||
|
||||
boolean showEmptyState = true;
|
||||
|
||||
List<Preference> channelsBypassingDnd = new ArrayList<>();
|
||||
for (ApplicationsState.AppEntry entry : apps) {
|
||||
String pkg = entry.info.packageName;
|
||||
@@ -148,6 +148,7 @@ public class ZenModeAllBypassingAppsPreferenceController extends AbstractPrefere
|
||||
return true;
|
||||
});
|
||||
channelsBypassingDnd.add(pref);
|
||||
showEmptyState = false;
|
||||
}
|
||||
|
||||
mPreferenceScreen.removeAll();
|
||||
@@ -156,6 +157,11 @@ public class ZenModeAllBypassingAppsPreferenceController extends AbstractPrefere
|
||||
mPreferenceScreen.addPreference(prefToAdd);
|
||||
}
|
||||
}
|
||||
if (showEmptyState) {
|
||||
Preference pref = new Preference(mPrefContext);
|
||||
pref.setTitle(R.string.zen_mode_bypassing_apps_subtext_none);
|
||||
mPreferenceScreen.addPreference(pref);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -9,7 +9,7 @@ import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
|
||||
public class ZenModeBypassingAppsPreferenceController extends AbstractZenModePreferenceController {
|
||||
|
||||
protected static final String KEY = "zen_mode_bypassing_apps";
|
||||
protected static final String KEY = "zen_mode_behavior_apps";
|
||||
private NotificationBackend mNotificationBackend = new NotificationBackend();
|
||||
|
||||
public ZenModeBypassingAppsPreferenceController(Context context, Lifecycle lifecycle) {
|
||||
@@ -18,13 +18,16 @@ public class ZenModeBypassingAppsPreferenceController extends AbstractZenModePre
|
||||
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
return mNotificationBackend.getNumAppsBypassingDnd(UserHandle.getCallingUserId()) != 0;
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSummary() {
|
||||
final int channelsBypassing =
|
||||
mNotificationBackend.getNumAppsBypassingDnd(UserHandle.getCallingUserId());
|
||||
if (channelsBypassing == 0) {
|
||||
return mContext.getResources().getString(R.string.zen_mode_bypassing_apps_subtext_none);
|
||||
}
|
||||
return mContext.getResources().getQuantityString(R.plurals.zen_mode_bypassing_apps_subtext,
|
||||
channelsBypassing, channelsBypassing);
|
||||
}
|
||||
|
Reference in New Issue
Block a user