Author: calberto
Date: 2007-12-23 16:44:04 -0500 (Sun, 23 Dec 2007)
New Revision: 91844

Modified:
   trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog
   trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ListView.cs
Log:
2007-12-23  Carlos Alberto Cortez <[EMAIL PROTECTED]>

        * ListView.cs: In ItemControl.ItemsMouseMove, try to avoid
        calling GetItemAt for every MouseMove event by also taking into
        account whether any mouse button is pressed (probably dragging); 
        if so, we can call GetItemAt, and if not, try to not call it 
        (GetItemAt can be quite expensive when used with a large number of 
items).



Modified: trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog
===================================================================
--- trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog        
2007-12-23 21:18:32 UTC (rev 91843)
+++ trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog        
2007-12-23 21:44:04 UTC (rev 91844)
@@ -1,3 +1,11 @@
+2007-12-23  Carlos Alberto Cortez <[EMAIL PROTECTED]>
+
+       * ListView.cs: In ItemControl.ItemsMouseMove, try to avoid
+       calling GetItemAt for every MouseMove event by also taking into
+       account whether any mouse button is pressed (probably dragging); 
+       if so, we can call GetItemAt, and if not, try to not call it 
+       (GetItemAt can be quite expensive when used with a large number of 
items).
+
 2007-12-22  Carlos Alberto Cortez <[EMAIL PROTECTED]>
 
        * ListView.cs: Implement -finally- support for dnd, by calling

Modified: trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ListView.cs
===================================================================
--- trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ListView.cs      
2007-12-23 21:18:32 UTC (rev 91843)
+++ trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ListView.cs      
2007-12-23 21:44:04 UTC (rev 91844)
@@ -2578,9 +2578,10 @@
 
                                if (done)
                                        return;
-                               if (!hover_processed && owner.Activation != 
ItemActivation.OneClick
+                               if ((me.Button != MouseButtons.Left && 
me.Button != MouseButtons.Right) &&
+                                       !hover_processed && owner.Activation != 
ItemActivation.OneClick
 #if NET_2_0
-                                               && !owner.ShowItemToolTips
+                                       && !owner.ShowItemToolTips
 #endif
                                                )
                                        return;

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to