Merge pull request #3978 from element-hq/feature/bma/disableVideoAutoPlay
Do not auto-play videos.
This commit is contained in:
commit
22c8622576
1 changed files with 9 additions and 11 deletions
|
|
@ -80,11 +80,10 @@ private fun ExoPlayerMediaVideoView(
|
||||||
localMedia: LocalMedia?,
|
localMedia: LocalMedia?,
|
||||||
modifier: Modifier = Modifier,
|
modifier: Modifier = Modifier,
|
||||||
) {
|
) {
|
||||||
val isControllerVisibleByDefault = LocalInspectionMode.current
|
|
||||||
var mediaPlayerControllerState: MediaPlayerControllerState by remember {
|
var mediaPlayerControllerState: MediaPlayerControllerState by remember {
|
||||||
mutableStateOf(
|
mutableStateOf(
|
||||||
MediaPlayerControllerState(
|
MediaPlayerControllerState(
|
||||||
isVisible = isControllerVisibleByDefault,
|
isVisible = true,
|
||||||
isPlaying = false,
|
isPlaying = false,
|
||||||
progressInMillis = 0,
|
progressInMillis = 0,
|
||||||
durationInMillis = 0,
|
durationInMillis = 0,
|
||||||
|
|
@ -122,18 +121,16 @@ private fun ExoPlayerMediaVideoView(
|
||||||
|
|
||||||
override fun onTimelineChanged(timeline: Timeline, reason: Int) {
|
override fun onTimelineChanged(timeline: Timeline, reason: Int) {
|
||||||
if (reason == Player.TIMELINE_CHANGE_REASON_SOURCE_UPDATE) {
|
if (reason == Player.TIMELINE_CHANGE_REASON_SOURCE_UPDATE) {
|
||||||
mediaPlayerControllerState = mediaPlayerControllerState.copy(
|
exoPlayer.duration.takeIf { it >= 0 }
|
||||||
durationInMillis = exoPlayer.duration,
|
?.let {
|
||||||
)
|
mediaPlayerControllerState = mediaPlayerControllerState.copy(
|
||||||
|
durationInMillis = it,
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
LaunchedEffect(Unit) {
|
|
||||||
exoPlayer.addListener(playerListener)
|
|
||||||
exoPlayer.prepare()
|
|
||||||
}
|
|
||||||
|
|
||||||
var autoHideController by remember { mutableIntStateOf(0) }
|
var autoHideController by remember { mutableIntStateOf(0) }
|
||||||
|
|
||||||
LaunchedEffect(autoHideController) {
|
LaunchedEffect(autoHideController) {
|
||||||
|
|
@ -238,7 +235,8 @@ private fun ExoPlayerMediaVideoView(
|
||||||
|
|
||||||
OnLifecycleEvent { _, event ->
|
OnLifecycleEvent { _, event ->
|
||||||
when (event) {
|
when (event) {
|
||||||
Lifecycle.Event.ON_RESUME -> exoPlayer.play()
|
Lifecycle.Event.ON_CREATE -> exoPlayer.addListener(playerListener)
|
||||||
|
Lifecycle.Event.ON_RESUME -> exoPlayer.prepare()
|
||||||
Lifecycle.Event.ON_PAUSE -> exoPlayer.pause()
|
Lifecycle.Event.ON_PAUSE -> exoPlayer.pause()
|
||||||
Lifecycle.Event.ON_DESTROY -> {
|
Lifecycle.Event.ON_DESTROY -> {
|
||||||
exoPlayer.release()
|
exoPlayer.release()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue