Loading src/com/android/settings/notification/AppNotificationSettings.java +10 −9 Original line number Diff line number Diff line Loading @@ -161,12 +161,12 @@ public class AppNotificationSettings extends NotificationSettingsBase { } else { for (NotificationChannelGroup group : mChannelGroupList) { PreferenceCategory groupCategory = new PreferenceCategory(getPrefContext()); if (group.getName() == null) { if (group.getId() == null) { groupCategory.setTitle(mChannelGroupList.size() > 1 ? R.string.notification_channels_other : R.string.notification_channels); } else { groupCategory.setTitle(group.getName()); groupCategory.setTitle(getNotificationGroupLabel(group)); } groupCategory.setKey(group.getId()); groupCategory.setOrderingAsAdded(true); Loading Loading @@ -275,10 +275,10 @@ public class AppNotificationSettings extends NotificationSettingsBase { if (left.isDeleted() != right.isDeleted()) { return Boolean.compare(left.isDeleted(), right.isDeleted()); } if (!Objects.equals(getNotificationChannelLabel(left), getNotificationChannelLabel(right))) { return sCollator.compare(getNotificationChannelLabel(left).toString(), getNotificationChannelLabel(right).toString()); CharSequence leftName = getNotificationChannelLabel(left); CharSequence rightName = getNotificationChannelLabel(right); if (!Objects.equals(leftName, rightName)) { return sCollator.compare(leftName.toString(), rightName.toString()); } return left.getId().compareTo(right.getId()); } Loading @@ -296,10 +296,11 @@ public class AppNotificationSettings extends NotificationSettingsBase { } else if (right.getId() == null && left.getId() != null) { return -1; } CharSequence leftName = getNotificationGroupLabel(left); CharSequence rightName = getNotificationGroupLabel(right); // sort rest of the groups by name if (!Objects.equals(left.getName(), right.getName())) { return sCollator.compare(left.getName().toString(), right.getName().toString()); if (!Objects.equals(leftName, rightName)) { return sCollator.compare(leftName.toString(), rightName.toString()); } return left.getId().compareTo(right.getId()); } Loading src/com/android/settings/notification/NotificationSettingsBase.java +12 −3 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import com.android.settingslib.RestrictedSwitchPreference; import android.app.Notification; import android.app.NotificationChannel; import android.app.NotificationChannelGroup; import android.app.NotificationManager; import android.content.Context; import android.content.Intent; Loading Loading @@ -249,13 +250,21 @@ abstract public class NotificationSettingsBase extends SettingsPreferenceFragmen } } protected CharSequence getNotificationGroupLabel(NotificationChannelGroup group) { return getLabel(group.getName(), group.getNameResId()); } protected CharSequence getNotificationChannelLabel(NotificationChannel channel) { if (channel.getName() != null) { return channel.getName(); return getLabel(channel.getName(), channel.getNameResId()); } private CharSequence getLabel(CharSequence name, int nameResId) { if (!TextUtils.isEmpty(name)) { return name; } try { ApplicationInfo info = mPm.getApplicationInfoAsUser(mAppRow.pkg, 0, mAppRow.userId); return mPm.getText(mAppRow.pkg, channel.getNameResId(), info); return mPm.getText(mAppRow.pkg, nameResId, info); } catch (NameNotFoundException e) { e.printStackTrace(); } Loading Loading
src/com/android/settings/notification/AppNotificationSettings.java +10 −9 Original line number Diff line number Diff line Loading @@ -161,12 +161,12 @@ public class AppNotificationSettings extends NotificationSettingsBase { } else { for (NotificationChannelGroup group : mChannelGroupList) { PreferenceCategory groupCategory = new PreferenceCategory(getPrefContext()); if (group.getName() == null) { if (group.getId() == null) { groupCategory.setTitle(mChannelGroupList.size() > 1 ? R.string.notification_channels_other : R.string.notification_channels); } else { groupCategory.setTitle(group.getName()); groupCategory.setTitle(getNotificationGroupLabel(group)); } groupCategory.setKey(group.getId()); groupCategory.setOrderingAsAdded(true); Loading Loading @@ -275,10 +275,10 @@ public class AppNotificationSettings extends NotificationSettingsBase { if (left.isDeleted() != right.isDeleted()) { return Boolean.compare(left.isDeleted(), right.isDeleted()); } if (!Objects.equals(getNotificationChannelLabel(left), getNotificationChannelLabel(right))) { return sCollator.compare(getNotificationChannelLabel(left).toString(), getNotificationChannelLabel(right).toString()); CharSequence leftName = getNotificationChannelLabel(left); CharSequence rightName = getNotificationChannelLabel(right); if (!Objects.equals(leftName, rightName)) { return sCollator.compare(leftName.toString(), rightName.toString()); } return left.getId().compareTo(right.getId()); } Loading @@ -296,10 +296,11 @@ public class AppNotificationSettings extends NotificationSettingsBase { } else if (right.getId() == null && left.getId() != null) { return -1; } CharSequence leftName = getNotificationGroupLabel(left); CharSequence rightName = getNotificationGroupLabel(right); // sort rest of the groups by name if (!Objects.equals(left.getName(), right.getName())) { return sCollator.compare(left.getName().toString(), right.getName().toString()); if (!Objects.equals(leftName, rightName)) { return sCollator.compare(leftName.toString(), rightName.toString()); } return left.getId().compareTo(right.getId()); } Loading
src/com/android/settings/notification/NotificationSettingsBase.java +12 −3 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import com.android.settingslib.RestrictedSwitchPreference; import android.app.Notification; import android.app.NotificationChannel; import android.app.NotificationChannelGroup; import android.app.NotificationManager; import android.content.Context; import android.content.Intent; Loading Loading @@ -249,13 +250,21 @@ abstract public class NotificationSettingsBase extends SettingsPreferenceFragmen } } protected CharSequence getNotificationGroupLabel(NotificationChannelGroup group) { return getLabel(group.getName(), group.getNameResId()); } protected CharSequence getNotificationChannelLabel(NotificationChannel channel) { if (channel.getName() != null) { return channel.getName(); return getLabel(channel.getName(), channel.getNameResId()); } private CharSequence getLabel(CharSequence name, int nameResId) { if (!TextUtils.isEmpty(name)) { return name; } try { ApplicationInfo info = mPm.getApplicationInfoAsUser(mAppRow.pkg, 0, mAppRow.userId); return mPm.getText(mAppRow.pkg, channel.getNameResId(), info); return mPm.getText(mAppRow.pkg, nameResId, info); } catch (NameNotFoundException e) { e.printStackTrace(); } Loading