From 1884f9bc4f074fb55a408f5f1580b51cd8d03cbe Mon Sep 17 00:00:00 2001 From: bjoern Date: Sun, 19 May 2024 20:55:43 +0200 Subject: [PATCH] show the device-update-message only once, not on every account switch (#3069) * show the device-update-message only once, not on every account switch * instead of not adding device messages twice, always add and mark the chat as being noticed * remove unused variable --- .../thoughtcrime/securesms/ConversationListActivity.java | 8 ++++++++ src/org/thoughtcrime/securesms/util/Prefs.java | 2 ++ 2 files changed, 10 insertions(+) diff --git a/src/org/thoughtcrime/securesms/ConversationListActivity.java b/src/org/thoughtcrime/securesms/ConversationListActivity.java index c10f85b4f..1e0bf5a0a 100644 --- a/src/org/thoughtcrime/securesms/ConversationListActivity.java +++ b/src/org/thoughtcrime/securesms/ConversationListActivity.java @@ -127,6 +127,14 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit + "For more changes worth testing see https://delta.chat/changelog"); //} dcContext.addDeviceMsg(deviceMsgId, msg); + + if (Prefs.getStringPreference(this, Prefs.LAST_DEVICE_MSG_ID, "").equals(deviceMsgId)) { + int deviceChatId = dcContext.getChatIdByContactId(DcContact.DC_CONTACT_ID_DEVICE); + if (deviceChatId != 0) { + dcContext.marknoticedChat(deviceChatId); + } + } + Prefs.setStringPreference(this, Prefs.LAST_DEVICE_MSG_ID, deviceMsgId); } } catch(Exception e) { e.printStackTrace(); diff --git a/src/org/thoughtcrime/securesms/util/Prefs.java b/src/org/thoughtcrime/securesms/util/Prefs.java index 2ea48b076..b97fdff34 100644 --- a/src/org/thoughtcrime/securesms/util/Prefs.java +++ b/src/org/thoughtcrime/securesms/util/Prefs.java @@ -64,6 +64,8 @@ public class Prefs { public static final String ALWAYS_LOAD_REMOTE_CONTENT = "pref_always_load_remote_content"; public static final boolean ALWAYS_LOAD_REMOTE_CONTENT_DEFAULT = false; + public static final String LAST_DEVICE_MSG_ID = "pref_last_device_msg_id"; + public enum VibrateState { DEFAULT(0), ENABLED(1), DISABLED(2); private final int id;