Bug 410560 - Song name isn't always readable over album art
Summary: Song name isn't always readable over album art
Status: RESOLVED FIXED
Alias: None
Product: Elisa
Classification: Applications
Component: general (show other bugs)
Version: 0.4.2
Platform: Neon Linux
: NOR normal
Target Milestone: ---
Assignee: Matthieu Gallien
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-08-04 03:24 UTC by Joey Germain
Modified: 2019-08-06 02:43 UTC (History)
1 user (show)

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


Attachments
A screenshot of Elisa that demonstrates the bug (682.11 KB, image/png)
2019-08-04 03:24 UTC, Joey Germain
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Joey Germain 2019-08-04 03:24:11 UTC
Created attachment 121923 [details]
A screenshot of Elisa that demonstrates the bug

When using certain system color schemes, such as Materia Light, the song/album/artist text in Elisa is dark gray, while the blurred album art is also darkened. This leads to the text being hard to read for many albums.

With most color schemes, the text color is set to white, which avoids the problem.

Should Elisa ignore the current theme (for this text) in order to guarantee that the text is easily readable?


STEPS TO REPRODUCE
1. Install the Materia Light color scheme through system settings (part of 'Materia KDE')
2. Set Materia Light as the active color scheme
3. Open a song in Elisa, preferably one with dark album art

OBSERVED RESULT
The text in Elisa's top bar next to the album art is hard to read.

EXPECTED RESULT
The text should be white (or at least light gray) if the background is dark.

SOFTWARE/OS VERSIONS
KDE Plasma Version: 5.16.4
KDE Frameworks Version: 5.60.0
Qt Version: 5.12.3
KDE neon 5.16
Comment 1 Nate Graham 2019-08-05 03:49:58 UTC
Does the bug reproduce when using the regular default Breeze color scheme?
Comment 2 Joey Germain 2019-08-05 12:13:18 UTC
No it does not. I was thinking it was a bug for the theme authors but I had no idea how they would fix it since it only seems to affect Elisa. (In reply to Nate Graham from comment #1)
> Does the bug reproduce when using the regular default Breeze color scheme?
Comment 3 Nate Graham 2019-08-05 14:20:58 UTC
So what's going on here is that Elisa is choosing the color scheme's highlighted text color for these labels. This is not really correct since the highlighted text color relied on there being a contrasting highlight under it, which is not provided here.

Elisa's blurry headerbar code tries its best to produce a dark background, so it's not really appropriate to use a color from the color scheme at all; it should be a hardcoded light text color, since that's the only way we can be sure it has adequate contrast.
Comment 4 Nate Graham 2019-08-05 14:43:39 UTC
I've submitted a patch that fixes the issue: https://phabricator.kde.org/D22949
Comment 5 Nate Graham 2019-08-06 02:43:31 UTC
Git commit 40f5d8e31c208ee6d5652c2097fa20f0fb3e5674 by Nate Graham.
Committed on 06/08/2019 at 02:43.
Pushed by ngraham into branch 'master'.

Always use white color for headerbar text

Summary:
Elisa uses the color scheme's highlighted text color for headerbar labels. This is not
semantically correct since this color relies on being above the color scheme's highlight
color to ensure adequate contrast. However the headerbar's blur does not do this; rather,
it always produces a dark-ish color. This causes issues for color schemes where the
highlight is light and the highlightext text color is dark, such as Materia Light.

This patch fixes the problem by always using a hardcoded white color, which always looks
good against the dark-ish blurry headerbar.

Test Plan:
Now looks good with the previously problematic Materia Light color scheme: {F7166959}

Worst-case scenario for contrast with white album art; headerbar still darkens it enough to make the text easily visible: {F7167007}

Reviewers: #vdg, #elisa, mgallien, astippich

Reviewed By: #elisa, mgallien

Differential Revision: https://phabricator.kde.org/D22949

M  +16   -22   src/qml/HeaderBar.qml

https://commits.kde.org/elisa/40f5d8e31c208ee6d5652c2097fa20f0fb3e5674