Commit Graph

479 Commits

Author SHA1 Message Date
Aaron J. Seigo
63bce9d1b4 move all the prive code into private/; makes it much clearer with the division lines are
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=839792
2008-07-30 20:35:42 +00:00
Aaron J. Seigo
42018972e6 hand hover events more responsibly in containment and applethandle; another patch by ambro
(abro: one more solid patch like this and i'll be hitting you up to get an svn account of your own ;)

BUG:167551

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=838889
2008-07-29 00:07:57 +00:00
Sebastian Sauer
19e5356bf5 Don't crash if d->toolBox is NULL.
"plasmoidviewer desktop" works now too :)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=836717
2008-07-22 20:46:34 +00:00
Aaron J. Seigo
85275b25ea reposition the toolbox whenever changing our zoom state
BUG:166860

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=834951
2008-07-19 18:51:22 +00:00
Aaron J. Seigo
abf220d8db associate broken applets with the id so they will be removedable (automatically at next start, even)
BUG:166811

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=833967
2008-07-17 18:21:55 +00:00
Aaron J. Seigo
adbf92d5dc disconnect before deleting; we don't want to get informed of any changes from this point forward.
perhaps the cause of the "crash on lock" bug?
CCBUG:166802

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=833582
2008-07-17 05:56:52 +00:00
Aaron J. Seigo
92c7ffc9df * a const fix
* BIG WARNINGS TO AVOID FUTURE ERRORS

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=833500
2008-07-16 21:58:36 +00:00
Aaron J. Seigo
9fa78a4688 thought i committed this yesterday; apparently not.. safer handle clearing.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=833352
2008-07-16 17:51:58 +00:00
Alex Merry
cffda2ec3f Clear handles when we go immutable. Also remove an out-of-date TODO.
BUG: 166004

CCMAIL: panel-devel@kde.org
Should be backported.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=832059
2008-07-14 00:22:11 +00:00
Aaron J. Seigo
f81134ff97 correct save point for applets; now they don't get saved with a 0,0,0,0,0,1 matrix
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=830604
2008-07-10 20:20:37 +00:00
Aaron J. Seigo
6d5e0b18f5 fix various handle regressions, including:
* move applet or resize it then move with handle and it pops to a new location
* handles unhover too soon
* handles don't show on the correct side always
* handles are not visually associated well enough with the target applet
* icons are hard to see
BUG:166149

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=830264
2008-07-10 01:35:51 +00:00
Aaron J. Seigo
0e5f15dc50 * add Corona::addContainmentDelayed for more control on the Corona subclass side during default layout loading
* accept bad config objectsin Applet::save and Containment::save
* move some initialization code around to be more robust with external use (will make more sense in next commit to workspace/plasma/plasma)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828940
2008-07-07 02:16:08 +00:00
Aaron J. Seigo
9ccc9336a5 * prevent removing active containments (brute force mechanism: just ignore the request totally)
* select the correct containment for removal when zoomed out (will have isses on multi-screen; see FIXME)
* move containment destruction logic out of Corona; it really doesn't belong there
* remove the hack to not set focus on a containment when clicked as that doesn't seem to reliably trigger it for me here and it doesn't address the issue of a new containment still messing things up, so we really ought to have a generic solution instead of a slightly ugly hack

BUG:id=165670

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828906
2008-07-06 22:43:53 +00:00
Aaron J. Seigo
762be363ec rework the toolbox creation, containment type setting and isContainment setting code to make it resilient against when and where those properties are set
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828636
2008-07-06 10:03:10 +00:00
Aaron J. Seigo
6230340508 allow for customized panels; we only touch them for geometry management and nothing else
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828634
2008-07-06 09:49:23 +00:00
Aaron J. Seigo
be453f062b type and version setting so qstyleoption_cast works
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828146
2008-07-04 19:24:45 +00:00
Aaron J. Seigo
9e8629645a always connect the toolbox toggle signal to the containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828085
2008-07-04 16:45:34 +00:00
Aaron J. Seigo
92ee66d578 be extra sure that the applet has an entry in the config on being added so when we config sync we're guaranteed they are in there
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=827479
2008-07-03 05:46:25 +00:00
Marijn Kruisselbrink
21b148b963 change all ClassName::Private classes to ClassNamePrivate, and adjust friends accordingly; this makes plasma compilable with gcc < 4.2
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=826893
2008-07-01 18:56:43 +00:00
Aaron J. Seigo
5a7eaf2ca9 consintency in action naming, spotted by Richard Moore
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=826881
2008-07-01 18:23:39 +00:00
Aaron J. Seigo
09dcefccf8 add the zoom actions to all non-panel containments, but only add them to the toolbox by default for desktop containments
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=826349
2008-06-30 14:41:31 +00:00
Aaron J. Seigo
bd4c5669a8 respect immutability on panel creation; there's no way to add panels at runtime anymore, but at least this way the locking is respected if somehow one manages to do so.
BUG:165139

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=825672
2008-06-28 23:50:43 +00:00
Aaron J. Seigo
8a974f0f46 small changes that make the code more readable
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=823769
2008-06-24 03:16:33 +00:00
Aaron J. Seigo
b114545f24 don't accept drops hovered not right on us (how silly is it to have graphicsitems transparent to rejected drops?!)
BUG:164469

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=823313
2008-06-23 00:13:03 +00:00
Aaron J. Seigo
aa733dd6ee support multiple drag from applet browser and multiple drop on containment
someone went to all the trouble to make the pixmap painting cute for the multiple situation, but didn't do the actual drag bit =P
BUG:164342

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=821594
2008-06-17 22:20:14 +00:00
Aaron J. Seigo
9e1a1a0ed3 emit appletRemoved when moving an applet, too.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=821589
2008-06-17 21:54:43 +00:00
Aaron J. Seigo
659844e273 use the caching (!), don't crash if we get a 0 widget parameter
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=821186
2008-06-16 19:10:38 +00:00
Aaron J. Seigo
5c360d7651 just to prove that this doesn't make it any closer. i do like the window affinity though
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=821059
2008-06-16 09:01:26 +00:00
Aaron J. Seigo
738d0547a6 * be careful with contents of action lists and guard against null ptrs
* start/stop accepting drops altogether on immutability changes; this makes it a bit more difficult (though not completely impossible) for containment plugins to Get It Wrong

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=820251
2008-06-13 16:51:25 +00:00
Aaron J. Seigo
bdb635e3a8 don't accept drops that we don't understand or when we are immutable
CCBUG:163908

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=820230
2008-06-13 16:21:59 +00:00
Aaron J. Seigo
2157ab1356 geometry, not boundingRect. fixes the other remaining cause of looping when arranging multiple containments
BUG:163477

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=820061
2008-06-13 05:23:02 +00:00
Aaron J. Seigo
f9ac3edde5 get the geometry right
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=818650
2008-06-09 04:09:11 +00:00
Aaron J. Seigo
c9fcf43c43 i wonder if this fixes it; can the reporters test this for me, because it wasn't being triggered here, but i can see how it could be without this patch
CCBUG:163477

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=818638
2008-06-09 03:15:40 +00:00
Aaron J. Seigo
ccadeadaa2 try some slightly smarter arangement concepts
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=817970
2008-06-07 09:34:50 +00:00
Aaron J. Seigo
f1ce0ee124 safety in removing panels, aka "work around the inane requirement to first remove items from the scene before deleting them if they are a QGraphicsWidget and have a layout"
BUG:163205

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=816760
2008-06-04 19:04:34 +00:00
Aaron J. Seigo
3d45aae7fb more code clean ups
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=816745
2008-06-04 18:20:58 +00:00
Sebastian Sauer
cc80b06826 prevent assert if d->applets is empty and we compiled with debug enabled.
BUG:162742

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=816502
2008-06-04 02:44:54 +00:00
Chani Armitage
2048a57f54 *use standard qkeysequences for zooming
*also keep the ctrl-= for zoom-in so that people with US keyboards don't have to press shift

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=815524
2008-06-02 04:26:54 +00:00
Aaron J. Seigo
40e4b3e88e * global keyboard shortcuts for applets
* move the contents of setGeometry to itemChange and resizeEvent for greater reliability

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=815043
2008-06-01 02:13:53 +00:00
Kevin Ottens
402a4ed8b2 Don't use the same name for this slot than in Applet. Otherwise, the
wrong slot will get called when you remove an applet which also happens
to be a containment (like the analog clock for instance)...
In such a case we were simply leaking the applet, and it was still in
the layout.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=812153
2008-05-24 17:13:19 +00:00
Kevin Ottens
c3b5446a59 Since we're randomly changing public API, let's be consistent with Qt
instead. Use ToolBox everywhere, also for internals.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=812019
2008-05-24 12:25:56 +00:00
Aaron J. Seigo
bea0906806 finish yet another 4.1 feature gap: allow the user to select what to do on drop. the text is a bit lame for icon, it should be "link to file" or something similar but that string doesn't seem to be handy and we're in a string freeze =/ at least it works =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811949
2008-05-24 07:47:20 +00:00
Chani Armitage
e5230a3f3e stop calling it ToolBox - it's Toolbox, and the capitalization inconsistency is driving me nuts :)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811934
2008-05-24 06:34:08 +00:00
Chani Armitage
88260fabd2 'add activity' action returns
I just realised it was never disabled when plasma is locked, though. haven't yet decided what to do about that.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811919
2008-05-24 04:34:27 +00:00
Chani Armitage
3dcf445db4 convert the toolbox to use qactions. this makes the toolbox act a bit more reliably, makes some other bugs more annoying, and makes it easier to fix them.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811914
2008-05-24 01:48:36 +00:00
Marco Martin
bc1688ae41 when the view is not zoomed move the toolbox to avoid the panels
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811374
2008-05-22 20:22:28 +00:00
Aaron J. Seigo
26f7e83a53 give proper control over saving/restoring to the containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811211
2008-05-22 15:53:48 +00:00
Chani Armitage
7f822e8c8c SVN_SILENT: better comment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811016
2008-05-22 02:23:33 +00:00
Chani Armitage
81985d2b00 clicking an available desktop containment sets the view to that containment
now it's much easier to jump to the activity you want :)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=810614
2008-05-21 06:16:45 +00:00
Marco Martin
4c36d280c9 (hopefully) fixing the positioning of the desktop toolbox
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=810501
2008-05-20 21:29:31 +00:00
Chani Armitage
18a50b787d only do containment-style removal if it's *really* a containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=810132
2008-05-20 04:26:10 +00:00
Chani Armitage
ccde7ded20 replace Panel::remove() with Containment::destroy()
now I can remove some of the ten desktop containments I accumulated :)
oh, and the code is cleaner too, yay!

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=810129
2008-05-20 04:02:36 +00:00
Marco Martin
573f99e978 hides the panel toolbox when the whole desktop is locked
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809993
2008-05-19 20:49:44 +00:00
Rob Scheepmaker
8b20aab3fb Couple of improvements to applet drag&drop:
* Only move applet to toplevel window when overlapping other plasma views, ignoring other windows and such.
* Drag & drop now works reasonably well when using multiple desktop containments ('activities'), both when
  zoomed in as when zoomed out. Only a couple of issues remaining.
* Containment's addApplet function now cleans up the pointer to the applethandle in the preview containment,
  Avoiding some nasty crashes when moving applets between containments.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809841
2008-05-19 16:20:27 +00:00
Chani Armitage
732a7a1d72 opening the desktop toolbox on hover was never going to work perfectly, and would be a bit of a problem for touchscreens (they make the mouse jump instead of moving smoothly) - so it no longer happens.
the toolbox just lights up on hover now, and opens on click. it still closes on the hover leave event, though.
this makes the code a lot less hackish and should produce the least frustrating behaviour possible.
it's also a bit more like the panel cashew behaviour.
BUG:159520

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809497
2008-05-19 00:41:41 +00:00
Chani Armitage
b021102afe update lock icon along with lock text
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809376
2008-05-18 19:58:33 +00:00
Chani Armitage
1d8eb91e89 keyboard shortcuts.
the defaults are kinda lame right now, but I'm planning to do a lot more with this.
applet focus and the shorcut hooks work properly, however.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=808610
2008-05-17 03:39:24 +00:00
Marco Martin
d03f49e72f show the panel toolbox on the left when plasma starts with an RTL layout
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=806621
2008-05-11 20:58:49 +00:00
Dan Meltzer
f57cc1c623 Lotsa little ebn fixes.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805672
2008-05-09 05:32:15 +00:00
Chani Armitage
61ae3df3fc *Applet::destroy() now handles everything needed for removing an applet prettily and safely.
*removed Containment::Private::destroyApplet in favour of just calling Applet::destroy() directly.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805666
2008-05-09 04:43:21 +00:00
Alexis Ménard
987ca211c7 put the remove of the layout if the applet is removed in destroy function, then if we call
it from other place we will be sure the applet will be remove from the layout

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805590
2008-05-08 20:26:56 +00:00
Alexis Ménard
71f1d6f5cb fix our "not really remove applet" when remove applet in the panel/containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805373
2008-05-08 11:13:48 +00:00
Chani Armitage
2a6a5fa6db :%s/NotImmutable/Mutable/g
because double negatives hurt my brain.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805296
2008-05-08 04:26:52 +00:00
Marco Martin
4c1e5b8e9d New class called PanelController:
is a new QWidget shown when the user clicks on the panel toolbox, it's a
thing that will eventually replace the panel configuration dialog.
at the moment it has an add aplet and remove panel buttons.
it is possible to resize the panel by dragging the upper edge of the
panel controller and in the future will be provided a way to resize the
panel width and changing the position.
at the moment there is the known problem that the resize handle doesn't
work for vertical panel for now.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802932
2008-05-01 09:58:36 +00:00
Aaron J. Seigo
207968b217 resetConfigurationObject()->pimpl
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802892
2008-05-01 03:24:20 +00:00
Aaron J. Seigo
1847d60a1d API REVIEW: launchActivated -> releaseVisualFocus; more generic and a bit more obvious as to its purpose
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802286
2008-04-29 02:28:35 +00:00
Aaron J. Seigo
2dd5891029 with some intriguing grotesqueness internal to the library, we can simplify the API and remove location/formFactor from Containment and just use the ones in Applet; externally this is probably rather safer
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802277
2008-04-29 00:49:10 +00:00
Aaron J. Seigo
69524609a3 remove createLayout from Containment. now each containment will need to implement its own layouting. this is not so big a deal since FreeLayout is no longer needed to make applets behave properly. now panels can do whatever the heck they want.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802255
2008-04-28 23:00:08 +00:00
Aaron J. Seigo
b00807cee8 * containments should never have the applet background by default
* always call updateConstraints, not constraintsEvent directly to avoid unecessary multiple calls

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801817
2008-04-27 20:35:23 +00:00
Aaron J. Seigo
df1ba079e8 go back is isContainment. ActAs is just ugly ugly. i don't think anyone really gets confused over isContainment (e.g. confusing it with IsA ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801792
2008-04-27 19:05:06 +00:00
Davide Bettio
8cd95e4ae7 API REVIEW: updated containment to the new API (constraintsUpdated() -> constraintsEvent() + protected)
CCMAIL: aseigo@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801659
2008-04-27 11:13:43 +00:00
Davide Bettio
ff16201431 API REVIEW: constraintsUpdated() -> constraintsEvent()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801656
2008-04-27 11:04:43 +00:00
Marco Martin
694c822bb0 API reviews:
flushUpdatedConstraints()->flushPendingCostraintEvents()

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801443
2008-04-26 17:13:59 +00:00
Marco Martin
6d8a1752a7 API review:
isContainment(), setIsContainment() -> actAsContainment(),
setActAsContainment()
 set is protected

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801425
2008-04-26 15:52:48 +00:00
Marco Martin
0c283924be API reviews:
killed drawStandardBackground() and shadowShown()
now the two properties are merged in backgroundHints() and
setBackgroundHints() using the combination of BackgroundHints flags

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801282
2008-04-26 09:13:57 +00:00
Aaron J. Seigo
8cdde181c5 signal typos
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801237
2008-04-26 03:33:41 +00:00
Alexis Ménard
13f4fae5f3 +contentSizeHint -> died
+contextActions -> contextualActions 

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801150
2008-04-25 19:55:24 +00:00
Aaron J. Seigo
c5e0d52ac3 toggleDesktopImmutability -> pimpl
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801134
2008-04-25 19:15:50 +00:00
Aaron J. Seigo
4d6ab4bb1a * zoomRequested
* zoomIn/Out -> pimpl
* Plasma::ZoomDirection enumeration

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801132
2008-04-25 19:08:49 +00:00
Aaron J. Seigo
f50fad8cb9 * add setToolBoxOpen
* show/hide -> open/close

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801128
2008-04-25 18:49:27 +00:00
Aaron J. Seigo
a915bf7e6b * move containmentConstraintsUpdated to the pimpl
* move Containment::Private to it's own header (eventually subclass Applet::private?)
* have applet use Containment::Private methods to hide gory internal details ;)
* Toolbox -> ToolBox

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801127
2008-04-25 18:44:09 +00:00
Aaron J. Seigo
a3ad7dca00 launch activation sanity: added it back to Corona since it is PUI relevant (and not just desktop specific), move the signal to Applet and chain them so that Applet -> Containment -> Corona
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801102
2008-04-25 17:21:24 +00:00
Aaron J. Seigo
3e518b755a more private slots
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800877
2008-04-25 03:27:30 +00:00
Aaron J. Seigo
72db181c7c Phase -> Animator
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800875
2008-04-25 03:23:31 +00:00
Aaron J. Seigo
6e80fe4354 Phase becomes Animator
Animator becomes AnimationDriver

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800870
2008-04-25 03:11:59 +00:00
Aaron J. Seigo
39acf3e24d fix the signal
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800869
2008-04-25 02:56:37 +00:00
Aaron J. Seigo
6bff9ea245 * showAddWidgets() -> showAddWidgetsInterface(QPointF)
* private slots & methods ->pimpl & Q_PRIVATE_SLOTS

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800867
2008-04-25 02:53:35 +00:00
Davide Bettio
aa5f747305 API REVIEW: Phase -> AnimatorDriver
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800840
2008-04-24 23:21:17 +00:00
Aaron J. Seigo
04ad90006a don't try and position new applets within layouts ourselves, that's too Containment implementation specific. instead send the pos of the applet with the appletAdded signal and let containment subclasses figure it out themselves.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800835
2008-04-24 23:07:21 +00:00
Davide Bettio
3bfaf57014 API REVIEW: Animation merges with ElementAnimation.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800825
2008-04-24 22:30:53 +00:00
Aaron J. Seigo
902d57ffcd * simplify the public API for addApplet, move the more complex version to the pimpl
* move applet loading to Containmnet
* rename loadConstraints to loadContainment since it does constraints, applets, etc in one go

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800822
2008-04-24 22:18:07 +00:00
Aaron J. Seigo
ced9f04d55 known...() -> list...()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800810
2008-04-24 21:33:16 +00:00
Marco Martin
7d057a2bc2 API review:
isImmutable(), setIsImmutable() and isKioskImmutable() of applet and
corona are merged in one property so they becamed
immutability() and setImmutability() using the new type
ImmutabilityType defined in plasma.h as:
NotImmutable: normal behaviour
UserImmutable: the user locked the desktop, can unlock it
SystemImmutable: the system locked the desktop and the user can't unlock
it

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800724
2008-04-24 18:24:11 +00:00
Aaron J. Seigo
cb896a4ed2 setIsContainment wasn't virtual anyways, so don't reimp in containment; do it all in applet
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800682
2008-04-24 16:29:23 +00:00
Aaron J. Seigo
0fe77de70f when checking for custom containments, use >= now
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800672
2008-04-24 16:16:50 +00:00
Aaron J. Seigo
8e8d6ea060 remove desktop from the options; that can be discovered simply by having the View, and it's a desktopy concept anyways so doesn't belong in the lib
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=800662
2008-04-24 16:01:09 +00:00
Marco Martin
b175042a04 - boundingRect() now is pure virtual in Toolbox class
- correctly places the toolbox in vertical panels

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=799135
2008-04-20 14:23:37 +00:00
Marco Martin
1e77632048 api changes:
init() and setFailedToLaunch are now protected
containment and corona are friends of applet

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=798585
2008-04-18 16:05:20 +00:00
Alexis Ménard
c1a93efbdf we don't need to create an another layout, just changing the direction work, there is
a big size problem when put the panel on the right or on the left, the length seems to 
be huge

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=798129
2008-04-17 15:29:28 +00:00
Alexis Ménard
dcd0a9bbe9 the layout should take the entire panel
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=798126
2008-04-17 15:17:01 +00:00
Marco Martin
ea9347e48f check for toolbox existence, fixes a crash in plasmoidviewer
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=798068
2008-04-17 11:36:20 +00:00
Dmitry Suzdalev
c2b28413dd /me done another round of simple stuff renaming :)
(corresponding wiki items <s>-ed out)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797824
2008-04-16 21:15:38 +00:00
Marco Martin
ef4d4863ca toolbox is vertical panels is starting to appear, still in the wrong
position btw.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797598
2008-04-16 13:55:23 +00:00
Marco Martin
01c5a6620c now the panel toolbox looks way better (still only in horizontal panels
btw)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797291
2008-04-15 10:44:24 +00:00
Dan Meltzer
6a13421595 begone you wretched tabs.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797216
2008-04-15 02:38:48 +00:00
Aaron J. Seigo
4381fdfafa they beginning of keyboard focus possibilities; hardly works at the moment, but this is the groundwork
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797091
2008-04-14 21:50:41 +00:00
Marco Martin
4e7e2cb345 bring back the toolbox reset after setIscontainment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797081
2008-04-14 21:26:40 +00:00
Marco Martin
f4e44f397e panel toolbox looks way better, but is not displayed right now because
isContainment of the panel returns false again and it seems geometry()
returns a size of 0x0 in constraintsUpdated

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797075
2008-04-14 21:09:15 +00:00
Alexis Ménard
d5753f1fba welcome back to the background that will be a little modified soon with window frame (that
will include the applet handle No More Seperate Item ;) ) + delete in layouts in 
containments when removing applets

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=797066
2008-04-14 20:37:54 +00:00
Alexis Ménard
d5dd4e16ac Ammmaaziiing grace!!
Widget class is dead..

still in the repo for tooltip code

CCMAIL : aseigo@kde.org


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796973
2008-04-14 16:02:23 +00:00
Marco Martin
1788dbed90 fix compilation, wooops :)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796879
2008-04-14 13:19:51 +00:00
Marco Martin
e9e16e2a89 Desktop toolbox should appear in less funny positions
AND                                                                                               
beginning of a panel toolbox 
actually untested with the woc port for now

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796873
2008-04-14 13:05:49 +00:00
Alexis Ménard
7f9b11ef64 fix compil and add my name in licence file
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796761
2008-04-14 09:36:55 +00:00
Chani Armitage
2036ed1670 it helps if I commit *both* halves of the "add activity" button
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796754
2008-04-14 09:23:35 +00:00
Alexis Ménard
aa3c3eccce no more old layouts in libplasma, new stuff on API can start
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796624
2008-04-13 22:01:18 +00:00
Alexis Ménard
4467261c95 Merge woc branch to trunk, say good bye to old plasma, there is a lot of stuff to port
applets, 
please update to another revision to use the version that works

green flag from aaron


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796368
2008-04-13 13:23:39 +00:00
Aaron J. Seigo
f8cdbefe22 we need to set up toolboxes on both steting of containment type *and* when we set it as a containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=796303
2008-04-13 08:18:46 +00:00
Aaron J. Seigo
e22453ba7e don't show add widgets when immutability changes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=795920
2008-04-11 22:27:22 +00:00
Christian Ehrlicher
e880dc1c96 at least some parts are compilable on windows
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=792579
2008-04-01 16:24:15 +00:00
Aaron J. Seigo
f9d6be9626 use isEmpty() instead
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=791612
2008-03-30 00:57:36 +00:00
Chani Armitage
eda9e1125d SVN_SILENT:
comment a magic number

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=789719
2008-03-25 00:05:59 +00:00
Aaron J. Seigo
544e10ab13 resetConfigurationObject also deletes the group, so lets do that *after* we've reparented it shall we? =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=789299
2008-03-23 21:36:33 +00:00
Chani Armitage
3a6c262665 fix the panel size loading
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=788869
2008-03-22 18:56:59 +00:00
Dan Meltzer
4780390ae2 Do not automatically install a scene event filter on items in customcontainments. The custom containment can handle this itself if it feels it appropriate
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=787834
2008-03-19 23:26:21 +00:00
Chani Armitage
124f1da013 activity (desktop containment) switching
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=786809
2008-03-17 23:49:01 +00:00
Chani Armitage
1f6956398d don't create the toolbox unnecessarily
there's really no point trying to mess with specific tools when the toolbox itself isn't there.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=786440
2008-03-16 23:58:12 +00:00
Aaron J. Seigo
863e0f7797 various fixes for xinerama and non-isContainment() containments (e.g. applets which are Containment subclasses)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=786175
2008-03-16 07:20:42 +00:00
Aaron J. Seigo
6b53321428 * new containment layout strategy for non-PanelContainments: lay them out in a lose gridish manner; not strictly a grid, and not strictly a packing-for-efficiency system, though it should be ok in that respect.
* allow containments to define what the layout should be
* a few less assumptions about panels and other containment types in the layout seting in addApplet

these are steps towards:
* more friendly for arbitray containments on the desktop
* multiple containments
* ignoring braindamage that may eminate from the direction of x.org regarding screen geometries

we can now add and remove containments on the fly as well as lay them out nicely. next: UI! and that's one more 4.1 task DONE.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=785673
2008-03-14 17:05:37 +00:00
Aaron J. Seigo
eb0bf064ab instead of announcing new screens and not announcing new containments, announce new containments as well as screen affinity changes and let the host app worry about what to do from there
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=784941
2008-03-12 20:41:03 +00:00
Aaron J. Seigo
e702ebca9a new panel containment positioning strategy: stacking horiz and non-horiz panels together vertically and horizontally, respectively
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=784842
2008-03-12 15:23:33 +00:00
Stephan Binner
30595bb415 seperate applet and panel options in context menu
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=783210
2008-03-07 12:43:17 +00:00
Sebastian Sauer
33b65cd58e pass the init() call on to the applet which in turn is able to redirect it to an optional ScriptEngine
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=782791
2008-03-06 00:40:09 +00:00
Aaron J. Seigo
8c4cfbca60 keep the toolbox in the workArea (e.g. out from underneath panels and other strut reservers)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=782438
2008-03-05 07:08:32 +00:00
Aaron J. Seigo
a68747bd1d * for now MediaCenter gets a FreeLayout
* emit geometryChanged when our location changes in a way that won't trigger an actual geometry adjustment

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=782390
2008-03-05 00:06:22 +00:00
Aaron J. Seigo
7a107c9425 emit geometryChanged when the location or screen changes for a panel, since the actual scene geometry may not change, but from the perspective of a view it does
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=782258
2008-03-04 17:48:28 +00:00
Aaron J. Seigo
bb3b40349a activate the lock widgets toolbox button
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=781768
2008-03-03 18:14:07 +00:00
Chani Armitage
054f4bd2f9 remove unnecesary line
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=781695
2008-03-03 14:40:02 +00:00
Chani Armitage
34ae05a9b2 move toggleDesktopImmutability() from defaultdesktop to containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=781623
2008-03-03 11:44:40 +00:00
Aaron J. Seigo
0a302e2944 if the init of the applet is not delayed (so it's not startup or some other mass creation) then we schedule a config saving
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=781207
2008-03-02 09:04:04 +00:00
Aaron J. Seigo
483276b488 schedule a config saving when an applet is removed
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=781204
2008-03-02 08:43:07 +00:00
Aaron J. Seigo
8c1990f49b put the applet notification of immutability in the containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=780750
2008-02-29 22:17:55 +00:00
Dan Meltzer
7f624f85d9 Revert one large git mess
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=780657
2008-02-29 17:50:57 +00:00
Dan Meltzer
64f0ce7739 Fix some problems aseigo pointed out in the code.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=780655
2008-02-29 17:43:35 +00:00
Dan Meltzer
a081559257 Commit initial progress of work to port to qt4.4
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=780654
2008-02-29 17:43:31 +00:00
Aaron J. Seigo
7cf7109266 load* -> load .. simpler, less verbose API
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=779407
2008-02-26 01:58:55 +00:00
Aaron J. Seigo
4b193edf0e don't make a submenu if there are no items in the top menu
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=778473
2008-02-23 18:02:42 +00:00
Aaron J. Seigo
2b68bb49ee This lets the View have a desktop set to it and when drawing a Containment we pass in the effective desktop # being currently painted. The Containment is free to ignore this information, or it can try and cast the passed in options to a Containment::StyleOption to retrieve this information. This should be used for any per-desktop painting that happens (e.g. separate background per desktop) and opens the way to having View-per-Desktop for better composite manager support (think: desktop grid or cube where more than one desktop is simultaneously visible)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=778239
2008-02-22 23:41:44 +00:00
Aaron J. Seigo
b01fa6947c don't add items when we're immutable, unless delayInit is called (e.g. startup or loading)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=776378
2008-02-17 23:02:09 +00:00
Andreas Aardal Hanssen
7516d7ea30 Introduce QGraphicsItem::CacheMode in place of Widget::CachePaintMode.
This move was planned from the beginning; Widget::CachePaintMode was a
backport of the same feature in Qt 4.4. OK'ed by aseigo after post on
panel-devel. I've left CachePaintMode in there (it simply redirects to
CacheMode); I don't know if it's OK to remove these APIs or not (and
it's not monday anyway).

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=775198
2008-02-15 06:51:37 +00:00
Aaron J. Seigo
134ccdec7c * allow 2 actions from the containment before creating a separate menu
* let the applet know when all things are up and running, just as with containments

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=774347
2008-02-13 02:29:45 +00:00
Chani Armitage
ed47acc7a0 make setting a layout actually safe
(reviewed in #plasma)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=771825
2008-02-07 00:18:22 +00:00
Aaron J. Seigo
0609ee5e38 Injects the containment's context menu into the widget's. This allows, e.g. "Configure Panel" to show up in the context menu.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=771315
2008-02-05 18:27:01 +00:00
Chani Armitage
be64c5939d enable dragging from desktop to panel
note: there's no visual feedback before you release the mouse button, and there's no way to drag back to the desktop.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=770333
2008-02-03 13:09:21 +00:00
Aaron J. Seigo
a6b4d53d83 fix applet detection, don't mistake a containment for an applet in the context menu code path
BUG:156596

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=770208
2008-02-03 00:51:15 +00:00
Aaron J. Seigo
06011ef27e put the applet's menu items first, put remove at the end.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=766021
2008-01-25 01:41:16 +00:00
Stephan Binner
404b0b74d1 open toolbox when the dashboard view starts (to show the
user a way how to "Hide Dashboard" again)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=764361
2008-01-21 15:10:19 +00:00
Aaron J. Seigo
45e31f3aee need to map from the scene, since we may be rotated or otherwise transformed.
BUG:155372

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=759228
2008-01-10 08:21:37 +00:00
Aaron J. Seigo
a36c114b4f * make handles disapear reliably
* don't pop them immediately so just moving the mouse around the screen doesn't cause tons of flickering handles

based on a patch by Cody. thanks, guy!
CCMAL:fjctracy@gmail.com

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=759079
2008-01-09 23:43:49 +00:00
Thomas Braxton
3cafce3bde KConfigGroups can now be reparented.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758543
2008-01-08 07:34:53 +00:00
Aaron J. Seigo
f7d3a27b1e fix context menus on applets that are also containments
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758527
2008-01-08 04:01:42 +00:00
Aaron J. Seigo
ee32d3c996 remove the use of 1209 explicitly now that i have Winter's Magic Formula for default debug space. makes backporting way easier; sorry for the noise of the earlier commit. suppose i should read planetkde.org more closely ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758498
2008-01-08 01:25:09 +00:00
Aaron J. Seigo
12ef6308cb use the plasma debug area (1209); i considered wrapping this in Plasma::debug() but that seems overkill ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758415
2008-01-07 20:50:31 +00:00
Aaron J. Seigo
9db2d7e783 SVN_SILENT: fix the debug output too
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758399
2008-01-07 20:19:16 +00:00
Craig Duquette
53c0b890a9 Re-enable zoom-in/zoom-out in the toolbox
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758367
2008-01-07 18:49:25 +00:00
Aaron J. Seigo
033f1f52b3 * immutability is handled by the applet
* Applet::isImmutable already checks for Corona immutability
* vertical means y, not x ..*sigh*

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758173
2008-01-07 03:56:46 +00:00
Aaron J. Seigo
ea793d2259 move panels even on vertically arranged monitors up into negative space
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=758160
2008-01-07 02:15:29 +00:00
Jason Stubbs
b5983aed50 Flush constraints in corona rather than containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=757860
2008-01-06 07:17:53 +00:00
Jason Stubbs
1e247fa749 Flush containment constraints as soon as they are loaded so that they can be
acted upon without having to wait for the event loop. This is needed so that
the desktop doesn't temporarily appear white when a wallpaper hasn't been
set.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=757548
2008-01-05 10:35:32 +00:00
Stephan Binner
a0103a9c6a i18n style guide fixes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=757289
2008-01-04 16:53:55 +00:00
Thomas Georgiou
cb869ce141 Make zooming invisible to user (doesn't do anything yet)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=757079
2008-01-04 03:09:30 +00:00
Aaron J. Seigo
41a5e62f79 the toolbox icons also need the background
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=756932
2008-01-03 22:33:27 +00:00
Jason Stubbs
ee428ee92c Add applets at the correct position when the applet is dropped in the margin
between two existing applets

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=756618
2008-01-03 13:48:22 +00:00
Jason Stubbs
092b7ff835 Ensure that applets are added to the panel in left to right (or top to bottom)
order as BoxLayout is not really capable of anything else. On the containment
side, ignore the specified geometry when delaying init as the placement
calculations can lead to slight mispositioning of applets even when received
in the correct order.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=756435
2008-01-03 08:44:14 +00:00
Urs Wolfer
4a18427f6a Icon fix. Patch by crazy.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=756181
2008-01-02 21:52:31 +00:00
Aaron J. Seigo
add3c7eacd pretend to fix moving plasmoids between containments; in reality we'll need a patch to KConfig* first to make this really work.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755682
2008-01-02 01:38:29 +00:00
Aaron J. Seigo
81909190eb after porting applets, it occurred to me that this naming is nicer.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755617
2008-01-01 22:54:33 +00:00
Aaron J. Seigo
e12dbeb000 provide a way for applets to signal that they'd like their config saved out to disk, please.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755616
2008-01-01 22:44:56 +00:00
Craig Duquette
590e039859 Changes the toolbox tools from buttons to icons.
Changes the toolbox icon from 'configure' to 'plasma'
Changed the toolbox gradient to something "prettier"

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755534
2008-01-01 19:57:40 +00:00
Marco Martin
3b5443a62d restore the ability co create desktop icon with drag and drop
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=755067
2007-12-31 11:19:34 +00:00
Jason Stubbs
1fe1bbb5c0 Applets may expect that init() has been run when constraintsUpdated is called
so ensure that it has been run before updating constraints.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=754350
2007-12-29 16:26:36 +00:00
Jason Stubbs
900d587280 Notify applets that are added to panels about their new constraints too.
This fixes the system tray not updating when being removed and then readded
to the panel. Tasks still doesn't work though. :(

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=754326
2007-12-29 15:44:43 +00:00
Jason Stubbs
cf40a07331 An applets sizeHint() is sometimes based on constraints so make sure that
the applet's constraints are up to date before using its sizeHint()

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=754125
2007-12-29 05:03:05 +00:00
Jason Stubbs
bc10b9a983 Remove the isContainment() just added as this would mean that non-containment
containments (wtf?) won't have their contextActions() displayed.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=753478
2007-12-27 15:21:59 +00:00
Jason Stubbs
95f836fd2e Also change the other direct QGraphicsItem calls to Applet calls in contextMenuEvent()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=753476
2007-12-27 15:19:01 +00:00
Jason Stubbs
cf71ae2c36 Don't try and display the containment context menu when isContainment() is
false. Also, call Applet's contextMenuEvent() rather than calling
QGraphicsItem's directly.

CCBUG: 154552

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=753472
2007-12-27 15:14:51 +00:00
Jason Stubbs
a5ad6a0675 Switch to a busy cursor while the applet is loading
BUG: 154512

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=753469
2007-12-27 15:03:50 +00:00
Jason Stubbs
05458a5c40 Add the applet to the panel at the division (between applets or edge of
screen) closest to where the applet was dropped to.
BUG: 154127

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=752356
2007-12-24 08:39:08 +00:00
Jason Stubbs
efcc2c6128 Addition of applets to a panel require different geometry handling than
to a desktop. This patch just splits the handling into two branches so as
to make the upcoming changes easier to read.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=752327
2007-12-24 07:49:33 +00:00
Jason Stubbs
03ae8a076b Make the placement algorithm slightly more intelligent
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=751696
2007-12-22 16:42:09 +00:00
Jason Stubbs
d4e9929555 Fix the centring calculation
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=751610
2007-12-22 12:49:44 +00:00
Jason Stubbs
fa69a979c9 Try to place unpositioned applets in areas that aren't occupied using a very
simple placement policy.

BUG: 154122

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=751607
2007-12-22 12:32:55 +00:00
Aaron Eisenberg
610945f0fc Rename the toolbox files to be desktop specific.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=751080
2007-12-21 01:14:32 +00:00
Aaron J. Seigo
e8e3b503e2 allow querying if a tool is enabled or not
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=750286
2007-12-19 02:41:45 +00:00
Aaron J. Seigo
bdcec3bee6 allow outsiders (e.g. subclasses) to enable/disable tools
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=748312
2007-12-14 06:34:26 +00:00
Aaron J. Seigo
cdceb6531a this one had me scratching my head for a while: applets that are also containments, but which are not currently being *used* as containments need to have the containment they are in's form factor returned from formFactor, not their own (which probably not set at that point anyways =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=747861
2007-12-13 06:27:23 +00:00
Aaron J. Seigo
616675be80 appletRemoved signal to create symetry with appletAdded. had two people ask about this already.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=747104
2007-12-11 02:59:02 +00:00
Aaron J. Seigo
059505f639 save/restore lock status
CCMAIL:tokoe@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=745809
2007-12-07 05:02:54 +00:00
Aaron J. Seigo
198544318a * optional names for tools
* respond to immutability constraint updates, in particular hide the add widgets toolbox button

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=745246
2007-12-05 20:26:23 +00:00
Aaron Eisenberg
f7a0308982 Added the ability to lock desktop widgets and assigned icons to all the desktop context menu actions.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=744659
2007-12-04 02:17:21 +00:00
Aaron J. Seigo
d06a97fa73 SVN_SILENT: hush
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742850
2007-11-29 01:05:16 +00:00
Aaron J. Seigo
eb62d53f8f handle the setting of the default type a bit differently; delay it until init and only if the subclass hasn't set something on us
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742839
2007-11-29 00:20:37 +00:00
Aaron J. Seigo
22893bd077 change of heart after trying a few more things out: make containment type something that can be externally set.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742774
2007-11-28 21:46:17 +00:00
Aaron J. Seigo
4013f346ae bitten by the difference between type() and containmentType() again; layering one set of concepts (plasma) over another (qgv) does have its annoying sides ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742416
2007-11-27 23:36:10 +00:00
Aaron J. Seigo
119dacffe8 right, handles only on desktops for now
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742411
2007-11-27 23:23:38 +00:00
Aaron J. Seigo
dee3a63add don't bother animating the items on start up (delayedInit) since we never see the anims anyways so it's just a bunch of unecessary computation at launch.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742409
2007-11-27 23:19:02 +00:00
Aaron J. Seigo
20470c7c67 keep screen assignments; this way if a screen is unplugged then comes back between plasma runs (e.g. log ins) we still have the containment kicking around. useful, that. ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742136
2007-11-27 08:47:46 +00:00
Aaron J. Seigo
51e828917e * simplify some of the code
* put warning comments about using config() prematurely
* improve addApplet(Applet *) by having it remove the applet from the other containment, reset the config, deal with scene event filters....
* be less noisy with kdebugamania

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742103
2007-11-27 06:08:44 +00:00
Aaron J. Seigo
c3d71fb5f3 * don't assume a screen; this prevents containments without a screen expressley set from taking over the primary desktop; at least i know that screen take over works though ;)
* only bother with screent take over is we have an actual screen (e.g. something > -1)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742029
2007-11-26 23:28:03 +00:00
Jeremy Paul Whiting
44a7a86a6c enable moving applets from one desktop containment to another, still a bit buggy, but functional
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=742001
2007-11-26 21:57:50 +00:00
Aaron J. Seigo
9603d8cf57 we need to turn the background off here, as well.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=741921
2007-11-26 18:32:25 +00:00
Percy Leonhardt
a166f48ccc Support resizing of applet while handle is visible.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=740406
2007-11-23 08:01:29 +00:00
Aaron J. Seigo
2fbb4b5fee SVN_SILENT: note to self.. don't patch on one machine, then commit from another blindly
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=739973
2007-11-22 08:00:35 +00:00
Aaron J. Seigo
fc6b8e4a95 be more careful about the things we watch
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=739951
2007-11-22 07:37:57 +00:00
Aaron J. Seigo
9c52d8f067 actually make plasmoid removal work and harden the applet handle against the applet being removed from under it
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=739867
2007-11-22 05:11:06 +00:00
Aaron J. Seigo
9b29f430db a little bit of spacing in the panel between items makes the baby happy.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738948
2007-11-20 00:44:29 +00:00
Aaron J. Seigo
92ba2c1b0b move all the layouts to their own directory; much more logical and makes it easier to not miss layouts that need changes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738898
2007-11-19 22:42:56 +00:00
Aaron J. Seigo
fbf2505f8a only if it is being used as a containment actually give it the toolbox
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738519
2007-11-19 02:27:53 +00:00
Aaron J. Seigo
b0789ebe14 here, have your containments back. type() was pretty widely used and rather important apparently ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738514
2007-11-19 02:14:18 +00:00
Aaron J. Seigo
aad6b2a52b interesting; with that const fix i discovered this clashed with QGrahpicsItem::type() .. doh!
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738507
2007-11-19 01:35:10 +00:00
Aaron J. Seigo
b57b27550a a bit of const correctness
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738506
2007-11-19 01:26:50 +00:00
Aaron J. Seigo
4b8f4092a0 * @internal: introduce a containmentConstraintsUpdated so that we can manage some containment specific things
* introduce CustomContainment types which will be more 'hands off'

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738503
2007-11-19 01:19:58 +00:00
Aaron J. Seigo
5b4dbbe303 we do actually still want context menus on applets, even with the hover thing.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738430
2007-11-18 22:02:01 +00:00
Aaron J. Seigo
40e5395c3e guard a bit better against multiple desktop containments claiming the same screen
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738061
2007-11-17 20:50:57 +00:00
Aaron J. Seigo
47130fbba5 * initConstraints -> loadConstraints, since that's actually what it does
* turn off the background right away in containments to avoid getting size hints with the boundaries!

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=737709
2007-11-17 03:31:25 +00:00
Andre Duffeck
174096635e Add signals that incicate an application launch. DashBoardView can
connect and hide itself then, for example.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=737051
2007-11-15 11:06:33 +00:00
Jeremy Paul Whiting
311f58dea6 SVN_SILENT conform to kdelibs style
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=736150
2007-11-13 15:49:28 +00:00
Jeremy Paul Whiting
a9673b0ac7 don't crash when hovering over the panel plasmoids
I'm fairly confident the assertion that used to be here is bogus because of panels not belonging to the desktop containment
CCMAIL: aseigo@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735913
2007-11-13 00:29:09 +00:00
Kevin Ottens
bf77e378a6 Add support for applet handles in plasma containments.
Still a couple of issues to flesh out, but that's usable already.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735845
2007-11-12 19:27:21 +00:00
Aaron J. Seigo
a0592bf1f4 KRUSH:
* get rid of unused d->size var
* don't track the layout ourselves, use the layout() from the LayoutItem
* code clarity cleanups

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735123
2007-11-10 23:19:05 +00:00
Aaron J. Seigo
bcf898ca7b appletAdded signal
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734727
2007-11-09 18:47:35 +00:00
Aaron J. Seigo
de2dba69a9 * listen and respond to xrandr changes
* convenience accessor to the corona for containments
* some debug to track down the context menu in the upper left corner problem

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734486
2007-11-09 00:44:35 +00:00
Aaron J. Seigo
99f67622e2 the last of the full screen repaints are gone, gone gone.
TT is aware of the bugs i'm working around, so hopefully we can get rid of this code someday, but for now ... a much more performant and smoother plasma.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=733167
2007-11-05 18:40:45 +00:00
Aaron J. Seigo
cda61b4888 we need to accept hover events, even though we do nothing with them
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=733132
2007-11-05 16:41:27 +00:00
Aaron J. Seigo
7da6eebdcb less noisy on startup.. this stuff is working now
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732531
2007-11-04 05:38:16 +00:00
Aaron J. Seigo
a5b02c9e66 fix default geometry setting
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732500
2007-11-04 01:37:56 +00:00
Aaron J. Seigo
cb956351ed don't paint anything from the base "null" containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732493
2007-11-04 01:17:42 +00:00
Aaron J. Seigo
6a826c0150 thanks to the persistent and patient test of apaku, plasma is working fairly decently in xinerama now
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=730881
2007-10-29 23:32:55 +00:00
Aaron J. Seigo
f846464288 - use addChild so that the item gets added to the layout
- proper coordinates for setLeft

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=730874
2007-10-29 22:45:57 +00:00
Aaron J. Seigo
4d1cac45c8 only used once, no point in putting in a temp var
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=730443
2007-10-28 20:03:04 +00:00
Cédric Borgese
3313101e56 Fix applet position when droping it from appletbrowser on a containment that doesn't start at (0,0) on the scene. Typically, the second screen on a dual screen
configuration.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729926
2007-10-27 12:37:05 +00:00
Sean Harmer
fb1fe06b79 Refactoring the background painting code into DefaultBackground.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729889
2007-10-27 08:56:42 +00:00
Aaron J. Seigo
c0231730e2 * a more sane init(), by using the default values set in the Private class (or by prior calls to set*()?)
* try to give this a hope in hell of working in xinerama; include some debug output for when it fails ;)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729449
2007-10-26 01:11:27 +00:00
Aaron J. Seigo
ee8c24dcad yeah, moving them left is not what i wanted. hello dyslexia!
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729434
2007-10-25 23:33:23 +00:00
Aaron J. Seigo
91d37cd653 also set the desktop widgets sufficiently apart on the scene
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729433
2007-10-25 23:31:20 +00:00
Aaron J. Seigo
975553bb1e debug for apaku =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729430
2007-10-25 23:19:49 +00:00
Aaron J. Seigo
576798dd52 set panels properly in setScreen. this will need to be augmented with screen edge stuff eventually as well, but for now this might work better on multiple screens.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729421
2007-10-25 23:09:02 +00:00
Aaron J. Seigo
136363aefe * don't cache the painting; prevents blowing the pixmap cache and killing performance on large screens. we don't move this around anyways, and we only paint the exposed rect when using a bitmap wallpaper
* default to a bitmap wallpaper as we handle those a lot better (e.g. only painting the exposed rect)

the paper painting code really does need to move to DesktopContainment at some point =)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729228
2007-10-25 11:20:23 +00:00
Aaron J. Seigo
db095df33e animate items being removed. whee. the only problem would be if the item is being removed but plasma is quit before the anim finishes... or if some top-level applet calls disappear on itself (though why they'd do that i don't?)
let's see if that ever really matters. if it does, then we can simply keep a list of applets being removed around. but let's play fast 'n loose for now.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=728722
2007-10-24 02:10:10 +00:00
Aaron J. Seigo
1db6f236e7 provide a bit of a margin between containments; this ensures that we don't get painting "bleed" between panels and the desktop as well which should help kwin go a little less crazy trying to keep up with re-compositing the whole desktop every time =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=728530
2007-10-23 15:56:40 +00:00
Chani Armitage
1d9e0c424f make the contextmenu show up in the right place for panel apps
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=726620
2007-10-18 09:52:59 +00:00