Better light palette colors, fix Palette Test, adjust some controls palette usage for better visuals - #13701
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR enhances the visual appearance of QGroundControl's light theme by replacing the boring black/white color scheme with a more vibrant blue accent color (#3A9BDC), and consolidates similar UI controls by removing QGCSwitch in favor of QGCCheckBoxSlider.
Key Changes:
- Updated light palette to use blue (#3A9BDC) for borders, highlights, and interactive elements instead of pure black
- Removed QGCSwitch component and replaced usages with QGCCheckBoxSlider
- Fixed QmlTest.qml to use the correct palette instance (qgcPal) instead of a redundant palette property
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/QmlControls/QGCPalette.cc | Updated light theme colors from black (#000000) to dark gray (#333333) for text and buttons, and added blue accent (#3A9BDC) for buttonBorder, buttonHighlight, and groupBorder |
| src/QmlControls/QGCRadioButton.qml | Updated to use qgcPal instead of _qgcPal, changed hardcoded colors to use palette properties (button, buttonBorder, buttonHighlight), removed manual opacity handling |
| src/QmlControls/QGCCheckBox.qml | Updated to use qgcPal instead of _qgcPal, changed hardcoded colors to use palette properties (buttonBorder, buttonHighlight), reordered properties for better organization |
| src/QmlControls/QGCCheckBoxSlider.qml | Enhanced visual appearance by changing slider background to always use button color and making the knob use buttonHighlight when checked, added _sliderInset property for precise positioning |
| src/QmlControls/QGCSwitch.qml | Deleted file - functionality replaced by QGCCheckBoxSlider |
| src/QmlControls/CMakeLists.txt | Removed QGCSwitch.qml from the QML module build configuration |
| src/FlightMap/Widgets/PhotoVideoControl.qml | Replaced two QGCSwitch instances with QGCCheckBoxSlider |
| src/UI/AppSettings/QmlTest.qml | Fixed palette test by removing redundant palette property and using qgcPal instance consistently, added QGCCheckBoxSlider to the control preview grid |
| property color textColor: qgcPal.text | ||
| property bool _noText: text === "" | ||
|
|
||
| QGCPalette { id:qgcPal; colorGroupEnabled: enabled } |
There was a problem hiding this comment.
Missing space after colon in property declaration. Should be id: qgcPal for consistency with other QML files in the codebase.
Suggested change
| QGCPalette { id:qgcPal; colorGroupEnabled: enabled } | |
| QGCPalette { id: qgcPal; colorGroupEnabled: enabled } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Light palette was pretty boring in just mostly black/white coloring. Adjust to be a bit more interesting:
