Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Themes broken in GTK>=3.19 #120

Closed
nonamedotc opened this issue Mar 13, 2016 · 28 comments
Closed

Themes broken in GTK>=3.19 #120

nonamedotc opened this issue Mar 13, 2016 · 28 comments

Comments

@nonamedotc
Copy link

Due to recent updates in GTK-3.19+[1], greybird themes do not have the clean appearance they usually have. I believe this requires an update to greybird incorporating changes in GTK-3.19+

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

@nonamedotc nonamedotc changed the title Themes look broken in GTK-3.19+ Themes broken in GTK-3.19+ Mar 13, 2016
@ochosi
Copy link
Member

ochosi commented Mar 15, 2016

Yes, Greybird doesn't support Gtk+ 3.19 yet and since it will be a rewrite of the theme I guess I won't get to it very soon.
That said, if anyone wants to start working on that, that'd be appreciated!

@ochosi ochosi changed the title Themes broken in GTK-3.19+ Themes broken in GTK>=3.19 Apr 11, 2016
@JotaRandom
Copy link

I should add bug for bluebird and albatross and orion too, or (indifferent if greybord is the priority) this bug is enough to keep users aware of the problem in the themes?

@ghost
Copy link

ghost commented Apr 12, 2016

I'm using XFCE 4.12 + Greybird v1.6.2 and I can confirm that its broken with latest upgrade of GTK3. Most notably its broken when using Firefox v45.

@ochosi "Yes, Greybird doesn't support Gtk+ 3.19 yet and since it will be a rewrite of the theme I guess I won't get to it very soon." That too bad, as I've been using this greybird theme for many years. Now I'm forced to find alternatives at least until its fixed. =((

@JotaRandom
Copy link

I was reading some forums and may guys point that in the mailist of gnome they mentioned that gtk 3.22 will change some theming part will change again and likely break theming but in a less ugly way.
But I can't find in the mailist the reference, but anyway, beware, maybe better look for gtk3.21 instead.

@ghost
Copy link

ghost commented Apr 15, 2016

I'm using "arc-dark" (https://github.com/horst3180/Arc-theme) as an alternative for now. Also using Faenza Icons (http://tiheum.deviantart.com/art/Faenza-Icons-173323228) and Firefox theme "arc-darker" (https://github.com/horst3180/arc-firefox-theme) Firefox theme is also available on (https://addons.mozilla.org/en-US/firefox/themes/)

@ochosi
Copy link
Member

ochosi commented Apr 16, 2016

@jristz Actually pretty much every Gtk+3 release so far broke the theming...

Note that 3.20 is still fairly new and as I'm on Ubuntu, it'll take a few more months for me to get it and to work on the necessary updates.

Furthermore, I'm planning to rewrite the theme from scratch based on Adwaita and in SASS for better maintainability (the css is slowly but surely getting unreadable). If any of you want to help, please contribute and send pull requests!

@corsac-s
Copy link

I've submitted PR #125 but it's far from complete and maybe not the right way at all (duplicating code all around).

@louwers
Copy link

louwers commented May 20, 2016

I sincerely believe that this is the most ergonomic, pragmatic and beautiful GTK theme around. I doubt I will be able to be of much help because I have zero experience with GTK themes, but I will see what I can do.

Thank you for your effort on this. 👍

@ochosi
Copy link
Member

ochosi commented May 22, 2016

@louwers Thanks for the praise!

@kuboosoft
Copy link

Hi, I love greybird theme, but in Fedora 24 XFCE (Gtk 3.20.6) doesn't display, edges in buttons, contextual menus and others

@cinquecento
Copy link

cinquecento commented Jun 6, 2016

Upstream: Greybird GTK-3.20 port - based on Adwaita theme
https://bugzilla.redhat.com/attachment.cgi?id=1167162

Greybird GTK+ 3.20 port - based on Adwaita theme,
incl. lightdm-gtk-greeter.css GTK+ 3.20 port
For testing purposes only!

How to test it:

  • download theme and patch it
$ mkdir -p ~/.themes
$ cd ~/.themes
$ git clone https://github.com/shimmerproject/Greybird.git Greybird-GTK+3.20
$ cd Greybird-GTK+3.20/
$ curl -s https://bugzilla.redhat.com/attachment.cgi?id=1167162 | git apply
  • switch to theme
$ xfconf-query -c xsettings -p /Net/ThemeName -s Greybird-GTK+3.20
$ xfconf-query -c xfwm4 -p /general/theme -s Greybird-GTK+3.20
  • set as LightDM GTK+ Greeter theme (moreover, available to all users)
$ su -c "cp -a ../Greybird-GTK+3.20 /usr/share/themes/"
$ su -c "sed -i '/^theme-name/ a\theme-name=Greybird-GTK+3.20' /etc/lightdm/lightdm-gtk-greeter.conf"

@cinquecento
Copy link

A couple of references ...

MATE Desktop themes
https://github.com/mate-desktop/mate-themes

The Adwaita theme
https://git.gnome.org/browse/gtk+/tree/gtk/theme/Adwaita

GtkParasite Css Editor
https://github.com/chipx86/gtkparasite

Live Editing GTK CSS With GTK-Parasite | Just Sweet!
http://worldofgnome.org/live-editing-gtk-css-with-gtk-parasite-just-sweet

Rename parasite to gtkinspector
https://git.gnome.org/browse/gtk+/commit/?id=ccff3e9

GtkInspector Css Editor
https://git.gnome.org/browse/gtk+/tree/gtk/inspector

GtkInspector
https://wiki.gnome.org/Projects/GTK%2B/Inspector

Introducing GtkInspector
https://blogs.gnome.org/mclasen/2014/05/15/introducing-gtkinspector

Tweaking a the GTK+ theme, using CSS
https://blogs.gnome.org/mclasen/2014/05/06/tweaking-a-the-gtk-theme-using-css

to paraphrase,
... ask not what your theme can do for you, ask what you can do for your theme.

@ilikenwf
Copy link

ilikenwf commented Jun 18, 2016

@cinquecento I can confirm that the 3.20 patch works well on my system.

Archlinux, XFCE4 and gtk3 3.20.6

PKGBUILD if anyone wants it: http://sprunge.us/MgdC

@jEsuSdA
Copy link

jEsuSdA commented Jun 21, 2016

I've just install the 20160619 package version and it works fine, but there are several bugs on certain buttons and fields (see the synaptic screenshot and look at the buttons, search field and menu).

Thanks for your work!! Greybird is awesome!!

screenshot54

@jEsuSdA
Copy link

jEsuSdA commented Jun 21, 2016

Another app with issues I've just detected: Synfig

screenshot55

@ochosi
Copy link
Member

ochosi commented Jun 28, 2016

Sorry to respond so late, I was fairly busy lately.

Thanks for your contribution! I looked at the patch and I guess this could work, but it's not a very maintainable solution. If you look at the shear length of the contained.css file and the amount of selectors and nodes in some lines, that's so far from readable...

I guess the only way to move forward is - and in that respect the approach was correct - to rebase on top of Adwaita, however also using Adwaita's system (SCSS/SASS). Otherwise we'll always fight with unreadable walls of text.

I also realize that if I don't get to porting Greybird to the system laid out above everyone else will still need some sort of working version in the meantime, so I might end up pushing the patch by poma until I have something better.

@ochosi
Copy link
Member

ochosi commented Jun 29, 2016

As I'm about to start testing the patch myself I also pushed it to a branch so it's easier for others to try it out:
https://github.com/shimmerproject/Greybird/tree/gtk3.20

@ochosi
Copy link
Member

ochosi commented Jul 4, 2016

Just to let you all know, I've set up Gtk3.20 for myself and I've started the porting fun. Please forget about the branch I mentioned above, I'll delete it shortly.

@securerootd
Copy link

@cinquecento This patch works perfectly 👍
I am back with Greybird on Debian Stretch

@ochosi
Copy link
Member

ochosi commented Jul 18, 2016

OK, finally some news on this. Here's my WIP version of Greybird for Gtk3.20. There are several tweak-worthy and missing things (like proper theming of lightdm-gtk-greeter) but I hope that it will mostly work for everyone without eye-bleeding.
https://github.com/shimmerproject/Greybird/tree/gtk3.20

For all those waiting, sorry it took so long.

Hope I can do a first release of this soon.

Please note that I will likely not do any more maintenance releases or backports for Gtk<=3.18. The changes were just too dramatic.

@jEsuSdA
Copy link

jEsuSdA commented Jul 20, 2016

It works fine! 👍
I'll notify you if I found any bug. ;)
Thank you so much!!!

@codeforkjeff
Copy link

This is looking fantastic, many thanks for your work on this!

FYI, the vertical scrollbar doesn't display correctly for me in Firefox 47.0.1 on Debian testing (stretch). It just looks like a single solid gray bar. In other applications (xfce terminal and gimp, just to pick two at random), the scrollbar displays fine.

@jbicha
Copy link
Contributor

jbicha commented Jul 21, 2016

@codeforkjeff Where did you install your Firefox from? firefox-esr included in Debian testing works fine here with greybird built from the gtk-3.20 branch.

@codeforkjeff
Copy link

@jbicha I'm using a tarball I downloaded from the Mozilla website. Starting with Firefox 46, the official tarballs are compiled against gtk3. The firefox-esr package in Debian testing is at 45.2.0.

@jbicha
Copy link
Contributor

jbicha commented Jul 21, 2016

Firefox 47 does not support GTK 3.20 and has bugs like the scrollbar issue you mentioned. You need at least Firefox 48 (currently in Beta) although some bugs aren't fixed until 49.

@jbicha
Copy link
Contributor

jbicha commented Jul 21, 2016

Alternatively, if you're compiling it yourself, you could stay with 47 and grab the GTK 3.20 patch from, say, Fedora.

@codeforkjeff
Copy link

@jbicha Thanks for the info! I just tried the 48b07 tarball from the Beta downloads section, and it does indeed fix the scrollbar issue. So definitely not a Greybird problem.

@ochosi
Copy link
Member

ochosi commented Aug 16, 2016

Merged to master, hence this is fixed: 688b10c

@ochosi ochosi closed this as completed Aug 16, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests