mirror of
https://github.com/meshtastic/Meshtastic-Android.git
synced 2026-07-03 14:06:34 +02:00
9e887ed92a
Review feedback (design#113): the green SNR/RSSI text and the signed shield sit on a per-node-tinted message bubble, where the shared "Status Good" green has poor contrast (worst in light mode) — an accessibility/readability problem. The black message text is fine because it derives from the bubble's content color; the green metadata did not. Fix is scoped to the bubble — the shared StatusGreen token is used in ~15 components, almost all on the neutral theme surface where it's fine, so changing the token globally would be the wrong lever. Instead: - Add ensureContrastOn(background): nudges a color toward black/white just enough to meet WCAG AA against a given background, preserving hue (picks the higher-contrast direction, so a mid-tone bubble darkens the green rather than washing it to white). Unit-tested. - Snr/Rssi/SnrAndRssi gain an optional `background` param (default null = unchanged everywhere else — no blast radius). - MessageItem passes the composited bubble background so SNR, RSSI, and the signed shield all stay legible; shield unified onto the same contrast-adjusted StatusGreen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>