libkwindowsystem in staging
Aaron J. Seigo
aseigo at kde.org
Sun Feb 19 15:34:08 UTC 2012
hi all...
there is a new library in staging: libkwindowsystem
it pulls in kdeui/windowmanagement/ and Plasma::WindowEffects as well as a few
x11 helper classes from kdeui.
these helper classes are public API in Platform 4.x but are only used by the
classes in libkwindowsystem. as such i've made them private.
i did duplicate one class from kdeui as a short term measure by making a copy
of the header and source file: KXErrorHandler. this is also used in
kdeui/util/kmanagerselection.cpp.
KSelectionWatcher and KSelectionOwner are rather x11 specific concepts on the
one hand .. and on the other they are only used by kde-workspace (so could be
moved into there easily enough) and KMenuBar in kdeui.
they are used in KMenuBar for global menu integration. however, as global menu
support is now in Qt 4.8 (and therefore will be in 5.0 as well) i'd like to
propose the following:
* KMenuBar loses the KDE-specific implementation; this also cuts the dependency
on KSelectionOwner/Watcher completely in kdelibs
* move kmanagerselection.h/cpp into libkworkspace in kde-workspace for the 4.9
and use that in kde-workspace (pre-porting for Frameworks 5 :)
* remove kmanagerselection.h/cpp and kxerrorhandler.h/cpp from kdeui in
frameworks branch
thoughts / input / objections?
as for the "definition of done" progress for libkwindowsystem the following are
done:
No dependency on kdeui or kdecore
Modularized CMakeLists.txt (afaik, anyways :)
Does not install any Find*.cmake modules itself
All Find*.cmake modules needed by the framework and used also by other
frameworks have been upstreamed to extra-cmake-modules (via the kde-
buildsystem mailing list) or directly to cmake (via the cmake list)
Follows the policy on directory organization
Has an appointed maintainer
Maintains source compatibility over kdelibs (modulo the above unused
classes becoming private)
not done are:
Installs a Config.cmake file for itself (due to not yet being clear on how
this should look in the frameworks dir; i've done this for libkactivities, but
i need to find out what, if anything, has changed there)
Unit tested (pending upcoming work by mgraeslin)
Does not use any Q_WS_* defines. (pending upcoming work by mgraeslin)
--
Aaron Seigo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20120219/70ed4e5c/attachment.sig>
More information about the Kde-frameworks-devel
mailing list