From d96e979731f7fe4a07a8a25664ca7368492efc67 Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 21 Aug 2021 11:06:05 +0200 Subject: [PATCH] Set locus ID --- app/src/main/java/eu/faircode/email/Core.java | 5 +++++ app/src/main/java/eu/faircode/email/Shortcuts.java | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index c482cc4f10..e2a8a22922 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -49,6 +49,7 @@ import androidx.annotation.Nullable; import androidx.core.app.NotificationCompat; import androidx.core.app.Person; import androidx.core.app.RemoteInput; +import androidx.core.content.LocusIdCompat; import androidx.core.graphics.drawable.IconCompat; import androidx.localbroadcastmanager.content.LocalBroadcastManager; import androidx.preference.PreferenceManager; @@ -4561,6 +4562,10 @@ class Core { .setOnlyAlertOnce(alert_once) .setAllowSystemGeneratedContextualActions(false); + // https://developer.android.com/reference/android/content/LocusId + if (message.thread != null) + mbuilder.setLocusId(new LocusIdCompat(message.thread)); + if (message.ui_silent) { mbuilder.setSilent(true); Log.i("Notify silent=" + message.id); diff --git a/app/src/main/java/eu/faircode/email/Shortcuts.java b/app/src/main/java/eu/faircode/email/Shortcuts.java index a95a4c22c9..f9ab0a1fe0 100644 --- a/app/src/main/java/eu/faircode/email/Shortcuts.java +++ b/app/src/main/java/eu/faircode/email/Shortcuts.java @@ -41,6 +41,7 @@ import android.widget.Toast; import androidx.annotation.NonNull; import androidx.core.app.Person; +import androidx.core.content.LocusIdCompat; import androidx.core.content.pm.ShortcutInfoCompat; import androidx.core.content.pm.ShortcutManagerCompat; import androidx.core.graphics.drawable.IconCompat; @@ -303,11 +304,16 @@ class Shortcuts { IconCompat icon = IconCompat.createWithBitmap(bm); String id = "message:" + message.id; - return new ShortcutInfoCompat.Builder(context, id) + ShortcutInfoCompat.Builder builder = new ShortcutInfoCompat.Builder(context, id) .setIcon(icon) .setShortLabel(label) .setLongLabel(label) .setIntent(thread); + + if (message.thread != null) + builder.setLocusId(new LocusIdCompat(message.thread)); + + return builder; } @NonNull