Bug 442820

Summary: Actually applied accent colour is darkened excessively with a dark base color scheme
Product: [Applications] systemsettings Reporter: Felipe Kinoshita <kinofhek>
Component: kcm_colorsAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: a.j.buxton, agurenko, dev.bacteriostat, heqromancer, jpwhiting, karl, mwoehlke.floss, natalie_clarius, nate, ncqm3qdz, noahadvs, nyanpasu64, putr4.s, sheast21, smaniotto.nicola, uhhadd
Priority: HI    
Version: 5.23.4   
Target Milestone: ---   
Platform: Other   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=451698
https://bugs.kde.org/show_bug.cgi?id=463702
Latest Commit: Version Fixed In: 5.24.5
Sentry Crash Report:
Attachments: Observed result
dark color presets
Default Breeze Dark
Green Breeze Dark
Okular selected text under dark color scheme with accent color enabled

Description Felipe Kinoshita 2021-09-22 23:20:12 UTC
Created attachment 141805 [details]
Observed result

Accent colors don't look as good with Breeze Dark as they do with Breeze Light.

STEPS TO REPRODUCE
1. Look at how accent colors look on "Breeze Light"
2. Change the global theme to "Breeze Dark"
3. Look at how accent colors look on "Breeze Dark"

OBSERVED RESULT
Accent colors don't look as good in Breeze Dark.

EXPECTED RESULT
Accent colors should not as good as in Breeze Light.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Fedora 34 KDE
(available in About System)
KDE Plasma Version: 5.22.90
KDE Frameworks Version: 5.86
Qt Version: 5.15.2
Comment 1 Noah Davis 2021-09-24 01:18:32 UTC
Which colors are you using?
Comment 2 Felipe Kinoshita 2021-09-24 01:24:56 UTC
Both screenshots are using the first custom color in the list, which I think is pink, not sure. (color blindness...)
Comment 3 Noah Davis 2021-09-24 01:45:51 UTC
Ok, it looks like the dark colors are indeed too dark.
Comment 4 Noah Davis 2021-09-24 01:47:02 UTC
Created attachment 141850 [details]
dark color presets
Comment 5 Nate Graham 2021-09-24 19:46:16 UTC
Perhaps we need to provide a different default color set if we detect that a dark color scheme is in use? The KCM already has a heuristic for that, helpfully enough.

On the other hand, this would mean that if the user switches to a light color scheme later, the accent color will be too light. And vice versa.
Comment 6 Noah Davis 2021-09-24 20:10:04 UTC
(In reply to Nate Graham from comment #5)
> Perhaps we need to provide a different default color set if we detect that a
> dark color scheme is in use? The KCM already has a heuristic for that,
> helpfully enough.

I don't think not detecting the color scheme is the issue here. Light themes don't have super dark accent colors.

> On the other hand, this would mean that if the user switches to a light
> color scheme later, the accent color will be too light. And vice versa.

If the user switches their color scheme, why wouldn't we just recalculate the accent color?
Comment 7 Nate Graham 2021-09-27 14:14:49 UTC
I suppose we could. That would be a bit messy though, and require letting the QStyle know about accent colors, right? Currently it is insulated from the concept.
Comment 8 Nate Graham 2021-11-24 04:21:27 UTC
*** Bug 445882 has been marked as a duplicate of this bug. ***
Comment 9 Noah Davis 2021-11-24 07:31:41 UTC
(In reply to Nate Graham from comment #7)
> I suppose we could. That would be a bit messy though, and require letting
> the QStyle know about accent colors, right? Currently it is insulated from
> the concept.

No, the QStyle would use the same color roles it already uses.
Comment 10 Nate Graham 2021-12-13 17:10:16 UTC
*** Bug 446849 has been marked as a duplicate of this bug. ***
Comment 11 Photon 2022-01-10 07:04:57 UTC
Also, one thing is that the accent color intensity is not the same in checkboxes and highlighted buttons.
Comment 12 sheast21 2022-01-15 22:53:32 UTC
I agree rn accent colors are way too dark in dark mode making certain things quite difficult to see, highlighting text causes them to become hard to see and the sliders for the settings app icon are also quite difficult to see. I am using the purple accent color btw. and its only a bit better on the other accent colors
Comment 13 heqromancer 2022-02-05 11:19:27 UTC
Reading selected text on Okular is really hard with the way accent colors work under dark color schemes. The ramifications of this issue go on to make the experience on some KDE tools a bit worse.
Comment 14 Janet Blackquill 2022-02-24 22:17:14 UTC
The dull colour is sort of intentional: it helps to preserve legibility when you have accent foreground on accent background, which is a thing that some apps do. I could increase the accent colour background's brightness, but that might impair legibility in the situation the dullness was designed for.
Comment 15 Nicola Smaniotto 2022-02-25 09:28:19 UTC
Created attachment 147112 [details]
Default Breeze Dark
Comment 16 Nicola Smaniotto 2022-02-25 09:28:44 UTC
Created attachment 147113 [details]
Green Breeze Dark
Comment 17 Nicola Smaniotto 2022-02-25 09:29:09 UTC
I think the generated colors are fine, but they are being used incorrectly.
As an example, see the attached images. With the default Breeze Dark, the Disconnect button is outlined with the lighter version of the color, making it clearly visible. With accent colors (I only created screenshots with the green) the outline is dark green, the same as the background.

I think this is what happens in the first attachment (by Felipe Kinoshita), in which the slider uses the dark color and is less legible.
Comment 18 heqromancer 2022-02-26 14:55:09 UTC
Created attachment 147147 [details]
Okular selected text under dark color scheme with accent color enabled

Highlighted text is impossible to read under a dark color scheme on Okular when using accent colors. I have to crank up the screen brightness to distinguish what I want to select. Given that this color scheme change may have ramifications pretty much on every application using KDE Frameworks in an unexpected way, is this truly the right way to proceed? Solving on a case by case basis sounds like an impossible task.
Comment 19 Nate Graham 2022-03-31 21:04:37 UTC

*** This bug has been marked as a duplicate of bug 451967 ***
Comment 20 Nate Graham 2022-03-31 21:05:18 UTC
Oops, did it in reverse.
Comment 21 Nate Graham 2022-03-31 21:05:34 UTC
*** Bug 451967 has been marked as a duplicate of this bug. ***
Comment 22 Nate Graham 2022-03-31 21:05:57 UTC
*** Bug 451698 has been marked as a duplicate of this bug. ***
Comment 23 Nate Graham 2022-04-08 22:26:44 UTC
Git commit 6750353c9fda821050ddc0a02e533c857472f287 by Nate Graham, on behalf of Jan Blackquill.
Committed on 08/04/2022 at 22:26.
Pushed by ngraham into branch 'master'.

kcm/colors: don't dull accent colour on dark themes in colorsapplicator

User demand shows that bright accent colours are wanted over potentially
better legibility, so let's avoid changing them.
FIXED-IN: 5.25

M  +1    -7    kcms/colors/colorsapplicator.h

https://invent.kde.org/plasma/plasma-workspace/commit/6750353c9fda821050ddc0a02e533c857472f287
Comment 24 Prajna Sariputra 2022-04-09 09:54:15 UTC
Is there any chance for the change to be backported for 5.24? I can make a merge request to get the change to the Plasma/5.24 branch if that's the case. User demand seems rather high based on the votes and CC numbers, plus 5.24 is LTS so some people may be stuck with it for a while too if this fix is only for 5.25 onwards.

I just applied the patch on top of 5.24.4 on my system and it makes my use case of using Breeze Dark but with the libadwaita accent colour work much better (previously I had to take the original accent colour and crank the V component of the HSV values up to 255, and even then it was still too dark in some places), and I don't see any contrast issues either as a result.
Comment 25 Nate Graham 2022-04-09 14:12:03 UTC
Yes, it's a harmless and trivial change, easily and safely backportable. The reason why I didn't do it already is because in the interest of keeping the UI stable across a single release, the Plasma backport policy is that we only backport bugfixes, not intentional UI changes.

If y'all can convince me that this change is more of a bugfix than an intentional UI change, I'll happily backport it. :) So sharpen those debate skills and make some convincing cases!
Comment 26 Alistair Buxton 2022-04-09 14:30:42 UTC
This patch doesn't change the behavior of light themes. The selection background still doesn't match the accent colour in light or dark themes. The patch makes it slightly closer in dark themes only.
Comment 27 heqromancer 2022-04-09 14:35:08 UTC
(In reply to Nate Graham from comment #25)
> If y'all can convince me that this change is more of a bugfix than an
> intentional UI change, I'll happily backport it. :) So sharpen those debate
> skills and make some convincing cases!

I don't really know if you had the time to check the attached file I uploaded in this very bug report, named "Okular selected text under dark color scheme with accent color enabled". In my opinion, it shows that not backporting this behavior will make KDE apps like Okular stop doing their job properly in hard to tackle ways; I still am not able to reliably select text using a dark color scheme up until this behavior gets fixed in my distro. 

Should this behavior not be backported by the time Kubuntu 22.04 releases, I expect some users to be... confused by not being able to read the text they select in an app as important as that one is (and don't even get me started in other less used applications!). I think not fixing this behavior everywhere is jeopardizing just for the sake of it.

Sorry if my language is a bit too strong, I just recommended Kubuntu to a friend and I wouldn't like his experience to be disturbed by things like this one.
Comment 28 Nate Graham 2022-04-09 17:07:13 UTC
Now that I think about it, this is clearly a bugfix since we were inappropriately double-tinting the color. The change to fix this still has a single tint, which is currently intentional, and tracked by Bug 451698. I'll backport it.
Comment 29 Nate Graham 2022-04-09 17:11:10 UTC
Git commit edf4b01cfad748441a31c8358866a3aa0ce36d6b by Nate Graham, on behalf of Jan Blackquill.
Committed on 09/04/2022 at 17:08.
Pushed by ngraham into branch 'Plasma/5.24'.

kcm/colors: don't dull accent colour on dark themes in colorsapplicator

User demand shows that bright accent colours are wanted over potentially
better legibility, so let's avoid changing them.
FIXED-IN: 5.25
(cherry picked from commit 6750353c9fda821050ddc0a02e533c857472f287)

M  +1    -7    kcms/colors/colorsapplicator.h

https://invent.kde.org/plasma/plasma-workspace/commit/edf4b01cfad748441a31c8358866a3aa0ce36d6b