diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt
index 5f2046c99..ddc8c5460 100644
--- a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt
+++ b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt
@@ -2206,7 +2206,7 @@ class ChatController(args: Bundle) :
                             } else if (response.code() == HTTP_CODE_PRECONDITION_FAILED) {
                                 futurePreconditionFailed = true
                             } else {
-                                processMessages(response, true)
+                                processMessagesResponse(response, true)
                             }
                         } catch (npe: NullPointerException) {
                             // view binding can be null
@@ -2248,7 +2248,7 @@ class ChatController(args: Bundle) :
                             if (response.code() == HTTP_CODE_PRECONDITION_FAILED) {
                                 pastPreconditionFailed = true
                             } else {
-                                processMessages(response, false)
+                                processMessagesResponse(response, false)
                             }
                         } catch (e: NullPointerException) {
                             // view binding can be null
@@ -2293,7 +2293,7 @@ class ChatController(args: Bundle) :
         }
     }
 
-    private fun processMessages(response: Response<*>, isFromTheFuture: Boolean) {
+    private fun processMessagesResponse(response: Response<*>, isFromTheFuture: Boolean) {
 
         val xChatLastCommonRead = response.headers()["X-Chat-Last-Common-Read"]?.let {
             Integer.parseInt(it)
@@ -2305,34 +2305,7 @@ class ChatController(args: Bundle) :
             val chatOverall = response.body() as ChatOverall?
             val chatMessageList = handleSystemMessages(chatOverall?.ocs!!.data!!)
 
-            if (chatMessageList.isNotEmpty() &&
-                ChatMessage.SystemMessageType.CLEARED_CHAT == chatMessageList[0].systemMessageType
-            ) {
-                adapter?.clear()
-                adapter?.notifyDataSetChanged()
-            }
-
-            if (isFirstMessagesProcessing) {
-                cancelNotificationsForCurrentConversation()
-
-                isFirstMessagesProcessing = false
-                binding.progressBar.visibility = View.GONE
-
-                binding.messagesListView.visibility = View.VISIBLE
-            }
-
-            if (isFromTheFuture) {
-                processMessagesFromTheFuture(chatMessageList)
-            } else {
-                processMessagesNotFromTheFuture(chatMessageList)
-            }
-
-            updateReadStatusOfAllMessages(xChatLastCommonRead)
-            adapter?.notifyDataSetChanged()
-
-            if (inConversation) {
-                pullChatMessages(1, 1, xChatLastCommonRead)
-            }
+            processMessages(chatMessageList, isFromTheFuture, xChatLastCommonRead)
         } else if (response.code() == HTTP_CODE_NOT_MODIFIED && !isFromTheFuture) {
             if (isFirstMessagesProcessing) {
                 cancelNotificationsForCurrentConversation()
@@ -2349,6 +2322,41 @@ class ChatController(args: Bundle) :
         }
     }
 
+    private fun processMessages(
+        chatMessageList: List<ChatMessage>,
+        isFromTheFuture: Boolean,
+        xChatLastCommonRead: Int?
+    ) {
+        if (chatMessageList.isNotEmpty() &&
+            ChatMessage.SystemMessageType.CLEARED_CHAT == chatMessageList[0].systemMessageType
+        ) {
+            adapter?.clear()
+            adapter?.notifyDataSetChanged()
+        }
+
+        if (isFirstMessagesProcessing) {
+            cancelNotificationsForCurrentConversation()
+
+            isFirstMessagesProcessing = false
+            binding.progressBar.visibility = View.GONE
+
+            binding.messagesListView.visibility = View.VISIBLE
+        }
+
+        if (isFromTheFuture) {
+            processMessagesFromTheFuture(chatMessageList)
+        } else {
+            processMessagesNotFromTheFuture(chatMessageList)
+        }
+
+        updateReadStatusOfAllMessages(xChatLastCommonRead)
+        adapter?.notifyDataSetChanged()
+
+        if (inConversation) {
+            pullChatMessages(1, 1, xChatLastCommonRead)
+        }
+    }
+
     private fun updateReadStatusOfAllMessages(xChatLastCommonRead: Int?) {
         for (message in adapter!!.items) {
             xChatLastCommonRead?.let {