From 09b0a8b161418d915eb85f04e1be2462a891271f Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Tue, 13 Dec 2016 15:07:43 -0200 Subject: [PATCH] Use different notification icons for different features and use the primary color for the notification. --- .../android/AndroidNotificationManagerImpl.java | 16 +++++++++++----- .../briarproject/briar/android/BriarService.java | 4 +++- .../res/drawable/introduction_notification.xml | 9 --------- .../res/drawable/message_notification_icon.xml | 9 --------- .../src/main/res/drawable/notification_blog.xml | 10 ++++++++++ .../src/main/res/drawable/notification_forum.xml | 10 ++++++++++ .../res/drawable/notification_introduction.xml | 10 ++++++++++ ...ication_icon.xml => notification_ongoing.xml} | 0 .../res/drawable/notification_private_group.xml | 10 ++++++++++ .../drawable/notification_private_message.xml | 10 ++++++++++ 10 files changed, 64 insertions(+), 24 deletions(-) delete mode 100644 briar-android/src/main/res/drawable/introduction_notification.xml delete mode 100644 briar-android/src/main/res/drawable/message_notification_icon.xml create mode 100644 briar-android/src/main/res/drawable/notification_blog.xml create mode 100644 briar-android/src/main/res/drawable/notification_forum.xml create mode 100644 briar-android/src/main/res/drawable/notification_introduction.xml rename briar-android/src/main/res/drawable/{ongoing_notification_icon.xml => notification_ongoing.xml} (100%) create mode 100644 briar-android/src/main/res/drawable/notification_private_group.xml create mode 100644 briar-android/src/main/res/drawable/notification_private_message.xml diff --git a/briar-android/src/main/java/org/briarproject/briar/android/AndroidNotificationManagerImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/AndroidNotificationManagerImpl.java index 3f1dc6d09..d41835c80 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/AndroidNotificationManagerImpl.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/AndroidNotificationManagerImpl.java @@ -12,6 +12,7 @@ import android.os.Build; import android.support.annotation.UiThread; import android.support.v4.app.NotificationCompat; import android.support.v4.app.TaskStackBuilder; +import android.support.v4.content.ContextCompat; import org.briarproject.bramble.api.contact.ContactId; import org.briarproject.bramble.api.db.DatabaseExecutor; @@ -327,7 +328,8 @@ class AndroidNotificationManagerImpl implements AndroidNotificationManager, } else if (settings.getBoolean("notifyPrivateMessages", true)) { NotificationCompat.Builder b = new NotificationCompat.Builder(appContext); - b.setSmallIcon(R.drawable.message_notification_icon); + b.setSmallIcon(R.drawable.notification_private_message); + b.setColor(ContextCompat.getColor(appContext, R.color.briar_primary)); b.setContentTitle(appContext.getText(R.string.app_name)); b.setContentText(appContext.getResources().getQuantityString( R.plurals.private_message_notification_text, contactTotal, @@ -435,7 +437,8 @@ class AndroidNotificationManagerImpl implements AndroidNotificationManager, } else if (settings.getBoolean(PREF_NOTIFY_GROUP, true)) { NotificationCompat.Builder b = new NotificationCompat.Builder(appContext); - b.setSmallIcon(R.drawable.message_notification_icon); + b.setSmallIcon(R.drawable.notification_private_group); + b.setColor(ContextCompat.getColor(appContext, R.color.briar_primary)); b.setContentTitle(appContext.getText(R.string.app_name)); b.setContentText(appContext.getResources().getQuantityString( R.plurals.group_message_notification_text, groupTotal, @@ -530,7 +533,8 @@ class AndroidNotificationManagerImpl implements AndroidNotificationManager, } else if (settings.getBoolean("notifyForumPosts", true)) { NotificationCompat.Builder b = new NotificationCompat.Builder(appContext); - b.setSmallIcon(R.drawable.message_notification_icon); + b.setSmallIcon(R.drawable.notification_forum); + b.setColor(ContextCompat.getColor(appContext, R.color.briar_primary)); b.setContentTitle(appContext.getText(R.string.app_name)); b.setContentText(appContext.getResources().getQuantityString( R.plurals.forum_post_notification_text, forumTotal, @@ -625,7 +629,8 @@ class AndroidNotificationManagerImpl implements AndroidNotificationManager, } else if (settings.getBoolean(PREF_NOTIFY_BLOG, true)) { NotificationCompat.Builder b = new NotificationCompat.Builder(appContext); - b.setSmallIcon(R.drawable.message_notification_icon); + b.setSmallIcon(R.drawable.notification_blog); + b.setColor(ContextCompat.getColor(appContext, R.color.briar_primary)); b.setContentTitle(appContext.getText(R.string.app_name)); b.setContentText(appContext.getResources().getQuantityString( R.plurals.blog_post_notification_text, blogTotal, @@ -685,7 +690,8 @@ class AndroidNotificationManagerImpl implements AndroidNotificationManager, private void updateIntroductionNotification() { NotificationCompat.Builder b = new NotificationCompat.Builder(appContext); - b.setSmallIcon(R.drawable.introduction_notification); + b.setSmallIcon(R.drawable.notification_introduction); + b.setColor(ContextCompat.getColor(appContext, R.color.briar_primary)); b.setContentTitle(appContext.getText(R.string.app_name)); b.setContentText(appContext.getResources().getQuantityString( R.plurals.introduction_notification_text, introductionTotal, diff --git a/briar-android/src/main/java/org/briarproject/briar/android/BriarService.java b/briar-android/src/main/java/org/briarproject/briar/android/BriarService.java index f7eabd508..e273d393d 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/BriarService.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/BriarService.java @@ -10,6 +10,7 @@ import android.os.Binder; import android.os.Build; import android.os.IBinder; import android.support.v4.app.NotificationCompat; +import android.support.v4.content.ContextCompat; import org.briarproject.bramble.api.db.DatabaseConfig; import org.briarproject.bramble.api.lifecycle.LifecycleManager; @@ -75,7 +76,8 @@ public class BriarService extends Service { } // Show an ongoing notification that the service is running NotificationCompat.Builder b = new NotificationCompat.Builder(this); - b.setSmallIcon(R.drawable.ongoing_notification_icon); + b.setSmallIcon(R.drawable.notification_ongoing); + b.setColor(ContextCompat.getColor(this, R.color.briar_primary)); b.setContentTitle(getText(R.string.ongoing_notification_title)); b.setContentText(getText(R.string.ongoing_notification_text)); b.setWhen(0); // Don't show the time diff --git a/briar-android/src/main/res/drawable/introduction_notification.xml b/briar-android/src/main/res/drawable/introduction_notification.xml deleted file mode 100644 index ac4328d12..000000000 --- a/briar-android/src/main/res/drawable/introduction_notification.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/briar-android/src/main/res/drawable/message_notification_icon.xml b/briar-android/src/main/res/drawable/message_notification_icon.xml deleted file mode 100644 index c300537f6..000000000 --- a/briar-android/src/main/res/drawable/message_notification_icon.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/briar-android/src/main/res/drawable/notification_blog.xml b/briar-android/src/main/res/drawable/notification_blog.xml new file mode 100644 index 000000000..d5218f632 --- /dev/null +++ b/briar-android/src/main/res/drawable/notification_blog.xml @@ -0,0 +1,10 @@ + + + + diff --git a/briar-android/src/main/res/drawable/notification_forum.xml b/briar-android/src/main/res/drawable/notification_forum.xml new file mode 100644 index 000000000..5bd071e1d --- /dev/null +++ b/briar-android/src/main/res/drawable/notification_forum.xml @@ -0,0 +1,10 @@ + + + + diff --git a/briar-android/src/main/res/drawable/notification_introduction.xml b/briar-android/src/main/res/drawable/notification_introduction.xml new file mode 100644 index 000000000..48c8339f0 --- /dev/null +++ b/briar-android/src/main/res/drawable/notification_introduction.xml @@ -0,0 +1,10 @@ + + + + diff --git a/briar-android/src/main/res/drawable/ongoing_notification_icon.xml b/briar-android/src/main/res/drawable/notification_ongoing.xml similarity index 100% rename from briar-android/src/main/res/drawable/ongoing_notification_icon.xml rename to briar-android/src/main/res/drawable/notification_ongoing.xml diff --git a/briar-android/src/main/res/drawable/notification_private_group.xml b/briar-android/src/main/res/drawable/notification_private_group.xml new file mode 100644 index 000000000..55cbde9ee --- /dev/null +++ b/briar-android/src/main/res/drawable/notification_private_group.xml @@ -0,0 +1,10 @@ + + + + diff --git a/briar-android/src/main/res/drawable/notification_private_message.xml b/briar-android/src/main/res/drawable/notification_private_message.xml new file mode 100644 index 000000000..49cb74cf2 --- /dev/null +++ b/briar-android/src/main/res/drawable/notification_private_message.xml @@ -0,0 +1,10 @@ + + + +