[Development] Fwd: A simple analysis of apps using qtbase's private headers
pcman.tw at gmail.com
Fri Jan 22 15:57:06 CET 2016
---------- Forwarded message ----------
From: PCMan <pcman.tw at gmail.com>
Date: Fri, Jan 22, 2016 at 10:56 PM
Subject: Re: [Development] A simple analysis of apps using qtbase's private
To: Lisandro Damián Nicanor Pérez <perezmeyer at gmail.com>
I'm one of the LXQt developers so I can answer part of your questions.
On Fri, Jan 22, 2016 at 11:15 AM, Lisandro Damián Nicanor Pérez <
perezmeyer at gmail.com> wrote:
> I did a **very** simple analysis of apps packaged in Debian using qtbase's
> private headers. My main concern was to see if we (Debian) can avoid
> having to
> rebuild them every time we push a new version of Qt to our archive.
> What I've found seemed interesting so I decided to share it here.
> The following three have something in common: they are all apps coded for
> Chinese people. I've been told that they need QPA's private stuff in order
> have proper input systems, but I haven't checked.
> * fcitx-qt5 1.0.5
> * gcin 2.8.4
> * hime 0.9.10
> If people go to the extent of using private headers for this maybe it's a
> good reason to (somehow) make that part of the API public. It might make a
> difference for chinese coders.
> The following three seems to be using at least qpa/qplatformtheme.h
> * KDE's frameworkintegration 5.16.0
> * libqtxdg 1.3.0
> * lxqt-qtplugin 0.10.0
> Maybe for being able to create it's own theme?
Yes, but it's not only for themes.
Libqtxdg uses Qt private headers to woakround bugs in QIconTheme and QIcon.
Lxqt-plugin uses Qt private qpa headers to support customized themes and
make some desktop settings work correctly.
Our LXQt file manager pcmanfm-qt will be using Qt private headers qdnd_p.h
for workaround a regression bug of Qt 5.5 which breaks DND.
> And the rest for various reasons:
> * KDE's kdeclarative 5.16.0: code says to use QQuickImageProvider
> * KDE's kwin 5.4.3: qpa/qwindowsysteminterface.h
> * gammaray 2.4.0 I guess it needs to get into internal stuff.
> * musescore 2.0.2 An interesting false positive. It embeds Qt's code
> without a
> namespace so the resulting symbols files get catched by our tools and
> * qtcurve 1.8.18: private/qwidget_p.h (no further digging)
> * calibre 2.48.0: quite a lot of stuff, just saw it and left it there.
> That's all. I really hope someone finds it interesting.
> Never attribute to malice that which is adequately explained by stupidity.
> Lisandro Damián Nicanor Pérez Meyer
> Development mailing list
> Development at qt-project.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Development