Commit Graph

54 Commits

Author SHA1 Message Date
Rob Scheepmaker
e1bb614999 Fixed crash when clicking an extenders dragger without actually dragging, and fixed the 'hand problem'.
svn path=/trunk/KDE/kdelibs/; revision=890806
2008-11-30 11:45:23 +00:00
Rob Scheepmaker
2d4971eb46 Extender Polishing time! The following problems have been adressed:
* Far more correct spacer implementation. This avoids the spacer jumping around while dragging an item. Also adjustSizeHints is now only called once/spacer move.
* Avoid spacer related memleak.
* Only load extenderItems that are actually detached. This way, attached items won't linger around in case of a plasma crash.
* Use utilities-desktop-extra as icon for items with no saved icon (e.g. items where the icon is set using setIcon(QIcon) instead of setIcon(QString)). Sure beats the questionmark.
* Update mask when offscreen extender items are resized when being dragged to avoid screwed up masks (white borders).
* Start the drag only aften being moved a minimum of QApplication::startDragDistance().
* Correct transformation for calls to showDropZone.
* Use the mouse position for positioning items in extenders or panels, the topleft corner for positioning in a desktop containment. This feels the most natural.
* Move items back to the extender they came from when they're dropped into nowhere.
* Some small code style fixes.



svn path=/trunk/KDE/kdelibs/; revision=890249
2008-11-28 17:06:00 +00:00
Rob Scheepmaker
926dae37a7 Also hide dialogs of applets on the desktop.
Use topleft of extenderitem to check if we're over a containment, since that point is also used when instantiating an extenderapplet, and otherwise the dropzone could be at a different position then the actual applet being created.


svn path=/trunk/KDE/kdelibs/; revision=888951
2008-11-25 15:26:13 +00:00
Rob Scheepmaker
e7e26f82e7 To be consistent with ordinary applets, we need some visual feedback when hovering over containments with extenderitems, so call showDropZone...
svn path=/trunk/KDE/kdelibs/; revision=887683
2008-11-22 15:16:46 +00:00
Aaron J. Seigo
ac412d787b delete the widget first so that it gets a chance to clean up with the extenderitem it is in still around
svn path=/trunk/KDE/kdelibs/; revision=886236
2008-11-18 21:22:55 +00:00
Rob Scheepmaker
cfb43a7632 Correct sizehints for extender containing applets on the desktop. Also renamed the private adjustSize() function to adjustSizeHints() to avoid confusion.
svn path=/trunk/KDE/kdelibs/; revision=882356
2008-11-10 15:49:31 +00:00
Aaron J. Seigo
4b08c03726 change KDE includes to use the .h style now that we're in libs
svn path=/trunk/KDE/kdelibs/; revision=879795
2008-11-04 02:04:34 +00:00
Aaron J. Seigo
1b523b9054 ok, this time JUST the plasma dir ;)
svn path=/trunk/KDE/kdelibs/; revision=879759
2008-11-03 23:08:39 +00:00
Aaron J. Seigo
fa5a2d87d9 bum-de-dum! plasma to kdelibs.
svn path=/trunk/KDE/kdelibs/; revision=879757
2008-11-03 23:03:26 +00:00
Rob Scheepmaker
babf165d5d A last couple of api changes before the move to kdelibs:
* in class Extender rename setExtenderAppearance to setAppearance.
* in class ExtenderItem rename moveBackToSource to returnToSource.
* in class ExtenderItem addition of showCloseAction() and hideCloseAction().
... and some minor tweaks in the implementation.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=879670
2008-11-03 19:49:14 +00:00
Kevin Ottens
f66b4d819b API changes as announced:
* ConfigXml becomes ConfigLoader
  * Containment::(add|remove)ToolBoxTool(QAction *action) becomes
    Containment::(add|remove)ToolBoxAction(QAction *action)
  * Flash becomes FlashingLabel
  * Icon becomes IconWidget
  * PanelSvg becomes FrameSvg

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=877504
2008-10-29 17:46:33 +00:00
Rob Scheepmaker
871508e467 Store the title and icon in extenderitem's config so applets don't have to store/restore this info manually.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=877485
2008-10-29 17:01:11 +00:00
Rob Scheepmaker
a00b42cf69 Correct placement when detaching extenderItems.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=876615
2008-10-27 17:16:41 +00:00
Rob Scheepmaker
08b16a80dc Fixed extender appearence in dialogs of applets on the desktop.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=875773
2008-10-25 14:49:31 +00:00
Rob Scheepmaker
d09ca6858f Also automatically hide dialogs from popupapplets if the last extender item is destroyed.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=875760
2008-10-25 14:17:17 +00:00
Rob Scheepmaker
704fad3d81 Small extender api improvements:
* extender() -> protected
* initExtenderItem() no longer a slot
* autoExpireDelay return uint instead of bool


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=875751
2008-10-25 13:41:00 +00:00
Rob Scheepmaker
241d38ad65 A bit more sourceApplet correctness:
* Removed sourceApplet() function, it has no place in public api. That was also discussed in the api review, but I forgot to actually remove it.
* Update sourceApplet's pointer and remove the "return to source" button when the source applet is removed.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=875290
2008-10-23 22:42:58 +00:00
Rob Scheepmaker
32fa54a46d Allow toggling the collapse state of extender items by double clicking the drag handle.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=875202
2008-10-23 16:44:40 +00:00
Rob Scheepmaker
1a63cf107a Fixed another uninitialized memory problem. Valgrind rocks. :)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=875194
2008-10-23 15:59:46 +00:00
Rob Scheepmaker
68acf18d50 Fixed some uninitialized variable problems found by valgrind.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=875186
2008-10-23 15:24:52 +00:00
Rob Scheepmaker
a26b73b6bb Give extenders the 'stacked' look from Pinheiro's mockup. It still needs some minor tweaks, but it allready looks quite sexy.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=873867
2008-10-20 10:58:37 +00:00
Allen Winter
81d09742bb fix spelling
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=870322
2008-10-12 11:12:24 +00:00
Allen Winter
a7aebfa60a a bunch more coding style fixes. still some lines longer than 100 chars.
this is definitely helping me find false positives in the Krazy style checker.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=870161
2008-10-11 22:48:38 +00:00
Rob Scheepmaker
51e03dc5e3 Add return to source icon the the plasma theme, and use this in extender items.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=870089
2008-10-11 17:56:07 +00:00
Rob Scheepmaker
3824adb381 Allow theming the background of ExtenderItems, and react to theme changes. Capabilities still
have to be improved to make it look like the lovely pinheiro mockup.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=868933
2008-10-07 16:15:33 +00:00
Aaron J. Seigo
4bc96a8763 applet can never be null
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=867467
2008-10-03 15:14:11 +00:00
Sebastian Kügler
eba90f900b Less random size for the extender's title ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=864554
2008-09-25 03:09:24 +00:00
Aaron J. Seigo
c676e5130b there is always an extender item
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=864510
2008-09-24 21:46:37 +00:00
Rob Scheepmaker
1f7f9b95ed Support setting QGraphicsItems in ExtenderItem as discussed in the extender api review
discussion on the mailing list.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=862687
2008-09-19 16:23:08 +00:00
Aaron J. Seigo
e7e0914a11 SVN_SILENT: i don't look for XXX unless i'm looking for a lap dance. ;) FIXME is better...
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=862106
2008-09-18 04:57:50 +00:00
Aaron J. Seigo
2a979b4e00 it's perfectly valid to get no view at a random screen position; not all plasma apps are full screen after all
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=862097
2008-09-18 03:56:41 +00:00
Aaron J. Seigo
0ae78795da don't use Applet::extender(); we're friends, after all
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=862087
2008-09-18 02:44:08 +00:00
Rob Scheepmaker
ec98e6c6ba Avoid making extenderitems dissapear when moving them from an internal:extender to the
same internal:extender.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=861903
2008-09-17 13:30:18 +00:00
Rob Scheepmaker
c4733af68b Removed some debug spam, some obsolete stuff, and avoid creating 2 calendars in clocks.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=861613
2008-09-16 16:26:57 +00:00
Rob Scheepmaker
f24cd77e45 Close popup after detaching the last item.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=861034
2008-09-14 22:43:53 +00:00
Rob Scheepmaker
635ec0419c Add some margins around the widget in an extenderitem. Removed some commented out code.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=861032
2008-09-14 22:10:55 +00:00
Rob Scheepmaker
11a5a957d0 Renamed extender to internal:extender to avoid possible name clashes.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=860083
2008-09-11 22:51:43 +00:00
Rob Scheepmaker
7d9f3e29c1 The in libplasma embedded ExtenderApplet actually works now!
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=860069
2008-09-11 21:21:18 +00:00
Alex Merry
33f7e1e3d6 Actually relicense the files this time. Last time, I managed to change the text from GPL to... GPL.
Again, plasma-devel@kde.org mail archives have the permissions.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=858780
2008-09-08 17:32:25 +00:00
Alex Merry
90f5feb1a6 Relicense files. See plasma-devel@kde.org mailing list archives for permissions.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=858364
2008-09-07 21:33:02 +00:00
Rob Scheepmaker
8d3ef3e367 Don't destroy extenderitems that are being dragged around.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=857487
2008-09-05 14:16:55 +00:00
Rob Scheepmaker
73a1b6715e Open up extender containing PopupApplets when hovering over it with an ExtenderItem.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=857473
2008-09-05 13:44:45 +00:00
Rob Scheepmaker
dcaf4a4b8a And finally we can drag even the last ExtenderItem from PopupApplet without stuff
breaking all around, and some random crashes are avoided too, all by making the
Dialog in PopupApplet no longer of the type Qt::Popup and installing an event filter
to still hide the dialog when you click somewhere else on your screen.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=857095
2008-09-04 17:09:34 +00:00
Rob Scheepmaker
c066ea7027 PopupApplet monitors the size of the applet now. And fixed scenePosFromScreenPos so you can now
reorder extenderitems within a Dialog. Stuff still breaks when detaching the last item, I'm still 
working on that.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=854547
2008-08-29 19:00:10 +00:00
Rob Scheepmaker
1bae884531 Improved Extender support in popupApplet. Dialog resizes correctly, and even the last
item is removable. Implementation is still not perfect, but it's now a lot better then it 
was.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=853962
2008-08-28 14:32:48 +00:00
Rob Scheepmaker
56fc76d150 Detaching ExtenderItems from a Plasma::Dialog works now, but resizing the dialog isn't
always done correctly yet. I'm still looking into that.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=852535
2008-08-25 23:16:18 +00:00
Rob Scheepmaker
60a62db177 Make attached ExtenderItems non persistent, since that is more logical default behavior.
Fixed the screwed up positioning of the ExtenderItem toolbox.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=852222
2008-08-25 15:17:54 +00:00
Rob Scheepmaker
27cdeadb03 Some changes to PopupApplet to make it a useful base class for extender using applets,
and some changes to libplasmaclock to make it's dialog get the correct size.
Works quite well, but for some reason dragging extender items from the dialog doesn't 
work correctly right now, I'm working on that.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=852189
2008-08-25 13:55:26 +00:00
Alex Merry
053ba4f683 Use parenting.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=851464
2008-08-23 17:47:50 +00:00
Rob Scheepmaker
cfcda8ddf3 Removed the default value in setAutoExpireDelay, and allow the auto expire timer to be
cancelled by calling setAutoExpireDelay(0).


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=841701
2008-08-03 21:47:21 +00:00