| Summary: | Invisible text in some widget settings with mixed light/dark theme e.g. Breeze Twilight | ||
|---|---|---|---|
| Product: | [Plasma] plasmashell | Reporter: | S. Christian Collins <s_chriscollins> |
| Component: | System Monitor widgets | Assignee: | Plasma Bugs List <plasma-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | ahiemstra, duha.bugs, feus73, nate, notmart |
| Priority: | NOR | Keywords: | qt6 |
| Version First Reported In: | 6.0.2 | ||
| Target Milestone: | 1.0 | ||
| Platform: | Neon | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/plasma/libksysguard/-/commit/f5b14b496597a68c2ebd67940f3c3936a60b4a28 | Version Fixed/Implemented In: | 6.0.5 |
| Sentry Crash Report: | |||
| Attachments: |
video showing the bug
new look of the bug (pie chart details) new look of the bug (sensors details) |
||
|
Description
S. Christian Collins
2024-03-15 15:47:34 UTC
(In reply to S. Christian Collins from comment #0) > See attached video. I think you accidentally didn't attach the video. Could you please provide a screenshot or screen recording? Created attachment 167279 [details]
video showing the bug
Whoops! It's attached now.
I can't reproduce the issue. I suspect it may be related to the color sin your active color scheme or Plasma theme. Can you reproduce it in a new clean user account? (In reply to Nate Graham from comment #3) > I can't reproduce the issue. I suspect it may be related to the color sin > your active color scheme or Plasma theme. Can you reproduce it in a new > clean user account? Aah! The issue only appears when using "Breeze Twilight" (light application theme with dark plasma theme). Perhaps the affected text boxes are getting their text color from the plasma theme rather than the application theme? I tested this in a KDE neon VirtualBox install (X11), rebooting between each theme change as the plasma theme didn't fully change over until I did. Yeah, looks like it. Can reproduce that now. Created attachment 168618 [details]
new look of the bug (pie chart details)
With the upgrade to Plasma 6.0.4 and Frameworks 6.1.0, this bug has changed its colors, literally. Previously, the text color for certain widgets was being pulled from the dark plasma theme, conflicting with the light application theme making the white text impossible to read against the white background (when using Twilight).
Now, the widget background is also being pulled from the plasma theme, leading to cases of hard to read black text on a dark background and white check marks instead of black.
Created attachment 168619 [details]
new look of the bug (sensors details)
A possibly relevant merge request was started @ https://invent.kde.org/plasma/libksysguard/-/merge_requests/344 Git commit 3ffd61ba57ef690a78eccded055083d6aa4ead44 by Nate Graham, on behalf of Akseli Lahtinen. Committed on 08/05/2024 at 19:46. Pushed by ngraham into branch 'master'. SensorFaceController: use a separate QQmlEngine in createConfigUi Config UI was using same engine as the applet, so it would inherit the colors wrongly from the Plasma Theme instead of the standard color scheme. This caused issues in mixed light/dark global themes. Fix it by creating a new engine just for the config windows. FIXED-IN: 6.0.5 M +4 -2 faces/SensorFaceController.cpp https://invent.kde.org/plasma/libksysguard/-/commit/3ffd61ba57ef690a78eccded055083d6aa4ead44 Git commit f5b14b496597a68c2ebd67940f3c3936a60b4a28 by Nate Graham, on behalf of Akseli Lahtinen. Committed on 08/05/2024 at 19:47. Pushed by ngraham into branch 'Plasma/6.0'. SensorFaceController: use a separate QQmlEngine in createConfigUi Config UI was using same engine as the applet, so it would inherit the colors wrongly from the Plasma Theme instead of the standard color scheme. This caused issues in mixed light/dark global themes. Fix it by creating a new engine just for the config windows. FIXED-IN: 6.0.5 (cherry picked from commit 3ffd61ba57ef690a78eccded055083d6aa4ead44) 754f64a8 SensorFaceController: createConfigUi creates its own QQmlEngine 50262dad Rename to configEngine 168aca46 Add original engine as parent for the configEngine M +4 -2 faces/SensorFaceController.cpp https://invent.kde.org/plasma/libksysguard/-/commit/f5b14b496597a68c2ebd67940f3c3936a60b4a28 A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/4320 A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-systemmonitor/-/merge_requests/289 Git commit 8154f79bd54777a85c18c067d56155f341dce994 by Akseli Lahtinen. Committed on 15/05/2024 at 09:26. Pushed by akselmo into branch 'master'. FaceLoader: use qmlEngine for configEngine Requires: https://invent.kde.org/plasma/libksysguard/-/merge_requests/346 Add `qmlEngine(this)` to the sensorfacecontroller configEngine parameter. We can use same engine here since SystemMonitor is not using Plasma coloring. M +1 -1 src/page/FaceLoader.cpp https://invent.kde.org/plasma/plasma-systemmonitor/-/commit/8154f79bd54777a85c18c067d56155f341dce994 Git commit 52f6668fd1be2fc5d6b69a665d999841c0bc7436 by Akseli Lahtinen. Committed on 15/05/2024 at 09:36. Pushed by akselmo into branch 'master'. systemmonitor: create configEngine for config items Requires: https://invent.kde.org/plasma/libksysguard/-/merge_requests/346 This now creates a configEngine per systemmonitor, which fixes a bug where Plasma systemmonitor applets configuration windows would use Plasma colors. M +3 -2 applets/systemmonitor/systemmonitor/systemmonitor.cpp https://invent.kde.org/plasma/plasma-workspace/-/commit/52f6668fd1be2fc5d6b69a665d999841c0bc7436 A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/4323 A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-systemmonitor/-/merge_requests/290 Git commit f7d874e83d22ea65b70d4467ee610c9f2f8af860 by Akseli Lahtinen. Committed on 15/05/2024 at 09:43. Pushed by akselmo into branch 'Plasma/6.0'. FaceLoader: use qmlEngine for configEngine Requires: https://invent.kde.org/plasma/libksysguard/-/merge_requests/346 Add `qmlEngine(this)` to the sensorfacecontroller configEngine parameter. We can use same engine here since SystemMonitor is not using Plasma coloring. (cherry picked from commit 8154f79bd54777a85c18c067d56155f341dce994) 1417b681 FaceLoader: use qmlEngine for configEngine M +1 -1 src/page/FaceLoader.cpp https://invent.kde.org/plasma/plasma-systemmonitor/-/commit/f7d874e83d22ea65b70d4467ee610c9f2f8af860 Git commit 3a5e4f5d5eeb39c96cb55aecc0894ef86b7c497d by Akseli Lahtinen. Committed on 15/05/2024 at 10:08. Pushed by akselmo into branch 'Plasma/6.0'. systemmonitor: create configEngine for config items Requires: https://invent.kde.org/plasma/libksysguard/-/merge_requests/346 This now creates a configEngine per systemmonitor, which fixes a bug where Plasma systemmonitor applets configuration windows would use Plasma colors. M +3 -2 applets/systemmonitor/systemmonitor/systemmonitor.cpp https://invent.kde.org/plasma/plasma-workspace/-/commit/3a5e4f5d5eeb39c96cb55aecc0894ef86b7c497d |