There is a group of consistency freaks out there (like myself) who are not very fond of mixing Gtk+ with Qt applications. The reasons for this are not just graphical, but also behavioural; Gtk+ applications behave differently than Qt applications (menus are different, layout is different, etc.). Trolltech obviously can’t tackle the behavioural side of this issue, but they can tackle the graphical one. This is exactly where QGtkStyle comes into play.QCleanlooks, combined with icon themes, standard shortcuts, and dialog buttons, already offer Qt integration into a Gtk+ environment, but this is not an ideal solution. From Qt’s point of view, a better solution would be to provide a solution for Gtk+ similar to what it offers on Mac OS X and Windows: using the Gtk+ theme engine directly. Cue QGtkStyle.
QGtkStyle does exactly this, and in addition extends and surpasses QCleanlooks in a lot of other areas as well. All group boxes are now flat style to blend better with GNOME dialogs. Icon theme support has improved, scrollbar buttons are disabled at edges and item view branches now support hover.
The style is available as a plugin to Qt 4.4 from the Trolltech Labs website – it is obviously not yet of release quality. It is also made clear that this style cannot be used concurrently with the gtk-qt-engine.
A small step for GUI framework developers… a giant leap for users! And the best part is that it actually uses GTK… it’s not just a look-alike.
Jolly-good work there, lads!!
Edited 2008-05-15 18:20 UTC
A little warning: QGtkStyle only works with QT4 apps.
Which part of “The style is available as a plugin to Qt 4.4 (…)” is not clear?
I’m sure that someone will think that QGtkStyle could make their common QT3/KDE3 apps looks like GTK ones on GNOME, as if the plugin after enabled on QT4 could apply the style on all QT apps regardless of version.
Specially since QT3 is quite prevalent, thus think about some sort of backward compatibility is rather natural under such conditions.
I don’t really care if qt and gtk+ apps look and feel the same as each other. What I care about is if they look and feel the same under different window managers.
This isn’t a problem for Qt. All of my Qt apps look the same under both KDE and XFce. The problem is that GTK+ apps like Firefox, pidgin, inkscape etc, all look like crap under KDE.
I’m not too knowledgeable about the different WMs and Toolkits to point a finger of blame. All I can say is that is the main reason that I will keep using XFce…because both GTK and QT apps while looking different from each other, at least look good. GTK+ apps under KDE take all the beauty away from KDE4.
~Eric
Load a proper GTK settings daemon (gnome-settings-daemon is an option) and things will work fine. And consider using gtk-qt-engines. Making GTK apps look native under KDE has been around for many years.. I’m pretty sure it works out of the box these days.
Under kde you can use the qt-gtk engine which attempts to render gtk widgets as qt widgets. Kde distros usually include it by default and can be found as a menu setting under appearance.
The results are not perfect but can mask away a lot of the horror.
I’m not trying to make my GTK apps look like Qt apps, I’m trying them to look like they do under XFce, not like crap.
I believe it was/is due to some bug in KDE 4.0.x, which has been fixed… It removed the theme from GTK instead of just leaving it alone 😉
… If you rather not load the gnome-settings daemon, just create a simple 2-3 lines .gtkrc-20 file and put it in your home directory.
E.g.
$ cat ~/.gtkrc-2.0
include “/usr/share/themes/Clearlooks-gPerfect/gtk-2.0/gtkrc”
gtk-toolbar-style = GTK_TOOLBAR_BOTH_HORIZ
gtk-toolbar-icon-size = GTK_ICON_SIZE_SMALL_TOOLBAR
gtk-font-name = “Ariel 9”
– Gilboa
Edited 2008-05-17 04:10 UTC
I dunno…if everything looks the same but acts differently then you’d be even more confused.
I can follow this idea, that’s why I think the article’s description contains the passage “The reasons for this are not just graphical, but also behavioural; Gtk+ applications behave differently than Qt applications (menus are different, layout is different, etc.).”
And just image that Gtk2 and Qt are just the two most common GUI toolkits today. Just consider Tcl/Tk, Gtk1, or even Xaw. They do look very different and behave “strange”, too. But when you’re familiar with a desktop system that uses many different applications with different toolkits (such as mine does), this isn’t a problem. Really.
Only consistency enforders may think different. 🙂 But after all, I really welcome an easy approach to make at least Gtk2 and Qt applications to look consistent. This will make Linux and UNIX desktop solutions more appealing to users who insist on having everything in the same look.
The problem is…that GTK+ fanboys will still refuse to use QT applications…its not about the look and feel, its about their preference being “the best” and they are in serious denial that there might be other options. I know this guy who really hates KDE…thats not a problem…but as a result he really hates QT because he believes that they are the same thing.
Actually, toolkit fanboys got to be the worst kind of fanboys there is (for either side). In the case of gaming consoles, operating systems, and even desktop environments, most people are actually using the products and know partally what they are talking about (in their own opinion ofcourse), but for toolkits, EVERY SINGLE fanboy I have met (and there seems to be an endless supply of these) have no clue whatsoever…they know nothing about the toolkits advantages and disadvantages. They decide on a toolkit after using gnome or KDE, and stick by that choice regardless of whether they are actually using the TK…I have even heard people say that the cleanlooks QT4 theme is nothing like the GTK+ one and that there is a huge difference. And every time some moron start flaming the “other” toolkit, I have to step in and say that they are wrong, and suddenly I am the bad guy because I am a fanboy for the “other” toolkit.
No wonder there are wars…
Most GTK “fanboys” won’t know the difference once the app renders using a GTK theme. They only know when it looks “different”. You can bet that if Skype, Opera, GoogleEarth, VirtualBox etc. render in clearlooks or whatever theme they’re using, rather than the plain-jane default Qt theme, they’ll proclaim them as Gnome apps.
It’s the hardcore purists that will continue to object, no differently than their counterparts that complain about GTK versus Qt. And nothing will every change that.
Just my 2c…
I want gtk apps to look like QT apps not QT apps to look like gtk apps. Almost all my KDE apps are QT3 but this is only for QT 4.
http://gtk-qt.ecs.soton.ac.uk/
qt3 version is no longer developed but is usable and works just fine most of the times.
I’ve been wondering about when GTK+ will up its own ante and adopt similar features to what QT4 is boasting, especially http://arstechnica.com/journals/linux.ars/2008/02/19/qt-styling-add… .
No doubt that this is lending a hand to GTK+ users, but I think that this is more of a failure of the GTK+ camp to suck it up and improve the toolkit to bring it to the par of Qt4. It’s like the GTK+ developers have more of a “bleh, let’s wait until it looks *really* out of date in comparison to other widget toolkits!”
Or is it because the GNOME collective’s leaders are wild about using XUL and the Mozilla platform as a future mainstay for GNOME development, and aren’t really focusing on enhancement of GTK+?
/I use Windows, and I’m not a fan of either toolkit or desktop environment.
/web design student, so of course I think Qt styling is an awesome concept.
Edited 2008-05-16 06:30 UTC
Gtk developers are thinking of trying to catch up to Qt, that’s why they are deliberating a GTK 3.x branch… But it’ll take them years, and Qt will be further developed by then. So catching up? Not anytime soon, I suppose. But of course, it also depends on what you want and need in a toolkit…
Kgtk (using KDE dialogs in gtk apps) came from the KDE side. Qt compiling against glib so KDE apps can potentially use Gnome C dialogs comes from Trolltech. Gtk-qt, which skins GTK apps to look like KDE apps for fitting into a KDE desktop comes from the KDE side. Now QGtkStyle, a style to let Qt apps fit into a Gnome desktop comes from Trolltech.
Work getting Gnome apps to look right in KDE comes from KDE users. Work getting Qt apps to look right in Gnome comes from .. Trolltech.
Why don’t I ever see any Gnome/GTK names attached to these (confusingly acronymed) projects? Honest question. Too busy? Don’t care? Working behind the scenes on some more wide ranging solution? Don’t think there are any must have apps from the other DE that have to be finessed into Gnome (like Gimp/Firefox into KDE)? They aren’t a business with motivation to get their toolkit used as widely as possible?
Leaves a slightly sour taste in my mouth, which I’m hoping is from simply not understanding everything that’s going on. Enlighten me. And yes, widget visual fidelity isn’t the only part of DE/Toolkit integration, but it’s the part that jumps out at you
First, there is a problem with your observation:
1.) GTK+ and GNOME developer engage in the FreeDesktop project which in fact was responsible for the Portland Project. In other words, GNOME developers do help to provide better integration. To say that only KDE developers were interested in cross-desktop integration is obviously wrong.
2.) The Tango Desktop Project was started by people how previously worked with GTK+ and GNOME projects. To say that only KDE designers are interested in visual cross desktop integration is thus also obviously wrong.
You obviously never noted these because you didn’t look properly. In other words: Your view is biased.
Second, there’s a rather simple explanation for the remaining difference: Trolltech makes money by selling proprietary licenses to customers. Nothing wrong with that, of course. But I guess, customer requests motivated Trolltech to provide cross desktop features — it was not an altruistic decision.
On the other hand, the GTK+ and GNOME developers make no money by selling licenses. Consequently, they might just not be interested to spend their time doing this. Why should they if noone asks for it?
Additionally, noone would stop a group volunteers from patching GTK+ to replace dialogs like the file selector so that it matches the KDE file selector more closely. Could be a great feature for any KDE-centric Linux distribution. But it seems, no volunteers appeared yet. Maybe, the visual integration into KDE is not as important for users of GTK+ apps as you would like it to be.
Well, that doesn’t really answer what he’s saying. It’s been KDE and then Trolltech who’ve been responsible for better integration of GTK applications into KDE with QtGTK, and vice versa with what Trolltech are doing. Portland was mainly helped along by an (ex) KDE developer Waldo Bastian, and now seems to be pretty stillborne.
Not here they’re not.
I’ve never really seen the point of Tango. It came out after the Appeal and Oxygen KDE projects and is basically a new icon theme for Gnome. There’s nothing really cross-desktop about it, apart from the fact that it uses the Freedesktop icon specification that a lot of KDE people contributed to – and which they call the Tango icon spec for some strange reason ;-).
Yer, and?
Judging from the number of people complaining about desktop and application consistency, I’d say a lot of people are asking for it.
That’s actually a pretty damning inditement regarding the current state of GTK applications. People still talk about desktop and application consistency being a perennial thorn, and there’s certainly been demand to integrate KDE and Qt applications better in Gnome (Amarok and KDE’s educational applications being the main ones). The standard response to that has been to create clones of Amarok and applications like Kalzium in GTK…..
Kgtk is an ugly kludge.
I assume you’re talking about glib/Qt main loop integration. Glib cannot be easily integrated to use the Qt main loop without opening up a whole can of licensing worms.
Ugly kludge, ugly kludge.
Gnome/GTK-developers don’t enjoy spending their time on ugly kludges. Real integration is done elsewhere.
PS. You forgot to mention geramic, which was an earlier ugly kludge.
Subject says it all. Why not?
They can and they have. For example, selecting the Cleanlooks theme makes combo boxes behave the “Gnome” way (expanding up and down, instead of just down).