Merge "Cleanup plurals format Change <one> to <1> in string res file Test: Update, existing tests still pass bug: 199230342"
This commit is contained in:
@@ -33,6 +33,7 @@ import android.provider.Settings;
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Locale;
|
||||
@@ -65,16 +66,17 @@ public class MonitoringCertInfoActivity extends Activity implements OnClickListe
|
||||
final int numberOfCertificates = getIntent().getIntExtra(
|
||||
Settings.EXTRA_NUMBER_OF_CERTIFICATES, 1);
|
||||
final int titleId = RestrictedLockUtils.getProfileOrDeviceOwner(this, user) != null
|
||||
? R.plurals.ssl_ca_cert_settings_button // Check certificate
|
||||
: R.plurals.ssl_ca_cert_dialog_title; // Trust or remove certificate
|
||||
final CharSequence title = getResources().getQuantityText(titleId, numberOfCertificates);
|
||||
? R.string.ssl_ca_cert_settings_button // Check certificate
|
||||
: R.string.ssl_ca_cert_dialog_title; // Trust or remove certificate
|
||||
final CharSequence title = StringUtil.getIcuPluralsString(this, numberOfCertificates,
|
||||
titleId);
|
||||
setTitle(title);
|
||||
|
||||
final AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
builder.setTitle(title);
|
||||
builder.setCancelable(true);
|
||||
builder.setPositiveButton(getResources().getQuantityText(
|
||||
R.plurals.ssl_ca_cert_settings_button, numberOfCertificates) , this);
|
||||
builder.setPositiveButton(StringUtil.getIcuPluralsString(this, numberOfCertificates,
|
||||
R.string.ssl_ca_cert_settings_button) , this);
|
||||
builder.setNeutralButton(R.string.cancel, null);
|
||||
builder.setOnDismissListener(this);
|
||||
|
||||
|
@@ -34,9 +34,9 @@ public class AutoclickPreferenceController extends BasePreferenceController {
|
||||
* placeholder for integer delay value.
|
||||
*/
|
||||
private static final int[] AUTOCLICK_PREFERENCE_SUMMARIES = {
|
||||
R.plurals.accessibilty_autoclick_preference_subtitle_short_delay,
|
||||
R.plurals.accessibilty_autoclick_preference_subtitle_medium_delay,
|
||||
R.plurals.accessibilty_autoclick_preference_subtitle_long_delay
|
||||
R.string.accessibilty_autoclick_preference_subtitle_short_delay,
|
||||
R.string.accessibilty_autoclick_preference_subtitle_medium_delay,
|
||||
R.string.accessibilty_autoclick_preference_subtitle_long_delay
|
||||
};
|
||||
|
||||
public AutoclickPreferenceController(Context context, String preferenceKey) {
|
||||
@@ -59,7 +59,7 @@ public class AutoclickPreferenceController extends BasePreferenceController {
|
||||
Settings.Secure.ACCESSIBILITY_AUTOCLICK_DELAY,
|
||||
AccessibilityManager.AUTOCLICK_DELAY_DEFAULT);
|
||||
final int summaryIndex = getAutoclickPreferenceSummaryIndex(delayMillis);
|
||||
return AutoclickUtils.getAutoclickDelaySummary(mContext.getResources(),
|
||||
return AutoclickUtils.getAutoclickDelaySummary(mContext,
|
||||
AUTOCLICK_PREFERENCE_SUMMARIES[summaryIndex], delayMillis);
|
||||
}
|
||||
|
||||
|
@@ -20,9 +20,16 @@ import static java.lang.annotation.RetentionPolicy.SOURCE;
|
||||
|
||||
import android.annotation.IntDef;
|
||||
import android.annotation.PluralsRes;
|
||||
import android.annotation.StringRes;
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.lang.annotation.Retention;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/** Provides utility methods related auto click. */
|
||||
public final class AutoclickUtils {
|
||||
@@ -58,20 +65,23 @@ public final class AutoclickUtils {
|
||||
/**
|
||||
* Gets string that should be used for provided autoclick delay.
|
||||
*
|
||||
* @param resources Resources from which string should be retrieved.
|
||||
* @param context context from which string should be retrieved.
|
||||
* @param id The desired resource identifier, as generated by the aapt
|
||||
* tool. This integer encodes the package, type, and resource
|
||||
* entry. The value 0 is an invalid identifier.
|
||||
* @param delayMillis Delay for whose value summary should be retrieved.
|
||||
*/
|
||||
public static CharSequence getAutoclickDelaySummary(Resources resources,
|
||||
@PluralsRes int id, int delayMillis) {
|
||||
public static CharSequence getAutoclickDelaySummary(Context context,
|
||||
@StringRes int id, int delayMillis) {
|
||||
final int quantity = (delayMillis == 1000) ? Quantity.ONE : Quantity.FEW;
|
||||
final float delaySecond = (float) delayMillis / 1000;
|
||||
// Only show integer when delay time is 1.
|
||||
final String decimalFormat = (delaySecond == 1) ? "%.0f" : "%.1f";
|
||||
|
||||
return resources.getQuantityString(id, quantity, String.format(decimalFormat, delaySecond));
|
||||
Map<String, Object> arguments = new HashMap<>();
|
||||
arguments.put("count", quantity);
|
||||
arguments.put("time", String.format(decimalFormat, delaySecond));
|
||||
return StringUtil.getIcuPluralsString(context, arguments, id);
|
||||
}
|
||||
|
||||
private AutoclickUtils(){}
|
||||
|
@@ -176,7 +176,7 @@ public class ToggleAutoclickCustomSeekbarController extends BasePreferenceContro
|
||||
}
|
||||
}
|
||||
private CharSequence delayTimeToString(int delayMillis) {
|
||||
return AutoclickUtils.getAutoclickDelaySummary(mContext.getResources(),
|
||||
R.plurals.accessibilty_autoclick_delay_unit_second, delayMillis);
|
||||
return AutoclickUtils.getAutoclickDelaySummary(mContext,
|
||||
R.string.accessibilty_autoclick_delay_unit_second, delayMillis);
|
||||
}
|
||||
}
|
||||
|
@@ -110,11 +110,11 @@ public class AppStateNotificationBridge extends AppStateBaseBridge {
|
||||
context, System.currentTimeMillis() - state.lastSent, true);
|
||||
} else if (sortOrder == R.id.sort_order_frequent_notification) {
|
||||
if (state.avgSentDaily > 0) {
|
||||
return context.getResources().getQuantityString(
|
||||
R.plurals.notifications_sent_daily, state.avgSentDaily, state.avgSentDaily);
|
||||
return StringUtil.getIcuPluralsString(context, state.avgSentDaily,
|
||||
R.string.notifications_sent_daily);
|
||||
}
|
||||
return context.getResources().getQuantityString(R.plurals.notifications_sent_weekly,
|
||||
state.avgSentWeekly, state.avgSentWeekly);
|
||||
return StringUtil.getIcuPluralsString(context, state.avgSentWeekly,
|
||||
R.string.notifications_sent_weekly);
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
|
@@ -25,6 +25,7 @@ import android.os.UserManager;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -66,9 +67,7 @@ public class InteractAcrossProfilesController extends BasePreferenceController {
|
||||
return connectedApps == 0
|
||||
? mContext.getResources().getString(
|
||||
R.string.interact_across_profiles_number_of_connected_apps_none)
|
||||
: mContext.getResources().getQuantityString(
|
||||
R.plurals.interact_across_profiles_number_of_connected_apps,
|
||||
connectedApps,
|
||||
connectedApps);
|
||||
: StringUtil.getIcuPluralsString(mContext, connectedApps,
|
||||
R.string.interact_across_profiles_number_of_connected_apps);
|
||||
}
|
||||
}
|
||||
|
@@ -28,6 +28,7 @@ import com.android.settings.Settings;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.biometrics.ParentalControlsUtils;
|
||||
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
/**
|
||||
* Utilities for combined biometric details shared between Security Settings and Safety Center.
|
||||
@@ -102,9 +103,8 @@ public class CombinedBiometricStatusUtils {
|
||||
} else if (faceEnrolled) {
|
||||
return mContext.getString(R.string.security_settings_face_preference_summary);
|
||||
} else if (numFingerprintsEnrolled > 0) {
|
||||
return mContext.getResources().getQuantityString(
|
||||
R.plurals.security_settings_fingerprint_preference_summary,
|
||||
numFingerprintsEnrolled, numFingerprintsEnrolled);
|
||||
return StringUtil.getIcuPluralsString(mContext, numFingerprintsEnrolled,
|
||||
R.string.security_settings_fingerprint_preference_summary);
|
||||
} else {
|
||||
return mContext.getString(
|
||||
R.string.security_settings_biometric_preference_summary_none_enrolled);
|
||||
|
@@ -28,6 +28,7 @@ import com.android.settings.Utils;
|
||||
import com.android.settings.biometrics.ParentalControlsUtils;
|
||||
import com.android.settings.biometrics2.ui.view.FingerprintEnrollmentActivity;
|
||||
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
/**
|
||||
* Utilities for fingerprint details shared between Security Settings and Safety Center.
|
||||
@@ -69,9 +70,8 @@ public class FingerprintStatusUtils {
|
||||
public String getSummary() {
|
||||
if (hasEnrolled()) {
|
||||
final int numEnrolled = mFingerprintManager.getEnrolledFingerprints(mUserId).size();
|
||||
return mContext.getResources().getQuantityString(
|
||||
R.plurals.security_settings_fingerprint_preference_summary,
|
||||
numEnrolled, numEnrolled);
|
||||
return StringUtil.getIcuPluralsString(mContext, numEnrolled,
|
||||
R.string.security_settings_fingerprint_preference_summary);
|
||||
} else {
|
||||
return mContext.getString(
|
||||
R.string.security_settings_fingerprint_preference_summary_none);
|
||||
|
@@ -31,6 +31,7 @@ import com.android.settings.core.InstrumentedPreferenceFragment;
|
||||
import com.android.settings.fuelgauge.batterytip.AppInfo;
|
||||
import com.android.settings.fuelgauge.batterytip.BatteryTipUtils;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -75,9 +76,8 @@ public class RestrictAppPreferenceController extends BasePreferenceController {
|
||||
final int num = mAppInfos.size();
|
||||
// Fragment change RestrictedAppsList after onPause(), UI needs to be updated in onResume()
|
||||
preference.setVisible(num > 0);
|
||||
preference.setSummary(
|
||||
mContext.getResources().getQuantityString(R.plurals.restricted_app_summary, num,
|
||||
num));
|
||||
preference.setSummary(StringUtil.getIcuPluralsString(mContext, num,
|
||||
R.string.restricted_app_summary));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -27,6 +27,7 @@ import com.android.settings.R;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
/** Preference controller to control the battery manager */
|
||||
public class BatteryManagerPreferenceController extends BasePreferenceController {
|
||||
@@ -66,8 +67,8 @@ public class BatteryManagerPreferenceController extends BasePreferenceController
|
||||
@VisibleForTesting
|
||||
void updateSummary(Preference preference, int num) {
|
||||
if (num > 0) {
|
||||
preference.setSummary(mContext.getResources().getQuantityString(
|
||||
R.plurals.battery_manager_app_restricted, num, num));
|
||||
preference.setSummary(StringUtil.getIcuPluralsString(mContext, num,
|
||||
R.string.battery_manager_app_restricted));
|
||||
} else {
|
||||
preference.setSummary(
|
||||
mPowerUsageFeatureProvider.isAdaptiveChargingSupported()
|
||||
|
@@ -42,6 +42,7 @@ import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
|
||||
import com.android.settings.fuelgauge.batterytip.tips.HighUsageTip;
|
||||
import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
|
||||
import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -107,8 +108,8 @@ public class BatteryTipDialogFragment extends InstrumentedDialogFragment impleme
|
||||
restrictedAppList.get(0).packageName);
|
||||
|
||||
final AlertDialog.Builder builder = new AlertDialog.Builder(context)
|
||||
.setTitle(context.getResources().getQuantityString(
|
||||
R.plurals.battery_tip_restrict_app_dialog_title, num, num))
|
||||
.setTitle(StringUtil.getIcuPluralsString(context, num,
|
||||
R.string.battery_tip_restrict_app_dialog_title))
|
||||
.setPositiveButton(R.string.battery_tip_restrict_app_dialog_ok, this)
|
||||
.setNegativeButton(android.R.string.cancel, null);
|
||||
if (num == 1) {
|
||||
|
@@ -28,9 +28,12 @@ import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.fuelgauge.batterytip.AppInfo;
|
||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Tip to suggest user to restrict some bad apps
|
||||
@@ -62,12 +65,15 @@ public class RestrictAppTip extends BatteryTip {
|
||||
final int num = mRestrictAppList.size();
|
||||
final CharSequence appLabel = num > 0 ? Utils.getApplicationLabel(context,
|
||||
mRestrictAppList.get(0).packageName) : "";
|
||||
final Resources resources = context.getResources();
|
||||
|
||||
Map<String, Object> arguments = new HashMap<>();
|
||||
arguments.put("count", num);
|
||||
arguments.put("label", appLabel);
|
||||
return mState == StateType.HANDLED
|
||||
? resources.getQuantityString(R.plurals.battery_tip_restrict_handled_title, num,
|
||||
appLabel, num)
|
||||
: resources.getQuantityString(R.plurals.battery_tip_restrict_title, num, num);
|
||||
? StringUtil.getIcuPluralsString(context, arguments,
|
||||
R.string.battery_tip_restrict_handled_title)
|
||||
: StringUtil.getIcuPluralsString(context, arguments,
|
||||
R.string.battery_tip_restrict_title);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -76,9 +82,12 @@ public class RestrictAppTip extends BatteryTip {
|
||||
final CharSequence appLabel = num > 0 ? Utils.getApplicationLabel(context,
|
||||
mRestrictAppList.get(0).packageName) : "";
|
||||
final int resId = mState == StateType.HANDLED
|
||||
? R.plurals.battery_tip_restrict_handled_summary
|
||||
: R.plurals.battery_tip_restrict_summary;
|
||||
return context.getResources().getQuantityString(resId, num, appLabel, num);
|
||||
? R.string.battery_tip_restrict_handled_summary
|
||||
: R.string.battery_tip_restrict_summary;
|
||||
Map<String, Object> arguments = new HashMap<>();
|
||||
arguments.put("count", num);
|
||||
arguments.put("label", appLabel);
|
||||
return StringUtil.getIcuPluralsString(context, arguments, resId);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -21,6 +21,7 @@ import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
@@ -63,8 +64,8 @@ public class TopLevelLocationPreferenceController extends BasePreferenceControll
|
||||
|
||||
@VisibleForTesting
|
||||
void setLocationAppCount(int numApps) {
|
||||
sSummary = mContext.getResources().getQuantityString(
|
||||
R.plurals.location_settings_summary_location_on, numApps, numApps);
|
||||
sSummary = StringUtil.getIcuPluralsString(mContext, numApps,
|
||||
R.string.location_settings_summary_location_on);
|
||||
refreshSummary(mPreference);
|
||||
}
|
||||
|
||||
|
@@ -20,6 +20,7 @@ import android.content.Context;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
public class ConversationListSummaryPreferenceController extends BasePreferenceController {
|
||||
|
||||
@@ -41,9 +42,8 @@ public class ConversationListSummaryPreferenceController extends BasePreferenceC
|
||||
if (count == 0) {
|
||||
return mContext.getText(R.string.priority_conversation_count_zero);
|
||||
}
|
||||
return mContext.getResources().getQuantityString(
|
||||
R.plurals.priority_conversation_count,
|
||||
count, count);
|
||||
return StringUtil.getIcuPluralsString(mContext, count,
|
||||
R.string.priority_conversation_count);
|
||||
}
|
||||
|
||||
void setBackend(NotificationBackend backend) {
|
||||
|
@@ -509,11 +509,11 @@ public class NotificationBackend {
|
||||
context, System.currentTimeMillis() - state.lastSent, true);
|
||||
} else {
|
||||
if (state.avgSentDaily > 0) {
|
||||
return context.getResources().getQuantityString(R.plurals.notifications_sent_daily,
|
||||
state.avgSentDaily, state.avgSentDaily);
|
||||
return StringUtil.getIcuPluralsString(context, state.avgSentDaily,
|
||||
R.string.notifications_sent_daily);
|
||||
}
|
||||
return context.getResources().getQuantityString(R.plurals.notifications_sent_weekly,
|
||||
state.avgSentWeekly, state.avgSentWeekly);
|
||||
return StringUtil.getIcuPluralsString(context, state.avgSentWeekly,
|
||||
R.string.notifications_sent_weekly);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -23,6 +23,7 @@ import androidx.preference.Preference;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settings.notification.NotificationBackend;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
public class DeletedChannelsPreferenceController extends NotificationPreferenceController
|
||||
implements PreferenceControllerMixin {
|
||||
@@ -59,8 +60,8 @@ public class DeletedChannelsPreferenceController extends NotificationPreferenceC
|
||||
public void updateState(Preference preference) {
|
||||
if (mAppRow != null) {
|
||||
int deletedChannelCount = mBackend.getDeletedChannelCount(mAppRow.pkg, mAppRow.uid);
|
||||
preference.setTitle(mContext.getResources().getQuantityString(
|
||||
R.plurals.deleted_channels, deletedChannelCount, deletedChannelCount));
|
||||
preference.setTitle(StringUtil.getIcuPluralsString(mContext, deletedChannelCount,
|
||||
R.string.deleted_channels));
|
||||
}
|
||||
preference.setSelectable(false);
|
||||
}
|
||||
|
@@ -60,6 +60,7 @@ import com.android.internal.widget.NotificationExpandButton;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.notification.NotificationBackend;
|
||||
import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
import com.android.settingslib.utils.ThreadUtils;
|
||||
import com.android.settingslib.widget.MainSwitchBar;
|
||||
import com.android.settingslib.widget.OnMainSwitchChangeListener;
|
||||
@@ -203,16 +204,15 @@ public class NotificationHistoryActivity extends CollapsingToolbarBaseActivity {
|
||||
icon.setImageDrawable(nhp.icon);
|
||||
|
||||
TextView count = viewForPackage.findViewById(R.id.count);
|
||||
count.setText(getResources().getQuantityString(R.plurals.notification_history_count,
|
||||
nhp.notifications.size(), nhp.notifications.size()));
|
||||
count.setText(StringUtil.getIcuPluralsString(this, nhp.notifications.size(),
|
||||
R.string.notification_history_count));
|
||||
|
||||
final NotificationHistoryRecyclerView rv =
|
||||
viewForPackage.findViewById(R.id.notification_list);
|
||||
rv.setAdapter(new NotificationHistoryAdapter(mNm, rv,
|
||||
newCount -> {
|
||||
count.setText(getResources().getQuantityString(
|
||||
R.plurals.notification_history_count,
|
||||
newCount, newCount));
|
||||
count.setText(StringUtil.getIcuPluralsString(this, newCount,
|
||||
R.string.notification_history_count));
|
||||
if (newCount == 0) {
|
||||
viewForPackage.setVisibility(View.GONE);
|
||||
}
|
||||
|
@@ -34,6 +34,7 @@ import com.android.settingslib.RestrictedPreference;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -110,17 +111,16 @@ public class PrintSettingPreferenceController extends BasePreferenceController i
|
||||
}
|
||||
|
||||
if (numActivePrintJobs > 0) {
|
||||
return mContext.getResources().getQuantityString(
|
||||
R.plurals.print_jobs_summary, numActivePrintJobs, numActivePrintJobs);
|
||||
return StringUtil.getIcuPluralsString(mContext, numActivePrintJobs,
|
||||
R.string.print_jobs_summary);
|
||||
} else {
|
||||
final List<PrintServiceInfo> services =
|
||||
mPrintManager.getPrintServices(PrintManager.ENABLED_SERVICES);
|
||||
if (services == null || services.isEmpty()) {
|
||||
return mContext.getText(R.string.off);
|
||||
} else {
|
||||
final int count = services.size();
|
||||
return mContext.getResources().getQuantityString(
|
||||
R.plurals.print_settings_summary, count, count);
|
||||
return StringUtil.getIcuPluralsString(mContext, services.size(),
|
||||
R.string.print_settings_summary);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -34,6 +34,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -193,8 +194,8 @@ public class CredentialManagementAppAdapter extends RecyclerView.Adapter<Recycle
|
||||
}
|
||||
|
||||
private String getNumberOfUrlsText(Map<Uri, String> urisToAliases) {
|
||||
return mContext.getResources().getQuantityString(R.plurals.number_of_urls,
|
||||
urisToAliases.size(), urisToAliases.size());
|
||||
return StringUtil.getIcuPluralsString(mContext, urisToAliases.size(),
|
||||
R.string.number_of_urls);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -177,12 +177,14 @@ class AppNotificationRepository(
|
||||
fun calculateFrequencySummary(sentCount: Int): String {
|
||||
val dailyFrequency = (sentCount.toFloat() / DAYS_TO_CHECK).roundToInt()
|
||||
return if (dailyFrequency > 0) {
|
||||
context.resources.getQuantityString(
|
||||
R.plurals.notifications_sent_daily, dailyFrequency, dailyFrequency
|
||||
context.formatString(
|
||||
R.string.notifications_sent_daily,
|
||||
"count" to dailyFrequency,
|
||||
)
|
||||
} else {
|
||||
context.resources.getQuantityString(
|
||||
R.plurals.notifications_sent_weekly, sentCount, sentCount
|
||||
context.formatString(
|
||||
R.string.notifications_sent_weekly,
|
||||
"count" to sentCount,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user