diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml
index ce3084c6046ce..e3499f5b11f9b 100644
--- a/packages/SystemUI/res/values/strings.xml
+++ b/packages/SystemUI/res/values/strings.xml
@@ -2301,13 +2301,13 @@
Move button to the edge to hide it temporarily
Undo
-
+
+ %s shortcut removed
- {count, plural,
- =1 {{label} shortcut removed}
+ {count, plural,
+ =1 {# shortcut removed}
other {# shortcuts removed}
}
-
Move top left
diff --git a/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuViewLayer.java b/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuViewLayer.java
index 6f5b39cc7d56c..05f3f5f39701c 100644
--- a/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuViewLayer.java
+++ b/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuViewLayer.java
@@ -25,6 +25,7 @@ import static com.android.internal.accessibility.common.ShortcutConstants.Access
import static com.android.internal.accessibility.util.AccessibilityUtils.getAccessibilityServiceFragmentType;
import static com.android.internal.accessibility.util.AccessibilityUtils.setAccessibilityServiceState;
import static com.android.systemui.accessibility.floatingmenu.MenuMessageView.Index;
+import static com.android.systemui.util.PluralMessageFormaterKt.icuMessageFormat;
import android.accessibilityservice.AccessibilityServiceInfo;
import android.annotation.IntDef;
@@ -33,12 +34,12 @@ import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
+import android.content.res.Resources;
import android.graphics.Rect;
import android.os.Handler;
import android.os.Looper;
import android.os.UserHandle;
import android.provider.Settings;
-import android.util.PluralsMessageFormatter;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewTreeObserver;
@@ -61,9 +62,7 @@ import com.android.wm.shell.common.magnetictarget.MagnetizedObject;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import java.util.Optional;
/**
@@ -218,11 +217,16 @@ class MenuViewLayer extends FrameLayout implements
Preconditions.checkArgument(newTargetFeatures.size() > 0,
"The list should at least have one feature.");
- final Map arguments = new HashMap<>();
- arguments.put("count", newTargetFeatures.size());
- arguments.put("label", newTargetFeatures.get(0).getLabel());
- return PluralsMessageFormatter.format(getResources(), arguments,
- R.string.accessibility_floating_button_undo_message_text);
+ final int featuresSize = newTargetFeatures.size();
+ final Resources resources = getResources();
+ if (featuresSize == 1) {
+ return resources.getString(
+ R.string.accessibility_floating_button_undo_message_label_text,
+ newTargetFeatures.get(0).getLabel());
+ }
+
+ return icuMessageFormat(resources,
+ R.string.accessibility_floating_button_undo_message_number_text, featuresSize);
}
@Override