diff --git a/res/values/strings.xml b/res/values/strings.xml
index 71a424c084..6fefb19b32 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -9,9 +9,15 @@
Currently: %s
You haven\'t set a passphrase yet!
- %s messages per conversation
+
+ - 1 message per conversation
+ - %d messages per conversation
+
Delete all old messages now?
- This will immediately trim all conversations to the %s most recent messages.
+
+ - This will immediately trim all conversations to the most recent message.
+ - This will immediately trim all conversations to the %d most recent messages.
+
Delete
Disable passphrase?
@@ -34,7 +40,10 @@
SMS %1$s, MMS %2$s
- %d minutes
+
+ - 1 minute
+ - %d minutes
+
(image)
@@ -109,8 +118,10 @@
Group members
Group conversation
Unnamed group
- %d members
- 1 member
+
+ - 1 member
+ - %d members
+
Saved draft
Invalid recipient!
Calls not supported
diff --git a/src/org/thoughtcrime/securesms/ConversationTitleView.java b/src/org/thoughtcrime/securesms/ConversationTitleView.java
index 3778972934..df7f702873 100644
--- a/src/org/thoughtcrime/securesms/ConversationTitleView.java
+++ b/src/org/thoughtcrime/securesms/ConversationTitleView.java
@@ -82,8 +82,7 @@ public class ConversationTitleView extends LinearLayout {
int size = recipients.getRecipientsList().size();
title.setText(getContext().getString(R.string.ConversationActivity_group_conversation));
- subtitle.setText((size == 1) ? getContext().getString(R.string.ConversationActivity_d_recipients_in_group_singular) :
- String.format(getContext().getString(R.string.ConversationActivity_d_recipients_in_group), size));
+ subtitle.setText(getContext().getResources().getQuantityString(R.plurals.ConversationActivity_d_recipients_in_group, size, size));
subtitle.setVisibility(View.VISIBLE);
}
diff --git a/src/org/thoughtcrime/securesms/preferences/AppProtectionPreferenceFragment.java b/src/org/thoughtcrime/securesms/preferences/AppProtectionPreferenceFragment.java
index 62dd001e9d..c25437b6ae 100644
--- a/src/org/thoughtcrime/securesms/preferences/AppProtectionPreferenceFragment.java
+++ b/src/org/thoughtcrime/securesms/preferences/AppProtectionPreferenceFragment.java
@@ -76,7 +76,7 @@ public class AppProtectionPreferenceFragment extends PreferenceFragment {
private void initializeTimeoutSummary() {
int timeoutMinutes = TextSecurePreferences.getPassphraseTimeoutInterval(getActivity());
this.findPreference(TextSecurePreferences.PASSPHRASE_TIMEOUT_INTERVAL_PREF)
- .setSummary(getString(R.string.AppProtectionPreferenceFragment_minutes, timeoutMinutes));
+ .setSummary(getResources().getQuantityString(R.plurals.AppProtectionPreferenceFragment_minutes, timeoutMinutes, timeoutMinutes));
}
private class BlockedContactsClickListener implements Preference.OnPreferenceClickListener {
diff --git a/src/org/thoughtcrime/securesms/preferences/ChatsPreferenceFragment.java b/src/org/thoughtcrime/securesms/preferences/ChatsPreferenceFragment.java
index ebadb2ec5a..3f8d088be0 100644
--- a/src/org/thoughtcrime/securesms/preferences/ChatsPreferenceFragment.java
+++ b/src/org/thoughtcrime/securesms/preferences/ChatsPreferenceFragment.java
@@ -77,8 +77,8 @@ public class ChatsPreferenceFragment extends PreferenceFragment {
final int threadLengthLimit = TextSecurePreferences.getThreadTrimLength(getActivity());
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.ApplicationPreferencesActivity_delete_all_old_messages_now);
- builder.setMessage(getString(R.string.ApplicationPreferencesActivity_this_will_immediately_trim_all_conversations_to_the_s_most_recent_messages,
- threadLengthLimit));
+ builder.setMessage(getResources().getQuantityString(R.plurals.ApplicationPreferencesActivity_this_will_immediately_trim_all_conversations_to_the_d_most_recent_messages,
+ threadLengthLimit, threadLengthLimit));
builder.setPositiveButton(R.string.ApplicationPreferencesActivity_delete,
new DialogInterface.OnClickListener() {
@Override
@@ -107,7 +107,7 @@ public class ChatsPreferenceFragment extends PreferenceFragment {
public TrimLengthValidationListener() {
EditTextPreference preference = (EditTextPreference)findPreference(TextSecurePreferences.THREAD_TRIM_LENGTH);
- preference.setSummary(getString(R.string.ApplicationPreferencesActivity_messages_per_conversation, preference.getText()));
+ onPreferenceChange(preference, preference.getText());
}
@Override
@@ -116,18 +116,19 @@ public class ChatsPreferenceFragment extends PreferenceFragment {
return false;
}
+ int value;
try {
- Integer.parseInt((String)newValue);
+ value = Integer.parseInt((String)newValue);
} catch (NumberFormatException nfe) {
Log.w(TAG, nfe);
return false;
}
- if (Integer.parseInt((String)newValue) < 1) {
+ if (value < 1) {
return false;
}
- preference.setSummary(getString(R.string.ApplicationPreferencesActivity_messages_per_conversation, newValue));
+ preference.setSummary(getResources().getQuantityString(R.plurals.ApplicationPreferencesActivity_messages_per_conversation, value, value));
return true;
}
}