Merge remote-tracking branch 'upstream/main'

This commit is contained in:
adbenitez
2025-08-03 00:25:01 +02:00
3 changed files with 19 additions and 8 deletions
+9 -3
View File
@@ -1,12 +1,18 @@
# Delta Chat Android Changelog
## Unreleased
* fix "Archived" item's layout in chat-list
* don't enlarge "Saved Messages" and "Devices Messages" avatars on click
* share email address for email contacts instead of vCard
## v2.9.0
* 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
* don't enlarge email chats avatar placeholder
* improve message date/status footer layout, also in RTL languages
* display correct text when receiving a "Disapearing messages enabled" system message
* display correct text when receiving a "Disappearing messages enabled" system message
* Update to core 2.9.0
## v2.8.0
@@ -21,7 +27,7 @@
* New icon for the QR icon
* Start rebuilding the experimental broadcast lists
into proper channels - note that this is work-in-progress
* Improved separation between unencryted chats/contacts and encrypted ones, avoiding mixing of encrypted and unencrypted messages in the same chat
* Improved separation between unencrypted chats/contacts and encrypted ones, avoiding mixing of encrypted and unencrypted messages in the same chat
* Removed padlocks, as encrypted is the default "normal" state. Instead, unencrypted email is marked with a small email / letter (✉️) icon
* Classic email chats/threads get a big email / letter icon making it easy to recognize
* After some time, add a device message asking to donate. Can't wait? Donate today at https://delta.chat/donate
@@ -134,7 +134,7 @@ public class ConversationListItem extends RelativeLayout
this.fromView.setText(recipient, state!=DcMsg.DC_STATE_IN_FRESH);
}
subjectView.setVisibility(VISIBLE);
subjectView.setVisibility(chatId == DcChat.DC_CHAT_ID_ARCHIVED_LINK? GONE : VISIBLE);
this.subjectView.setText(thread.getDisplayBody());
this.subjectView.setTypeface(state==DcMsg.DC_STATE_IN_FRESH ? BOLD_TYPEFACE : LIGHT_TYPEFACE);
this.subjectView.setTextColor(state==DcMsg.DC_STATE_IN_FRESH ? ThemeUtil.getThemedColor(getContext(), R.attr.conversation_list_item_unread_color)
@@ -315,12 +315,12 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
String profileImagePath;
String title;
Uri profileImageUri;
boolean chatIsEncrypted = true;
boolean enlargeAvatar = true;
if(chatId!=0) {
DcChat dcChat = dcContext.getChat(chatId);
profileImagePath = dcChat.getProfileImage();
title = dcChat.getName();
chatIsEncrypted = dcChat.isEncrypted();
enlargeAvatar = dcChat.isEncrypted() && !dcChat.isSelfTalk() && !dcChat.isDeviceTalk();
} else {
DcContact dcContact = dcContext.getContact(contactId);
profileImagePath = dcContact.getProfileImage();
@@ -329,7 +329,7 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
File file = new File(profileImagePath);
if (chatIsEncrypted && file.exists()) {
if (enlargeAvatar && file.exists()) {
profileImageUri = Uri.fromFile(file);
String type = "image/" + profileImagePath.substring(profileImagePath.lastIndexOf(".") + 1);
@@ -390,7 +390,12 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
private void onShare() {
Intent composeIntent = new Intent();
RelayUtil.setSharedContactId(composeIntent, contactId);
DcContact dcContact = dcContext.getContact(contactId);
if (dcContact.isKeyContact()) {
RelayUtil.setSharedContactId(composeIntent, contactId);
} else {
RelayUtil.setSharedText(composeIntent, dcContact.getAddr());
}
ConversationListRelayingActivity.start(this, composeIntent);
}