Bug 361066

Summary: [Feature Request] GTK+ 3.20 support
Product: [Plasma] Breeze Reporter: Jeff Bai <jeffbaichina>
Component: gtk themeAssignee: scionicspectre
Status: RESOLVED FIXED    
Severity: major CC: argymeg, arthur, cerebellum, clearmartin, criguada, daniel, darkosmart, dev, elvis.angelaccio, fademind, g.schlisio, garwol4130, hessi88, hrvoje.senjan, inglessi, ingmar, jiakomo, kaputze, kyle.devir, lasse.liehu, lemaitre.dulotus, marcodv, marius, marius_mps, matt.scheirer, medo.tareq, mrypsilons, nucleo, Ondrej.Machulda, p3ybnyhv, pavel.bazika, rdieter, samrog131, scarpino, silvan.calarco, simon.lewis, ssergiienko.s, steffen.klee, sudhir, svadkost, teet.talviste, trilader+kdebugs, ubr47k, wavemotiongun, willemw12, wulf.richartz, xgdgsc, zellox
Priority: NOR    
Version: 5.6.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: libreoffice with breeze gtk3
libreoffice with breeze gtk2
firefox with breeze gtk3

Description Jeff Bai 2016-03-28 00:30:23 UTC
Breeze GTK+ theme is currently unsupported on GTK+ 3.20, and layouts do break. Maybe it is related to this change in GTK+ theming framework as described below...

https://blogs.gnome.org/mclasen/2015/11/20/a-gtk-update/

I can provide screenshots if needed.

Reproducible: Always

Steps to Reproduce:
1. Set GTK+ theme to Breeze
2. Run a GTK+ 3 application (GTK+ 2 works fine of course)
3. Being shocked by broken layouts... broken everything
Comment 1 scionicspectre 2016-03-28 12:33:31 UTC
Unfortunately, a GTK 3.20 version of theme doesn't exist in any form yet. Technically speaking, the 3.18 version wasn't even feature complete. Instead of fixing its remaining problems, it may be more prudent to restructure and polish the theme as it is rewritten for GTK 3.20 and up, effectively abandoning 3.18 development. That shouldn't be a problem since, in theory, this would be the last time we are required to rewrite the CSS.

So yes, GTK 3 applications will be shocking and ugly for a time, but the theme should remain stable for a long while after the rewrite is complete. That is, until GTK 4.
Comment 2 Jeff Bai 2016-03-28 14:28:08 UTC
Thanks!
Comment 3 Rog131 2016-03-31 21:07:46 UTC
Same as the https://bugs.kde.org/show_bug.cgi?id=361249 ?
Comment 4 scionicspectre 2016-04-01 02:23:03 UTC
*** Bug 361249 has been marked as a duplicate of this bug. ***
Comment 5 Rex Dieter 2016-04-05 13:32:20 UTC
*** Bug 361404 has been marked as a duplicate of this bug. ***
Comment 6 Rog131 2016-04-11 07:24:38 UTC
Possible dublicate: https://bugs.kde.org/show_bug.cgi?id=361606
Comment 7 Rex Dieter 2016-04-17 11:10:09 UTC
*** Bug 361612 has been marked as a duplicate of this bug. ***
Comment 8 Icecube63 2016-04-23 16:10:40 UTC
There is a typo in ~/.config/gtk-3.0/settings.ini  It should be lowercase, not "Breeze"

[Settings]
gtk-theme-name=breeze
gtk-icon-theme-name=breeze

After changing all gtk3 applications look fine
Comment 9 Icecube63 2016-04-23 16:12:00 UTC
at Archlinux
Comment 10 StanislavArch 2016-04-25 21:52:36 UTC
(In reply to Icecube63 from comment #8)
> There is a typo in ~/.config/gtk-3.0/settings.ini  It should be lowercase,
> not "Breeze"
> 
> [Settings]
> gtk-theme-name=breeze
> gtk-icon-theme-name=breeze
> 
> After changing all gtk3 applications look fine

I tried to change it to lower case and looks like this doesn't fix anything... just silent fallback to "Default" theme happens, because i can't see any difference between "Default" and "Breeze" + fixed config. But error messages really disappeared from logs (tried on Firefox 45)

ArchLinux too)
Comment 11 JonnyRobbie 2016-04-25 22:08:44 UTC
Doesn't work for me either. It just falls back to some other theme.
Comment 12 Ondrej Machulda 2016-05-10 14:03:06 UTC
Did anyone found some workaround? If I upgrade GTK to 3.20, Firefox GUI is completely broken, parts are overlapping and missing etc. and overal unusable. So I have to downgrade GTK back.

However, being locked on GTK 3.18.9-1 on Archlinux, I'm also locked on Firefox 45.0.1-1, as newer Firefox versions on Arch require GTK 3.20.

So did anyone somehow solved this problem?
Comment 13 Elvis Angelaccio 2016-05-10 14:05:36 UTC
(In reply to Ondrej Machulda from comment #12)
> Did anyone found some workaround? If I upgrade GTK to 3.20, Firefox GUI is
> completely broken, parts are overlapping and missing etc. and overal
> unusable. So I have to downgrade GTK back.
> 
> However, being locked on GTK 3.18.9-1 on Archlinux, I'm also locked on
> Firefox 45.0.1-1, as newer Firefox versions on Arch require GTK 3.20.
> 
> So did anyone somehow solved this problem?

The only workaround that I know of is switching to a theme compatible with 3.20. The default theme (which you can pick in the system settings) works fine.
Comment 14 fademind 2016-05-10 14:20:28 UTC
dirruk1 made proper changes in gnome breeze GTK3 for compatibility with 3.20 and theme now looking as expected.

GRAB it from GITHUB:

git clone -b color-effects https://git@github.com/dirruk1/gnome-breeze.git
Comment 15 Ondrej Machulda 2016-05-10 14:28:56 UTC
(In reply to fademind from comment #14)
> dirruk1 made proper changes in gnome breeze GTK3 for compatibility with 3.20
> and theme now looking as expected.

Nice! Will this go to breeze upstream?
Comment 16 fademind 2016-05-10 17:09:24 UTC
**Temporary solution**

Who want use GTK+ 3.20 compatible Breeze themes can follow installation README.md instructions from my fork repo.

https://github.com/FadeMind/breeze-gtk

Proof:
http://i.imgur.com/ye20gXY.png (bluefish)

https://i.imgur.com/sB9kD1j.png (corebird)
https://i.imgur.com/Cn3HdIS.png (corebird)
Comment 17 Yamashita Ren 2016-05-10 18:16:53 UTC
(In reply to Ondrej Machulda from comment #12)
> Did anyone found some workaround? If I upgrade GTK to 3.20, Firefox GUI is
> completely broken, parts are overlapping and missing etc. and overal
> unusable. So I have to downgrade GTK back.
> 
> However, being locked on GTK 3.18.9-1 on Archlinux, I'm also locked on
> Firefox 45.0.1-1, as newer Firefox versions on Arch require GTK 3.20.
> 
> So did anyone somehow solved this problem?

In the meantime, there is a nice firefox-gtk2 package in AUR.
Comment 18 Simon Lewis 2016-05-20 16:45:39 UTC
Fixed version of breeze-gtk that works with apps built against gtk-3.20 can found at:

https://github.com/FadeMind/breeze-gtk

Works perfectly when installed on my manjaro / kde desktop installation. ..
Comment 19 Simon Lewis 2016-05-27 10:47:18 UTC
Is there a schedule (date & version) for when Breeze will be updated to match gtk3.20+ ?
Comment 20 fademind 2016-05-27 18:09:54 UTC
FIXED Breeze GTK for GTK2 and GTK 3.20 you can install via:

git clone https://github.com/FadeMind/breeze-gtk.git && \
cd breeze-gtk && \
sudo make install

OR via PKGBUILD:

wget https://raw.githubusercontent.com/FadeMind/breeze-gtk/master/PKGBUILD && \
export LANG=C;yes|makepkg -srci
Comment 21 Simon Lewis 2016-05-29 07:54:10 UTC
Thanks for the reply.

What I meant was : When will the solution from FadeMind find its way upstream to 

https://quickgit.kde.org/?p=breeze-gtk.git

and thus the popular Linux distribution repositories?
Comment 22 scionicspectre 2016-05-29 21:02:08 UTC
Simon Lewis, we currently have a diff prepared for merging into the official KDE repos. We intend to have it ready for Plasma 5.7- expect to see this bug 'resolved' soon.
Comment 23 scionicspectre 2016-06-13 04:07:42 UTC
The GTK 3.20 branch from GitHub has been successfully committed, so we'll be closing this bug, but please continue to keep an eye out for any oddities in specific GTK 3 applications.
Comment 24 nucleo 2016-06-18 23:38:03 UTC
Created attachment 99584 [details]
libreoffice with breeze gtk3

Is it possible to fix large input fields with breeze gtk3?
Comment 25 nucleo 2016-06-18 23:39:05 UTC
Created attachment 99585 [details]
libreoffice with breeze gtk2

How it looks with breeze gtk2
Comment 26 nucleo 2016-06-18 23:41:00 UTC
Created attachment 99586 [details]
firefox with breeze gtk3

The same problem in Firefox
Comment 27 Nate Graham 2019-08-10 21:46:20 UTC
*** Bug 361606 has been marked as a duplicate of this bug. ***