From d67476eec7f4d41582f543f93f74e76e58609b38 Mon Sep 17 00:00:00 2001 From: 0xd9a <0xd9a@noreply.codeberg.org> Date: Wed, 4 May 2022 23:11:14 +0530 Subject: [PATCH] Display more relevant notification titles --- .../fedilab/android/helper/NotificationsHelper.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/app/fedilab/android/helper/NotificationsHelper.java b/app/src/main/java/app/fedilab/android/helper/NotificationsHelper.java index e55aaf4c..6b66d43f 100644 --- a/app/src/main/java/app/fedilab/android/helper/NotificationsHelper.java +++ b/app/src/main/java/app/fedilab/android/helper/NotificationsHelper.java @@ -176,6 +176,7 @@ public class NotificationsHelper { int newPolls = 0; int newStatus = 0; String notificationUrl; + String title = null; String message = null; String targeted_account = null; Helper.NotifType notifType = Helper.NotifType.MENTION; @@ -184,6 +185,7 @@ public class NotificationsHelper { case "mention": notifType = Helper.NotifType.MENTION; if (notif_mention) { + title = context.getString(R.string.channel_notif_mention); if (notification.account.display_name != null && notification.account.display_name.length() > 0) message = String.format("%s %s", notification.account.display_name, context.getString(R.string.notif_mention)); else @@ -207,6 +209,7 @@ public class NotificationsHelper { case "status": notifType = Helper.NotifType.STATUS; if (notif_status) { + title = context.getString(R.string.channel_notif_status); if (notification.account.display_name != null && notification.account.display_name.length() > 0) message = String.format("%s %s", notification.account.display_name, context.getString(R.string.notif_status)); else @@ -230,6 +233,7 @@ public class NotificationsHelper { case "reblog": notifType = Helper.NotifType.BOOST; if (notif_share) { + title = context.getString(R.string.channel_notif_boost); if (notification.account.display_name != null && notification.account.display_name.length() > 0) message = String.format("%s %s", notification.account.display_name, context.getString(R.string.notif_reblog)); else @@ -240,6 +244,7 @@ public class NotificationsHelper { case "favourite": notifType = Helper.NotifType.FAV; if (notif_fav) { + title = context.getString(R.string.channel_notif_fav); if (notification.account.display_name != null && notification.account.display_name.length() > 0) message = String.format("%s %s", notification.account.display_name, context.getString(R.string.notif_favourite)); else @@ -250,6 +255,7 @@ public class NotificationsHelper { case "follow_request": notifType = Helper.NotifType.FOLLLOW; if (notif_follow) { + title = context.getString(R.string.channel_notif_follow); if (notification.account.display_name != null && notification.account.display_name.length() > 0) message = String.format("%s %s", notification.account.display_name, context.getString(R.string.notif_follow_request)); else @@ -261,6 +267,7 @@ public class NotificationsHelper { case "follow": notifType = Helper.NotifType.FOLLLOW; if (notif_follow) { + title = context.getString(R.string.channel_notif_follow); if (notification.account.display_name != null && notification.account.display_name.length() > 0) message = String.format("%s %s", notification.account.display_name, context.getString(R.string.notif_follow)); else @@ -272,6 +279,7 @@ public class NotificationsHelper { case "poll": notifType = Helper.NotifType.POLL; if (notif_poll) { + title = context.getString(R.string.channel_notif_poll); if (notification.account.id != null && notification.account.id.equals(MainActivity.currentUserID)) message = context.getString(R.string.notif_poll_self); else @@ -300,6 +308,7 @@ public class NotificationsHelper { Helper.NotifType finalNotifType = notifType; String finalMessage = message; String finalMessage1 = message; + String finalTitle = title; Runnable myRunnable = () -> Glide.with(context) .asBitmap() .load(finalNotificationUrl != null ? finalNotificationUrl : R.drawable.fedilab_logo_bubbles) @@ -313,7 +322,7 @@ public class NotificationsHelper { @Override public boolean onLoadFailed(@Nullable GlideException e, Object model, Target target, boolean isFirstResource) { notify_user(context, account, intent, BitmapFactory.decodeResource(context.getResources(), - R.mipmap.ic_launcher), finalNotifType, context.getString(R.string.top_notification), finalMessage1); + R.mipmap.ic_launcher), finalNotifType, finalTitle, finalMessage1); String lastNotif = prefs.getString(context.getString(R.string.LAST_NOTIFICATION_ID) + account.user_id + "@" + account.instance, null); if (lastNotif == null || notifications.get(0).id.compareTo(lastNotif) > 0) { SharedPreferences.Editor editor = prefs.edit(); @@ -326,7 +335,7 @@ public class NotificationsHelper { .into(new CustomTarget() { @Override public void onResourceReady(@NonNull Bitmap resource, Transition transition) { - notify_user(context, account, intent, resource, finalNotifType, context.getString(R.string.top_notification), finalMessage); + notify_user(context, account, intent, resource, finalNotifType, finalTitle, finalMessage); String lastNotif = prefs.getString(context.getString(R.string.LAST_NOTIFICATION_ID) + account.user_id + "@" + account.instance, null); if (lastNotif == null || notifications.get(0).id.compareTo(lastNotif) > 0) { SharedPreferences.Editor editor = prefs.edit();