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
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