User: Password:
Subscribe / Log in / New account

Clasen: Introducing GtkInspector

Clasen: Introducing GtkInspector

Posted May 19, 2014 23:39 UTC (Mon) by HelloWorld (guest, #56129)
In reply to: Clasen: Introducing GtkInspector by ovitters
Parent article: Clasen: Introducing GtkInspector

Why? GTK *is* poorly maintained. Watch at Dirk Hohndel's talk about switching subsurface to Qt. Look at the projects who are switching to Qt such as VLC, Wireshark or LXDE. Switching toolkits is a lot of work, so the fact that people are nevertheless willing to take this kind of pain tells something about GTK.

(Log in to post comments)

Clasen: Introducing GtkInspector

Posted May 20, 2014 19:07 UTC (Tue) by lambda (subscriber, #40735) [Link]

I watched Dirk Hohndel's talk, and my takeaway was that most of the issues were based on cross-platform use. In Gtk, running on platforms other than Gnome on X (or Wayland in the future) is a somewhat secondary goal, so while it works OK, there are a variety of platform integration issues and it doesn't really look or act very much like a native application. Cross platform application is precisely what Qt is designed for, and is much more of a core goal. As Dirk pointed out, most of Subsurface's users are on Windows and Mac OS X; it only has as high a percentage of Linux users likely due to Linus's involvement in the project.

I tried looking at a few of the issues they had mentioned where they had talked to Gtk developers and been snubbed, but I couldn't find much. One of them was asking about help on doing custom placement and changing the delay of tooltips, as they wanted to use tooltips to display information about what you were hovering over in the graph. They got a few answers about a few customizations you could do, but the response that to do it really well they'd probably have to implement a custom widget rather than using tooltips. What did they do in Qt? They wrote a custom widget for it.

The other major issue they mentioned was not being able to edit a dive right on the view screen, but having to pop up a separate window for editing. I never quite figured out what problem they ran into there. It would be helpful to point out the actual threads where they had trouble and had to give up in Gtk, because I'm curious about how much wasn't possible in Gtk, versus how much was just easier in a rewrite now that they knew about all of the mistakes they'd done in the first UI due to not being experienced UI developers.

Having some familiarity with both Gtk and Qt, though not a ton of experience, I would say that overall I prefer Gtk if I'm going to be writing Linux-native software, and Qt if I want to write something cross-platform.

Clasen: Introducing GtkInspector

Posted May 20, 2014 19:29 UTC (Tue) by rleigh (guest, #14622) [Link]

It's been poorly-maintained for over a decade. When I was using it in commercial projects around 2004-5 I was finding bugs regularly and filing bugs with patches in bugzilla (and bugs with stuff along the lines of "this is the bug, these are the options for fixing it, let me know which you prefer and I'll go and I'll fix it and give you the patches later in the week"). The company I worked for was happy for me to do that; they would probably have felt the same way for Qt. Most never got a reply and the patches were generally just left languishing. At the time these unfixed defects became a massive liability for the projects I was working on. I mean, what more could I have done? I'd found the bug, made the fix, submitted the patches... and then nothing. In the meantime I was hacking around the defects waiting for a new release containing the fixes, which never arrived. In the end, these internal projects never saw the light of day, but depending on it working reliably and also working on non-Linux platforms was dicey then and still is today. At the time, the principal reason to go with GTK+ over Qt was the licensing; it was technically inferior even then, and that was the one factor which swayed things. The (then) lighter resource requirements were a very minor consideration. The main change is the Qt licensing. There's now little reason /not/ to use Qt, GTK+ has few points in its favour today.

Here's one I got a message about this week by coincidence:
It would have been fixed by July 2005 had there been a reply saying "yes, fix it this way". This is a rare one which actually got a reply, but still no productive outcome. As it is, it's probably still broken (can't confirm, I ditched it soon after since I needed a working tool).

Just as a general comment on the CLA situation. I generally dislike them. But. If a project won't review and apply patches for bugs which are major blockers for their end users in a timely manner, who cares if it has a CLA or not? It's simply not safe to rely on either way. The above example was a non-critical example, but it blocked the use of UTF-8 strings in C sources which blocked the i10n/l10n of an entire project until we replaced the broken tool. There were plenty more serious ones at the time.

Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds