Skip to content

Fix (#3744) Reverse waterfall history LIVE button colors. Red when live, grey …#3745

Closed
jbettik wants to merge 1 commit into
aethersdr:mainfrom
jbettik:bug/waterfall-live-color
Closed

Fix (#3744) Reverse waterfall history LIVE button colors. Red when live, grey …#3745
jbettik wants to merge 1 commit into
aethersdr:mainfrom
jbettik:bug/waterfall-live-color

Conversation

@jbettik

@jbettik jbettik commented Jun 22, 2026

Copy link
Copy Markdown

No description provided.

@jbettik jbettik requested a review from a team as a code owner June 22, 2026 20:05

@aethersdr-agent aethersdr-agent Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the fix, @jbettik! 🎯

This correctly inverts the LIVE chip semantics in drawTimeScale — red (color.accent.danger) when live, grey (color.text.label) when paused — which reads as the natural "record/active" convention and matches #3744.

I verified:

  • Scope is clean. m_wfLive only drives the chip brush at this one draw site, so a single-line swap is the complete fix.
  • No contrast regression. The adjacent text pen (a few lines down) still keys white / color.text.primary on m_wfLive and wasn't swapped, but both pairings remain legible after the change: live → red bg + text.primary (#c8d8e8), paused → grey bg + white. So nothing to change there — just calling it out so you know it was checked.

No AetherSDR-convention, null-safety, or error-handling concerns for a change this size. Looks good to me — nice clean fix. (Posting as a comment per review policy; not a formal approval.)


🤖 aethersdr-agent · cost: $2.1071 · model: claude-opus-4-8

@ten9876

ten9876 commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator

Thanks for catching this and for the clean fix, @jbettik — the reversed colors were a real bug.

Closing in favor of #3761, which lands the same visible fix (LIVE chip red while live, grey while viewing history) but with dedicated, independently-themable tokens (color.waterfall.live / color.waterfall.history) instead of reusing the shared accent.danger / text.label semantics. The reasoning: the live indicator shouldn't be coupled to the danger/label colors — recoloring "danger" in the Theme Editor shouldn't recolor the LIVE chip, and vice versa. The new tokens default to each theme's red/grey palette (so appearance is preserved) and are editable like any other color token.

Your report (#3744) and fix drove this — credited in the PR. Appreciate the contribution!

@ten9876 ten9876 closed this Jun 23, 2026
ten9876 added a commit that referenced this pull request Jun 23, 2026
…tory)

The waterfall LIVE chip reused the shared color.accent.danger and
color.text.label semantic tokens, so it couldn't be recolored without
affecting unrelated danger/label UI — and its colors were reversed (grey
when live, red when paused, #3744).

Add dedicated color.waterfall.live (red) and color.waterfall.history (grey)
tokens: registered in the ThemeManager defaults (fallback) and both preset
themes (referencing each theme's red/gray palette so appearance is preserved),
and editable like any color.* token in the Theme Editor. The chip is now red
while live, grey while viewing history, and either state is recolorable
independently of accent.danger/text.label.

Supersedes #3745 (the reversed-colors fix) with the decoupled, themable version.
Fixes #3744.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
ten9876 added a commit that referenced this pull request Jun 23, 2026
…tory) (#3761)

## Summary

Fixes the reversed waterfall **LIVE** chip colors (#3744) *and*
decouples them from the shared `accent.danger` / `text.label` semantic
tokens so the indicator can be recolored independently.

- New dedicated tokens **`color.waterfall.live`** (red) and
**`color.waterfall.history`** (grey), registered in the ThemeManager
defaults (fallback) and both preset themes (`default-dark.json` /
`default-light.json`, referencing each theme's `red.500` / `gray.500`
palette so appearance is preserved).
- `SpectrumWidget::drawTimeScale` now paints the chip **red while live,
grey while viewing history** — the correct "currently live = red"
convention from #3744 — via the new tokens.
- Both tokens are editable like any `color.*` token in the Theme Editor,
so the live/history colors can be set independently of danger/label.

## Why supersede #3745

#3745 was a one-line color swap reusing `accent.danger`/`text.label`.
Per review, the live indicator shouldn't be coupled to the danger/label
semantics (recoloring "danger" would recolor the LIVE chip). This PR
lands the same visible fix with dedicated, independently-themable
tokens. Closing #3745 in favor of this; credit to @jbettik for the
report (#3744) and original fix.

## Test plan

- [x] Local build passes (`cmake --build build --target AetherSDR`)
- [x] Both theme preset JSONs validate
- [ ] Visual: LIVE chip red while live, grey when scrolled into history;
recolor `color.waterfall.live` in the Theme Editor and confirm only the
chip changes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
@jbettik jbettik deleted the bug/waterfall-live-color branch June 23, 2026 18:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants