diff --git a/CHANGELOG-upstream.md b/CHANGELOG-upstream.md
index 3c7542325..26117261c 100644
--- a/CHANGELOG-upstream.md
+++ b/CHANGELOG-upstream.md
@@ -1,5 +1,14 @@
# Delta Chat Android Changelog
+## 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
+* improve message date/status footer layout, also in RTL languages
+* display correct text when receiving a "Disapearing messages enabled" system message
+* Update to core 2.9.0
+
## v2.8.0
* Profiles focus on recognizing contacts
diff --git a/build.gradle b/build.gradle
index 0cd04d127..30445da92 100644
--- a/build.gradle
+++ b/build.gradle
@@ -33,8 +33,8 @@ android {
useLibrary 'org.apache.http.legacy'
defaultConfig {
- versionCode 30000726
- versionName "2.8.0"
+ versionCode 30000727
+ versionName "2.9.0"
applicationId "chat.delta.lite"
multiDexEnabled true
diff --git a/jni/deltachat-core-rust b/jni/deltachat-core-rust
index 9c68a91f4..9a589bc80 160000
--- a/jni/deltachat-core-rust
+++ b/jni/deltachat-core-rust
@@ -1 +1 @@
-Subproject commit 9c68a91f413356ea9d18e7368fed533a50af7d19
+Subproject commit 9a589bc80faf44e6d2f0a2cbddddb786fdf13457
diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java b/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java
index 341d0e3c1..2fafbae96 100644
--- a/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java
+++ b/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java
@@ -448,7 +448,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);
}
diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java b/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java
index 74a5cf693..3590f0da0 100644
--- a/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java
+++ b/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java
@@ -334,8 +334,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.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);
diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationListItem.java b/src/main/java/org/thoughtcrime/securesms/ConversationListItem.java
index 08eb5e8e4..cbca0aa2b 100644
--- a/src/main/java/org/thoughtcrime/securesms/ConversationListItem.java
+++ b/src/main/java/org/thoughtcrime/securesms/ConversationListItem.java
@@ -134,6 +134,7 @@ public class ConversationListItem extends RelativeLayout
this.fromView.setText(recipient, state!=DcMsg.DC_STATE_IN_FRESH);
}
+ subjectView.setVisibility(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)
@@ -179,8 +180,8 @@ public class ConversationListItem extends RelativeLayout
Recipient recipient = new Recipient(getContext(), contact);
fromView.setText(getHighlightedSpan(contact.getDisplayName(), highlightSubstring));
- fromView.setCompoundDrawablesWithIntrinsicBounds(0, 0, contact.isVerified()? R.drawable.ic_verified : 0, 0);
- subjectView.setText(getHighlightedSpan(contact.getAddr(), highlightSubstring));
+ fromView.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
+ subjectView.setVisibility(GONE);
dateView.setText("");
dateView.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
archivedBadgeView.setVisibility(GONE);
@@ -204,6 +205,7 @@ public class ConversationListItem extends RelativeLayout
fromView.setText(recipient, true);
fromView.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
+ subjectView.setVisibility(VISIBLE);
subjectView.setText(getHighlightedSpan(messageResult.getSummarytext(512), highlightSubstring));
long timestamp = messageResult.getTimestamp();
diff --git a/src/main/java/org/thoughtcrime/securesms/ProfileActivity.java b/src/main/java/org/thoughtcrime/securesms/ProfileActivity.java
index 4c76aa859..9035530d3 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){
diff --git a/src/main/java/org/thoughtcrime/securesms/connect/DcHelper.java b/src/main/java/org/thoughtcrime/securesms/connect/DcHelper.java
index bb073c9ce..3bf59fedb 100644
--- a/src/main/java/org/thoughtcrime/securesms/connect/DcHelper.java
+++ b/src/main/java/org/thoughtcrime/securesms/connect/DcHelper.java
@@ -155,7 +155,6 @@ public class DcHelper {
dcContext.setStockTranslation(11, context.getString(R.string.audio));
dcContext.setStockTranslation(12, context.getString(R.string.file));
dcContext.setStockTranslation(23, context.getString(R.string.gif));
- dcContext.setStockTranslation(24, context.getString(R.string.encrypted_message));
dcContext.setStockTranslation(29, context.getString(R.string.systemmsg_cannot_decrypt));
dcContext.setStockTranslation(35, context.getString(R.string.contact_verified));
dcContext.setStockTranslation(40, context.getString(R.string.chat_archived_label));
@@ -238,12 +237,7 @@ public class DcHelper {
dcContext.setStockTranslation(121, context.getString(R.string.connectivity_not_connected));
dcContext.setStockTranslation(162, context.getString(R.string.multidevice_qr_subtitle));
dcContext.setStockTranslation(163, context.getString(R.string.multidevice_transfer_done_devicemsg));
-
- // The next two strings should only be set if the UI actually shows more info when the user clicks on the
- // DC_INFO_PROTECTION_{EN|DIS}ABLED info message
dcContext.setStockTranslation(170, context.getString(R.string.chat_protection_enabled_tap_to_learn_more));
- dcContext.setStockTranslation(171, context.getString(R.string.chat_protection_broken_tap_to_learn_more));
-
dcContext.setStockTranslation(172, context.getString(R.string.chat_new_group_hint));
dcContext.setStockTranslation(173, context.getString(R.string.member_x_added));
dcContext.setStockTranslation(174, context.getString(R.string.invalid_unencrypted_tap_to_learn_more));
diff --git a/src/main/res/layout/conversation_item_footer.xml b/src/main/res/layout/conversation_item_footer.xml
index 291493707..4016775f0 100644
--- a/src/main/res/layout/conversation_item_footer.xml
+++ b/src/main/res/layout/conversation_item_footer.xml
@@ -1,6 +1,7 @@
+ tools:visibility="visible" />
+ tools:visibility="visible" />
+ tools:visibility="visible" />
+ tools:text="30 mins" />
+ tools:visibility="gone" />
-
+
diff --git a/src/main/res/values-uk/strings.xml b/src/main/res/values-uk/strings.xml
index 86cd40af7..5d331d889 100644
--- a/src/main/res/values-uk/strings.xml
+++ b/src/main/res/values-uk/strings.xml
@@ -28,8 +28,8 @@
Долучитися
Передолучитися
Видалити
- Видалить у мене
- Видалити в усіх
+ Видалити для мене
+ Видалити для всіх
Відомості
Оновити
Емодзі