because Plasma::Theme (and Plasma::ThemePrivate indirectly) may be created
before QCoreApplication/QApplication instance by Theme::defaultTheme()
and application instance is required for QX11Info::display() to return
non-null (which KWindowSystem uses but has fallback in case it is null
in KWindowSystem::compositingActive())
note that KWindowSystem::compositingActive() returns cached value if
XFixes is available
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
`apt-file` search yeilds 221 files matching (8 packages provide such),
it is also unused by plasma even tho there are leftovers from support for it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
at the point where the application is about to exit it is not safe to even
access the global static (by calling Plasma::Theme::defaultTheme()) since
it will be deleted
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
by caching results and storing them in a hash the results should
flow faster, a limit should probably be set on this but for now
there isn't. exists() and realPath() now cannot be called without
object!
this will (most importantly) break some applets from kde-workspace
and could use a review + some cleanups (like headers inclusions,
variables declarations, etc.) but it's pretty much complete
for compatibilty reasons automoc4 support is not removed but it
shall be in the future. automoc4 has not been maintained for a
while (last commit is from 2011) and the stable release is from
2009.
CMake version >= 2.8.6 provides the functionality for mocking so
I see no reason to not make use of it.