|
|
|
|
|
by md8z
1700 days ago
|
|
That's not quite accurate, let me try to explain it. GTK3 and GTK4 both support a kind of limited "theming" with CSS, and that hasn't changed. In GTK3 before certain versions, the CSS selectors were unstable, so theme developers were relying on something that was going to break. Even after the CSS selectors have been stabilized, it's only really safe for applications to change those selectors. Third party CSS loaded into a running application will always risk breaking. It was (and still is) safe for applications to load themes besides Adwaita if that's something they tested for, but this has to be something done by the application. Not by a third party theme. That's what that website is talking about. There was a tweet going around a while ago that I'll try to re-state. Adwaita is not really a "theme" it's more like a CSS framework that you build your app on top of. Trying to swap out the theme is like trying to take a site built for Bootstrap and putting the CSS from Foundation on top of it, you might be able to hack it to sort of get it to work but what you're doing is combining two things which are fundamentally not compatible. Hopefully that helps explain why the method that people were using for third party theming in GTK3 was unreliable. In GTK4, the Adwaita theme has actually been removed from GTK and moved into libadwaita. That could mean some changes for some things, but not other things. Will all GTK3 apps port to GTK4 and libadwaita? Probably the GNOME ones will, but other apps might not. In that case it would be up to those developers to come up with a solution for theming, they could try to base that on CSS, or they could do something else. |
|
> Will all GTK3 apps port to GTK4 and libadwaita? Probably the GNOME ones will, but other apps might not
I have a question. Does it make sense to start new apps with GTK3? E.g. if I want my app to look at home in MATE/Xfce (which currently use GTK+3), and don't want to touch GNOME in any way, does it make sense to write it in GTK+3 (using GTK+2 HIG)?