[Mono-bugs] [Bug 381876] SystemInformation.DragSize is not taken into account

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Wed Aug 20 17:17:03 EDT 2008


User calberto.cortez at gmail.com added comment

--- Comment #9 from Carlos Alberto Cortez <calberto.cortez at gmail.com>  2008-08-20 15:17:02 MDT ---
I committed in rev 111181 a fix to not fire any DragOver event until actually
pointer moves around.

Now, I went and check what I knew, just to be sure: SystemInformation.DragSize
is used mostly by TreeView/ListView (and probably other classes) to fire their
ItemDrag events, but not actually by Control.DoDragDrop.

To test that, I took your sample and modified it to log the MouseMove,
MouseDown, DragEnter and DragOver events, together with their positions, and
this is what I got (in .Net, of course) :

GroupBox => MouseMove Loc{X=264,Y=87}
GroupBox => MouseMove Loc{X=263,Y=86}
GroupBox => MouseDown Loc{X=263,Y=86} 
GroupBox => DragEnter Loc{X=263,Y=86} -> same loc that MouseDown
GroupBox => MouseMove Loc{X=263,Y=86}
GroupBox => MouseDown Loc{X=263,Y=86}
GroupBox => DragEnter Loc{X=264,Y=87}
GroupBox => DragOver Loc{X=264,Y=87} -> 1 offset respect to original loc
GroupBox => DragOver Loc{X=264,Y=87}

As you can see, DragEnter is fired in the same position as MouseDown, which
means that the dnd operation has actually already begun. And second, it seems
that the DragOver events are fired after the minimal movement of the pointer,
as you can see in the DragOver events, only by a 1 offset with respect to the
original MouseDown/DragEnter location (also take into account that DragSize
here is 4x4 pixels).

In other words, DragSize is not used to begin the operation here, but actually
in TreeView/ListView and their respective ItemDrag events.

Hopefully that was clear ;-D


Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

More information about the mono-bugs mailing list