[Interest] Is there a good alternative to the QML Controls in Qt6 for native desktop integration purposes?

Mark Gaiser markg85 at gmail.com
Fri Feb 25 00:21:45 CET 2022

On Thu, Feb 24, 2022 at 4:38 PM Volker Hilsheimer <volker.hilsheimer at qt.io>

> > On 22 Feb 2022, at 00:34, Mark Gaiser <markg85 at gmail.com> wrote:
> >>> On Mo, 2022-02-21 at 16:42 +0100, Mark Gaiser wrote:
> >>> Hi,
> >>>
> >>> I'm facing so many bugs in QML Controls in Qt6 (they used to be
> Controls V2 in the Qt 5.x
> >>> days) that I don't want to use them at all anymore. They are bugged
> beyond repair and
> >>> downright unusable for native desktop integration purposes.
> >>>
> >>> Is there another good open source component set out there that
> integrates with the
> >>> desktop. Specifically with Windows but preferably also with Linux (kde
> and gnome) and Mac.
> >>>
> >>> Using QWidgets should not be an alternative as it slows down
> development a lot. But given
> >>> the crap that QML Controls is makes me consider switching to QWidgets
> instead.
> >>
> >> On Mon, Feb 21, 2022 at 11:11 PM Bernhard Lindner <
> private at bernhard-lindner.de> wrote:
> >> Hi,
> >>
> >> QML is nice for basic applications but widgets is important for
> professional, technical
> >> and high-density applications.
> >>
> >> But that doesn't matter. From my point of view Qt stopped being
> developed as a desktop
> >> framework a long time ago. Other industries seems to have priority now.
> >
> > Well, it was nearly good enough in the Qt5 days with Controls V1.
> > All they needed was a better set of controls to accommodate mobile more
> and reduce complexity in V1.
> >
> > What they did - conceptually - with V2 was good.
> > But it seems like they just left it in alpha quality and call it "ok" to
> replace V1.. That was a mistake.
> > It needed much more development time to be a proper replacement.
> >
> > We're now like ~8 years past the introduction of the V2 set...
> > And it still has really severe bugs that just interrupt usability. 8
> years...
> > So I doubt it will be getting any better at all.
> >
> Hi All,
> Thanks for keeping it civilised.

Thank you for writing that insightful response! That's nice to read!

> Yes, Qt Quick Controls - and largely the entire Qt Quick framework - were
> originally designed for mobile and embedded platforms, and indeed, that
> shows when using them for the desktop.

It's not as simple as that.
In my view Qt went backwards with the version 6 release and QML support on
the desktop.
What was there before (Controls V1) in Qt5 sure had it's fair share of
bugs, true, but it was working very stable with relatively minor annoyances
to work around.
One should not remove something if the replacement isn't at least
reasonable on par with what was removed. I'm sure some of it is driven by
the maintenance cost of 2 component sets so with that in mind it did make
much sense to drop one. That being said, I don't think the current
components should be more than a labs project.

I’m happy that at least in The Qt Company we are now in a position that
> allows us to put more focus on the desktop, and that we are are able to do
> more than maintenance and catching up with what’s happening on the
> underlying platforms. That includes the journey of making Qt Quick Controls
> a great toolkit for the desktop as well. In Qt 6 so far we have had first
> implementations of the native styles - yes, those require more work; we
> have made a number of improvements to item views, including a TreeView now
> in Qt 6.3; a first set of standard dialogs is in Qt 6.2 and more are coming
> in 6.3. We have worked on some architectural issues that are problematic on
> the desktop, such as keyboard navigation and focus handling, and there is a
> fair amount of more work needed there as well.

That's good to hear :)
I do still care enough to want to use Qt with QML if it gets better.

> I’m not going to claim that all things will be wonderful any moment now;
> there’s plenty of work that needs to be done. But things do get better,
> both with Qt Quick Controls, and with Qt Widgets as well.
> What keeps confusing me personally is how few people in the community seem
> to find it interesting to contribute to either of our UI frameworks in Qt.
> If I take one of the QtWidgets issues that came up in this thread:
> "QTBUG-6864 is 12 years old, has 47 votes”. I sat down on Tuesday evening
> to check what it would take to implement hiding of rows in a QFormLayout;
> after a few hours I had a working implementation, which is right now on its
> way into the dev branch. The hardest part, as it so often is, was writing a
> unit test.
> Now, I understand that not everybody finds it fun to do that kind of thing
> on a Tuesday evening. But given the apparently high interest in this
> feature, that nobody seems to have tried to give it a shot in 12 years is
> really puzzling me. When Nokia acquired Trolltech, it didn’t take a crystal
> ball to see that the focus won’t be the desktop. And one answer to this was
> to move Qt under Open Governance so that anyone could contribute to Qt and
> make sure that it stays awesome also for domains that Nokia won’t care much
> about.
> Evidently, the people commenting in this thread care deeply enough about
> Qt on the desktop to participate in the discussion. And I suppose most of
> us on this list are software engineers, many perhaps for more reasons than
> to put food on the table. My question to you is: how can we make it easier,
> or more fun, or more motivating to contribute to Qt, and to help with
> making things better?
> There are quite a few reasons that make one reluctant to even try making a
patch. Some reasons why I won't even try to contribute are:
- I'm very much pro open source. The Qt contributor license agreement is -
at best - not very friendly. With that CLA in place I probably never
- Qt, in the name of easier continuous integration, made a module like
QtDeclarative monolithic. A win on your side. For me as a developer it's
now prohibitively complex to compile that module. I did that recently and
ran into issues. I had to open a bug report for it. We did manage
eventually, after a day of compiling.
- The Qt license fees (while i'm not affected directly) don't really make
me "want" to contribute.
- Qt is also trying it's utmost best on the site to promote the paid
version and makes the open source version "look" like it's a second class
download or even a trial of sorts. As I'm very pro open source, this part
- Qt treats the open source releases as second class. We - OSS users -
don't get an LTS release anymore, it's for the commercial customers only.
- An "apparent" lack of interest from Qt in QML for the desktop makes me
think "why would i care?"

Much of this is perception and that's grown over time to a feeling of "Qt
is doing really bad things".
Qt should lead by example. Show that it still cares and be positive about
it. Just look at the Qt blog posts and try to count the number of posts
that were dedicated to desktop usage. The windows 11 support one doesn't
count. You won't count more than a few in the last couple of years.

I could still like Qt with QML again. Right now it has a very nasty taste
to me and I don't enjoy working with it at all.
That could change if I see Qt change. Thus far it hasn't given me a reason
to think it would be better in the future. Your message is the first I see
that gives me a little bit of hope that it might actually be substantially
better in the near future.

> Volker
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20220225/4f500770/attachment.htm>

More information about the Interest mailing list