New qquick item in PlasmaCore to render a live updating window
thumbnail. The implementation uses XCB to redirect the specified
window using the composite extension. This means a running compositor
is not required. Through the damage extension the item tracks changes
to the window and triggers updates of the texture. Furthermore the
item tracks geometry changes of the window to recreate the window
pixmap.
If the pixmap of the window is valid, a texture is generated from it
using the glx texture from pixmap extension. For this a new optional
dependency for glx is added. On platform where glx is not available
(e.g. Windows, Linux with OpenGL ES) this will not get compiled and
the window's icon is used instead as a fallback.
REVIEW: 112142
Uses the new components syntax of FindXCB. So far plasma frameworks
only need the XCB component and that one is optional just like XLib.
The find xcb is moved to the toplevel CMakeLists.txt together with
the find x11 and HAVE_X11 gets set only if both X11 and XCB are found.
REVIEW: 112499
plasma-frameworks doesn't seem to build with 2.8.10.1:
qt5/include/QtCore/qglobal.h:975:4: error: #error "You must build your code with position independent code if Qt was built with -reduce-relocations. " "Compile your code with -fPIC or -fPIE."
This is most probably related to all the target-property related work from Stephen in CMake 2.8.11.
Alex
Those components are required by some libraries. It seems to me that
this should be fixed elsewhere, but also it's not acceptable to have
modules that aren't compiling.
This reverts commit 7c5e2e49ae.
In KF5, C++11 is not to be assumed on all our platforms. So don't force
it from cmake. That said we have to make sure our code builds in both
case (C++11 available or not). I'll get in touch with the build.kde.org
admins to sort that out.
CCMAIL: ivan.cukic@kde.org
- Installs PlasmaConfig, FindPlasma, PlasmaMacros, etc.
- find_package Plasma works
- version set to 2.0.0, do we dare that?
This might bump into FindPlasma.cmake, which is installed by kdelibs,
and should be removed: it applies to Plasma 4.1 only and bails out,
since after that, we used the KDE4 libs find_package foo. Now we're kind
of going back to pre-4.2 times. :-)
Make it possible to install any type into any path prefix. We just add
an optional argument to also specify the type, so from now on installed
service files will not all be plasma-applet-<pluginname>.desktop, but
for example plasma-wallpaper-<pluginname>.desktop.
CCMAIL:plasma-devel@kde.org
I thin using the variables is safer, this way you are somewhat guarded against changes
in the names of targets, and a typo leads to an empty variable, instead to
"ld: cannot find -lkcoreaddons" which looks very much like a missing normal library
Alex
All cpp code moves into the src/ subdirectory, as the Frameworks policy
suggests.
Directory structure should now be in line with other, future frameworks.
kdelibs frameworks now installs a KDELibs4Config.cmake, which
can be searched more or less normally using
find_package(KDELibs4 NO_MODULE)
Preparing CMAKE_MODULE_PATH is no longer necessary.
KDELibs4Config.cmake does not anymore containg compiler or cmake settings,
so must now load these settings:
find_package(KF5... CMake Compiler)
Alex
- remove usage of old macro_*() macros
- testing for kdelibs_SOURCE_DIR doesn't make sense here, this is only set inside a project(kdelibs)
- don't append a subdir to ${CMAKE_PREFIX_PATH}, this is a list of directories
- don't add ${CMAKE_SOURCE_DIR}/cmake/modules/ to CMAKE_MODULE_PATH, this directory doesn't exist
Alex
- add MODULE and NO_MODULE keywords to find_package() to make it obvious what we are looking for
- add kdeqt5staging include dir
- add plasma/includes/ to the includes dirs (why was this missing ?)
Alex