Author: kelnos
Date: 2006-07-12 23:20:44 +0000 (Wed, 12 Jul 2006)
New Revision: 22428

Modified:
   xfdesktop/trunk/src/xfdesktop-icon-view.c
Log:
kill the tip window on button press.  this makes DnD much easier, and also
avoids the tip window popping up after a menu is visible


Modified: xfdesktop/trunk/src/xfdesktop-icon-view.c
===================================================================
--- xfdesktop/trunk/src/xfdesktop-icon-view.c   2006-07-12 20:55:48 UTC (rev 
22427)
+++ xfdesktop/trunk/src/xfdesktop-icon-view.c   2006-07-12 23:20:44 UTC (rev 
22428)
@@ -397,8 +397,21 @@
     XfdesktopIcon *icon;
     
     if(evt->type == GDK_BUTTON_PRESS) {
-        GList *icon_l = g_list_find_custom(icon_view->priv->icons, evt,
-                                           
(GCompareFunc)xfdesktop_check_icon_clicked);
+        GList *icon_l;
+        
+        /* always hide the tooltip on button press */
+        if(icon_view->priv->tip_window
+           && GTK_WIDGET_VISIBLE(icon_view->priv->tip_window))
+        {
+            gtk_widget_hide(icon_view->priv->tip_window);
+        }
+        if(icon_view->priv->tip_show_id) {
+            g_source_remove(icon_view->priv->tip_show_id);
+            icon_view->priv->tip_show_id = 0;
+        }
+        
+        icon_l = g_list_find_custom(icon_view->priv->icons, evt,
+                                    
(GCompareFunc)xfdesktop_check_icon_clicked);
         if(icon_l && (icon = icon_l->data)) {
             if(g_list_find(icon_view->priv->selected_icons, icon)) {
                 /* clicked an already-selected icon */
@@ -879,7 +892,9 @@
             if(icon && xfdesktop_icon_get_extents(icon, &extents)
                && xfdesktop_rectangle_contains_point(&extents, evt->x, evt->y))
             {
-                if(icon != icon_view->priv->item_under_pointer) {
+                if(icon != icon_view->priv->item_under_pointer
+                   && !icon_view->priv->maybe_begin_drag)
+                {
                     /* show tip soon */
                     icon_view->priv->tip_show_id = 
g_timeout_add(icon_view->priv->tip_timeout,
                                                                  
xfdesktop_icon_view_show_tooltip,

_______________________________________________
Xfce4-commits mailing list
[email protected]
http://foo-projects.org/mailman/listinfo/xfce4-commits

Reply via email to