QPA plugin like functionality in frameworks?
Martin Gräßlin
mgraesslin at kde.org
Tue Jun 23 07:42:40 UTC 2015
Hi framework-developers and packagers,
with two frameworks I'm currently in the need to have something like QPA. I
want to make it possible to provide windowing-system specific plugins for
frameworks using a private API. The need arises first of all in kwindowsystem
to support wayland [1]. To implement it we need a dependency to KWayland,
which is currently part of kde-workspace and not yet up to the quality and
stability levels needed to make it a framework. The second framework where I
need such functionality is kglobalaccel where kwin needs to take over a large
part of the functionality of the runtime to make it work on wayland at all.
I see the following possibilities to solve the problem:
1.Make it a private API without any ABI guarantee
2. Make it a public stable API with ABI guarantee
3. Make it a private API with so-version changes whenever the ABI changes
Option 1 is closest to what Qt's QPA does, but I think this would be a
nightmare for packagers.
Option 2 could result in a nightmare for developers especially in the plugin
infrastructure itself. With releases every month that could quickly end in
classes like KWindowSystemPrivate32 and result in an unmanageable runtime
check system.
Personally I think Option 3 is the cleanest solution. Would this be acceptable
for everyone? If yes are there any suggestions for where to install headers
to, for naming the libraries, etc?
Looking forward for your input,
Cheers
Martin
[1] And obviously also other windowing systems if distributions/OSes want to
add support for it.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20150623/36cf8129/attachment-0001.sig>
More information about the Kde-frameworks-devel
mailing list