Bug 432712

Summary: Aurorae window decoration icon themes using .svgz files do not work in GTK apps with client side decorations
Product: [Applications] systemsettings Reporter: Paul McAuley <kde>
Component: kcm_styleAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: alois1, mail, nate, plasma-bugs, santiagocezar2013
Priority: NOR    
Version: 5.20.90   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 5.22
Sentry Crash Report:
Attachments: ~/.config/gtk-3.0/assets/ folder for Classik-Aurorae

Description Paul McAuley 2021-02-10 00:49:29 UTC
The new functionality of kde-gtk-config to generate the window decoration icons for GTK apps with client side decorations does not work for all Aurorae themes. 

For example, my "Classik-Aurorae" theme (downloadable from Get New Stuff menu) does not display any new icons at all in Gedit or Chromium. This theme was based on the "Freeze" Aurorae theme which also does not work. I also notice "Simply Circles" does not work either.


STEPS TO REPRODUCE
1. Open Window Decorations KCM and choose "Get New Window Decorations". Download "Classik-Aurorae" or "Freeze" and set as theme.
2. Open Gedit or Chromium (with GTK theme set and system titlebar and buttons disabled)

OBSERVED RESULT
Gedit or Chromium does not show any window decoration icons.

EXPECTED RESULT
To see the window decoration icons as in Qt applications.

SOFTWARE/OS VERSIONS
Operating System: openSUSE Leap 15.2
KDE Plasma Version: 5.20.90
KDE Frameworks Version: 5.78.0
Qt Version: 5.15.2

If this is not easy to fix, please let me know if there is a workaround so I can fix my Classik-Aurorae theme instead.
Comment 1 Paul McAuley 2021-02-10 02:37:54 UTC
Created attachment 135548 [details]
~/.config/gtk-3.0/assets/ folder for Classik-Aurorae

I looked into this, and it seems that the SVG files generated all don't contain any paths and therefore all appear blank as in this screenshot.
Comment 2 Paul McAuley 2021-02-10 03:26:33 UTC
I have worked out exactly what was wrong with "Classik-Aurorae". In this Aurorae theme I had used .svgz files. As soon as I saved them as .svg files instead, it works in GTK apps with client side decorations.
Comment 3 Paul McAuley 2021-02-10 20:23:01 UTC
I have updated the "Classik-Aurorae" window decoration to use .svg instead of .svgz so you no longer see this bug with that theme. The effects of using a .svgz on GTK apps with CSD can still be seen with the "Freeze" window decoration.
Comment 4 Alois Wohlschlager 2021-02-22 09:52:36 UTC
kde-gtk-config currently only looks for the svg. I will make it look for svgz files soon.
Comment 5 Bug Janitor Service 2021-02-24 12:18:22 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kde-gtk-config/-/merge_requests/25
Comment 6 Alois Wohlschlager 2021-02-25 19:40:17 UTC
Git commit 0bea4e6eb884d3a355296712af08d5a2b21a11bf by Alois Wohlschlager.
Committed on 22/02/2021 at 13:51.
Pushed by ngraham into branch 'master'.

Support svgz buttons in Aurorae themes

The Aurorae decoration engine in KWin checks for svgz icons if the svg
does not exist. Do the same thing here.

M  +4    -1    kded/kwin_bridge/auroraedecorationpainter.cpp

https://invent.kde.org/plasma/kde-gtk-config/commit/0bea4e6eb884d3a355296712af08d5a2b21a11bf
Comment 7 Nate Graham 2021-02-25 20:38:05 UTC
Git commit cbfb855ac2f50f91fb39085a337e3151780c861a by Nate Graham, on behalf of Alois Wohlschlager.
Committed on 25/02/2021 at 20:38.
Pushed by ngraham into branch 'Plasma/5.21'.

Support svgz buttons in Aurorae themes

The Aurorae decoration engine in KWin checks for svgz icons if the svg
does not exist. Do the same thing here.


(cherry picked from commit 0bea4e6eb884d3a355296712af08d5a2b21a11bf)

M  +4    -1    kded/kwin_bridge/auroraedecorationpainter.cpp

https://invent.kde.org/plasma/kde-gtk-config/commit/cbfb855ac2f50f91fb39085a337e3151780c861a