feat(qt): overAmbient legibility mode for the quality badge and track info

Immersive surfaces sit directly on the ambient field, where theme tokens
have no contrast guarantee — a light cover washed the split Track Info
panel and the quality badges out completely. QualityBadgeFull,
TrackInfoBody, InfoMetaCell and InfoCreditCell gain an opt-in overAmbient
mode: fixed light text with the restrained native shadow the lyrics
surfaces already use, and the badge swaps the theme surface for its own
translucent dark scrim covering only the chip. Defaults stay off, so the
desktop modal and every themed mount are untouched. The immersive Track
Info panel and song card opt in.

cc
This commit is contained in:
vicrodh committed 2026-08-31 15:03:09 -06:00
1 parent 68eeb10173
commit 9493993124
6 files changed
+90 -22

No files matched your search

@@ -105,6 +105,8 @@ Item {
anchors.centerIn: parent
text: QbzSession.tr("No track selected", QbzSession.trRev)
color: "#b3ffffff"
style: Text.Raised
styleColor: "#b0000000"
font.pixelSize: 18
}
@@ -123,6 +125,9 @@ Item {
id: body
host: host
width: flick.width
// The panel sits on the ambient field — fixed light colors
// + native shadow (2026-08-31 visual cleanup).
overAmbient: true
}
}