implement 'mark all as seen' in ConversationList

This commit is contained in:
B. Petersen
2018-09-13 02:12:06 +02:00
parent 9a52e5cf65
commit eb47c04739
3 changed files with 12 additions and 6 deletions
+6
View File
@@ -377,6 +377,12 @@ JNIEXPORT void Java_com_b44t_messenger_DcContext_marknoticedChat(JNIEnv *env, jo
}
JNIEXPORT void Java_com_b44t_messenger_DcContext_marknoticedAllChats(JNIEnv *env, jobject obj)
{
dc_marknoticed_all_chats(get_dc_context(env, obj));
}
JNIEXPORT void Java_com_b44t_messenger_DcContext_marknoticedContact(JNIEnv *env, jobject obj, jint contact_id)
{
dc_marknoticed_contact(get_dc_context(env, obj), contact_id);
+1
View File
@@ -110,6 +110,7 @@ public class DcContext {
public DcChat getChat(int chat_id) { return new DcChat(getChatCPtr(chat_id)); }
public native void markseenMsgs(int msg_ids[]);
public native void marknoticedChat(int chat_id);
public native void marknoticedAllChats();
public native void marknoticedContact(int contact_id);
public native void archiveChat(int chat_id, int archive);
public native int getChatIdByContactId(int contact_id);
@@ -33,8 +33,11 @@ import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.Toast;
import com.b44t.messenger.DcContext;
import org.thoughtcrime.securesms.components.RatingManager;
import org.thoughtcrime.securesms.components.SearchToolbar;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.MessagingDatabase.MarkedMessageInfo;
import org.thoughtcrime.securesms.lock.RegistrationLockDialog;
@@ -230,12 +233,8 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
Context context = ConversationListActivity.this;
List<MarkedMessageInfo> messageIds = DatabaseFactory.getThreadDatabase(context).setAllThreadsRead();
MessageNotifier.updateNotification(context);
MarkReadReceiver.process(context, messageIds);
Context context = ConversationListActivity.this;
DcHelper.getContext(context).marknoticedAllChats();
return null;
}
}.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);