diff --git a/app/src/main/java/com/nextcloud/talk/api/NcApi.java b/app/src/main/java/com/nextcloud/talk/api/NcApi.java index c2c65e17c..66e64eccc 100644 --- a/app/src/main/java/com/nextcloud/talk/api/NcApi.java +++ b/app/src/main/java/com/nextcloud/talk/api/NcApi.java @@ -552,7 +552,7 @@ public interface NcApi { @POST Observable setChatReadMarker(@Header("Authorization") String authorization, @Url String url, - @Field("lastReadMessage") int lastReadMessage); + @Nullable @Field("lastReadMessage") Integer lastReadMessage); // Url is: /api/{apiVersion}/chat/{token}/read @DELETE diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt index 473527418..dd83374b6 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt @@ -308,6 +308,12 @@ class ConversationsListBottomDialog( } private fun markConversationAsRead() { + val messageId = if (conversation.remoteServer.isNullOrEmpty()) { + conversation.lastMessage!!.jsonMessageId + } else { + null + } + ncApi.setChatReadMarker( credentials, ApiUtils.getUrlForChatReadMarker( @@ -315,7 +321,7 @@ class ConversationsListBottomDialog( currentUser.baseUrl!!, conversation.token!! ), - conversation.lastMessage!!.jsonMessageId + messageId ) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) @@ -360,6 +366,7 @@ class ConversationsListBottomDialog( ) } } + private fun leaveConversation() { val dataBuilder = Data.Builder() dataBuilder.putString(KEY_ROOM_TOKEN, conversation.token)