Package-level declarations
Functions
Link copied to clipboard
fun AnimatedMediaButton(onClick: () -> Unit, compositionResult: LottieCompositionResult, contentDescription: String, modifier: Modifier = Modifier, onLongRepeatableClick: () -> Unit? = null, onLongRepeatableClickEnd: () -> Unit? = null, enabled: Boolean = true, colors: ButtonColors = ButtonDefaults.iconButtonColors(), dynamicProperties: LottieDynamicProperties? = null, iconSize: Dp = 32.dp, iconAlign: Alignment.Horizontal = Alignment.CenterHorizontally)
A base button for media controls.
Link copied to clipboard
fun AnimatedMediaControlButtons(onPlayButtonClick: () -> Unit, onPauseButtonClick: () -> Unit, playPauseButtonEnabled: Boolean, playing: Boolean, leftButton: @Composable () -> Unit, rightButton: @Composable () -> Unit, modifier: Modifier = Modifier, trackPositionUiModel: TrackPositionUiModel, progressColor: Color = MaterialTheme.colors.primary, colors: ButtonColors = MediaButtonDefaults.mediaButtonDefaultColors, rotateProgressIndicator: Flow<Unit> = flowOf())
Standard and custom action media control buttons, showing a PlayPauseProgressButton as the middle button, and allowing custom buttons to be passed for left and right buttons.
fun AnimatedMediaControlButtons(onPlayButtonClick: () -> Unit, onPauseButtonClick: () -> Unit, playPauseButtonEnabled: Boolean, playing: Boolean, onSeekToPreviousButtonClick: () -> Unit, seekToPreviousButtonEnabled: Boolean, onSeekToNextButtonClick: () -> Unit, seekToNextButtonEnabled: Boolean, modifier: Modifier = Modifier, onSeekToPreviousLongRepeatableClick: () -> Unit? = null, onSeekToPreviousLongRepeatableClickEnd: () -> Unit? = null, onSeekToNextLongRepeatableClick: () -> Unit? = null, onSeekToNextLongRepeatableClickEnd: () -> Unit? = null, trackPositionUiModel: TrackPositionUiModel, progressColor: Color = MaterialTheme.colors.primary, colors: ButtonColors = MediaButtonDefaults.mediaButtonDefaultColors, rotateProgressIndicator: Flow<Unit> = flowOf())
Standard media control buttons, showing SeekToPreviousButton, PlayPauseProgressButton and SeekToNextButton.
Link copied to clipboard
Animated MediaDisplay implementation for PlayerScreen including player status.
Link copied to clipboard
fun AnimatedPlayPauseButton(onPlayClick: () -> Unit, onPauseClick: () -> Unit, playing: Boolean, modifier: Modifier = Modifier, enabled: Boolean = true, colors: ButtonColors = ButtonDefaults.iconButtonColors(), iconSize: Dp = 32.dp, backgroundColor: Color = MaterialTheme.colors.onBackground.copy(alpha = 0.10f), progress: @Composable () -> Unit = {})
Link copied to clipboard
fun AnimatedPlayPauseProgressButton(onPlayClick: () -> Unit, onPauseClick: () -> Unit, playing: Boolean, trackPositionUiModel: TrackPositionUiModel, modifier: Modifier = Modifier, enabled: Boolean = true, colors: ButtonColors = ButtonDefaults.iconButtonColors(), iconSize: Dp = 30.dp, tapTargetSize: DpSize = DpSize(60.dp, 60.dp), progressStrokeWidth: Dp = 4.dp, progressColor: Color = MaterialTheme.colors.primary, trackColor: Color = MaterialTheme.colors.onSurface.copy(alpha = 0.10f), backgroundColor: Color = MaterialTheme.colors.onBackground.copy(alpha = 0.10f), rotateProgressIndicator: Flow<Unit> = flowOf())
Link copied to clipboard
fun AnimatedSeekToNextButton(onClick: () -> Unit, modifier: Modifier = Modifier, onLongRepeatableClick: () -> Unit? = null, onLongRepeatableClickEnd: () -> Unit? = null, enabled: Boolean = true, colors: ButtonColors = ButtonDefaults.iconButtonColors(), iconSize: Dp = 32.dp)
Link copied to clipboard
fun AnimatedSeekToPreviousButton(onClick: () -> Unit, modifier: Modifier = Modifier, onLongRepeatableClick: () -> Unit? = null, onLongRepeatableClickEnd: () -> Unit? = null, enabled: Boolean = true, colors: ButtonColors = ButtonDefaults.iconButtonColors(), iconSize: Dp = 32.dp)
Link copied to clipboard
fun LottieAnimationWithPlaceholder(lottieCompositionResult: LottieCompositionResult, progress: () -> Float, placeholder: ImageVector, contentDescription: String, modifier: Modifier = Modifier, dynamicProperties: LottieDynamicProperties? = null)
A lottie animation with placeholder.
Link copied to clipboard
fun MarqueeTextMediaDisplay(modifier: Modifier = Modifier, title: String? = null, artist: String? = null, titleIcon: Paintable? = null, enterTransitionDelay: Int = 60, subtextTransitionDelay: Int = 30, @FloatRange(from = 0.0, to = 1.0) transitionLength: Float = 0.125f)
An animated text only display showing scrolling title and still artist in two separated rows.