diff --git a/app/src/main/java/com/m57/hermescontrol/ui/chat/ChatViewModel.kt b/app/src/main/java/com/m57/hermescontrol/ui/chat/ChatViewModel.kt index ecd49836..a4f69d36 100644 --- a/app/src/main/java/com/m57/hermescontrol/ui/chat/ChatViewModel.kt +++ b/app/src/main/java/com/m57/hermescontrol/ui/chat/ChatViewModel.kt @@ -460,7 +460,7 @@ class ChatViewModel( var orphanToPersist: ChatMessage? = null val sessionId = _uiState.value.currentSessionId - val contentJson = event.data?.let { Gson().toJson(it) } ?: "" + val contentJson = event.data?.let { gson.toJson(it) } ?: "" val toolMessage = ChatMessage( role = MessageRole.TOOL, @@ -509,7 +509,7 @@ class ChatViewModel( it.toolStatus == ToolStatus.RUNNING } if (toolIdx >= 0) { - val contentJson = event.data?.let { Gson().toJson(it) } ?: "" + val contentJson = event.data?.let { gson.toJson(it) } ?: "" val updated = messages[toolIdx].copy( toolStatus = ToolStatus.COMPLETED, @@ -1219,4 +1219,8 @@ class ChatViewModel( pendingCleanupJob?.cancel() wsClient.disconnect() } + + companion object { + private val gson = Gson() + } }