Bug 444043 - Make non-color-scheme-following Plasma styles respect global accent color (not the full color scheme, just the accent color)
Summary: Make non-color-scheme-following Plasma styles respect global accent color (no...
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Theme - Breeze (show other bugs)
Version: 5.23.0
Platform: Other Linux
: VHI wishlist
Target Milestone: 1.0
Assignee: visual-design
URL:
Keywords:
: 444254 445933 447135 450304 457073 459897 462577 471535 473666 489140 494363 (view as bug list)
Depends on:
Blocks:
 
Reported: 2021-10-19 13:09 UTC by WS
Modified: 2024-10-10 19:35 UTC (History)
31 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.2.0
Sentry Crash Report:


Attachments
my breeze dark "color" file (3.42 KB, text/plain)
2022-02-22 12:59 UTC, PK
Details
my breeze light "color" file (3.43 KB, text/plain)
2022-02-22 13:01 UTC, PK
Details

Note You need to log in before you can comment on or make changes to this bug.
Description WS 2021-10-19 13:09:52 UTC
SUMMARY

Breeze Twilight uses Breeze Dark as its Plasma Style, which doesn't follow system colors. An oversight of this is that it makes impossible for the new Accent Colors to be used on panels and widgets. even thought it seems easy to update Breeze Dark(and Light) to follow Accent Colors and only Accent Colors 

STEPS TO REPRODUCE
1. Go to System Settings
2. Change Global Theme to Breeze Twilight
3. Go to Colors
4. Change the Accent Color

OBSERVED RESULT

Accents are still blue


EXPECTED RESULT

Custom accent colors to work on widget and panels while still using Breeze Twilight


SOFTWARE/OS VERSIONS

Operating System: openSUSE Tumbleweed 20211016
KDE Plasma Version: 5.23.0
KDE Frameworks Version: 5.86.0
Qt Version: 5.15.2


ADDITIONAL INFORMATION

I've managed to get it working, I've made a copy of Breeze Dark, and deleted every line that used the values "61,174,233" in the color file (.../plasma/desktoptheme/breeze-dark/colors). It's not perfect, as it requires reapplying the Plasma Style to get it working
Comment 1 Nate Graham 2021-10-20 13:49:35 UTC
Indeed, it'll set Breeze Dark which doesn't respect *any* of the colors in the color scheme. This has always been by design, but I suppose with the Accent Color feature, it's not so desirable anymore. We can look into making Breeze and Breezew Dark respect the accent colors feature
Comment 2 Noah Davis 2021-10-20 13:53:44 UTC
I think at one point Breeze Light and Breeze Dark Plasma themes got their highlight colors from the system theme, but there were some bugs and the accent color feature didn't exist at the time, so we stopped allowing them to get highlight colors from the system color scheme.
Comment 3 WS 2021-10-24 00:40:29 UTC
There is a more convoluted option:

Add an option to change the color scheme of Plasma Style. I can't speak for every user, but the only reason I even use a Plasma Style is that I like the color scheme of applications to be different from the color scheme of panels and other "system stuff".

As far as I can tell, the only difference from Breeze to Breeze Light and Breeze Dark as Plasma Styles, is a single file called "plasmoidheading.svgz" and to use a different color scheme from the one used by applications. I feel the same apply to many user created styles, where there's a Dark and Light variation.


If you could manually select a different color scheme for Plasma Style independently of the application's one, there would be no reason to even have Breeze Dark and Breeze Light or so many of Styles that are duplicate of another. AND it would make it easier for the end user to change some colors without having to manually create a new plasma theme that comprises of a single "colors" file.
Comment 4 Nate Graham 2021-10-29 15:21:33 UTC
*** Bug 444254 has been marked as a duplicate of this bug. ***
Comment 5 Nate Graham 2021-11-24 19:13:46 UTC
*** Bug 445933 has been marked as a duplicate of this bug. ***
Comment 6 Nate Graham 2021-11-24 19:15:16 UTC
Raising priority because a distro (Fedora KDE) ships with Breeze Twilight by default, which suffers from this bug and causes the Accent Color feature to not apply to Plasma stuff.
Comment 7 Nate Graham 2021-12-17 15:14:22 UTC
*** Bug 447135 has been marked as a duplicate of this bug. ***
Comment 8 WS 2022-02-12 15:19:31 UTC
The first step to fix this is to implement a forced refresh of the Plasma Theme whenever the user change colors.

I modified the Plasma Theme so that it carries accent colors, but every time I change the accent color I need to swap to another Plasma Theme and back again so that the new accent color gets applied.
Comment 9 Nate Graham 2022-02-15 21:31:42 UTC
*** Bug 450304 has been marked as a duplicate of this bug. ***
Comment 10 Denys Madureira 2022-02-21 20:14:00 UTC
I see that is a lot of duplicated "bugs" about this, but what about the progression of this? Is someone working in this bug? There is a PR or something about this, if someone already started to work on it? Where we can see, where we can get this information?
Comment 11 Nate Graham 2022-02-21 20:47:18 UTC
(In reply to Denys Madureira from comment #10)
> I see that is a lot of duplicated "bugs" about this, but what about the
> progression of this? Is someone working in this bug?
Not to my knowledge.

> There is a PR or something about this, if someone already started to work on it?
Not yet.

> Where we can see, where we can get this information?
Right here.
Comment 12 PK 2022-02-22 10:20:41 UTC
To make all elements inside the "Breeze Light" and "Breeze Dark" plasma desktop theme widgets respect the used current color scheme I copied both files /usr/share/desktoptheme/breeze-dark/colors and  /usr/share/desktoptheme/breeze-light/colors to the folders  ~/.local/share/desktoptheme/breeze-dark and ~/.local/share/desktoptheme/breeze-light.

In that location I commented out al lot of items in both files. After that the breeze-dark and breeze-light desktop theme followed the current system colors.

Example Breeze-Dark (same with Breeze-Light):

[ColorEffects:Disabled]
Color=56,56,56
ColorAmount=0
ColorEffect=0
ContrastAmount=0.65
ContrastEffect=1
IntensityAmount=0.1
IntensityEffect=2

[ColorEffects:Inactive]
ChangeSelectionColor=true
Color=112,111,110
ColorAmount=0.025
ColorEffect=2
ContrastAmount=0.1
ContrastEffect=2
Enable=false
IntensityAmount=0
IntensityEffect=0

[Colors:Button]
#BackgroundAlternate=30,87,116
BackgroundNormal=49,54,59
#DecorationFocus=61,174,233
#DecorationHover=61,174,233
#ForegroundActive=61,174,233
ForegroundInactive=161,169,177
#ForegroundLink=29,153,243
ForegroundNegative=218,68,83
#ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
#ForegroundPositive=39,174,96
#ForegroundVisited=155,89,182


[Colors:Complementary]
BackgroundAlternate=30,87,116
BackgroundNormal=42,46,50
#DecorationFocus=61,174,233
#DecorationHover=61,174,233
#ForegroundActive=61,174,233
ForegroundInactive=161,169,177
#ForegroundLink=29,153,243
ForegroundNegative=218,68,83
#ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
#ForegroundPositive=39,174,96
#ForegroundVisited=155,89,182

[Colors:Header]
BackgroundAlternate=42,46,50
BackgroundNormal=49,54,59
#DecorationFocus=61,174,233
#DecorationHover=61,174,233
#ForegroundActive=61,174,233
ForegroundInactive=161,169,177
#ForegroundLink=29,153,243
ForegroundNegative=218,68,83
#ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
#ForegroundPositive=39,174,96
#ForegroundVisited=155,89,182


[Colors:Header][Inactive]
BackgroundAlternate=49,54,59
BackgroundNormal=42,46,50
#DecorationFocus=61,174,233
#DecorationHover=61,174,233
#ForegroundActive=61,174,233
ForegroundInactive=161,169,177
#ForegroundLink=29,153,243
ForegroundNegative=218,68,83
#ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
#ForegroundPositive=39,174,96
#ForegroundVisited=155,89,182


[Colors:Selection]
BackgroundAlternate=30,87,116
#BackgroundNormal=61,174,233
#DecorationFocus=61,174,233
#DecorationHover=61,174,233
ForegroundActive=252,252,252
ForegroundInactive=161,169,177
#ForegroundLink=253,188,75
ForegroundNegative=218,68,83
#ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
#ForegroundPositive=39,174,96
#ForegroundVisited=155,89,182


[Colors:Tooltip]
BackgroundAlternate=42,46,50
BackgroundNormal=49,54,59
#DecorationFocus=61,174,233
#DecorationHover=61,174,233
#ForegroundActive=61,174,233
ForegroundInactive=161,169,177
#ForegroundLink=29,153,243
ForegroundNegative=218,68,83
#ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
#ForegroundPositive=39,174,96
#ForegroundVisited=155,89,182


[Colors:View]
BackgroundAlternate=0,0,0
BackgroundNormal=0,0,0
#DecorationFocus=61,174,233
#DecorationHover=61,174,233
#ForegroundActive=61,174,233
ForegroundInactive=161,169,177
#ForegroundLink=29,153,243
ForegroundNegative=218,68,83
#ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
#ForegroundPositive=39,174,96
#ForegroundVisited=155,89,182


[Colors:Window]
BackgroundAlternate=0,0,0
BackgroundNormal=0,0,0
#DecorationFocus=61,174,233
#DecorationHover=61,174,233
#ForegroundActive=61,174,233
ForegroundInactive=161,169,177
#ForegroundLink=29,153,243
ForegroundNegative=218,68,83
#ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
#ForegroundPositive=39,174,96
#ForegroundVisited=155,89,182


[General]
ColorScheme=Breeze Dark
Name=Breeze Dark
shadeSortColumn=true

[KDE]
contrast=4

[WM]
activeBackground=49,54,59
activeBlend=252,252,252
activeForeground=252,252,252
inactiveBackground=42,46,50
inactiveBlend=161,169,177
inactiveForeground=161,169,177
Comment 13 PK 2022-02-22 12:59:56 UTC
Created attachment 147047 [details]
my breeze dark "color" file
Comment 14 PK 2022-02-22 13:01:33 UTC
Created attachment 147048 [details]
my breeze light "color" file

I attached my two versions of the breeze "color" files (dark and light).
Comment 15 WS 2022-02-22 15:14:56 UTC
I just remove the lines with "61,174,233" as the value and it sort of worked.
 
The problem I have with my fix is that it doesn't apply a new accent color without reapplying the Plasma Theme
Comment 16 PK 2022-02-22 15:24:41 UTC
I have experimented with this method. I noticed that the whole Plasma theming has a cascading structure. So if you leave something out, it will be filled in by the "default" color scheme for plasma themes.
And the default color scheme for plasma schemes uses the accent current accent color a lot.
This way it is important to leave al lot to the default theme but not to much. I hope I succeeded in that.
The fact that the plasma colors are not updated immediately with the system is not elegant. But imho that is a different matter.
Comment 17 WS 2022-02-22 15:31:30 UTC
I'm not arguing about how the theme works, I was just mentioning I got a similar result by removing fewer lines than you.

Either way, this should've been fixed a while ago as the fix is just removing a couple of lines. Even if the Plasma Style isn't reapplying itself, it would offer something until it is properly fixed.

Reapplying the Plasma Style shouldn't be an issue either, there's already something to that effect when a Plasma Style follows the color scheme, as it immediately picks the new accent color. The issue is making whatever that is work with any plasma style, regardless if the follows the full color scheme
Comment 18 Nate Graham 2022-02-22 17:44:30 UTC
Do either of you folks want to submit a merge request with your changes?

https://invent.kde.org/frameworks/plasma-framework/-/merge_requests/
Comment 19 WS 2022-02-23 14:06:19 UTC
I think I will have to pass, I'm struggling to understand how GitLab works, the documentation on kde.org just makes me more confused by assuming I want to make changes that need the project to compile on my computer. The GitLab itself is also very confusing in a way that makes me doubt if I'm not screwing things up.

I'd rather let an experienced member do necessary changes. As I said, just remove the lines with the value "61,174,233" in the colors file of /usr/share/plasma/desktoptheme/breeze-light/ and /usr/share/plasma/desktoptheme/breeze-dark/.

If I missed something else, then follow the suggestions made by PK.
Comment 20 Bug Janitor Service 2022-03-19 19:45:00 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/plasma-framework/-/merge_requests/481
Comment 21 Nate Graham 2022-07-29 16:48:48 UTC
*** Bug 457073 has been marked as a duplicate of this bug. ***
Comment 22 Nate Graham 2022-10-11 16:23:46 UTC
*** Bug 459897 has been marked as a duplicate of this bug. ***
Comment 23 Nate Graham 2022-12-05 18:54:24 UTC
*** Bug 462577 has been marked as a duplicate of this bug. ***
Comment 24 Marco 2023-01-09 08:29:53 UTC
This is still broken in Plasma 5.26.5.
Comment 25 Txutxifel 2023-05-07 14:51:51 UTC
Still broken in Plasma 5.27.4
Comment 26 Filippo 2023-07-19 09:24:37 UTC
Hi, I'm on Tuxedo OS 2 with KDE Plasma 5.27.6
I can confirm bug is still present.
Following the steps shown in Comment #12 seems to fix the issue.
I've changed folder name to avoid overwriting existing breeze themes.
The "selected" background color in application launcher seems a bit to intense like if on default Breeze theme the opacity gets reduced a bit,
while with this hack it uses full color.
But it may be just an impression because the color changes when item is hovered (more intense) and when is not (darker, less intense)
Comment 27 Nate Graham 2023-08-23 16:24:15 UTC
*** Bug 473666 has been marked as a duplicate of this bug. ***
Comment 28 Nate Graham 2023-09-14 19:29:50 UTC
*** Bug 471535 has been marked as a duplicate of this bug. ***
Comment 29 Johannes Jordan 2024-04-02 18:37:36 UTC
Still present in 6.0.3.

It took me a long time to realize this was the issue, even though in Plasma Style settings it is clearly marked which themes follow the color scheme and which not. It is just something I do not associate with the accent color.
Comment 30 Heitor da Silva 2024-06-11 05:30:41 UTC
*** Bug 479667 has been marked as a duplicate of this bug. ***
Comment 31 Nate Graham 2024-06-25 14:19:49 UTC
*** Bug 489140 has been marked as a duplicate of this bug. ***
Comment 32 Niccolò Venerandi 2024-08-09 08:02:48 UTC
Git commit 1699dec02c85453200f394ad4abe1f563c90f302 by Niccolò Venerandi, on behalf of Niccolo Venerandi.
Committed on 09/08/2024 at 08:02.
Pushed by niccolove into branch 'master'.

Make Breeze Dark and Light plasma themes follow system accent color

M  +0    -24   src/desktoptheme/breeze-dark/colors
M  +0    -25   src/desktoptheme/breeze-light/colors
M  +3    -1    src/plasma/private/theme_p.cpp

https://invent.kde.org/plasma/libplasma/-/commit/1699dec02c85453200f394ad4abe1f563c90f302
Comment 33 Nate Graham 2024-10-10 19:35:44 UTC
*** Bug 494363 has been marked as a duplicate of this bug. ***