[GTK2] Add program to libexec for GTK2 recoloration
AbandonedPublic

Authored by cblack on Sep 30 2019, 10:22 PM.

Details

Reviewers
None
Group Reviewers
Breeze
Summary

There is now a Python program installed to a distro's libexec dir
which will generate assets based on the user's current colorscheme. This is
needed for complete recolouration because of the fact that most of
the GTK2 theme is pixmaps. Currently, recoloration only recolors the things
that are not pixmaps, which leads to stuff like
https://bugsfiles.kde.org/attachment.cgi?id=122870.

This is one part of the solution to fixing bug 412331, but is not the whole
solution.

CCBUG: 412331

Test Plan

See that the program is installed to libexec and that it generates
GTK2 assets correctly.

Diff Detail

Repository
R98 Breeze for Gtk
Branch
arcpatch-D24324
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 20968
Build 20986: arc lint + arc unit
cblack created this revision.Sep 30 2019, 10:22 PM
Restricted Application added a project: Plasma. Β· View Herald TranscriptSep 30 2019, 10:22 PM
Restricted Application added a subscriber: plasma-devel. Β· View Herald Transcript
cblack requested review of this revision.Sep 30 2019, 10:22 PM
davidre edited the summary of this revision. (Show Details)Oct 1 2019, 7:46 AM
ndavis added a subscriber: ndavis.Oct 3 2019, 1:24 AM

I'm not sure how to verify if the assets have been generated correctly. What GTK2 programs did you test with?

cblack added a comment.Oct 3 2019, 1:35 AM

I'm not sure how to verify if the assets have been generated correctly. What GTK2 programs did you test with?

Look for a theme in ~/.local/share/themes called Breeze 🎨. The reason why it has a 🎨 is to distinguish it from the system Breeze GTK2 theme. Otherwise,
there'd be two Breeze entries listed in the user's GTK2 theme list in syse5. Yes, it's clunky, but this is a toolkit older than me, so clunkiness is expected.

I would probably add a "if the user has GTK2 theme set to Breeze/Breeze Dark change the GTK2 theme to the recoloured one" but I'm not sure
what direction GTK configuration is heading with that configuration daemon being worked on, so I'd rather not mess with GTK configuration until that's ironed out.

ndavis added a comment.EditedOct 3 2019, 3:06 AM

I'm not sure how to verify if the assets have been generated correctly. What GTK2 programs did you test with?

Look for a theme in ~/.local/share/themes called Breeze 🎨. The reason why it has a 🎨 is to distinguish it from the system Breeze GTK2 theme. Otherwise,
there'd be two Breeze entries listed in the user's GTK2 theme list in syse5. Yes, it's clunky, but this is a toolkit older than me, so clunkiness is expected.

I would probably add a "if the user has GTK2 theme set to Breeze/Breeze Dark change the GTK2 theme to the recoloured one" but I'm not sure
what direction GTK configuration is heading with that configuration daemon being worked on, so I'd rather not mess with GTK configuration until that's ironed out.

Am I supposed to run this script myself? I did make install and it didn't seem to do anything.

Are you sure the emoji isn't going to be a problem in programs or systems with no emoji support?

cblack added a comment.Oct 3 2019, 3:09 AM

I'm not sure how to verify if the assets have been generated correctly. What GTK2 programs did you test with?

Look for a theme in ~/.local/share/themes called Breeze 🎨. The reason why it has a 🎨 is to distinguish it from the system Breeze GTK2 theme. Otherwise,
there'd be two Breeze entries listed in the user's GTK2 theme list in syse5. Yes, it's clunky, but this is a toolkit older than me, so clunkiness is expected.

I would probably add a "if the user has GTK2 theme set to Breeze/Breeze Dark change the GTK2 theme to the recoloured one" but I'm not sure
what direction GTK configuration is heading with that configuration daemon being worked on, so I'd rather not mess with GTK configuration until that's ironed out.

Am I supposed to run this script myself? I did make install and it didn't seem to do anything.

Are you sure the emoji isn't going to be a problem in programs or systems with no emoji fonts?

Eh, if you have any better ideas for the name let me know.

As for testing it, you need both this revision and the one I marked it as dependent on. The colors KCM should run the script whenever you apply a colorscheme.

How about calling this new one "Breeze" and renaming the old one "Breeze (fixed colors)" or something like that?

cblack updated this revision to Diff 73289.Jan 11 2020, 6:06 PM

Use colourscheme name instead of emoji

The program is created non-executable, FYI.

cblack abandoned this revision.Apr 1 2020, 7:54 PM