ref: move external player button to top controls

This commit is contained in:
tapframe 2026-06-27 17:00:48 +05:30
parent 0d9efc4975
commit d5d342cc2e

View file

@ -150,6 +150,7 @@ internal fun PlayerControlsShell(
onParentalGuideAnimationComplete = onParentalGuideAnimationComplete,
onLockToggle = onLockToggle,
onVideoSettingsClick = onVideoSettingsClick,
onOpenInExternalPlayer = onOpenInExternalPlayer,
onBack = onBack,
modifier = Modifier
.align(Alignment.TopStart)
@ -189,7 +190,6 @@ internal fun PlayerControlsShell(
onAudioClick = onAudioClick,
onSourcesClick = onSourcesClick,
onEpisodesClick = onEpisodesClick,
onOpenInExternalPlayer = onOpenInExternalPlayer,
modifier = Modifier
.align(Alignment.BottomCenter)
.fillMaxWidth()
@ -218,6 +218,7 @@ private fun PlayerHeader(
onParentalGuideAnimationComplete: () -> Unit,
onLockToggle: () -> Unit,
onVideoSettingsClick: (() -> Unit)?,
onOpenInExternalPlayer: (() -> Unit)?,
onBack: () -> Unit,
modifier: Modifier = Modifier,
) {
@ -317,6 +318,15 @@ private fun PlayerHeader(
onClick = onSubmitIntroClick,
)
}
if (onOpenInExternalPlayer != null) {
PlayerHeaderIconButton(
icon = Icons.AutoMirrored.Rounded.OpenInNew,
contentDescription = stringResource(Res.string.streams_open_external_player),
buttonSize = metrics.headerIconSize + 16.dp,
iconSize = metrics.headerIconSize,
onClick = onOpenInExternalPlayer,
)
}
PlayerHeaderIconButton(
icon = if (isLocked) Icons.Rounded.LockOpen else Icons.Rounded.Lock,
contentDescription = if (isLocked) {
@ -487,7 +497,6 @@ private fun ProgressControls(
onAudioClick: () -> Unit,
onSourcesClick: (() -> Unit)? = null,
onEpisodesClick: (() -> Unit)? = null,
onOpenInExternalPlayer: (() -> Unit)? = null,
modifier: Modifier = Modifier,
) {
val durationMs = playbackSnapshot.durationMs.coerceAtLeast(1L)
@ -569,13 +578,6 @@ private fun ProgressControls(
onClick = onEpisodesClick,
)
}
if (onOpenInExternalPlayer != null) {
PlayerActionPillButton(
label = stringResource(Res.string.streams_open_external_player),
icon = Icons.AutoMirrored.Rounded.OpenInNew,
onClick = onOpenInExternalPlayer,
)
}
}
}
}