From abaf1d7e967ac6b2e35ad8070b023fca85a8e71d Mon Sep 17 00:00:00 2001
From: akwizgran <akwizgran@users.sourceforge.net>
Date: Fri, 7 Mar 2014 13:06:31 +0000
Subject: [PATCH] Show message/post count in notifications. Dev task #77.

---
 briar-android/res/values/strings.xml                   | 10 ++++++++--
 .../android/AndroidNotificationManagerImpl.java        | 10 ++++++----
 .../briarproject/android/groups/GroupListActivity.java |  6 +++---
 3 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/briar-android/res/values/strings.xml b/briar-android/res/values/strings.xml
index 229cf49244..9ca9365344 100644
--- a/briar-android/res/values/strings.xml
+++ b/briar-android/res/values/strings.xml
@@ -76,8 +76,14 @@
     <string name="add_button">Add</string>
     <string name="cancel_button">Cancel</string>
     <string name="post_sent_toast">Post sent</string>
-    <string name="private_message_notification_text">New private message.</string>
-    <string name="group_post_notification_text">New forum post.</string>
+    <plurals name="private_message_notification_text">
+        <item quantity="one">New private message.</item>
+        <item quantity="other">%d new private messages.</item>
+    </plurals>
+    <plurals name="group_post_notification_text">
+        <item quantity="one">New forum post.</item>
+        <item quantity="other">%d new forum posts.</item>
+    </plurals>
     <string name="settings_title">Settings</string>
     <string name="activate_bluetooth_option">Activate Bluetooth while signed in</string>
     <string name="activate_bluetooth_explanation">Briar uses Bluetooth to communicate with nearby contacts</string>
diff --git a/briar-android/src/org/briarproject/android/AndroidNotificationManagerImpl.java b/briar-android/src/org/briarproject/android/AndroidNotificationManagerImpl.java
index 51dcea4d1e..7e8bc622b9 100644
--- a/briar-android/src/org/briarproject/android/AndroidNotificationManagerImpl.java
+++ b/briar-android/src/org/briarproject/android/AndroidNotificationManagerImpl.java
@@ -68,8 +68,9 @@ class AndroidNotificationManagerImpl implements AndroidNotificationManager {
 					new NotificationCompat.Builder(appContext);
 			b.setSmallIcon(R.drawable.message_notification_icon);
 			b.setContentTitle(appContext.getText(R.string.app_name));
-			b.setContentText(appContext.getText(
-					R.string.private_message_notification_text));
+			b.setContentText(appContext.getResources().getQuantityString(
+					R.plurals.private_message_notification_text, privateTotal,
+					privateTotal));
 			b.setDefaults(DEFAULT_ALL);
 			b.setOnlyAlertOnce(true);
 			if(contactCounts.size() == 1) {
@@ -126,8 +127,9 @@ class AndroidNotificationManagerImpl implements AndroidNotificationManager {
 					new NotificationCompat.Builder(appContext);
 			b.setSmallIcon(R.drawable.message_notification_icon);
 			b.setContentTitle(appContext.getText(R.string.app_name));
-			b.setContentText(appContext.getText(
-					R.string.group_post_notification_text));
+			b.setContentText(appContext.getResources().getQuantityString(
+					R.plurals.group_post_notification_text, groupTotal,
+					groupTotal));
 			b.setDefaults(DEFAULT_ALL);
 			b.setOnlyAlertOnce(true);
 			if(groupCounts.size() == 1) {
diff --git a/briar-android/src/org/briarproject/android/groups/GroupListActivity.java b/briar-android/src/org/briarproject/android/groups/GroupListActivity.java
index 55133a9890..f422f74216 100644
--- a/briar-android/src/org/briarproject/android/groups/GroupListActivity.java
+++ b/briar-android/src/org/briarproject/android/groups/GroupListActivity.java
@@ -223,9 +223,9 @@ implements EventListener, OnClickListener, OnItemClickListener {
 					available.setVisibility(GONE);
 				} else {
 					available.setVisibility(VISIBLE);
-					String format = getResources().getQuantityString(
-							R.plurals.forums_available, availableCount);
-					available.setText(String.format(format, availableCount));
+					available.setText(getResources().getQuantityString(
+							R.plurals.forums_available, availableCount,
+							availableCount));
 				}
 			}
 		});
-- 
GitLab