L10n fix for IW locale in storage_summary string
storage_summary is passed as a single string of format "32 GB". Spliting the phrase to allow TC to remove whitespace in case of iw translations. Old Translation : <free_space> New Translation: <free_space_value> <free_space_unit> Bug: 387197875 Test: manual Flag: EXEMPT bugfix Change-Id: I91abf58df472650a6278b08e4daa5d32e7f90da9
This commit is contained in:
@@ -10798,7 +10798,7 @@
|
||||
<string name="apps_summary"><xliff:g id="count" example="24">%1$d</xliff:g> apps installed</string>
|
||||
|
||||
<!-- Summary of storage usage [CHAR LIMIT=NONE] -->
|
||||
<string name="storage_summary"><xliff:g id="percentage" example="54%">%1$s</xliff:g> used - <xliff:g id="free_space" example="32GB">%2$s</xliff:g> free</string>
|
||||
<string name="storage_summary"><xliff:g id="percentage" example="54%">%1$s</xliff:g> used - <xliff:g id="free_space_value" example="32">%2$s</xliff:g> <xliff:g id="free_space_units" example="GB">%3$s</xliff:g> free</string>
|
||||
|
||||
<!-- Summary for Display settings, explaining a few important settings under it [CHAR LIMIT=NONE]-->
|
||||
<string name="display_dashboard_summary">Dark theme, font size, brightness</string>
|
||||
|
@@ -92,9 +92,10 @@ public class TopLevelStoragePreferenceController extends BasePreferenceControlle
|
||||
|
||||
private String getSummary(long usedBytes, long totalBytes) {
|
||||
NumberFormat percentageFormat = NumberFormat.getPercentInstance();
|
||||
|
||||
final String[] freeSpace =
|
||||
Formatter.formatFileSize(mContext, totalBytes - usedBytes).split(" ");
|
||||
return mContext.getString(R.string.storage_summary,
|
||||
totalBytes == 0L ? "0" : percentageFormat.format(((double) usedBytes) / totalBytes),
|
||||
Formatter.formatFileSize(mContext, totalBytes - usedBytes));
|
||||
freeSpace[0], freeSpace[1]);
|
||||
}
|
||||
}
|
||||
|
@@ -64,7 +64,9 @@ public class LowStorageSlice implements CustomSliceable {
|
||||
|
||||
// Generate Low storage Slice.
|
||||
final String percentageString = NumberFormat.getPercentInstance().format(usedPercentage);
|
||||
final String freeSizeString = Formatter.formatFileSize(mContext, info.freeBytes);
|
||||
final String[] freeSizeString =
|
||||
Formatter.formatFileSize(mContext, info.freeBytes).split(" ");
|
||||
|
||||
final ListBuilder listBuilder = new ListBuilder(mContext,
|
||||
CustomSliceRegistry.LOW_STORAGE_SLICE_URI, ListBuilder.INFINITY).setAccentColor(
|
||||
Utils.getColorAccentDefaultColor(mContext));
|
||||
@@ -74,7 +76,7 @@ public class LowStorageSlice implements CustomSliceable {
|
||||
// For clients that ignore error checking, a generic storage slice will be given.
|
||||
final CharSequence titleStorage = mContext.getText(R.string.storage_settings);
|
||||
final String summaryStorage = mContext.getString(R.string.storage_summary,
|
||||
percentageString, freeSizeString);
|
||||
percentageString, freeSizeString[0], freeSizeString[1]);
|
||||
|
||||
return listBuilder
|
||||
.addRow(buildRowBuilder(titleStorage, summaryStorage, icon))
|
||||
|
@@ -86,7 +86,7 @@ public class TopLevelStoragePreferenceControllerTest {
|
||||
when(mController.getStorageManagerVolumeProvider())
|
||||
.thenReturn(mStorageManagerVolumeProvider);
|
||||
final String percentage = NumberFormat.getPercentInstance().format(1);
|
||||
final String freeSpace = Formatter.formatFileSize(mContext, 0);
|
||||
final String[] freeSpace = Formatter.formatFileSize(mContext, 0).split(" ");
|
||||
final Preference preference = new Preference(mContext);
|
||||
|
||||
// Wait for asynchronous thread to finish, otherwise test will flake.
|
||||
@@ -103,6 +103,6 @@ public class TopLevelStoragePreferenceControllerTest {
|
||||
// the background thread.
|
||||
TimeUnit.SECONDS.sleep(5);
|
||||
assertThat(preference.getSummary()).isEqualTo(ResourcesUtils.getResourcesString(
|
||||
mContext, "storage_summary", percentage, freeSpace));
|
||||
mContext, "storage_summary", percentage, freeSpace[0], freeSpace[1]));
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user