LWN: Comments on "GTK++, stability, and the uncluttered future" https://lwn.net/Articles/562856/ This is a special feed containing comments posted to the individual LWN article titled "GTK++, stability, and the uncluttered future". en-us Sun, 26 Oct 2025 13:00:44 +0000 Sun, 26 Oct 2025 13:00:44 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net GTK++, stability, and the uncluttered future https://lwn.net/Articles/565066/ https://lwn.net/Articles/565066/ glaesera <div class="FormattedComment"> Boredom really is, what I need very often, too. So I am quite compassionate with projects, that still stick to GTK2.<br> At this time I use GNOME3.2 from Debian-Wheezy and think it is quite OK, only marginal problems appear, for example, when the cairo-dock interferes with fullscreen or almost fullscreen-windows or with popping up context-menus.<br> Nothing of that was reported yet, because it really seems marginal, though it slackens the workflow sometimes.<br> Today I found, that Windows that were dragged to the side of the screen to fill the right half, for example, cannot be altered in size, but only torn away from their side of the screen again, in order to continue their lives as normal windows.<br> Maybe it would be nice, if that half-screen-condition would be less of an exception.<br> <p> </div> Wed, 28 Aug 2013 13:50:49 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/564436/ https://lwn.net/Articles/564436/ ScotXW <div class="FormattedComment"> Up until recently I wasn't even aware, that clutter is a toolkit, like the other toolkits...<br> <p> So I draw this two svgs: [1]. Is this correct? Anything to add or remove again? I see modern compositing but also modern 3D-gaming being important. A lean and mean design (Latency...) is important for both.<br> <p> I watched the video from LCA2013 [2] Clutter 2 and GTK+4 and also some other stuff. I am not a programmer myself, and I do not plan to become one. But I do use software, and friends and friends of friends sometimes ask me 'bout their OS and how to fix it, and I began telling them to switch and use GNOME or Xfce instead of the evil OS or the other evil OS. ON either Debian stable or now on Fedora (because the newer the GNOME the better it seems to work, this means the less feature in-complete GNOME is... *cough*)<br> <p> Out of curiosity I started snooping around the bases of the desktop and which one (Qt-based or GTK+-based) has the brighter future, i.e. can attract most talented core developers AND application developers. I still have no idea, but at least I draw those stupid SVGs to brings others like me more quickly up to speed. So, can you mend them, make them better, use them to explain the future?<br> <p> <p> [1] <a rel="nofollow" href="http://en.wikipedia.org/wiki/User:ScotXW">http://en.wikipedia.org/wiki/User:ScotXW</a><br> [2] <a rel="nofollow" href="http://conf.linux.org.au/schedule/30067/view_talk?day=thursday">http://conf.linux.org.au/schedule/30067/view_talk?day=thu...</a><br> </div> Thu, 22 Aug 2013 17:01:02 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/564411/ https://lwn.net/Articles/564411/ heijo <div class="FormattedComment"> The problem of all this is that the GNOME brand and desktop are now dead after having been devastated and vandalized by McCann &amp; co., and GTK+ is almost surely doomed without those.<br> <p> The future is HTML5, Android and to some extent Qt.<br> <p> </div> Thu, 22 Aug 2013 15:12:45 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/564354/ https://lwn.net/Articles/564354/ PhilHannent <div class="FormattedComment"> To answer your last question. GTK 2 shouldn't need porting as it could run on XWayland: <a rel="nofollow" href="http://wayland.freedesktop.org/xserver.html">http://wayland.freedesktop.org/xserver.html</a><br> <p> <p> </div> Thu, 22 Aug 2013 11:29:03 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/564350/ https://lwn.net/Articles/564350/ tuna <div class="FormattedComment"> Then help those apps move forward. You have the source and everything needed.<br> </div> Thu, 22 Aug 2013 10:58:50 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/564321/ https://lwn.net/Articles/564321/ torquay I'm also rather confused by: <ul> <i>His answer historically was that GTK3 is awesome and everyone should port, but he said he has begun to doubt that. The truth is that GTK2 is stable and unchanging, even boring—but that is what some projects need. ... The real reason someone should port to GTK3 today, he concluded, is to take advantage of the new features that integrate the application with GNOME 3—but doing so means committing to keeping up with GNOME 3's pace of change, which is intentionally bold in introducing new features. ... Eventually, he said, he hopes that GTK+ will reach a point where the bold experiments are done. </i> </ul> <p> So is GTK 3.x stable or not ? Specifically, if a given package is linked with GTK 3.8, is there a guarantee that it will work with GTK 3.10 ? </p> <p> Or are certain specific parts of GTK 3 marked as unstable ? </p> <p> On a related note, if people are not encouraged to port to GTK 3, what happens with GTK 2.x based applications when the switchover to Wayland happens? Is there going to be Wayland backend added to GTK 2 ? </p> Thu, 22 Aug 2013 06:24:44 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563758/ https://lwn.net/Articles/563758/ dvdeug <div class="FormattedComment"> What does that have to do with anything? Things that are ahead of their time are often cannibalized by their more-popular siblings and left to die. Many of the languages of the 1960s were way ahead of Fortran and Cobol; not one of them is still used, while Fortran lives, with object orientation no less. (If you don't count C, at best a language of the tail end of the 1960s.)<br> </div> Sat, 17 Aug 2013 09:20:28 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563644/ https://lwn.net/Articles/563644/ hunger <div class="FormattedComment"> Thanks for that link, it is a very interesting read indeed.<br> <p> I went ahead and added a Porting page to the Qt project wiki to collect pages like that and added that link for future reference.<br> </div> Fri, 16 Aug 2013 10:06:29 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563492/ https://lwn.net/Articles/563492/ tpm <div class="FormattedComment"> Most of the awkwardness of putting a video on screen is gone in GStreamer 1.0. You can now simply set the window handle/id on playbin, and it will proxy it to the video sink later. That's about 3 lines of code for a Gtk widget. I don't think that qualifies as "frickin' hard". In the old 0.10 days you had to do complicated things in a synchronous bus handler called from another thread etc., that's no longer required.<br> <p> We certainly need nicer high-level API for playback, especially for Gtk+ users. A full-featured GtkVideoWidget with some nice API to control it would be great, whether in Gtk+ or elsewhere. Even the Qt folks have something already.<br> <p> But all that is a different discussion really and not related to your claims why Totem switched to Clutter, since Totem doesn't even use any of clutter-gst's convenience API, it only uses the sink for output and still controls playbin directly. The savings in terms of lines of code were minimal (+282-856, 9ef416ce) btw, not least because it then had to copy'n'paste in a new widget (+498) to restore proper aspect ratio functionality "until we get a solution for this directly in ClutterGst" (f782e2e1).<br> <p> Not that I think there's anything wrong with using Clutter, it's just that Totem didn't switch to it for the reasons you claim. It's simply the most sensible option for video rendering in a GNOME3 context given Gtk-3's massive lack in this area, which is hardly GStreamer's fault, and mostly a symptom of the Linux graphics stack having been in flux for the last few years.<br> <p> In any case, I'm looking forward to your work on all this inside Gtk+.<br> </div> Thu, 15 Aug 2013 22:26:40 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563561/ https://lwn.net/Articles/563561/ maxiaojun <div class="FormattedComment"> Continue your lies: <a href="http://www.tmrepository.com/trademarks/uratroll/">http://www.tmrepository.com/trademarks/uratroll/</a><br> </div> Thu, 15 Aug 2013 16:52:07 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563554/ https://lwn.net/Articles/563554/ maxiaojun <div class="FormattedComment"> BTW, the golden age of Linux GUI application has gone. There are many useful GUI applications ([1], [2] and many more) dead with random version GTK2 and often libgnome*.<br> <p> New application should indeed go with HTML5 or Qt, which are much better documented and supported. Let the shoddy designers of GNOME continue to steal ideas from other people, continue to build majestic core Apps like Clocks.<br> <p> 1. <a href="http://i8086emu.sourceforge.net/">http://i8086emu.sourceforge.net/</a><br> 2. <a href="http://sourceforge.net/projects/gstm/">http://sourceforge.net/projects/gstm/</a><br> </div> Thu, 15 Aug 2013 16:48:07 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563555/ https://lwn.net/Articles/563555/ ebassi obvious troll is obvious. also, you fail at reading comprehension. Thu, 15 Aug 2013 16:22:50 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563551/ https://lwn.net/Articles/563551/ ebassi <p>I think it's worth to reiterate that "small" and "simple" are relative terms.</p> <p>an application is "small" or "simple" if it does not have a large quantity of custom widgets that handle presentation in a completely different way than the stock layout managers and widgets provided by the toolkit itself. Gimp, for instance, uses gtk for many of its UI elements, but the large chunk of the UI is built on very custom widgets, which occupy a very small niche of use cases. the example that Benjamin brought was the dockable widget — i.e. a widget capable of containing a set of tool boxes that can be rearranged by drag and drop. while it's a concept used in a certain set of applications, it's highly unlikely that we can add such widget inside gtk, because it would need to satisfy different use cases and then port all the applications using their own custom widget to the new, generic, one.</p> <p>another point is that both LibreOffice and Firefox don't really use gtk at all, except for integration purposes on Linux. they both have their own toolkit, which may or may not draw something resembling the gtk style.</p> <p>as the last few cycles of the 3.x branch demonstrates, gtk is getting a wealth of new widgets, as well as new layout managers; if a widget is used by various applications, and it expresses a common UI pattern, then it should definitely be included in the core toolkit.</p> Thu, 15 Aug 2013 16:21:44 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563552/ https://lwn.net/Articles/563552/ maxiaojun <div class="FormattedComment"> From the code example, GTK+ should be referred as "GTK+, or the GNOME Toolkit, is a single-platform toolkit for creating graphical user interfaces.". Fix <a href="http://www.gtk.org/">http://www.gtk.org/</a> please.<br> <p> </div> Thu, 15 Aug 2013 16:15:47 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563548/ https://lwn.net/Articles/563548/ drag <div class="FormattedComment"> <font class="QuotedText">&gt; E libs such as Evas really were way ahead of their time.</font><br> <p> Hard to believe that when the E17 project has been around for longer then GTK2 and yet has a tiny fraction of the useful applications of GTK3. <br> <p> I suppose it's the same sort of thing people bring up with Resier4 vs Btrfs as "being ahead of it's time". <br> </div> Thu, 15 Aug 2013 15:58:41 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563529/ https://lwn.net/Articles/563529/ halla <div class="FormattedComment"> I've never had to do such a port (fortunately), so I cannot assess how useful this guide is, but it was recommended to me as pretty useful: <a href="http://wiki.lxde.org/en/Migrate_from_GTK%2B_to_Qt">http://wiki.lxde.org/en/Migrate_from_GTK%2B_to_Qt</a> .<br> </div> Thu, 15 Aug 2013 14:28:45 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563526/ https://lwn.net/Articles/563526/ hunger <div class="FormattedComment"> Thank you for explaining why projects like LXDE are considering to move from GTK2 to Qt. That must be a lot of work and a lot of relearning and I had been wondering why they are willing to do that for a while now.<br> </div> Thu, 15 Aug 2013 14:24:24 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563485/ https://lwn.net/Articles/563485/ ebassi <blockquote>Now perhaps some can see that Gnome is _still_ trying to catch up.</blockquote> <p>GNOME and GTK haven't been "catching up" to EFL. it's actually pretty much the other way around, and to be fair, it's going to be a long time before the EFL set of bajillion libraries can compete in terms of design, engineering practices, and implementation, with the libraries in the GNOME platform.</p> <p>I think you missed the point that Clutter has been available and used for 7 years; all this time, it has been integrated with the GNOME platform. in order for Clutter and GTK to get better, and get more features and users, they need to merge. Clutter has to turn into something at the very core of the platform diagram, not as something that you can opt in.</p> Thu, 15 Aug 2013 11:34:34 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563483/ https://lwn.net/Articles/563483/ ebassi <p>sure, and as I said in the talk, you can easily witness the amount of code that the Totem maintainer was able to remove just by using Clutter and the Clutter-GStreamer API.</p> <p>the main objection is not that putting a frame of a video on the screen is impossible with GStreamer: it's obviously possible. the objection is that it's <b>frickin hard</b> - and, to be fair, quite unnecessarily so. there is a distinctive lack of convenience API in that sector, which is why people started using Clutter-GStreamer as soon as it was published, 6 years ago.</p> Thu, 15 Aug 2013 11:28:01 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563480/ https://lwn.net/Articles/563480/ zenaan <div class="FormattedComment"> For future reference, and for those wishing to research, I just added the "Scene graphs in user interfaces" section which is primarily a list of various canvas libraries, to:<br> <a href="http://en.wikipedia.org/wiki/Scene_graph">http://en.wikipedia.org/wiki/Scene_graph</a><br> </div> Thu, 15 Aug 2013 10:51:06 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563464/ https://lwn.net/Articles/563464/ tpm <div class="FormattedComment"> The reason Totem uses Clutter is not "because putting a video on screen with GStreamer is such a pain", but because it's the easiest way to draw stuff on top of videos, which you generally can't do with e.g. xv overlays. Totem managed to put videos on screen with GStreamer long before Clutter even existed.<br> </div> Thu, 15 Aug 2013 08:20:05 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563459/ https://lwn.net/Articles/563459/ zenaan <div class="FormattedComment"> <font class="QuotedText">&gt; Ultimately, though, Bassi does think that GTK+ needs to start adding a scene graph library</font><br> ..<br> <font class="QuotedText">&gt; The scene graph is important because GTK+'s current drawing functions make it difficult to tell what element the cursor is over at any moment. Making each GTK+ widget a Clutter-based actor would make that determination trivial, and provide other features like making widgets CSS-themable</font><br> <p> Welll ...<br> "Evas is a clean display canvas API that implements a scene graph," see<br> <a href="http://trac.enlightenment.org/e/wiki/Evas">http://trac.enlightenment.org/e/wiki/Evas</a><br> <p> Back in the day Rasterman/Carsten implemented some GTK+ theme engines and more. E libs such as Evas really were way ahead of their time. Now perhaps some can see that Gnome is _still_ trying to catch up. That's how it looks to me anyway.<br> <p> Gesture support?<br> <p> Scalable/dynamic, declarative UIs?<br> <p> Multiple platforms?<br> <p> Clean architecture, comprehensive and well thought out library layers ... the list goes on and on.<br> <p> There was even a time in my memory when it looked like it might be possible that Gnome and E might merge.<br> <p> Anyway, I think it might greatly behoove Gnome/GTK+ developers to take another look at the Enlightenment libs. Really, a lot of ground has been thoroughly trod over in the E camp.<br> <p> I would very much appreciate any feedback here on LWN re E libs etc.<br> </div> Thu, 15 Aug 2013 07:13:22 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563446/ https://lwn.net/Articles/563446/ tetromino <div class="FormattedComment"> The way I read it, gtk developers are targeting the new widgets they have been adding primarily at small and simple applications by giving these widgets only the most commonly requested features. Gimp and other large applications with unusual UI requirements are expected to implement their own widgets if they need something with extra functionality which no other project would ever be likely to use.<br> </div> Thu, 15 Aug 2013 03:21:21 +0000 GTK++, stability, and the uncluttered future https://lwn.net/Articles/563440/ https://lwn.net/Articles/563440/ tnoo <div class="FormattedComment"> I'm utterly confused.GTK used to mean "GIMP Toolkit", and was written to suit the GIMP, Based on this effort the GNOME desktop evolved. But here it is said that applications like GIMP would be unlikely to use GTK? <br> </div> Thu, 15 Aug 2013 02:46:52 +0000