> On 2008-12-09 11:51:36, Aaron Seigo wrote: > > i think the idea is a good one; and even on an arm system (float vs double) > > we still get over 16000 offscreen widgets this way, and if we wanted more > > we could put them in a two dimensional grid instead of a lineary array on > > the canvas. > > > > the implementation could use some tweaks perhaps though:
All valid points, I'll update the diff. Ok to commit? - Rob ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviewboard.vidsolbach.de/r/296/#review284 ----------------------------------------------------------- On 2008-12-09 11:03:40, Rob Scheepmaker wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviewboard.vidsolbach.de/r/296/ > ----------------------------------------------------------- > > (Updated 2008-12-09 11:03:40) > > > Review request for Plasma. > > > Summary > ------- > > Currently, offscreen widgets are managed by a QGraphicsGridLayout in the > topleft quadrant of the scene. This brings some issues though: > * As we know, QGL's have some known issues. Working with them can sometimes > be a little fragile, and there are workarounds in the code (in popupapplet > for example) to work around problems with them. > * Each time a widget changes size, other offscreen widgets inevitably move, > forcing all top level views to reposition and redraw themselves. When this > happens you can notice a slight lag. > * I've seen screenshots of a problem where certain widgets partly overlap in > a toplevel view. This might have been a temporary bug, or something that > happens rarely, but I think it demonstrates the fragile nature of the current > approach. > > Out of curiosity, I've tried experimenting with a different approach. With > this patch, corona will position each offscreen widget in their own reserved > sector with a size of QMAXWIDGETSIZE. This way, each widget can grow and > shrink without influencing others, and it will never require us to work > around layout bugs. After some changes to extenderitem (since it assumed it > would always be resized after moving offscreen, which was the case before), > this works quite good actually. It feels snappier while dragging extender > items around, and the code looks simpler and less hacky. > > This is a change with more impact then your avarage bugfix though, so I would > like to now what you think of this new offscreen widget implementation. > > > Diffs > ----- > > /trunk/KDE/kdelibs/plasma/corona.cpp > /trunk/KDE/kdelibs/plasma/extender.cpp > /trunk/KDE/kdelibs/plasma/extenderitem.cpp > /trunk/KDE/kdelibs/plasma/popupapplet.cpp > /trunk/KDE/kdelibs/plasma/private/extenderitem_p.h > > Diff: http://reviewboard.vidsolbach.de/r/296/diff > > > Testing > ------- > > > Thanks, > > Rob > > _______________________________________________ Plasma-devel mailing list [email protected] https://mail.kde.org/mailman/listinfo/plasma-devel
