From db0c48cc6be0b0328fc76b0b98cc8a0326e03d05 Mon Sep 17 00:00:00 2001 From: Nicolas Fella Date: Fri, 24 May 2019 11:27:08 +0000 Subject: [PATCH] Extract bigtext from notifications --- .../NotificationsPlugin.java | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java b/src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java index 63b1fe87..b820bd40 100644 --- a/src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java +++ b/src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java @@ -304,17 +304,27 @@ public class NotificationsPlugin extends Plugin implements NotificationReceiver. np.set("title", notification.extras.getString(Notification.EXTRA_TITLE)); } - if (conversation.second != null) { - np.set("text", conversation.second); - } else { - np.set("text", notification.extras.getString(Notification.EXTRA_TEXT)); - } + np.set("text", extractText(notification, conversation)); } } device.sendPacket(np); } + @RequiresApi(api = Build.VERSION_CODES.KITKAT) + private String extractText(Notification notification, Pair conversation) { + + if (conversation.second != null) { + return conversation.second; + } + + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && notification.extras.containsKey(Notification.EXTRA_BIG_TEXT)) { + return extractStringFromExtra(notification.extras, Notification.EXTRA_BIG_TEXT); + } + + return notification.extras.getString(Notification.EXTRA_TEXT); + } + private Pair extractConversation(Notification notification) { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) return new Pair<>(null, null);