Drag and drop optimization

Lubos Lunak kde-optimize@mail.kde.org
Tue, 4 Feb 2003 14:19:44 +0100


On Tuesday 04 of February 2003 14:08, Waldo Bastian wrote:
[snip]
> >  See http://www.newplanetsoftware.com/xdnd/ , section 'Client messages',
> > description of 'XdndStatus'. The 'sameanswer' area is a rectangle where
> > it doesn't make sense to send additional move events, because ... well,
> > the answer from that area will be always the same. Sounds simple, but
> > getting it from Qt widgets may not be as easy.
>
> What I mean is that QDragMoveEvent specifically foresees in such rectangle.
> I would assume that Qt uses that information for this Xdnd 'sameanswer'
> area.

 No, the accept and sameanswer areas are different. The sooner one is a place 
where the widget will accept the drop, while the latter is a place where the 
app will always have the same reaction to the drag, be it accepting, 
refusing, or whatever.

 After quickly checking the sources, Qt simply sets 5x5 as the sameanswer area 
*shrug*.

>
> > > If that helps we might want to scan KDE source for this kind of usage
> > > and set appropriate acceopt/ignore rects.
> >
> >  I actually don't find that necessary and worth it. Would you be really
> > that happier to see that DND operations take only let's say 10% CPU
> > instead of 100% for the short amount of time you do the DND operation?
>
> I never say no to extra cpu cycles :)

 Well, given that extra cpu cycles involve extra work, can that be intepreted 
also as 'I never say no to extra work'  >;) ? But seriously, with the patch 
causing droppping of superfluous move events, the only difference from the 
user's point of view should be the size of the CPU usage bar in ktimemon or 
whatever, unless the computer is really slow.

-- 
Lubos Lunak
KDE developer
---------------------------------------------------------------------
SuSE CR, s.r.o.  e-mail: l.lunak@suse.cz , l.lunak@kde.org
Drahobejlova 27  tel: +420 2 9654 2373
190 00 Praha 9   fax: +420 2 9654 2374
Czech Republic   http://www.suse.cz/