From c3556f01f27827dd2c41c413b74a049da5f18f7c Mon Sep 17 00:00:00 2001 From: "B. Petersen" Date: Wed, 12 Feb 2020 12:40:26 +0100 Subject: [PATCH] use tri-state for archived --- src/org/thoughtcrime/securesms/ConversationActivity.java | 8 ++++---- src/org/thoughtcrime/securesms/ConversationListItem.java | 2 +- .../securesms/connect/ApplicationDcContext.java | 3 +-- .../securesms/database/model/ThreadRecord.java | 6 +++--- 4 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/org/thoughtcrime/securesms/ConversationActivity.java b/src/org/thoughtcrime/securesms/ConversationActivity.java index a00ab2fe5..8587ed5f4 100644 --- a/src/org/thoughtcrime/securesms/ConversationActivity.java +++ b/src/org/thoughtcrime/securesms/ConversationActivity.java @@ -447,11 +447,11 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity } } - if( dcChat.getArchived()==0 ) { - inflater.inflate(R.menu.conversation_archive, menu); + if( dcChat.getArchived()==1 ) { + inflater.inflate(R.menu.conversation_unarchive, menu); } else { - inflater.inflate(R.menu.conversation_unarchive, menu); + inflater.inflate(R.menu.conversation_archive, menu); } inflater.inflate(R.menu.conversation_delete, menu); @@ -558,7 +558,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity } private void handleArchiveChat() { - int doArchive = dcContext.getChat(chatId).getArchived() == 0 ? 1: 0; + int doArchive = dcContext.getChat(chatId).getArchived() == 1 ? 0: 1; dcContext.archiveChat(chatId, doArchive); Toast.makeText(this, getString(R.string.done), Toast.LENGTH_SHORT).show(); if( doArchive == 1 ) { diff --git a/src/org/thoughtcrime/securesms/ConversationListItem.java b/src/org/thoughtcrime/securesms/ConversationListItem.java index ef27c5727..214852df9 100644 --- a/src/org/thoughtcrime/securesms/ConversationListItem.java +++ b/src/org/thoughtcrime/securesms/ConversationListItem.java @@ -254,7 +254,7 @@ public class ConversationListItem extends RelativeLayout } private void setStatusIcons(ThreadRecord thread) { - if (thread.isArchived()) + if (thread.getArchived()==1) { // archived this.archivedView.setVisibility(View.VISIBLE); diff --git a/src/org/thoughtcrime/securesms/connect/ApplicationDcContext.java b/src/org/thoughtcrime/securesms/connect/ApplicationDcContext.java index ed308d94d..352f66862 100644 --- a/src/org/thoughtcrime/securesms/connect/ApplicationDcContext.java +++ b/src/org/thoughtcrime/securesms/connect/ApplicationDcContext.java @@ -279,12 +279,11 @@ public class ApplicationDcContext extends DcContext { Recipient recipient = getRecipient(chat); long date = summary.getTimestamp(); int unreadCount = getFreshMsgCount(chatId); - boolean archived = chat.getArchived() != 0; boolean verified = chat.isVerified(); return new ThreadRecord(context, body, recipient, date, unreadCount, chatId, - archived, verified, chat.isSendingLocations(), summary); + chat.getArchived(), verified, chat.isSendingLocations(), summary); } diff --git a/src/org/thoughtcrime/securesms/database/model/ThreadRecord.java b/src/org/thoughtcrime/securesms/database/model/ThreadRecord.java index 29e3f6764..0693ec629 100644 --- a/src/org/thoughtcrime/securesms/database/model/ThreadRecord.java +++ b/src/org/thoughtcrime/securesms/database/model/ThreadRecord.java @@ -45,7 +45,7 @@ public class ThreadRecord { private final String body; private final int unreadCount; - private final boolean archived; + private final int archived; private final boolean verified; private final boolean isSendingLocations; private @Nullable final DcLot dcSummary; @@ -53,7 +53,7 @@ public class ThreadRecord { public ThreadRecord(@NonNull Context context, @NonNull String body, @NonNull Recipient recipient, long dateReceived, int unreadCount, long threadId, - boolean archived, + int archived, boolean verified, boolean isSendingLocations, @Nullable DcLot dcSummary) @@ -110,7 +110,7 @@ public class ThreadRecord { return getDateReceived(); } - public boolean isArchived() { + public int getArchived() { return archived; }