Skip to content

fix(ui): add dark-mode stylesheet to FreeDV Reporter checkboxes#2268

Merged
ten9876 merged 2 commits intoten9876:mainfrom
NF0T:fix/freedv-checkbox-dark-mode
May 2, 2026
Merged

fix(ui): add dark-mode stylesheet to FreeDV Reporter checkboxes#2268
ten9876 merged 2 commits intoten9876:mainfrom
NF0T:fix/freedv-checkbox-dark-mode

Conversation

@NF0T
Copy link
Copy Markdown
Contributor

@NF0T NF0T commented May 2, 2026

Summary

  • The three QCheckBox widgets in the FreeDV tab → Station Reporting group (enable reporting, use radio callsign, use GPS) had no indicator stylesheet, making their outlines invisible in dark mode
  • Applied the standard dark-mode indicator style used elsewhere in the codebase (matching ConnectionPanel and other dialogs): #5d748d border, hover highlight, checked fill #2f71b6/#8cc8ff, and disabled state

Fixes #2213

Test plan

  • Open Spothub dialog → FreeDV tab → Station Reporting
  • Verify all three checkboxes show a visible border in dark mode (unchecked, checked, hover states)
  • Verify no visual regression in other tabs or dialogs

🤖 Generated with Claude Code

The three QCheckBox widgets in the Station Reporting tab (enable
reporting, use radio callsign, use GPS) had no indicator styling,
making their outlines invisible against the dark theme background.

Apply the standard dark-mode indicator style (matching ConnectionPanel
and other dialogs) to all three: visible #5d748d border, hover
highlight, checked fill, and disabled state.

Fixes ten9876#2213

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
@NF0T NF0T requested review from jensenpat and ten9876 as code owners May 2, 2026 00:29
Copy link
Copy Markdown
Contributor

@aethersdr-agent aethersdr-agent Bot left a comment

Choose a reason for hiding this comment

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

Thanks @NF0T — fix looks correct and the indicator colors match the existing ConnectionPanel dark-mode convention (#5d748d border, #2f71b6/#8cc8ff checked, etc.). Scope is narrow and stays inside buildFreeDvTab(), no convention or RAII concerns.

One small suggestion (non-blocking): the same 6-line stylesheet is duplicated verbatim three times. This file already has the pattern of hoisting it to a local — see QString cbStyle = ... at src/gui/DxClusterDialog.cpp:1088 and src/gui/DxClusterDialog.cpp:1780. Something like:

const QString fdvCheckStyle =
    "QCheckBox { color: #d7e4f2; spacing: 8px; background: transparent; border: none; }"
    "QCheckBox::indicator { width: 14px; height: 14px; border: 2px solid #5d748d; border-radius: 3px; background: #0b1520; }"
    "QCheckBox::indicator:hover { border-color: #81abd9; background: #142130; }"
    "QCheckBox::indicator:checked { border: 2px solid #8cc8ff; background: #2f71b6; }"
    "QCheckBox::indicator:disabled { border-color: #405262; background: #10161d; }";

declared once at the top of the Station Reporting section and applied via setStyleSheet(fdvCheckStyle) to all three checkboxes would keep the three indicators in lockstep if anyone tweaks the palette later. Not a merge blocker — happy either way.

@NF0T
Copy link
Copy Markdown
Contributor Author

NF0T commented May 2, 2026

Applied the suggestion — stylesheet hoisted to a single fdvCheckStyle local at the top of the Station Reporting section. All three checkboxes now reference it via setStyleSheet(fdvCheckStyle), consistent with the existing cbStyle pattern elsewhere in the file. PR is ready for merge.

@ten9876
Copy link
Copy Markdown
Owner

ten9876 commented May 2, 2026

Claude here — thanks Ryan! Clean fix, follows the established ConnectionPanel checkbox pattern exactly. CI green.

Merging as a partial fix for #2213 — your change resolves the visibility aspect (the checkboxes were genuinely invisible against the dark background, which likely explains why the original reporter thought reporting was off). The two underlying functional complaints in #2213 — outbound spots not actually being sent in RADE mode, and Auto Start not persisting across app restarts — remain to be addressed separately.

Will leave #2213 open and post a note there pointing to your contribution.

73, Jeremy KK7GWY & Claude (AI dev partner)

@ten9876 ten9876 merged commit e0df08d into ten9876:main May 2, 2026
5 checks passed
@NF0T NF0T deleted the fix/freedv-checkbox-dark-mode branch May 2, 2026 19:46
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.

Spot Hub, FreeDV not sending spots to FreeDV reporter

2 participants