Puzzled by desktop development priorities, Mac OS specifically [Warning: Rant]
I have been lurking in the forums for a while, but due to the frustrations I'm having with the state of Qt for Mac OS, I decided to sign up in order to vent those frustratations (and questions) in a place where it actually might help.
I am in the final stages of rewriting a somehow complex (at least for me) application to Qt from Java Swing. The time has come to focus on UI details, and this is where Qt gives me grey hairs. I started out developing in Qt 4.8, and experienced several issues that didn't work on the Mac (From the top of my head: Overlays on video widgets), or just looked plain wrong in Mac OS context (For example: Table rows with alternate row colors does not extend to the bottom if only containing a few rows; list view items does not scroll properly if setting an item widget).
Hoping that Qt5 would solve some of these problems (apart from reaping benefit from the great added features like JSON and serial device support), I have patiently waited for Qt5 to evolve from beta to 5.1 at the current point. Still, I'm seeing the same issues. Still. On top of that, classes like QtSingleApplication are not yet there. The unified toolbar on the Mac is gone, externalized to qtmacextras, which is still not ready. Compiling the latest version is not possible because of errors.
Bottom line is that creating a professionally looking/behaving application on the Mac is not yet possible with Qt 5.1, and not with Qt 4.8 either if requiring certain features - unless you know how to fix the underlying problems, and I certainly don't.
What I struggle to understand is the strategic choices being made by the team responsible. Now, I am in general very happy about Qt, and I am admiring the effort that is being done. I understand that creating a cross platform framework is an incredibly complex task, even more so on the UI side. But - seeing versions for iOS and Android being rolled out, seeing funky demos that obviously takes time and effort to develop (the "Live widgets in Castle Wolfenstein" demo comes to mind), I strongly feel that the development priorities are not balanced - especially having in mind that the project is commercially backed.
I do understand that the competition on the mobile market is fierce, and that strategically it's crucial to roll out support for the mobile platforms as fast as possible. But please, please please… don't forget the desktop platforms - and don't forget the Mac. Consolidate the existing platforms, then expand. That would be my strategy; but who am I to say that.
Sorry about the rant - however, I doub't I'm the only one experiencing these frustrations. Is there any timeline of the completion of qtmacextras and QtSingleApplication?
Hi and welcome to devnet,
You might consider bringing your points the mailing list or qt's irc channel, that's where you'll find most of the developer/maintainers. This forum is more user oriented.
That said, if you have found specific bugs you can lookup the "bug report":bugreports.qt-project.org/issues/ system to see if they are already known (vote for them if they are not yet solved) or create new entries for yours (posting them here is also appreciated)
Some bugs have fixes ready to be squashed but the review process can be a bit slow.
You could also consider contacting Digia for more information.
Thanks for the reply!
I have already reported most bugs I've found, but the result so far (downplayed/unhandled issues) has not been encouraging. I had one positive experience though - another user had contacted commercial support and gotten at patch (4.8), which he helpfully posted. The patch has not found its way to Qt5 as far as I can see, though - forgive me, but it just baffles me.
I'll try posting on the mailing list. Perhaps try contacting Digia as well. Thanks for your advice!
You're welcome !
Do you have the bugs references ?
One issue I created regarding video overlay graphics is not to be found anymore.
27043 is now in reviewing stage
Posted to the Development list July 12, not a word from the moderator. Got confirmation mail instantly though:
"Your mail to 'Development' with the subject
Puzzled by desktop development priorities, Mac OS specifically
Is being held until the list moderator can review it for approval.
The reason it is being held:
Post by non-member to a members-only list
Either the message will get posted to the list, or you will receive
notification of the moderator's decision. If you would like to cancel
this posting, please visit the following URL:"
Did you subscribe to the mailing list ?
Ah. Sorry, no. I read it as if I would get notified whether the post would be accepted or not. I see that's not the case.
However, the post is nowhere to see in the archive listing (latest entry July 16): http://lists.qt-project.org/pipermail/development/2013-July/date.html
So. After realizing that anonymous posts are ignored (not showing up in mail archives at least), I signed up for the Development list and posted my thoughts. But, seems like no one is interested in discussing this.
I guess contacting Digia is the last resort.
You might have missed "this link":http://qt-project.org/groups/qt-contributors-summit-2013/wiki/Qt_Mac_Planning that might be of interest from the mail entitled "QtCS Mac session report"
Thanks - I did indeed miss it! Still, I think much of it is a disccussion that should have been there before Qt 5.0 went out of beta. Hence my concern about priorities.
And finally - response from the list :-)
Yes, and I responded too :)
I saw it, great!
So, you've made the decision to stick with 4.8 until 5.x offers the same features, as I understand it. I think I'll do that as well.
All right. I lied; I did switch to 5.x in the hopes that things worked out. It didn't - speaking 5.2 now. Still no MacExtras, plus new showstopper bugs. I'm going back to 4.8.5 hoping that at least some of the previous bugs has been fixed.
Also, I decided to finally write a letter to Digia. Raising my concerns on the mailing list did not seem to have any effect. Here goes:
I switched from the back then Qt 4.8.4 to Qt 5.0 already in the beta stage, happy to see that some of the Widget problems on the Mac platform had been fixed - several issues regarding the list widgets, a non-native way of showing QToolButtons in a Preferences window, plus more that has slipped my mind at this point. Furthermore, the promise of better native widget handling, faster response times and goodies like JSON parsing support attracted me enough to make the jump, believing that the QtMacExtras support would be just around the corner.
However, the framework is now at version 5.2. There is still very, very sparse support for QtMacExtras. The unified toolbar, an important UI feature for many professionally looking Mac applications is supposed to be in QtMacExtras, but it’s not. Neither is access to native widgets, again a must to obtain a certain standard in the Mac OS UI. Segmented buttons, native rounded search widgets - inaccessible as a non Cocoa developer.
Furthermore, the following reported bugs are showstoppers in my opinion, bugs which has been present since at least 5.1:
https://bugreports.qt-project.org/browse/QTBUG/component/19210 (Mac: Triggering a menu item with contextual QMenu often fails)
https://bugreports.qt-project.org/browse/QTBUG-35821 (Mac: Contextual menu hangs/won't close under certain circumstances; application relaunch is only resort)
https://bugreports.qt-project.org/browse/QTBUG-35820 (Mac: Contextual menu not closed when switching application)
In short: It’s still not possible shipping a Qt Mac application that behaves and looks like it’s expected, despite the passing of 3 minor versions.
Please don’t misunderstand me here - I think Qt is an amazing framework, and I am grateful for its existence. I can only imagine the huge effort it has taken to have come this far.
I can see there’s a lot going on development wise in the Qt project (QML, support for new platforms, new features I don’t even know about, restructuring), and that’s fantastic. But am I wrong when I’m claiming that the desktop platforms and the Widgets part of Qt is the “legacy” bits of the framework? If yes, I don’t understand why it seems to be having low priority - well, at least on the Mac. I can sort of accept that the issues above where part of a x.0 release, but not two minor releases later.
Please. Don’t forget the desktop platforms. Don’t forget the widgets. And please don’t forget the Mac.
As a user of the Qt Open Source version, I feel powerless - I don’t have the necessary Objective C/Cocoa skills to help fix the issues. All I can do at the current point is to move my code back to 4.8 (trivial, albeit time consuming), because I have no idea when an acceptable Mac version will surface. If I was a commercial license user, my situation would perhaps be better, but at the current rates it’s off limits for me at the moment. I am a single developer, and simply can’t afford the prices which are clearly targeted towards bigger corporations - and I know I’m not alone here (http://qt-project.org/forums/viewthread/9762).
As per above forum thread: Would a price segmentation perhaps be an idea? I’m pretty sure I’m not alone believing that Digia would actually make more money doing so. Count me in as a customer when that happens!
Jan Faroe, an otherwise happy Qt developer