176 Commits

Author SHA1 Message Date
Sebastian Kügler
29cf8e22d2 Faster theme changes
Don't wait too long after the file changed, makes theme changes be
picked up half a second faster -- noticeable for the user.
2014-02-21 01:20:27 +01:00
Sebastian Kügler
d8ea983d45 Slightly faster lookup of cached theme elements 2014-02-21 01:19:58 +01:00
Sebastian Kügler
7fcb1b7889 Merge branch 'sebas/themeswitch2'
Conflicts:
	src/shell/panelconfigview.cpp
2014-02-17 17:59:32 +01:00
Martin Gräßlin
bada0c97ba Ensure that we can build without X11 or XCB
* X11 is optional dependency
* XCB is optional dependency
* Qt::X11Extras is only found if both X11 and XCB are found
* switch to HAVE_X11 instead of X11_FOUND in CMakeLists
* remove/fix custom added definitions
* use #if HAVE_X11 instead of #ifdef HAVE_X11 (that is always true)

REVIEW: 115698
2014-02-12 16:20:42 +01:00
Martin Gräßlin
31e301174a Ensure to not call X11 specific calls if we are not on platform X11
This fixes a bunch of possible crashy code when trying to run
applications linking plasma-framework on platform Wayland.

REVIEW: 115641
2014-02-12 16:20:04 +01:00
Aleix Pol
18473c9e9e Remove KRunner from Plasma-Framework
Have it as a separate KRunner framework instead
2014-02-11 18:03:06 +01:00
Sebastian Kügler
eebfb64d0a Merge branch 'master' into sebas/themeswitch2 2014-02-06 17:56:28 +01:00
Marco Martin
3858044d25 Merge branch 'mart/AppletAttached'
Conflicts:
	src/declarativeimports/core/dialog.cpp
	src/scriptengines/qml/plasmoid/containmentinterface.cpp
2014-02-06 13:16:11 +01:00
Marco Martin
3bb0e7d3d0 use the config of the applet parent of containment
that's the systray specific hack
2014-02-06 12:12:43 +01:00
Sebastian Kügler
585aa4998a noise-- 2014-02-06 04:00:39 +01:00
Sebastian Kügler
d9e43ff979 Be smarter about contrast effect reading
This commit allows the theme designer to just enable and disable the
effect (enable=true). If no color values are set, values are picked
based on the background color. This essentially restores the hardcoded
values in some other places, and makes them available as sensible
defaults to other themes.

Also, make sure colors are read before the effect is applied (as we need
the new bg color to decide whether it's light or dark).
2014-02-06 02:51:46 +01:00
Sebastian Kügler
5dd4b51151 Plasma::Theme gets API for KWS' background contrast effect
From its api docs:

This method allows Plasma to enable and disable the background
contrast effect for a given theme, improving readability. The
value is read from the "enabled" key in the "ContrastEffect"
group in the Theme's metadata file.
The configuration in the metadata.desktop file of the theme
could look like this (for a lighter background):

[ContrastEffect]
enabled=true
contrast=0.45
intensity=0.45
saturation=1.7
2014-02-06 00:56:50 +01:00
Martin Gräßlin
91e9e401f0 Include config-plasma.h before checking for HAVE_X11
Fixes compile warning since kwindowsystem.h doesn't provide HAVE_X11
any more.

Reviewed-by: Marco Martin
2014-02-05 11:10:53 +01:00
Marco Martin
517403096d port improve cache file dropping to plasma-framework
this ports revision c03052935b082 on kdelibs

improve cache file dropping

* fix regression: version the image cache file name
* version the svg elements
* drop old svg elements files
* respond to changes at runtime by watching the theme's metadata.desktop for changes
* move creation of the svg elements file into ThemePrivate::useCache()

REVIEW:115397
2014-02-04 12:06:09 +01:00
Marco Martin
362a5017b6 support a corona child of an applet
this is an ad-hoc thing for the systray, would be better not having something like that
2014-02-03 18:47:51 +01:00
Sebastian Kügler
91a861e3ef noise-- 2014-01-31 03:39:10 +01:00
Sebastian Kügler
e0fbf3473f Remove unused member 2014-01-31 02:25:25 +01:00
Sebastian Kügler
1c4f14c177 Remove some dead code 2014-01-31 02:06:09 +01:00
Sebastian Kügler
de7558e7f7 Use shared KDirWatch instance 2014-01-31 01:31:09 +01:00
Sebastian Kügler
ffeb585003 Rough version in which theme switching works
This aligns the config files and groups, and adds a KDirWatch in the
shared Plasma::Theme private object in order to nofity when the
configured theme changes.

It's a bit rough, doesn't cover all corner cases and needs polishing.
2014-01-31 01:06:43 +01:00
David Edmundson
f5618db949 Remove unused property drawWallpaper
As suggested here: http://community.kde.org/Plasma/libplasma2/API_Review/Containment
kde-workspace doesn't use it.

REVIEW: 115224
2014-01-30 15:34:45 +01:00
Sebastian Kügler
a70dd8c299 theme.defaultIconSize moves to units.iconSizes.default 2014-01-23 01:47:42 +01:00
Sebastian Kügler
095469729a update spacing on font change
Also explain the sizing trick in the comment.
2014-01-21 23:46:50 +01:00
Sebastian Kügler
0a3a236dfb Merge branch 'sebas/theme' 2014-01-15 12:49:42 +01:00
Marco Martin
85070fc276 Merge branch 'mart/kdeclarativeNamespace' 2014-01-14 22:27:59 +01:00
Alex Richardson
afe17f1dca Use QExplicitlySharedDataPointer as the replacement of KSharedPtr
This should be slightly more efficient than the solution from e7e2eedd
which uses QWeakPointer and QSharedPointer

REVIEW: 114932
2014-01-14 19:41:04 +01:00
Marco Martin
92fe107329 put namespace around KDeclarative 2014-01-13 21:21:14 +01:00
Sebastian Kügler
ea2a4db7ab Move spacing, stylesheet and mSize into Plasma::Theme 2014-01-13 01:31:46 +01:00
Sebastian Kügler
a9b1f2c619 Most of iconSize moves to Plasma::Theme
The QQmlPropertyMap isn't moved with this commit, this needs a bit more
changing, so we do a separate one for that, once the more trivial stuff
is moved out.
2014-01-12 20:10:19 +01:00
Sebastian Kügler
13242c8a5f Move smallestFont and defaultFont properties into Plasma::Theme 2014-01-12 19:33:56 +01:00
Aurélien Gâteau
e7e2eeddc0 Plasma::Svg: Replace use of KSharedPtr with QWeakPointer and QSharedPointer
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
2014-01-09 10:13:57 +01:00
Aleix Pol
eb83537f63 Not being able to load an applet is a problem important enough to be a warning 2014-01-07 13:48:00 +01:00
Martin Gräßlin
e50dbc413e Port EffectWatcher to XCB
Saves quite a lot of roundtrips to the XServer. Most important we
fetch the atom only once which means we don't have to refetch when
checking the property notify events.

REVIEW: 112445
2014-01-07 10:39:44 +01:00
David Faure
8b5834c28c Adapt to newer new ThreadWeaver includes (e3b4312fe9a2 in threadweaver) 2014-01-05 12:03:17 +01:00
Sebastian Kügler
160e97cbba Adapt to API changes in ThreadWeaver
Reviewed-by: Mirko Böhm <mirko@kde.org>
2014-01-05 02:10:24 +01:00
David Faure
e577f4e588 adjust for new (= old) kdnssd header prefix
Make sure to update kdnssd-framework first.
2014-01-03 14:45:59 +01:00
Marco Martin
84df832f5c Merge branch 'mart/modelsInDataEngine' 2014-01-02 11:05:20 +01:00
David Faure
9f6611b73d remove unused include 2014-01-01 14:19:01 +01:00
Marco Martin
98d8bacf2b Revert "remove unused typedefs"
This reverts commit 104e8d9e1fba2c1bade727dc1691365f93ff783b.
2013-12-24 14:05:08 +01:00
Marco Martin
80d4ba326e Revert "remove unused typedefs"
This reverts commit 104e8d9e1fba2c1bade727dc1691365f93ff783b.
2013-12-24 14:02:20 +01:00
Marco Martin
eb47805d72 DataContainer can carry a QAbstractItemModel aroun
same rules of sharing and memory management apply.
The model will be shared between all visualizations and deleted when nobody is connected to the source anymore
2013-12-24 13:51:20 +01:00
Marco Martin
104e8d9e1f remove unused typedefs 2013-12-24 11:28:49 +01:00
Christophe Giboudeaux
d71f581115 Remove unneeded includes 2013-12-19 15:23:02 +01:00
Àlex Fiestas
cddee3cbf2 Use KActionCollection::addAction instead of add<T>
I'm not sure for what reason this was changed but it is clearly wrong,
we don't want to create a new action but rather re-add (as the hack says)
the action we took before.

Fixes "Empty action" in toolbox.
2013-12-18 21:36:28 +01:00
Aleix Pol
32868d73d2 Revert "KDNSSD framework was renamed to DNSSD"
This reverts commit 493d19f362fafedcc73c161cc34e621da071eb15.

My bad, sorry guys
2013-12-18 18:26:00 +01:00
Aleix Pol
493d19f362 KDNSSD framework was renamed to DNSSD
Adapt to the change
2013-12-18 18:18:10 +01:00
Alex Merry
de868b6047 Fix build now DNSSD is KDNSSD 2013-12-18 00:05:04 +00:00
David Edmundson
a26913ccac Move screen management logic in ShellCorona
Previously shells, activities, shellcorona and corona all tried to
manage
which screen a containment was on.

This version moves all screen management into ShellCorona so we have a
central place for keeping tracking of containments, activities and
screens.
2013-12-16 15:30:13 +01:00
David Edmundson
ef58fdbf6f Remove Applet::Private::isContainment
Instead determine by introspecting if this inherits from Containment

REVIEW: 114405
2013-12-11 15:50:48 +01:00
Aleix Pol
6c82a1ee86 Reduce compiler warnings
Remove unused and deprecated headers
Port some K_GLOBAL_STATIC to Q_GLOBAL_STATIC
2013-12-09 16:50:18 +01:00