fix(android): pin Slider inactiveTrackColor to surfaceVariant (parity)
Material3 changed the Slider's default inactiveTrackColor to colorScheme.secondaryContainer, which MinstrelTheme does not override -- so M3's baseline purple leaked into both the mini scrubber and the NowPlaying ScrubberRow. Flutter explicitly sets inactiveColor = fs.slate; mirror that by pinning inactiveTrackColor to surfaceVariant (which the theme already maps to slate). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -190,6 +190,10 @@ private fun MiniSeekBar(positionMs: Long, durationMs: Long, onSeek: (Long) -> Un
|
||||
colors = SliderDefaults.colors(
|
||||
thumbColor = MaterialTheme.colorScheme.primary,
|
||||
activeTrackColor = MaterialTheme.colorScheme.primary,
|
||||
// M3 default inactiveTrackColor is secondaryContainer, which the
|
||||
// theme doesn't override — that's where the M3-baseline purple
|
||||
// leaks in. Pin to surfaceVariant (= slate) for Flutter parity.
|
||||
inactiveTrackColor = MaterialTheme.colorScheme.surfaceVariant,
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
@@ -409,6 +409,9 @@ private fun ScrubberRow(positionMs: Long, durationMs: Long, onSeek: (Long) -> Un
|
||||
colors = SliderDefaults.colors(
|
||||
thumbColor = accent,
|
||||
activeTrackColor = accent,
|
||||
// M3 inactive default is secondaryContainer (purple baseline);
|
||||
// pin to surfaceVariant (= slate) for Flutter parity.
|
||||
inactiveTrackColor = MaterialTheme.colorScheme.surfaceVariant,
|
||||
),
|
||||
)
|
||||
Row(
|
||||
|
||||
Reference in New Issue
Block a user