Playback errors slice + scrubber polish + various polish #74

Merged
bvandeusen merged 13 commits from dev into main 2026-06-02 14:14:11 -04:00
Showing only changes of commit 6a54d074fd - Show all commits
@@ -88,7 +88,6 @@ private const val PLAY_PAUSE_ICON_DP = 56
private const val POP_GRACE_MS = 500L
private val SCRUB_TRACK_HEIGHT_DP = 4.dp
private val SCRUB_TRACK_CORNER_DP = 2.dp
private val SCRUB_SLIDER_HEIGHT_DP = 20.dp
// Vertical drag-down threshold (in pixels) past which the gesture
// pops the player. Matches Flutter's 80px threshold in spirit;
@@ -476,12 +475,7 @@ private fun ScrubberRow(positionMs: Long, durationMs: Long, onSeek: (Long) -> Un
onValueChange = { newFraction ->
if (durationMs > 0) onSeek((newFraction * durationMs).toLong())
},
// Clamp the Slider's vertical footprint so the M3-default
// 48dp interactive-component padding doesn't leave the thumb
// floating in empty space above and below the track. 20dp =
// 14dp thumb + 3dp clearance each side; touch area is still
// wide enough since the drag axis is horizontal.
modifier = Modifier.fillMaxWidth().height(SCRUB_SLIDER_HEIGHT_DP),
modifier = Modifier.fillMaxWidth(),
colors = sliderColors,
interactionSource = interactionSource,
// Plain filled circle to match the web client's `<input