Commit Graph

70 Commits

Author SHA1 Message Date
Marco Martin
2687d8595b add an option in extenderitem to use a config group completely in memory, intended for extenderitems that really aren't supposed to be saved and restored on disk.
the notifications one, but more important the job ones really don't have a big point to be saved.


svn path=/trunk/KDE/kdelibs/; revision=1153692
2010-07-23 19:29:50 +00:00
Aaron J. Seigo
1791b2b693 avoid warnings
svn path=/trunk/KDE/kdelibs/; revision=1142366
2010-06-24 18:32:49 +00:00
Aaron J. Seigo
0543ed0f15 a work around for the fact that groups and items are in the same collection, which can cause issues on destruction
BUG:242112

svn path=/trunk/KDE/kdelibs/; revision=1141872
2010-06-23 17:58:33 +00:00
Marco Martin
6f8d808068 event->button() is usually empty, do drags only with the left buttons (and find the down position with that too) instead
BUG:198814

svn path=/trunk/KDE/kdelibs/; revision=1137301
2010-06-12 09:51:42 +00:00
Marco Martin
c77396e412 update the return to source button visibility based on the hostapplet immutability rather than sourceapplet, works also if not all containments have the same immutability (netbook)
BUG:235949

svn path=/trunk/KDE/kdelibs/; revision=1137192
2010-06-11 22:02:54 +00:00
Aaron J. Seigo
94bcb2a621 access the member directly
svn path=/trunk/KDE/kdelibs/; revision=1136832
2010-06-10 21:32:10 +00:00
Aaron J. Seigo
1cca6c7d02 foreach takes a copy, use a mutable iterator. prevents crashes. also make a few more sanity checks in places to be ++sure about the health when executing those methods.
BUG:235851
BUG:240996

svn path=/trunk/KDE/kdelibs/; revision=1136808
2010-06-10 20:10:49 +00:00
Aaron J. Seigo
35e856e4de set the cursor explicitly on the buttons so that we don't get a hand over the buttons, only over teh draggable bits
svn path=/trunk/KDE/kdelibs/; revision=1136780
2010-06-10 17:46:08 +00:00
Marco Martin
2729b466df extender items can't return to source if the desktop is locked
BUG:215230

svn path=/trunk/KDE/kdelibs/; revision=1134489
2010-06-04 12:40:34 +00:00
Marco Martin
4d23421690 don't try to update the labels when the extender is in its destructor
crash--

svn path=/trunk/KDE/kdelibs/; revision=1131699
2010-05-28 18:12:13 +00:00
Marco Martin
b8893a8044 too much classes clobbers with the Extender's private, protect d->applet behind a QWeakPointer
BUG:195369
BUG:232408
CCBUG:233563
BUG:239022

svn path=/trunk/KDE/kdelibs/; revision=1131248
2010-05-27 19:59:15 +00:00
Marco Martin
32a40accec whoops forgotten a not in previous commit
svn path=/trunk/KDE/kdelibs/; revision=1129238
2010-05-21 18:12:20 +00:00
Marco Martin
19d0f06981 check for existence of applet
svn path=/trunk/KDE/kdelibs/; revision=1129236
2010-05-21 18:09:15 +00:00
Marco Martin
f08bf871f6 be sure to relayout if a different position is asked
svn path=/trunk/KDE/kdelibs/; revision=1129158
2010-05-21 12:49:27 +00:00
Marco Martin
baf1e98b99 resize extender over item removal
svn path=/trunk/KDE/kdelibs/; revision=1129137
2010-05-21 11:24:29 +00:00
Marco Martin
530c3fe70a invalidate the hint caches, the resize the extender to the hint
svn path=/trunk/KDE/kdelibs/; revision=1128980
2010-05-20 20:41:11 +00:00
Marco Martin
8ec35c6c91 resize the extender to its preferred size when a group gets expanded, visual glitches--
svn path=/trunk/KDE/kdelibs/; revision=1128971
2010-05-20 20:07:50 +00:00
Marco Martin
3aee2db14e make extender::groups() work without assigning groups to themselves
svn path=/trunk/KDE/kdelibs/; revision=1128236
2010-05-18 18:55:00 +00:00
Marco Martin
f26246c731 -groups of groups are always themselves, this fixes extender::groups()
-extra check a group is actually an extendergroup type

svn path=/trunk/KDE/kdelibs/; revision=1128074
2010-05-18 09:28:06 +00:00
Marco Martin
aca321d765 ensure the groups() list doesn't contain null pointer (could fix some bugs, but tendds to generate backtraces not directly obvious)
svn path=/trunk/KDE/kdelibs/; revision=1127890
2010-05-17 22:18:12 +00:00
Marco Martin
d29ea0a926 -is possible to drop items at any place of an extender group
-fix build

svn path=/trunk/KDE/kdelibs/; revision=1113376
2010-04-10 16:43:56 +00:00
Marco Martin
0c989d306f it's possible to drop items into extendergroups.
still not possible to chose the position, will come

svn path=/trunk/KDE/kdelibs/; revision=1113368
2010-04-10 16:15:52 +00:00
Marco Martin
63952c3a78 re add the automatic resize on sub items add and removal
svn path=/trunk/KDE/kdelibs/; revision=1113044
2010-04-09 19:13:46 +00:00
Marco Martin
937892d2ee remove an extenderitem from his group when is dragged away. makes drag and drop of items actually working
svn path=/trunk/KDE/kdelibs/; revision=1113017
2010-04-09 17:59:56 +00:00
Marco Martin
43a7dbe1f6 pile new extenderitems on top
svn path=/trunk/KDE/kdelibs/; revision=1112912
2010-04-09 13:23:08 +00:00
Marco Martin
3b3c111e48 tery with different size policies
svn path=/trunk/KDE/kdelibs/; revision=1112902
2010-04-09 13:05:48 +00:00
Marco Martin
5d28ad3e73 should not be needed anymore
svn path=/trunk/KDE/kdelibs/; revision=1112642
2010-04-08 18:44:24 +00:00
Marco Martin
2aa0b00d40 expanding seems to work better
svn path=/trunk/KDE/kdelibs/; revision=1112625
2010-04-08 17:32:43 +00:00
Marco Martin
2ab49f0057 preferred vertical size policy wasn't a good idea
svn path=/trunk/KDE/kdelibs/; revision=1112592
2010-04-08 15:52:26 +00:00
Marco Martin
e2f41fbb6c adjust extender size in an eventfilter, should catch more events
svn path=/trunk/KDE/kdelibs/; revision=1112590
2010-04-08 15:49:00 +00:00
Marco Martin
c93a690067 resize to proper size when the group expands
svn path=/trunk/KDE/kdelibs/; revision=1112554
2010-04-08 13:24:43 +00:00
Marco Martin
62ac00ba11 resize extender to this group preferred hint
svn path=/trunk/KDE/kdelibs/; revision=1112550
2010-04-08 13:19:17 +00:00
Marco Martin
fd5d33ee8a several layout fixes:
- extenderitem components have a fixed vertical size policy: they must not stretch when extenderitems are collapsed
- one hardcoded size less
-try to resize the internal scroller widget to sizehints in some case more

svn path=/trunk/KDE/kdelibs/; revision=1112347
2010-04-07 22:02:52 +00:00
Marco Martin
a163a59624 try to keep the parent widget of a more correct size
svn path=/trunk/KDE/kdelibs/; revision=1112159
2010-04-07 13:53:49 +00:00
Marco Martin
a45a7fe57a remove the widget from the layout if it's hidderemove the widget from the layout if it's hidden
svn path=/trunk/KDE/kdelibs/; revision=1112157
2010-04-07 13:48:43 +00:00
Marco Martin
9dc655c6df resize extender and the child widget to the size hint when needed
svn path=/trunk/KDE/kdelibs/; revision=1112153
2010-04-07 13:36:47 +00:00
Marco Martin
fa7a1ddfe9 guard returnToSourceAction pointer
svn path=/trunk/KDE/kdelibs/; revision=1112148
2010-04-07 13:17:55 +00:00
Aaron J. Seigo
556c51d2a5 * dump support for QGraphicsItems in Extenders. looks like it was already broken anyways (hooray for untested paths). supporting QGraphicsItems just doesn't make much sense anyways. this gets rid of a number of bugs and simplifies the code a lot
* use more QGraphicsWidget API and simplify the code even more
* put the title bar drawing into a class of its own, simplifying the code yet more
* use a Plasma::Label in the title bar so we don't have to draw our own text and ... well, you know what goes here by now ;)

one downside to this is that margins in title bar svg are *actually* honored, which means the titles take a bit more room. the svg can be tweaked, however.

svn path=/trunk/KDE/kdelibs/; revision=1111918
2010-04-07 02:04:52 +00:00
Aaron J. Seigo
d388ecebcb * get rid of an unneeded layout in the toolbox
* recycle items instead of recreating them constantly
* get the margins at the top actually correct (still not sure why the toobox doesn't paint it's own background to make that all easier)
* set tooltips on the return and close buttons

svn path=/trunk/KDE/kdelibs/; revision=1111883
2010-04-06 21:56:32 +00:00
Aaron J. Seigo
b1ca5781b9 * fix titleRect calculation
* move some more unneeded-if-titlerect-is-empty code beneath the short circuiting if statement in the paint method

svn path=/trunk/KDE/kdelibs/; revision=1111862
2010-04-06 20:42:25 +00:00
Aaron J. Seigo
61ca96b034 don't paint the title if there isn't a title to paint
svn path=/trunk/KDE/kdelibs/; revision=1111855
2010-04-06 20:26:05 +00:00
Marco Martin
65ca45681f put the proper margin on top of extenderitems
svn path=/trunk/KDE/kdelibs/; revision=1111853
2010-04-06 20:19:53 +00:00
Marco Martin
7d853de323 still experimental and to me made work better: extendergroups store items in a scrollwidget
svn path=/trunk/KDE/kdelibs/; revision=1109959
2010-04-01 11:43:51 +00:00
Marco Martin
1ce5890d24 toolbox positioning based on layouts
svn path=/trunk/KDE/kdelibs/; revision=1109934
2010-04-01 10:01:56 +00:00
Marco Martin
8f7d7bc782 crash--
svn path=/trunk/KDE/kdelibs/; revision=1109929
2010-04-01 09:22:22 +00:00
Marco Martin
5809b052d6 when is possible (i.e. when widget is actually a QGraphicsWidget) use real layouts
svn path=/trunk/KDE/kdelibs/; revision=1109927
2010-04-01 09:18:00 +00:00
Aaron J. Seigo
803bd9b463 since ExtenderItem relies on the Extender pointer it has, go through and delete all such items
svn path=/trunk/KDE/kdelibs/; revision=1107522
2010-03-25 21:44:45 +00:00
Aaron J. Seigo
813f6a088f clear this bit of code up
svn path=/trunk/KDE/kdelibs/; revision=1104111
2010-03-16 18:35:07 +00:00
Aaron J. Seigo
f9027d26fa * record where the mouse was in drag
* get the parenting right, prevents crashes
BUG:229566

svn path=/trunk/KDE/kdelibs/; revision=1099727
2010-03-06 01:43:44 +00:00
Aaron J. Seigo
362872435e catch the case where we have a containment, but the containment is not in a corona
BUG:214460

svn path=/trunk/KDE/kdelibs/; revision=1088122
2010-02-10 08:47:12 +00:00