This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Launching applications with custom color schemes

Tags: None
(comma "," separated)
User avatar
MirceaKitsune
Registered Member
Posts
330
Karma
0
OS
Hello. I was wondering whether it's possible to launch any application with an individual color scheme, by using command line arguments or environment variables for instance. I know that if you launch a program as root, its window will use the color scheme of the root account... therefore this seems technically possible, but can it be customized independently per application as well?
User avatar
Rog131
Registered Member
Posts
828
Karma
10
A workaround

Older (KDE4): starting a KDE app with not-default color scheme - viewtopic.php?f=17&t=90720

With the KF5 (KDE Frameworks 5) : Trying to find a workaround Bug 346135 - viewtopic.php?f=67&t=135421
-> Short: You will need to export the $XDG_CONFIG_HOME. The $XDG_CONFIG_HOME has the alternative configuration (color etc) files.

Image
Full image: http://imgur.com/tEoX2lB


A fix

There is a bug report: Bug 279592 - Allow per-application color scheme - https://bugs.kde.org/show_bug.cgi?id=279592 .

It is fixed with the: 'Implement color scheme selection from these installed in the system using KColorSchemeManager' - https://git.reviewboard.kde.org/r/127979/ .

Note !
I read this that the applications need to add the option to use the KColorSchemeManager then the color scheme can be changed from the manager.
User avatar
MirceaKitsune
Registered Member
Posts
330
Karma
0
OS
Thanks, that explains it! Does seem a bit tricky, but it sounds like it should work at least with that fix.
thugo
Registered Member
Posts
45
Karma
0
Hello,

I know that this thread is a bit old ...

As I understand the above, KColorSchemeManager allows me to change the color scheme per application.

Could you please lead me to a description on how to use this manager?

Best regards,
Thomas
kde-cfeck
Registered Member
Posts
93
Karma
0
The application needs to use KColorSchemeManager in its source code. If it doesn't, it uses the system colors.

Some applications, such as krita and kdevelop, already use KColorSchemeManager, so you could grep their sources if you want to add it to another application.

See also API docs at https://api.kde.org/frameworks/kconfigw ... nager.html
thugo
Registered Member
Posts
45
Karma
0
Thank you kde-cfeck!

I installed krita to better understand what you meant. And I see ... in Settings it has the option to choose between all the different themes.
Now this is wonderful! I would wish, every application would have this!

Unfortunately I don't feel literate enough, to change the source code in this way of amarok for instance.

Is there another way, besides changing the source code of amarok to change its theme?

I learned already, that the following is not working because amarok is still a Qt4/KDE4 application:
Code: Select all
export XDG_CONFIG_HOME=/home/user/.config_alternative ; amarok
User avatar
MirceaKitsune
Registered Member
Posts
330
Karma
0
OS
I for one don't mind the thread revival, as I'm still interested in knowing how to do this. Especially since the Aurorae engine still doesn't support color scheme overrides specified via the KWin rules.

That technique is rather useless if it requires programs to be compiled in a special way: I was hoping for a way that works globally for any process or window. Hopefully KDE will eventually make the changes needed to allow this... maybe with Wayland support?
kde-cfeck
Registered Member
Posts
93
Karma
0
For in-application colors, you can simply copy the contents of the color theme file to the application's config (rc) file. Those entries that you don't copy automatically inherit them from kdeglobals, where the default colors are stored.

This should work for both KDE4 as well as Qt5 applications.

KWin decorations are unrelated to in-application colors. If the decoration you are using has hardcoded colors, you will have no luck changing decoration colors using KWin rules.
User avatar
MirceaKitsune
Registered Member
Posts
330
Karma
0
OS
kde-cfeck wrote:KWin decorations are unrelated to in-application colors. If the decoration you are using has hardcoded colors, you will have no luck changing decoration colors using KWin rules.


I'm interested in KWin decorations too. And no: I have Aurorae themes that make use of the system color scheme (colorized svg elements).

Like I said, Aurorae doesn't respect color scheme override rules otherwise I would have used those to solve my issue. I already opened a thread and bug report about that, but the thread was ignored whereas in the bug report I was told it's not intended functionality (despite the absence of the feature itself looking like a bug). If anyone believes they can convince the developers to fix this problem in the Aurorae engine, my old posts describing it can be found here:

viewtopic.php?f=17&t=136317
https://bugs.kde.org/show_bug.cgi?id=365994
thugo
Registered Member
Posts
45
Karma
0
Thank you kde-cfeck!

You are the hero of my day today! :-)

I searched the web for many hours without any success.
Your answer solved the problem. Now I can change the theme per application. Wonderful!
Only vlc somehow resists this procedure, but I guess this must have some other reason ...

I wish you a wonderful day!
Thomas


Bookmarks



Who is online

Registered users: Bing [Bot], claydoh, Google [Bot], rblackwell, Yahoo [Bot]