polish(ux): selected filter chips fill solid for clear contrast
The selected state used a pale tonal container (seedPrimaryContainer) that sat almost on top of the pale canvas, so 'on' barely read. Selected chips now fill solid — seedGreen for the plain attribute/market chips and the swatch's own ink for family/form chips — with white label, icon and checkmark. Idle chips stay light with dark ink, so the on/off jump is unmistakable. White-on-ink AA is locked by a new contrast test.
This commit is contained in:
parent
05227706fd
commit
d897d3934c
5 changed files with 53 additions and 12 deletions
|
|
@ -105,5 +105,24 @@ ThemeData buildTaneTheme() {
|
|||
thickness: 1,
|
||||
color: seedDivider,
|
||||
),
|
||||
// Filter/choice chips: idle chips stay light with dark ink, but a *selected*
|
||||
// chip fills solid green with white ink so "on" reads unmistakably against
|
||||
// the pale canvas (the soft tonal default sat too close to it). White on
|
||||
// seedGreen meets WCAG AA — see test/ui/theme_contrast_test.dart. Chips that
|
||||
// carry their own hue (family/form swatches) override this per-swatch.
|
||||
chipTheme: const ChipThemeData(
|
||||
selectedColor: seedGreen,
|
||||
checkmarkColor: Colors.white,
|
||||
labelStyle: TextStyle(
|
||||
color: seedOnSurface,
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
secondaryLabelStyle: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue