Commit Graph

62 Commits

Author SHA1 Message Date
Urs Wolfer
f320d2e700 * typos--
* optimize QString operations
* fix include guard

svn path=/trunk/KDE/kdelibs/; revision=899600
2008-12-21 11:56:01 +00:00
Rob Scheepmaker
71d6e19ae8 Don't allow extenderitems to be dragged when plasma is locked.
svn path=/trunk/KDE/kdelibs/; revision=897287
2008-12-15 16:50:47 +00:00
Aaron J. Seigo
87fb3dfabe smarter use of QMap
svn path=/trunk/KDE/kdelibs/; revision=895574
2008-12-11 02:55:28 +00:00
Rob Scheepmaker
c51d9d7d9b Yeah, finally! Fixed a crash that occurs when moving an extenderitem back to its source from an extender that was also the last one to have a spacer inserted because the same item was hovering over it. Phew, that was a mouthfull... With this fix we monitor if previousTargetExtender get's destoryed so we don't accidently try to remove it's spacer.
BUG: 171498


svn path=/trunk/KDE/kdelibs/; revision=895405
2008-12-10 17:29:40 +00:00
Rob Scheepmaker
7ae063b1ec Don't crash on use when detaching extenderitems while having widgets locked. Instead just move the item back where it came from.
svn path=/trunk/KDE/kdelibs/; revision=895345
2008-12-10 13:51:26 +00:00
Rob Scheepmaker
72eaf8c5f7 No longer use a QGraphicsGridLayout to manage offscreen widgets in corona. Instead position them manually and give each one a spot where they can grow up to QWIDGETSIZEMAX. This has the advantage of not requiring hacks to work around QGL problems, and it avoids having to move all views when one item resizes. It feels snappier and the code looks cleaner.
svn path=/trunk/KDE/kdelibs/; revision=895118
2008-12-10 00:57:42 +00:00
Rob Scheepmaker
b321b2f033 Performance optimization: only change the icon if it's actually a different icon. Mainly affects uiserver widgets atm.
Oh, and warning--.


svn path=/trunk/KDE/kdelibs/; revision=894878
2008-12-09 14:04:33 +00:00
Rob Scheepmaker
9116edc392 Use iconSize() function now that that function exists. This avoids having the margins in the dragger 2 pixels smaller then specified.
svn path=/trunk/KDE/kdelibs/; revision=894041
2008-12-07 18:28:26 +00:00
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