[GTK3] Convert all colors to use GTK color definitions
AbandonedPublic

Authored by cblack on Jul 31 2019, 12:32 AM.

Details

Reviewers
ngraham
Group Reviewers
VDG
Plasma
Summary

All of the colors pulled from a colorscheme in Breeze GTK now use GTK's color definitons, allowing them to be changed without recompiling the theme.
GTK18 and GTK20 have been merged as well, lessening work required to make changes & maintain.
There are some other minor changes (radio buttons/checkboxes now sink in when clicking as their Qt counterparts do.)
The varaible $new-highlight has been added to gtk.scss. Toggling it to true will cause the highlights to resemble ndavis/highlight @ Breeze. Added that because I had already made the changes to the theme when I did the colordefs, and I don't want to wait on the new highlight style to be set in stone before this can be merged.

One caveat - checkboxes and radiobuttons are hardcoded at build time because they're PNGs. However, the design trend in GNOME applications is to move away from checkboxes and radiobuttons, and they're relatively minor in the grand scheme of things. Redoing them somehow is most likely out of the scope of this revision.

Test Plan

See that the theme works as intended with GTK color definitions.

Diff Detail

Repository
R98 Breeze for Gtk
Branch
colordefs (branched from master)
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 14628
Build 14646: arc lint + arc unit
cblack created this revision.Jul 31 2019, 12:32 AM
Restricted Application added a project: Plasma. · View Herald TranscriptJul 31 2019, 12:32 AM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
cblack requested review of this revision.Jul 31 2019, 12:32 AM
cblack updated this revision to Diff 62824.Jul 31 2019, 12:36 AM

Forgot about changing the build_theme.sh to export to my home directory under the name Breeze-Dev, reversed that

cblack updated this revision to Diff 62825.Jul 31 2019, 12:37 AM

Good job at picking up that change, arc. See previous change.

cblack updated this revision to Diff 62858.Jul 31 2019, 2:46 PM

Fix some issues with incorrect colors being used

ngraham requested changes to this revision.Aug 1 2019, 12:23 AM
ngraham added a subscriber: ngraham.

Neato mosquito!

Unfortunately, it doesn't build:

[ 75%] Building CXX object kconf_update/CMakeFiles/gtkbreeze5.5.dir/main.cpp.o
Installing into /home/nate/kde/build/breeze-gtk/Breeze-Dark
[ 75%] Built target Breeze-Dark
Installing into /home/nate/kde/build/breeze-gtk/Breeze
cp: cannot stat 'gtk-dark-3.18.css': No such file or directory

Looks like your change in build_theme.sh had some unintended consequences. I guess we still need the 3.18 dirs for compatibility, or else we need to formally deprecate 3.18 and remove all traces of it.

This revision now requires changes to proceed.Aug 1 2019, 12:23 AM
cblack updated this revision to Diff 62881.Aug 1 2019, 1:06 AM

Fix CMakeLists.txt

cblack updated this revision to Diff 62882.Aug 1 2019, 1:07 AM

Forgot to add you

cblack added a comment.Aug 1 2019, 1:16 AM

Neato mosquito!

Unfortunately, it doesn't build:

[ 75%] Building CXX object kconf_update/CMakeFiles/gtkbreeze5.5.dir/main.cpp.o
Installing into /home/nate/kde/build/breeze-gtk/Breeze-Dark
[ 75%] Built target Breeze-Dark
Installing into /home/nate/kde/build/breeze-gtk/Breeze
cp: cannot stat 'gtk-dark-3.18.css': No such file or directory

Looks like your change in build_theme.sh had some unintended consequences. I guess we still need the 3.18 dirs for compatibility, or else we need to formally deprecate 3.18 and remove all traces of it.

Just changed the CMakeLists.txt and readded a needed file, it should build now.

cblack edited the summary of this revision. (Show Details)Aug 1 2019, 1:21 AM

Hmm, now you've removed the 3.18 and 3.20 versions entirely in favor of a single 3.0 version. This change seems like it should be done in a separate patch.

cblack added a comment.Aug 1 2019, 3:28 PM

Hmm, now you've removed the 3.18 and 3.20 versions entirely in favor of a single 3.0 version. This change seems like it should be done in a separate patch.

Closing this to reorganize revisions.

cblack abandoned this revision.Aug 1 2019, 3:29 PM
filipf added a subscriber: filipf.Aug 1 2019, 3:31 PM

This is going to be fantastic, agreed on splitting up the patch.

"There are some other minor changes (radio buttons/checkboxes now sink in when clicking as their Qt counterparts do.)" - this should also be a separate patch