System notif channels updated on locale change
- both System and SystemUi notification channels' names change on locale update Change-Id: I0d23fe9b008c608c54ac178a97c2f682aa46d954 Fixes: 64887866 Test: manual
This commit is contained in:
@@ -29,30 +29,16 @@ import android.os.SystemProperties;
|
||||
import android.os.Trace;
|
||||
import android.os.UserHandle;
|
||||
import android.util.ArraySet;
|
||||
import android.util.TimingsTraceLog;
|
||||
import android.util.Log;
|
||||
import android.util.TimingsTraceLog;
|
||||
|
||||
import com.android.systemui.globalactions.GlobalActionsComponent;
|
||||
import com.android.systemui.keyboard.KeyboardUI;
|
||||
import com.android.systemui.keyguard.KeyguardViewMediator;
|
||||
import com.android.systemui.media.RingtonePlayer;
|
||||
import com.android.systemui.pip.PipUI;
|
||||
import com.android.systemui.plugins.OverlayPlugin;
|
||||
import com.android.systemui.plugins.PluginListener;
|
||||
import com.android.systemui.plugins.PluginManager;
|
||||
import com.android.systemui.power.PowerUI;
|
||||
import com.android.systemui.recents.Recents;
|
||||
import com.android.systemui.shortcut.ShortcutKeyDispatcher;
|
||||
import com.android.systemui.stackdivider.Divider;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
import com.android.systemui.statusbar.phone.StatusBarWindowManager;
|
||||
import com.android.systemui.usb.StorageNotification;
|
||||
import com.android.systemui.util.NotificationChannels;
|
||||
import com.android.systemui.util.leak.GarbageMonitor;
|
||||
import com.android.systemui.volume.VolumeUI;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -99,6 +85,10 @@ public class SystemUIApplication extends Application implements SysUiServiceProv
|
||||
mServices[i].onBootCompleted();
|
||||
}
|
||||
}
|
||||
|
||||
IntentFilter localeChangedFilter = new IntentFilter(
|
||||
Intent.ACTION_LOCALE_CHANGED);
|
||||
registerReceiver(mLocaleChangeReceiver, localeChangedFilter);
|
||||
}
|
||||
}, filter);
|
||||
} else {
|
||||
@@ -249,4 +239,14 @@ public class SystemUIApplication extends Application implements SysUiServiceProv
|
||||
public SystemUI[] getServices() {
|
||||
return mServices;
|
||||
}
|
||||
|
||||
private final BroadcastReceiver mLocaleChangeReceiver = new BroadcastReceiver() {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
if (Intent.ACTION_LOCALE_CHANGED.equals(intent.getAction())) {
|
||||
// Update names of SystemUi notification channels
|
||||
NotificationChannels.createAll(context);
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -39,8 +39,7 @@ public class NotificationChannels extends SystemUI {
|
||||
public static String BATTERY = "BAT";
|
||||
public static String HINTS = "HNT";
|
||||
|
||||
@VisibleForTesting
|
||||
static void createAll(Context context) {
|
||||
public static void createAll(Context context) {
|
||||
final NotificationManager nm = context.getSystemService(NotificationManager.class);
|
||||
final NotificationChannel batteryChannel = new NotificationChannel(BATTERY,
|
||||
context.getString(R.string.notification_channel_battery),
|
||||
|
||||
@@ -182,6 +182,7 @@ import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.internal.logging.MetricsLogger;
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
import com.android.internal.notification.SystemNotificationChannels;
|
||||
import com.android.internal.os.BackgroundThread;
|
||||
import com.android.internal.statusbar.NotificationVisibility;
|
||||
import com.android.internal.util.ArrayUtils;
|
||||
@@ -898,6 +899,8 @@ public class NotificationManagerService extends SystemService {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
if (Intent.ACTION_LOCALE_CHANGED.equals(intent.getAction())) {
|
||||
// update system notification channels
|
||||
SystemNotificationChannels.createAll(context);
|
||||
mZenModeHelper.updateDefaultZenRules();
|
||||
mRankingHelper.onLocaleChanged(context, ActivityManager.getCurrentUser());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user