diff --git a/src/org/thoughtcrime/securesms/ConversationListAdapter.java b/src/org/thoughtcrime/securesms/ConversationListAdapter.java index 0488e2703..3d2f22605 100644 --- a/src/org/thoughtcrime/securesms/ConversationListAdapter.java +++ b/src/org/thoughtcrime/securesms/ConversationListAdapter.java @@ -183,6 +183,16 @@ class ConversationListAdapter extends RecyclerView.Adapter { this.notifyDataSetChanged(); } + int getDeaddropContactId() + { + for (int i = 0; i < dcChatlist.getCnt(); i++) { + if (dcChatlist.getChatId(i) == DcChat.DC_CHAT_ID_DEADDROP) { + return dcContext.getMsg(dcChatlist.getMsgId(i)).getFromId(); + } + } + return 0; + } + interface ItemClickListener { void onItemClick(ConversationListItem item); void onItemLongClick(ConversationListItem item); diff --git a/src/org/thoughtcrime/securesms/ConversationListFragment.java b/src/org/thoughtcrime/securesms/ConversationListFragment.java index 49cb885fc..14032281b 100644 --- a/src/org/thoughtcrime/securesms/ConversationListFragment.java +++ b/src/org/thoughtcrime/securesms/ConversationListFragment.java @@ -244,7 +244,12 @@ public class ConversationListFragment extends Fragment @Override protected void executeAction(@Nullable Void parameter) { for (long threadId : selectedConversations) { - dcContext.archiveChat((int)threadId, !archive? 1 : 0); + if (threadId==DcChat.DC_CHAT_ID_DEADDROP) { + dcContext.marknoticedContact(getListAdapter().getDeaddropContactId()); + } + else { + dcContext.archiveChat((int)threadId, !archive? 1 : 0); + } } } @@ -285,7 +290,12 @@ public class ConversationListFragment extends Fragment @Override protected Void doInBackground(Void... params) { for (long threadId : selectedConversations) { - dcContext.deleteChat((int)threadId); + if (threadId==DcChat.DC_CHAT_ID_DEADDROP) { + dcContext.marknoticedContact(getListAdapter().getDeaddropContactId()); + } + else { + dcContext.deleteChat((int) threadId); + } } return null; }