Commit Graph

623 Commits

Author SHA1 Message Date
Richard Dale
eb51ca9165 * Add a Plasma::AppletScript::addStandardConfigurationPages() method that adds
standard pages to a configuration dialog such as the shortcuts one. In 
conjunction with standardConfigurationDialog() this will allow script engines
to use the same dialogs as C++ applets

svn path=/trunk/KDE/kdelibs/; revision=1013765
2009-08-20 18:19:44 +00:00
Aaron J. Seigo
1e7c17ae24 cleanups and another remove-before-deletion
svn path=/trunk/KDE/kdelibs/; revision=1012704
2009-08-18 01:05:37 +00:00
Chani Armitage
ae2378a8da some code cleanup
fix copyright
    always init a contextaction before trying to use it
    no more unexpected click-throughs
    contextAction() returns the plugin name instead of a pointer

svn path=/trunk/KDE/kdelibs/; revision=1012645
2009-08-17 22:31:18 +00:00
Chani Armitage
f0a68d537c make rightclick plugins possible
this makes rightclicks use the plugin configured for rightclick
and adds a new method to the plugin for when an applet is rightclicked
(we need a list of actions then that we can insert into the menu)
this also adds a signal for immutability and improves handling of
needs-configuring plugins

svn path=/trunk/KDE/kdelibs/; revision=1012639
2009-08-17 22:30:46 +00:00
Marco Martin
32ac2f11fb when an applet is in another applet return a constrained formfactor if
the parent applet is too little
popupapplet uses the parent size insted of the containment to decide the
switch between full and popup, in all normal cases parent is the
containment, except for the ugly applet in applet cases

svn path=/trunk/KDE/kdelibs/; revision=1008775
2009-08-08 11:34:49 +00:00
Aaron J. Seigo
a4b980b37b a little more paranoia around action access
svn path=/trunk/KDE/kdelibs/; revision=1004683
2009-07-30 18:13:01 +00:00
Marco Martin
85cb69d28f save the background hints in two vars when they are set, use the second
to restore the ones that were decided before the formfactor change. i.e.
no more need to set again and again the hints in formFactorConstraints

svn path=/trunk/KDE/kdelibs/; revision=1003180
2009-07-27 20:14:38 +00:00
Richard Dale
a3a97eec7d * Add Plasma/PluginApplet as another type of plasmoid service when making KTrader queries
svn path=/trunk/KDE/kdelibs/; revision=1002599
2009-07-26 14:20:31 +00:00
Aaron J. Seigo
51434fc5f1 list applets which have an X-KDE-ParentApp= entry in their .desktop file
svn path=/trunk/KDE/kdelibs/; revision=1002131
2009-07-25 05:00:27 +00:00
Richard Dale
f962a9c958 * Change the name of the initScriptExtenderItem to extenderItemRestored as it is less clumsy
svn path=/trunk/KDE/kdelibs/; revision=999251
2009-07-19 14:25:00 +00:00
Richard Dale
695168a4bd Add getters and setters for PopupApplet::widget() and PopupApplet::graphicsWidget()
for use in scripting languages. Add a initScriptingExtenderItem() signal for script
engines to connect to and call their versions of Applet::initExtenderItem()


svn path=/trunk/KDE/kdelibs/; revision=998323
2009-07-17 12:31:08 +00:00
Marco Martin
b73625fbfc don't mess with size policies that the applet could have set (still do
that on square aspect ratio, that's bad but the aspectRatioMode() is
kinda old cruft from pre-qgraphicswidget times..
BUG: 199921

svn path=/trunk/KDE/kdelibs/; revision=995461
2009-07-12 19:34:28 +00:00
Marco Martin
a3c54b201c move the status stuff into Applet, constify and also put a bit of apidox
(forgotten from the previous commit:))

svn path=/trunk/KDE/kdelibs/; revision=993912
2009-07-09 17:19:00 +00:00
Laurent Montel
22a3d92cdc const'ify
svn path=/trunk/KDE/kdelibs/; revision=992163
2009-07-06 11:49:01 +00:00
Aaron J. Seigo
759f47be25 * don't take address of temporaries
* reflect the "config can come from applet if it is parent" change in itemChange() as well
* add a few comments and make the code a bit easier to read in places

svn path=/trunk/KDE/kdelibs/; revision=989704
2009-06-30 18:09:27 +00:00
Marco Martin
c906b58d08 allow applet configuration and extenderitems config nested into the
group of another applet
this thing is possibly dangerous, so better plasma-devel is informed
CCMAIL:plasma-devel@kde.org

svn path=/trunk/KDE/kdelibs/; revision=989520
2009-06-30 13:32:40 +00:00
Aaron J. Seigo
a179a16a9e only close the desktop toolbox if the action is non-repeatable, which implies it's a fire-and-forget type of action such as something that triggers a dialog
BUG:198229

svn path=/trunk/KDE/kdelibs/; revision=988884
2009-06-29 01:22:58 +00:00
Marco Martin
ed562d82dd reposition the popup when the containment geometry changes
partially addresses 197522 (still have to manage cases where the view
just moves or the screen resizes without resizing the containment)
CCBUG:197522

svn path=/trunk/KDE/kdelibs/; revision=987082
2009-06-25 14:13:14 +00:00
Chani Armitage
fbb9239dda enforce security.
from now on, unsafe widgets won't show up in the screensaver's appletbrowser.

svn path=/trunk/KDE/kdelibs/; revision=986809
2009-06-25 06:44:01 +00:00
Petri Damstén
414b22f26b Do X-Plasma-DefaultSize resize in AppletPrivate::init
svn path=/trunk/KDE/kdelibs/; revision=984355
2009-06-20 15:58:59 +00:00
Marco Martin
eb7b8827e1 check for the view, crash--
(crash probably not reported on bz)

svn path=/trunk/KDE/kdelibs/; revision=984203
2009-06-20 13:00:48 +00:00
Aaron J. Seigo
27e83c08d8 refuse to destroy an applet before it's started; apparently there are some rather inventive people out there
svn path=/trunk/KDE/kdelibs/; revision=984116
2009-06-20 02:14:43 +00:00
Aaron J. Seigo
198c7cd970 when the background hints change, ensure we schedule an update; fixes the background of the folderview not being painted on first plasma start
svn path=/trunk/KDE/kdelibs/; revision=982099
2009-06-14 22:12:40 +00:00
Aaron J. Seigo
f8a69d0b45 call setupScriptSupport in the Applet's init()
svn path=/trunk/KDE/kdelibs/; revision=980825
2009-06-12 15:20:54 +00:00
Aaron J. Seigo
1e4a7ee457 sort these out so we can look at them later for possible streamlining
svn path=/trunk/KDE/kdelibs/; revision=979909
2009-06-10 18:28:17 +00:00
Aaron J. Seigo
4662d3d7cd erg, apparently i hit "x" on the way out of vim after testing but before commiting :(
svn path=/trunk/KDE/kdelibs/; revision=979519
2009-06-10 02:16:19 +00:00
Aaron J. Seigo
5dd5576d60 destroy the message overay proxy widget if it exists and we get rid of the message overlay
svn path=/trunk/KDE/kdelibs/; revision=979518
2009-06-10 02:12:29 +00:00
Aaron J. Seigo
968f969f89 if the popup is the extender, show the configuration overlay on the main applet
svn path=/trunk/KDE/kdelibs/; revision=977938
2009-06-05 16:23:48 +00:00
Chani Armitage
81244eb86a okay, make it const
svn path=/trunk/KDE/kdelibs/; revision=976922
2009-06-03 01:10:57 +00:00
Chani Armitage
2d2aef5930 isAllowed -> hasAuthorization
svn path=/trunk/KDE/kdelibs/; revision=976800
2009-06-02 17:25:30 +00:00
Petri Damstén
9511f6f429 Set catalog name for scripted plasmoids
svn path=/trunk/KDE/kdelibs/; revision=974548
2009-05-29 16:41:06 +00:00
Aaron J. Seigo
53d2c9970a make a config dialog even if the applet has a package and a config.xml but lacks a config.ui
svn path=/trunk/KDE/kdelibs/; revision=973264
2009-05-26 18:04:02 +00:00
Aaron J. Seigo
376de3b3b7 be more careful with our configChanged signals
svn path=/trunk/KDE/kdelibs/; revision=973255
2009-05-26 17:32:33 +00:00
Aaron J. Seigo
09e4b24817 make it possible to add custom (e.g. application specific) applet categories
CCMAIL:oszkar.ambrus@deri.org

svn path=/trunk/KDE/kdelibs/; revision=969430
2009-05-18 11:15:00 +00:00
Chani Armitage
bac10ee82b change X-Plasma-Requires-<foo> to be a string (Required/Optional/Unused) instead of a bool.
now I can tell the difference between something that will only use a feature when allowed, and something that doesn't care about that feature at all.

svn path=/trunk/KDE/kdelibs/; revision=967779
2009-05-13 23:28:00 +00:00
Aaron J. Seigo
ec65d08748 SVN_SILENT: random ws improvements made while debugging various issues
svn path=/trunk/KDE/kdelibs/; revision=966511
2009-05-11 09:32:19 +00:00
Marco Martin
359dc82a14 when the applet is busy can still be interacted with the mouse
svn path=/trunk/KDE/kdelibs/; revision=964935
2009-05-07 17:13:17 +00:00
Chani Armitage
233e220ad9 safer way of creating actions, according to mjansen
svn path=/trunk/KDE/kdelibs/; revision=963095
2009-05-03 22:13:05 +00:00
Chani Armitage
c756fd29c4 configurable keyboard shortcuts
svn path=/trunk/KDE/kdelibs/; revision=963051
2009-05-03 20:22:14 +00:00
Aaron J. Seigo
20f309487d add generic script package support for included translations
svn path=/trunk/KDE/kdelibs/; revision=962208
2009-05-01 18:31:14 +00:00
Aaron J. Seigo
b8e1aab84d use the Categories again, but mark the known ones for translation. all unknown categories will get relegated into the misc category
svn path=/trunk/KDE/kdelibs/; revision=962198
2009-05-01 18:03:13 +00:00
Aaron J. Seigo
0b5c4e1947 use Keywords instead of X-KDE-PluginInfo-Category so we can be translated and even support multiple categories!
svn path=/trunk/KDE/kdelibs/; revision=961933
2009-05-01 05:36:50 +00:00
Aaron J. Seigo
8ca16ac404 assigning the variable is a good, he says to himself.
svn path=/trunk/KDE/kdelibs/; revision=960162
2009-04-28 02:21:49 +00:00
Aaron J. Seigo
8587298f41 connect the activate() signal sooner
svn path=/trunk/KDE/kdelibs/; revision=959934
2009-04-27 15:23:53 +00:00
Aaron J. Seigo
3c240aa807 append a '/' if needed
svn path=/trunk/KDE/kdelibs/; revision=959336
2009-04-26 03:15:25 +00:00
Aaron J. Seigo
d4c7994472 allow loading applets from packages directly
svn path=/trunk/KDE/kdelibs/; revision=959317
2009-04-26 00:43:20 +00:00
Richard Dale
4bb4a0839e * Allow scripting PopupApplets to be created if the metadata.desktop for the
applet has a 'ServiceTypes=Plasma/PopupApplet' line

CCMAIL: kde-bindings@kde.org

svn path=/trunk/KDE/kdelibs/; revision=958044
2009-04-23 10:54:45 +00:00
Aaron J. Seigo
7df3fb6228 don't bother making or destroying busy widgets/overlays if we're already in the right busy state
svn path=/trunk/KDE/kdelibs/; revision=954122
2009-04-15 07:29:23 +00:00
Aaron J. Seigo
8620a462f4 moc it up
svn path=/trunk/KDE/kdelibs/; revision=951385
2009-04-09 06:07:33 +00:00
Aaron J. Seigo
43e5ee5d15 correct slots
svn path=/trunk/KDE/kdelibs/; revision=951381
2009-04-09 05:57:57 +00:00
Aaron J. Seigo
89b70374c3 abstract the bit of data engine management code out into a small class that the private classes can then subclass, and add dataEngine(const QString &) to Wallpaper
svn path=/trunk/KDE/kdelibs/; revision=947636
2009-03-31 23:51:52 +00:00
Aaron J. Seigo
9c6bd76035 remove some old code from when creating the toolbox created the actions and custom containments never had toolbox; that was an implementation detail that no longer fits the definitions (e.g. custom containments can now have toolboxes if they so wish)
svn path=/trunk/KDE/kdelibs/; revision=943974
2009-03-24 18:50:18 +00:00
Aaron J. Seigo
6d98e6f2aa protect against crashing / interupted plasma exit with global shortcuts
BUG:184042

svn path=/trunk/KDE/kdelibs/; revision=943557
2009-03-24 02:07:20 +00:00
Marco Martin
71dfaf6ac8 draw on _own_ contents rect
svn path=/trunk/KDE/kdelibs/; revision=938463
2009-03-11 22:06:12 +00:00
Chani Armitage
9bc37a9cd1 oops! how'd that sneak in?
if you were getting ambiguous shortcuts trouble it'll go away again now.

svn path=/trunk/KDE/kdelibs/; revision=936506
2009-03-07 19:50:15 +00:00
Marco Martin
919796da14 0 opacity with the busywidget
busywidget always on the icon rather in the popup

svn path=/trunk/KDE/kdelibs/; revision=936025
2009-03-06 18:21:59 +00:00
Chani Armitage
d1fa9d361b (hopefully) temporary fix for shortcuts.
this could interfere with plasma-mid, because it assumes one view per window
but it's the best we can get until we can use real QGraphicsWidget action stuff

svn path=/trunk/KDE/kdelibs/; revision=935758
2009-03-06 05:22:08 +00:00
Marco Martin
d43926b2ca add stretch factors again
svn path=/trunk/KDE/kdelibs/; revision=935558
2009-03-05 16:14:34 +00:00
Marco Martin
fff4b03ec1 set the pointer to 0
svn path=/trunk/KDE/kdelibs/; revision=935531
2009-03-05 14:07:24 +00:00
Marco Martin
754b8d34c3 paint the busy widget always square
use overlay widget to show the busy widget, duplication--

svn path=/trunk/KDE/kdelibs/; revision=935520
2009-03-05 13:05:12 +00:00
Chani Armitage
5332b1edc8 security constraints can be defined now, whee
svn path=/trunk/KDE/kdelibs/; revision=935220
2009-03-04 17:05:51 +00:00
Marco Martin
5a2a47f473 now message overlays are in popup of popupapplets :)
duplication with spinner code still has to be merged

svn path=/trunk/KDE/kdelibs/; revision=934846
2009-03-03 22:23:42 +00:00
Artur Duque de Souza
d0205d92b3 Changes inside Plasma::Applet to test if we have a popup
and if this is true, if we should use widget() or graphicsWidget()
to show the BusyWidget.


svn path=/trunk/KDE/kdelibs/; revision=933444
2009-02-28 22:52:17 +00:00
Aaron J. Seigo
6bae773c79 if the config dialog is still around, delete it when the applet goes down.
svn path=/trunk/KDE/kdelibs/; revision=930709
2009-02-24 02:34:57 +00:00
Aaron J. Seigo
830a1d19dd give access to the standard config dialog to script engines that care to use it
svn path=/trunk/KDE/kdelibs/; revision=930708
2009-02-24 02:32:48 +00:00
Marco Martin
d86a36efa1 little tweak to the overlay look
svn path=/trunk/KDE/kdelibs/; revision=930624
2009-02-23 22:10:30 +00:00
Marco Martin
4b8bebf239 permit locked containments to move, should fix a zui breakage
(ContainmentPrivate::positionContainments should always be permitted)

svn path=/trunk/KDE/kdelibs/; revision=930442
2009-02-23 13:48:04 +00:00
Marco Martin
ae80ec1806 it's dangerous to access config() there, for now let's try to use just
the applet id as deterministic seed, let's see if it will have seemingly
random enough results

svn path=/trunk/KDE/kdelibs/; revision=928015
2009-02-18 19:47:32 +00:00
Ambroz Bizjak
a27a09fefc Fix regressions introduced by 914887.
On the other hand, Corona::addItem indirectly calls Containment::itemChange,
which ends up calling AppletPrivate::mainConfigGroup, which then creates a config
group in the wrong file (plasmarc) because isContainment was not set.
This also caused a regression where removed applets reappeared on next plasma run.

Fix:
Manually set isContainment before adding the item to the corona, then
call setIsContainment with a new argument to force the initialization.


svn path=/trunk/KDE/kdelibs/; revision=927886
2009-02-18 13:55:18 +00:00
Marco Martin
699b688de7 don't try to access config here if we don't have a containment, one
cause less to have destroyed config files (we should find a better
solution for overlays)

svn path=/trunk/KDE/kdelibs/; revision=927611
2009-02-17 22:06:30 +00:00
Marco Martin
0ee39c6ac2 better paint of the overlay
svn path=/trunk/KDE/kdelibs/; revision=927520
2009-02-17 19:07:47 +00:00
Chani Armitage
499fd451b4 make it possible to exclude categories from the appletbrowser
svn path=/trunk/KDE/kdelibs/; revision=925892
2009-02-14 13:28:25 +00:00
Chani Armitage
b0e0bb161a I forgot to forwardport that security fix from 4.2 >.<
svn path=/trunk/KDE/kdelibs/; revision=923421
2009-02-08 18:31:43 +00:00
Marco Martin
05577817bf make a new constructor with arguments to make possible for non-plugin
scripted applet to have arguments and a new accessor to have the applet
arguments at any moment

svn path=/trunk/KDE/kdelibs/; revision=923308
2009-02-08 15:24:56 +00:00
Marco Martin
9a905cd11b appear and disappear animation for the message overlay
svn path=/trunk/KDE/kdelibs/; revision=921039
2009-02-04 11:39:22 +00:00
Marco Martin
2046c01a29 messagebox that displays as an overlay over the applet.
it has optional buttons  or can be shown/closed programmatically by the
applet implementation

svn path=/trunk/KDE/kdelibs/; revision=920367
2009-02-02 19:39:41 +00:00
Alexis Ménard
ef4b6c7187 Add an appletDestroyed signal instead of catching the destruction in containments with qobject destroyed signal.
THis fix errors because we give an invalid pointer to public appletRemoved signal.

svn path=/trunk/KDE/kdelibs/; revision=917619
2009-01-28 07:58:17 +00:00
Christophe Giboudeaux
ae301b3718 kaction.h is already included. Just remove the extra ones
svn path=/trunk/KDE/kdelibs/; revision=917529
2009-01-28 00:12:02 +00:00
Cédric Borgese
1b12af86cc Fix compilation : camel case includes of kdelibs headers are not accessible while building kdelibs.
svn path=/trunk/KDE/kdelibs/; revision=917525
2009-01-28 00:01:15 +00:00
Chani Armitage
958cc6e953 -fix settings shortcut
-QAction->KAction
IMPORTANT: if you need to do things to the keyboard shortcuts of kactions (which means all of plasma's standard actions from now on), make sure you're using a KAction* and not a QAction*

svn path=/trunk/KDE/kdelibs/; revision=917435
2009-01-27 20:50:34 +00:00
Aaron J. Seigo
948215e476 unecessary
svn path=/trunk/KDE/kdelibs/; revision=916811
2009-01-26 03:15:09 +00:00
Marco Martin
bb8c603060 moved the activate() signal chaining from applet to containment
svn path=/trunk/KDE/kdelibs/; revision=915940
2009-01-24 10:47:35 +00:00
Marco Martin
b743c9fa35 applets Z orders can be negative too
svn path=/trunk/KDE/kdelibs/; revision=915762
2009-01-23 18:07:20 +00:00
Marco Martin
02d5bb8025 when an applet emits activate() the containment emits it too
svn path=/trunk/KDE/kdelibs/; revision=915759
2009-01-23 18:06:04 +00:00
Aaron J. Seigo
3b547e427b inversion of logic
svn path=/trunk/KDE/kdelibs/; revision=915490
2009-01-23 07:38:04 +00:00
Marcos David Dione
9eab58a6b2 make plasma applets yield space for greedy applets.
svn path=/trunk/KDE/kdelibs/; revision=915261
2009-01-22 16:49:45 +00:00
Aaron J. Seigo
72d632a234 this started out as a self contained patch just to merge two actions, but rapidly got out of hand ;)
* default to no config interface for containments
* merge the Appearance Settings and Configure actions for containments
* be even more careful with about-to-be-deleted widget (d->transient) including giving them a fake-but-valid scratchpad of a KConfigGroup if requested after deletd
* replace some method calls with direct access to the private members

svn path=/trunk/KDE/kdelibs/; revision=914890
2009-01-22 00:00:16 +00:00
Chani Armitage
0f3f06f024 all plasma shortcuts are emacs-style now, starting with alt-d, to avoid conflicts.
svn path=/trunk/KDE/kdelibs/; revision=914295
2009-01-20 19:38:45 +00:00
Aaron J. Seigo
ce8a3e3ed7 the true default to setHasConfigurationInterface actually needs to call the setter method as that sets up the action
svn path=/trunk/KDE/kdelibs/; revision=913908
2009-01-20 03:12:08 +00:00
Aaron J. Seigo
65268e77d4 by default, applet scripts get the generic config dialog
svn path=/trunk/KDE/kdelibs/; revision=913900
2009-01-20 02:11:01 +00:00
Aaron J. Seigo
e5d42d17b7 move the default value of setHasConfigurationInterface to the ctor now that i have time to comb through all our widgets
svn path=/trunk/KDE/kdelibs/; revision=913792
2009-01-19 21:24:55 +00:00
Rob Scheepmaker
bfb771ddd8 Make all items persistent by default, even if still attached. This allows us to restore their position and their collapsed state.
svn path=/trunk/KDE/kdelibs/; revision=912127
2009-01-16 18:49:54 +00:00
Aaron J. Seigo
4bc508411a neat bug: changing Activity type while widgets are locked caused Appearances settings to be permahidden. chased out a few other ways to trigger this once that one was fixed, works nicely now.
BUG:180887

svn path=/trunk/KDE/kdelibs/; revision=911727
2009-01-16 00:39:07 +00:00
Marco Martin
831f2564d8 quite mega-patch:
add a new function FrameSvg::alphaMask() that lets define an alpha-layer
for the frame, that can be the frame itself or a mask- prefix
allow for overlay elements on frames that can do a nice
filigrane-effect, they can either be:
-fixed position at 0,0
-random position consistent across plasma runs (only supported for applet
backgrounds)
-tiled
-scaled

svn path=/trunk/KDE/kdelibs/; revision=910655
2009-01-13 21:46:07 +00:00
Aaron J. Seigo
fbd38ee3d9 some hopefully useful debug output
svn path=/trunk/KDE/kdelibs/; revision=909629
2009-01-11 22:35:51 +00:00
Chani Armitage
c11707b2ce apparently it's bad to compare to QSize()
svn path=/trunk/KDE/kdelibs/; revision=908661
2009-01-10 04:16:26 +00:00
Chani Armitage
ebfc550c11 a default size for scripted applets, because they aren't allowed to do anything themselves before init (and this is the one thing that *must* be done before init)
svn path=/trunk/KDE/kdelibs/; revision=908612
2009-01-10 00:33:38 +00:00
Aaron J. Seigo
6156b46110 tell the config loader to write its config as well during calls to save()
svn path=/trunk/KDE/kdelibs/; revision=907296
2009-01-07 20:34:34 +00:00
Aaron J. Seigo
be4c8c2c5e if an applet overrode configChanged (it is virtual), the keyboard shortcuts wouldn't get picked up; so move that all to a private slot and now configChangedcan be safely used instead of connecting up to the dialog signals yourself as an added bonus
svn path=/trunk/KDE/kdelibs/; revision=906175
2009-01-05 18:08:14 +00:00
Aaron J. Seigo
d4bb3c790a no need to focus an applet twice
svn path=/trunk/KDE/kdelibs/; revision=905312
2009-01-04 07:59:10 +00:00