Merge "Uses placeholder and percentage formatter for seek bar state strings." into main
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 2270804..0999f0a 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -13366,9 +13366,9 @@
<!-- Summary of the Live Caption enabled state. -->
<string name="live_caption_enabled">On</string>
<!-- State description for the Audio Balance seek bar, with left reported before right. -->
- <string name="audio_seek_bar_state_left_first">Audio %1$d%% left, %2$d%% right</string>
+ <string name="audio_seek_bar_state_left_first">Audio <xliff:g id="percent_left">%1$s</xliff:g> left, <xliff:g id="percent_right">%2$s</xliff:g> right</string>
<!-- State description for the Audio Balance seek bar, with right reported before left. -->
- <string name="audio_seek_bar_state_right_first">Audio %1$d%% right, %2$d%% left</string>
+ <string name="audio_seek_bar_state_right_first">Audio <xliff:g id="percent_right">%1$s</xliff:g> right, <xliff:g id="percent_left">%2$s</xliff:g> left</string>
<!-- Warning text about the visibility of device name. [CHAR LIMIT=NONE] -->
<string name="about_phone_device_name_warning">Your device name is visible to apps you installed. It may also be seen by other people when you connect to Bluetooth devices, connect to a Wi-Fi network or set up a Wi-Fi hotspot.</string>
diff --git a/src/com/android/settings/accessibility/BalanceSeekBar.java b/src/com/android/settings/accessibility/BalanceSeekBar.java
index 7441d6f..8f8f767 100644
--- a/src/com/android/settings/accessibility/BalanceSeekBar.java
+++ b/src/com/android/settings/accessibility/BalanceSeekBar.java
@@ -36,6 +36,7 @@
import androidx.annotation.VisibleForTesting;
import com.android.settings.R;
+import com.android.settings.Utils;
/**
* A custom seekbar for the balance setting.
@@ -178,10 +179,12 @@
== LAYOUT_DIRECTION_RTL;
final int rightPercent = (int) (100 * (progress / max));
final int leftPercent = 100 - rightPercent;
+ final String rightPercentString = Utils.formatPercentage(rightPercent);
+ final String leftPercentString = Utils.formatPercentage(leftPercent);
if (rightPercent > leftPercent || (rightPercent == leftPercent && isLayoutRtl)) {
- return context.getString(resIdRightFirst, rightPercent, leftPercent);
+ return context.getString(resIdRightFirst, rightPercentString, leftPercentString);
} else {
- return context.getString(resIdLeftFirst, leftPercent, rightPercent);
+ return context.getString(resIdLeftFirst, leftPercentString, rightPercentString);
}
}
}
diff --git a/tests/robotests/src/com/android/settings/accessibility/BalanceSeekBarTest.java b/tests/robotests/src/com/android/settings/accessibility/BalanceSeekBarTest.java
index d74794f..bbe511d 100644
--- a/tests/robotests/src/com/android/settings/accessibility/BalanceSeekBarTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/BalanceSeekBarTest.java
@@ -34,6 +34,7 @@
import android.widget.SeekBar;
import com.android.settings.R;
+import com.android.settings.Utils;
import com.android.settings.testutils.shadow.ShadowSystemSettings;
import org.junit.Before;
@@ -162,7 +163,8 @@
mProxySeekBarListener.onProgressChanged(mSeekBar, progress, true);
assertThat(mSeekBar.getStateDescription()).isEqualTo(
- mContext.getString(R.string.audio_seek_bar_state_left_first, 50, 50));
+ mContext.getString(R.string.audio_seek_bar_state_left_first,
+ Utils.formatPercentage(50), Utils.formatPercentage(50)));
}
@Test
@@ -177,7 +179,8 @@
mProxySeekBarListener.onProgressChanged(mSeekBar, progress, true);
assertThat(mSeekBar.getStateDescription()).isEqualTo(
- mContext.getString(R.string.audio_seek_bar_state_right_first, 50, 50));
+ mContext.getString(R.string.audio_seek_bar_state_right_first,
+ Utils.formatPercentage(50), Utils.formatPercentage(50)));
}
@Test
@@ -189,7 +192,8 @@
mProxySeekBarListener.onProgressChanged(mSeekBar, progress, true);
assertThat(mSeekBar.getStateDescription()).isEqualTo(
- mContext.getString(R.string.audio_seek_bar_state_left_first, 75, 25));
+ mContext.getString(R.string.audio_seek_bar_state_left_first,
+ Utils.formatPercentage(75), Utils.formatPercentage(25)));
}
@Test
@@ -201,7 +205,8 @@
mProxySeekBarListener.onProgressChanged(mSeekBar, progress, true);
assertThat(mSeekBar.getStateDescription()).isEqualTo(
- mContext.getString(R.string.audio_seek_bar_state_right_first, 75, 25));
+ mContext.getString(R.string.audio_seek_bar_state_right_first,
+ Utils.formatPercentage(75), Utils.formatPercentage(25)));
}
// method to get the center from BalanceSeekBar for testing setMax().