83 Commits

Author SHA1 Message Date
Martin Klapetek
76186339f6 [libplasma] Add categorized debug output 2015-12-15 16:56:40 -05:00
Nick Shaforostoff
c7c2980f14 qstring optimizations
REVIEW: 126148
2015-11-27 20:03:48 +00:00
Marco Martin
84fc7672f6 introduce appletCreated signal
appletCreated is different from appletAdded because it gets
emitted only when the user explicitly creates one, so not in
case of an applet migrating and not during restore
needed by https://git.reviewboard.kde.org/r/125562/

REVIEW:125569
Change-Id: I1db9286beb160391c13f1aca0ac48ed490495ea2
2015-10-13 14:26:53 +02:00
Marco Martin
ea924b1469 port libplasma away from sycoca as much as possible
this ports most of libplasma away from sycoca, using instead
a combination of KPluginLoader and KPackage::PackageLoader instead
(so eventually using their own little caches instead of the
global sycoca cache)
a kservicetypetrader call is left in the loading of
containmentactions since is the only way to make an older
workspace still work, but is only a fallback, so containmentactions
in plasma-workspace can be ported eventually as well

Change-Id: Ie9579c3e01284f6d97043e22d01bbe63d3c3f45a
REVIEW:123626
2015-05-07 16:26:37 +02:00
David Edmundson
d9dd89890a Save a lookup in containmentActions
Also fixes an (arguably invalid) coverity warning

Change-Id: I1eebd475131b540517a7964c4ea9ec057a18c26f
2015-03-24 12:05:21 +01:00
Marco Martin
37b34711d8 make sure applets are sorted by id
As with containment, make sure Containment::applets()
is always sorted by id, to have the least sursprises possible

it adds a test

Change-Id: Ib1aeeff7c70bb6969b32b2fef8557889a43edf09
2014-09-15 17:55:36 +02:00
David Edmundson
31c1fcc50e Do not leak containment actions
REVIEW: 119341
2014-07-17 18:49:50 +02:00
Marco Martin
188d131d77 make the uiloaded tests pass
work in case of every order the various applets and containments emit uiready
REVIEW:119284
2014-07-15 10:16:10 +02:00
Aleix Pol
dac1d8f265 Figure out why my plasma wasn't notifying the startup
Make sure AppletPrivate::uiReady is set in applet_p.cpp when we report that
the ui is ready.
Make sure that if we loop through all the containments and they're all
ready, we emit that it's done.

So far, Corona::startupCompleted was never emitted.

REVIEW: 119220
2014-07-14 13:23:20 +02:00
Aleix Pol
f5f96c1390 Remove unneeded casts
They're all because we're accessing the d-pointer of the parent class (!),
we can access it without casting.
2014-07-09 18:20:32 +02:00
Aleix Pol
596dc7523d Prefer inner scopes
Don't request data until we're going to use it.
Don't emit about config changes if config doesn't change
2014-07-08 01:47:43 +02:00
Aleix Pol
e1051994ad Ensure that the containment's corona is properly calculated.
The used corona is either the containment's parent or, in case the parent
is an applet, it's containment's corona. With this change we ensure the
proper corona is always found.
This change requires screenContainment to be able to walk through the
object tree in case it's not a containment directly managed by it.

BUG: 334500
2014-06-17 16:02:08 +02:00
David Edmundson
7ea8e24584 Remove more unused QApplication includes 2014-06-04 18:57:18 +02:00
Marco Martin
2d94312f97 support config for applets children of applets 2014-05-07 13:09:35 +02:00
David Edmundson
4ce14a1654 Remove duplicated ConfigLoader
This moved to KConfigGui as KConfigLoader.

Use of private KConfig API in Service had to be ported to use only
public method.

REVIEW: 117784
2014-04-26 17:10:13 +02:00
Kevin Ottens
72ba7b4146 Apply the astyle-kdelibs script 2014-04-26 01:48:37 +02:00
Marco Martin
47dfda75c0 introduce the signal Corona::startupCompleted()
when emitted we are sure all containments *graphics objects*
 have been created
2014-04-22 14:58:12 +02:00
Marco Martin
18f54dff73 make possible for containments to run as applets
take into account the slightly different behaviour needed when containments such as folderview act as a normal plasmoid
BUG:333320
2014-04-14 14:03:49 +02:00
Marco Martin
7e3b2ae8af move the applet configScheme to the new group
after migration
2014-04-10 20:41:34 +02:00
Marco Martin
10f0dc51b9 don't emit activate on reactToScreenChange
this makes the delete dialog *not* freeze palsma
2014-04-08 19:47:50 +02:00
Marco Martin
e27a2512af make :screen() not crash if is child of an applet 2014-02-21 11:13:14 +01:00
Marco Martin
50a584d0bc rename Applet::activate() with Applet::activated()
activate() is a name that suggests a slot more than a signal
2014-02-14 14:40:53 +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
Marco Martin
35b43f097e remove some references to graphicsitems 2013-12-24 12:35:24 +01: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
Marco Martin
800e5ec91c use the ctivity class and Kactivities
just building, issues with linking with kactivities, not used yet
2013-10-16 21:01:39 +02:00
Marco Martin
4767f3a8d0 emit appletadded only when manually added
when the containment's component.oncompleted is hitted, the applet list is guaranteed to be completely correctly restored from config

we may want to support both cases in the future to make writing containment easier
2013-09-20 18:18:46 +02:00
Sebastian Kügler
2817591bee kcoreauthorized.h -> kauthorized.h 2013-09-16 16:16:52 +02:00
Marco Martin
bfbeae9969 propagate containmentTypeChanged 2013-09-10 12:43:25 +02:00
Marco Martin
6bbc8cb420 propagate drawWallpaperChanged 2013-09-10 12:38:41 +02:00
Marco Martin
9a9ac9f9e5 containment actions config ui fully working 2013-08-26 21:22:06 +02:00
Marco Martin
0a3eae6806 correctly show configuration ui
but kded5 goes berserk when it gets closed
2013-08-26 17:50:17 +02:00
Marco Martin
902f98ed6e make sure the plugin config gets restored 2013-08-14 15:13:35 +02:00
Marco Martin
834f73a101 fix loading of containmentactions plugins 2013-08-14 14:09:01 +02:00
Marco Martin
04650605e5 don't emit uireadychanged if not changed 2013-08-12 13:38:31 +02:00
Marco Martin
8750d01f40 move the tracking of uiReady into libplasma
doesn't still have nothing about ui, is completely bookkeeping, but is
easier to have it correct there
2013-08-09 21:51:13 +02:00
Marco Martin
5d4f1b381f load the wallpaper before setting the screen
we want the wallpaper showing before the plasmoids.
we still need to load the wallpaper only after a screen has been
assigned, but will be done after
2013-08-08 17:59:30 +02:00
Marco Martin
0ed6b09e85 remove relkeaseVisualFocus, was unused and not belonging to Applet
anymore
2013-08-08 13:37:36 +02:00
Kevin Ottens
0e590217f8 Port away from kdebug 2013-07-30 08:05:09 +02:00
Sebastian Kügler
946a800a7a Replace QAction with KAction in containment
With this commit, plasma-framework is free from (direct) usage of
KAction. \o/

Removes any left-over KAction includes and fw-declarations.
2013-07-10 01:59:39 +02:00
Marco Martin
13045faffa rename ItemStatus 2013-05-14 20:49:50 +02:00
Marco Martin
7761a995f2 rename ImmutabilityType 2013-05-14 20:27:32 +02:00
Marco Martin
c90e6d23cf rename Plasma::ContainmentType 2013-05-14 18:34:40 +02:00
Marco Martin
9b9fbf6eb9 get rid of Plasma::FormFactor 2013-05-14 18:19:33 +02:00
Marco Martin
e07600a83f Put all Plasma emums in a Types class
This makes possible to use them directly frmo QML
as a minus, is not pretty and requires tons of search and replace in old
c++ code
2013-05-10 19:29:13 +02:00
Stephen Kelly
d8258866f4 Fix build in debug mode.
It seems some plasma API has changed, so I just commented it out. It
can be uncommented by someone who knows what to change it to.
2013-03-16 12:19:54 +01:00
Marco Martin
4219697fcb remove Corona::defaultContainmentActionsPlugins() 2013-03-13 11:32:00 +01:00
Marco Martin
af6e538fa4 make the desktop scripting finally work
completely migrate to X-Plasma-ContainmentType from the desktop file, use it to set the containment type as soon as possible (in Containment::init())
in this way the desktop script can recognize panels as what they are immediately
2013-03-07 21:25:30 +01:00
Aaron Seigo
3edcbc51a3 better name for the method, and the setter will be replaced by package content 2013-03-04 13:51:13 +01:00