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 eb01bebff..641fa1c48 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt @@ -975,25 +975,27 @@ class ChatController(args: Bundle) : initMediaPlayer(message) - if (!mediaPlayer!!.isPlaying) { - mediaPlayer!!.start() - } - - mediaPlayerHandler = Handler() - activity?.runOnUiThread(object : Runnable { - override fun run() { - if (mediaPlayer != null) { - val currentPosition: Int = mediaPlayer!!.currentPosition / VOICE_MESSAGE_SEEKBAR_BASE - message.voiceMessagePlayedSeconds = currentPosition - adapter?.update(message) - } - mediaPlayerHandler.postDelayed(this, SECOND) + mediaPlayer?.let { + if (!it.isPlaying) { + it.start() } - }) - message.isDownloadingVoiceMessage = false - message.isPlayingVoiceMessage = true - adapter?.update(message) + mediaPlayerHandler = Handler() + activity?.runOnUiThread(object : Runnable { + override fun run() { + if (mediaPlayer != null) { + val currentPosition: Int = mediaPlayer!!.currentPosition / VOICE_MESSAGE_SEEKBAR_BASE + message.voiceMessagePlayedSeconds = currentPosition + adapter?.update(message) + } + mediaPlayerHandler.postDelayed(this, SECOND) + } + }) + + message.isDownloadingVoiceMessage = false + message.isPlayingVoiceMessage = true + adapter?.update(message) + } } private fun pausePlayback(message: ChatMessage) {