Bug 468689 - Elisa falls back to Fusion theme with has incorrect colors when plasma-integration isn't used
Summary: Elisa falls back to Fusion theme with has incorrect colors when plasma-integr...
Status: CONFIRMED
Alias: None
Product: Elisa
Classification: Applications
Component: general (show other bugs)
Version: 22.12.3
Platform: Other Linux
: NOR minor
Target Milestone: ---
Assignee: Matthieu Gallien
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-04-19 18:58 UTC by Balau Matei
Modified: 2023-04-26 16:26 UTC (History)
1 user (show)

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


Attachments
An image of Elisa attempting to use the ArcDark theme, more specifically, KvArcDark (181.48 KB, image/png)
2023-04-19 18:58 UTC, Balau Matei
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Balau Matei 2023-04-19 18:58:27 UTC
Created attachment 158218 [details]
An image of Elisa attempting to use the ArcDark theme, more specifically, KvArcDark

SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***


STEPS TO REPRODUCE
1. Go to menu
2. Color scheme
3. Select any dark theme

OBSERVED RESULT
Text has low contrast with the background, making reading, selecting songs, etc really hard. 
Some parts are unaffected, making for a rather ugly interface

EXPECTED RESULT
High text contrast

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: EndeavourOS Linux x86_64, updated daily, so, latest version
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 5.15.9

ADDITIONAL INFORMATION
Comment 1 Balau Matei 2023-04-19 19:00:33 UTC
I forgot to mention that I am using Xfce, and Xfwm4
Comment 2 Nate Graham 2023-04-20 15:57:35 UTC
Does the Breeze Dark color scheme look better? If so, it's an issue in the KvArcDark color scheme.
Comment 3 Balau Matei 2023-04-22 16:45:09 UTC
(In reply to Nate Graham from comment #2)
> Does the Breeze Dark color scheme look better? If so, it's an issue in the
> KvArcDark color scheme.

Unfortunately, every theme even approaching dark looks like this.
Comment 4 Nate Graham 2023-04-24 17:00:26 UTC
Ok, then I suspect there are two problems here:
1. You're not using the Breeze theme, which is the intended default theme for Elisa
2. When using the Fusion theme, colors aren't correct.

Do you have the `plasma-integration` and `breeze` packages installed? If not, can you install them, restart the system, launch Elisa, and see if it's better now?
Comment 5 Balau Matei 2023-04-24 17:26:48 UTC
(In reply to Nate Graham from comment #4)
> Ok, then I suspect there are two problems here:
> 1. You're not using the Breeze theme, which is the intended default theme
> for Elisa
> 2. When using the Fusion theme, colors aren't correct.
> 
> Do you have the `plasma-integration` and `breeze` packages installed? If
> not, can you install them, restart the system, launch Elisa, and see if it's
> better now?

I will install those packages as soon as I return home.
Comment 6 Balau Matei 2023-04-25 16:54:18 UTC
Plasma-integration was the issue.
Thanks for the support!
Comment 7 Nate Graham 2023-04-26 16:26:44 UTC
I had a feeling.

Basically this is a bit of a mismatch between what KDE (and QT apps in general) expect and how KDE apps are typically packaged.

Qt apps expect a "platform integration" tool to be installed; "Plasma Integration" is ours. If one is not installed, the app falls back to the basic one built into Qt and the app gets themed with the default Fusion theme with basic Qt-provided color support. This does not work well for KDE apps that expect for certain things provided by Plasma Integration to be present, such as specifying the Breeze app style and richer color scheme compatibility.

We have a few options:
1. Mark plasma-integration as a mandatory dependency for Elisa
2. Change Elisa and other KDE frameworks to work better with the Fusion app style and not have these color incompatibility issues
3. Hardcode Elisa to always use for the Breeze app style if plasma-integration isn't detected

The issue with #1 is that it would conflict with distros that intentionally ship a *different* platform integration tool; they would patch out this change and things would still be broken. I guess that would be on them, them.

The issue with #2 is that it would be a lot of work for gains that would never be visible to most users, since in general these apps are run in a Plasma environment where Plasma Integration is already present. Also no developers are running the app this way, so it's a largely untested codepath.

Perhaps we should do #3.