mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-11 06:44:09 +01:00
Merge pull request #3195 from nextcloud/audio-duration-bug-fix
Rewind & Replay bug fix for Audio Duration
This commit is contained in:
commit
74a138077e
@ -101,7 +101,7 @@ class IncomingVoiceMessageViewHolder(incomingView: View, payload: Any) :
|
|||||||
setParentMessageDataOnMessageItem(message)
|
setParentMessageDataOnMessageItem(message)
|
||||||
|
|
||||||
updateDownloadState(message)
|
updateDownloadState(message)
|
||||||
binding.seekbar.max = message.voiceMessageDuration
|
binding.seekbar.max = message.voiceMessageDuration - 1
|
||||||
viewThemeUtils.platform.themeHorizontalSeekBar(binding.seekbar)
|
viewThemeUtils.platform.themeHorizontalSeekBar(binding.seekbar)
|
||||||
viewThemeUtils.platform.colorCircularProgressBar(binding.progressBar, ColorRole.ON_SURFACE_VARIANT)
|
viewThemeUtils.platform.colorCircularProgressBar(binding.progressBar, ColorRole.ON_SURFACE_VARIANT)
|
||||||
|
|
||||||
|
@ -98,7 +98,7 @@ class OutcomingVoiceMessageViewHolder(outcomingView: View) :
|
|||||||
setParentMessageDataOnMessageItem(message)
|
setParentMessageDataOnMessageItem(message)
|
||||||
|
|
||||||
updateDownloadState(message)
|
updateDownloadState(message)
|
||||||
binding.seekbar.max = message.voiceMessageDuration
|
binding.seekbar.max = message.voiceMessageDuration - 1
|
||||||
viewThemeUtils.platform.themeHorizontalSeekBar(binding.seekbar)
|
viewThemeUtils.platform.themeHorizontalSeekBar(binding.seekbar)
|
||||||
viewThemeUtils.platform.colorCircularProgressBar(binding.progressBar, ColorRole.ON_SURFACE_VARIANT)
|
viewThemeUtils.platform.colorCircularProgressBar(binding.progressBar, ColorRole.ON_SURFACE_VARIANT)
|
||||||
|
|
||||||
|
@ -1715,18 +1715,17 @@ class ChatActivity :
|
|||||||
|
|
||||||
mediaPlayerHandler = Handler()
|
mediaPlayerHandler = Handler()
|
||||||
runOnUiThread(object : Runnable {
|
runOnUiThread(object : Runnable {
|
||||||
var timeElapsed = if (message.voiceMessagePlayedSeconds > 0) message.voiceMessagePlayedSeconds else 0
|
|
||||||
override fun run() {
|
override fun run() {
|
||||||
if (mediaPlayer != null) {
|
if (mediaPlayer != null) {
|
||||||
if (message.isPlayingVoiceMessage) {
|
if (message.isPlayingVoiceMessage) {
|
||||||
if (timeElapsed < (mediaPlayer!!.duration / VOICE_MESSAGE_SEEKBAR_BASE)) {
|
val pos = mediaPlayer!!.currentPosition / VOICE_MESSAGE_SEEKBAR_BASE
|
||||||
timeElapsed += 1
|
if (pos < (mediaPlayer!!.duration / VOICE_MESSAGE_SEEKBAR_BASE)) {
|
||||||
message.voiceMessagePlayedSeconds = timeElapsed
|
message.voiceMessagePlayedSeconds = pos
|
||||||
adapter?.update(message)
|
adapter?.update(message)
|
||||||
} else {
|
} else {
|
||||||
message.resetVoiceMessage = true
|
message.resetVoiceMessage = true
|
||||||
|
message.voiceMessagePlayedSeconds = 0
|
||||||
adapter?.update(message)
|
adapter?.update(message)
|
||||||
timeElapsed = 0
|
|
||||||
stopMediaPlayer(message)
|
stopMediaPlayer(message)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user