From 8c04c199e68fb9140dc280f3b13015493bacc778 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Wed, 30 Jul 2025 23:30:59 +0200 Subject: [PATCH 1/5] disable editing messages on classic email threads --- .../java/org/thoughtcrime/securesms/ConversationFragment.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java b/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java index 60d93ad5f..c79b83848 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java @@ -332,7 +332,7 @@ public class ConversationFragment extends MessageSelectorFragment boolean canReply = canReplyToMsg(messageRecord); menu.findItem(R.id.menu_context_reply).setVisible(chat.canSend() && canReply); boolean canEdit = canEditMsg(messageRecord); - menu.findItem(R.id.menu_context_edit).setVisible(chat.canSend() && canEdit); + menu.findItem(R.id.menu_context_edit).setVisible(chat.isEncrypted() && chat.canSend() && canEdit); boolean showReplyPrivately = chat.isMultiUser() && !messageRecord.isOutgoing() && canReply; menu.findItem(R.id.menu_context_reply_privately).setVisible(showReplyPrivately); menu.findItem(R.id.menu_add_to_home_screen).setVisible(messageRecord.getType() == DcMsg.DC_MSG_WEBXDC); From 3a3388ed593c66b3e6aefba078d8e64a49ddab01 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Wed, 30 Jul 2025 23:37:16 +0200 Subject: [PATCH 2/5] disable non-functional disappearing timer option for email threads --- .../java/org/thoughtcrime/securesms/ConversationActivity.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java b/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java index 0d1030d2c..681f82a95 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java @@ -442,7 +442,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity menu.findItem(R.id.menu_show_map).setVisible(false); } - if (!dcChat.canSend() || dcChat.isMailingList() ) { + if (!dcChat.isEncrypted() || !dcChat.canSend() || dcChat.isMailingList() ) { menu.findItem(R.id.menu_ephemeral_messages).setVisible(false); } From ffa1c69be292e5c0827b88f4e428dce9b9742c94 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Wed, 30 Jul 2025 23:37:54 +0200 Subject: [PATCH 3/5] improve code efficiency --- .../java/org/thoughtcrime/securesms/ConversationFragment.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java b/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java index c79b83848..dcb88abf2 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java @@ -331,8 +331,7 @@ public class ConversationFragment extends MessageSelectorFragment menu.findItem(R.id.menu_context_share).setVisible(messageRecord.hasFile()); boolean canReply = canReplyToMsg(messageRecord); menu.findItem(R.id.menu_context_reply).setVisible(chat.canSend() && canReply); - boolean canEdit = canEditMsg(messageRecord); - menu.findItem(R.id.menu_context_edit).setVisible(chat.isEncrypted() && chat.canSend() && canEdit); + menu.findItem(R.id.menu_context_edit).setVisible(chat.isEncrypted() && chat.canSend() && canEditMsg(messageRecord)); boolean showReplyPrivately = chat.isMultiUser() && !messageRecord.isOutgoing() && canReply; menu.findItem(R.id.menu_context_reply_privately).setVisible(showReplyPrivately); menu.findItem(R.id.menu_add_to_home_screen).setVisible(messageRecord.getType() == DcMsg.DC_MSG_WEBXDC); From a280407370afe49d9c991c96e3e050b17c5ceda9 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Thu, 31 Jul 2025 16:26:44 +0200 Subject: [PATCH 4/5] update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 69b9a6889..f9e4d111d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Unreleased * hide contact email addresses in search results +* disable non-functional message editing and ephemeral messages timer settings in classic email thread chat ## v2.8.0 From cc64142e7ba73c28d19d03133b80e6c6831a91fc Mon Sep 17 00:00:00 2001 From: adbenitez Date: Thu, 31 Jul 2025 16:47:58 +0200 Subject: [PATCH 5/5] don't enlage email chats avatar placeholder --- CHANGELOG.md | 1 + src/main/java/org/thoughtcrime/securesms/ProfileActivity.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f9e4d111d..854a7d80c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ * hide contact email addresses in search results * disable non-functional message editing and ephemeral messages timer settings in classic email thread chat +* don't enlage email chats avatar placeholder ## v2.8.0 diff --git a/src/main/java/org/thoughtcrime/securesms/ProfileActivity.java b/src/main/java/org/thoughtcrime/securesms/ProfileActivity.java index db320e999..30136c6f2 100644 --- a/src/main/java/org/thoughtcrime/securesms/ProfileActivity.java +++ b/src/main/java/org/thoughtcrime/securesms/ProfileActivity.java @@ -329,7 +329,7 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity File file = new File(profileImagePath); - if (file.exists()) { + if (chatIsEncrypted && file.exists()) { profileImageUri = Uri.fromFile(file); String type = "image/" + profileImagePath.substring(profileImagePath.lastIndexOf(".") + 1); @@ -338,7 +338,7 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity intent.putExtra(MediaPreviewActivity.ACTIVITY_TITLE_EXTRA, title); intent.putExtra( // show edit-button, if the user is allowed to edit the name/avatar MediaPreviewActivity.EDIT_AVATAR_CHAT_ID, - (chatIsMultiUser && chatIsEncrypted && !chatIsInBroadcast && !chatIsMailingList) ? chatId : 0 + (chatIsMultiUser && !chatIsInBroadcast && !chatIsMailingList) ? chatId : 0 ); startActivity(intent); } else if (chatIsMultiUser){