The outputOnly property allows to specify that the dialog should not
accept any input. Thus it's an output only window which supports click
through. This is obviously platform specific and so far it is only
implemented for the X11 platform using the shape extension.
The input shape needs to be set once the window is visible and thus
the functionality is bound to the visible changed signal. The code
ensures that the required shape extension version is present and only
fetches it once.
REVIEW: 115139
This removes the last dependency from plasma-framework on kde4support.
This change is a bit more involved than other kde4support removals because
QSharedPointer does not provide a count() method. I therefore reworked the code
to store the SharedSvgRenderer as a QWeakPointer in s_renderers, making it
possible to detect when the last one goes away by creating a QWeakPointer guard
in SvgPrivate::eraseRenderer().
REVIEW: 114912
Stop using classes from kde4support:
- KComponentData is deprecated, it will be using QCoreApplication::
applicationName() and QCoreApplication::applicationVersion(). Of course,
this means that the existing shells will have to be ported. I have no
problem with doing that port myself, if I'm told where to look into.
- Drop usage of KLocale, ported to QLocale
- Drop usage of KStandardDirs, ported to QStandardPaths
- Drop usage of KIcon, ported to QIcon
Furthermore, there's a module in src/declarativeimports/locale that IIUC
exposes KLocale bindings to QML. A specific plan to port it should happen
as well.
REVIEW: 113920
There's no need to make all the framework look for the QCA includes while
they're only being used by the remote part. It could possibly be made more
specific, but I don't think those are yet being used anyway.
Removes the find_package(Qt5Transitional) and does the proper
find_package(Qt5) with the list of modules.
Most of the porting is about using the Qt5:: targets.
REVIEW: 113345
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