]> Dogcows Code - chaz/tint2/commitdiff
consistency : drag n drop task between desktop will not change active desktop (as...
authorThierry Lorthiois <lorthiois@bbsoft.fr>
Tue, 9 Feb 2010 20:19:49 +0000 (20:19 +0000)
committerThierry Lorthiois <lorthiois@bbsoft.fr>
Tue, 9 Feb 2010 20:19:49 +0000 (20:19 +0000)
src/tint.c

index c8521a04e584d74718fd29959eb297741133dbe9..23970f087b32a91208cd67881bdc0cf48922f07b 100644 (file)
@@ -308,7 +308,7 @@ void event_button_motion_notify (XEvent *e)
        Panel * panel = get_panel(e->xany.window);
        if(!panel || !task_drag)
                return;
+
        // Find the taskbar on the event's location
        Taskbar * event_taskbar = click_taskbar(panel, e->xbutton.x, e->xbutton.y);
        if(event_taskbar == NULL)
@@ -407,12 +407,6 @@ void event_button_release (XEvent *e)
                return;
        }
 
-       // switch desktop
-       if (panel_mode == MULTI_DESKTOP) {
-               if (tskbar->desktop != server.desktop && action != CLOSE && action != DESKTOP_LEFT && action != DESKTOP_RIGHT)
-                       set_desktop (tskbar->desktop);
-       }
-
        // drag and drop task
        if (task_dragged) {
                task_drag = 0;
@@ -420,6 +414,12 @@ void event_button_release (XEvent *e)
                return;
        }
 
+       // switch desktop
+       if (panel_mode == MULTI_DESKTOP) {
+               if (tskbar->desktop != server.desktop && action != CLOSE && action != DESKTOP_LEFT && action != DESKTOP_RIGHT)
+                       set_desktop (tskbar->desktop);
+       }
+
        // action on task
        window_action( click_task(panel, e->xbutton.x, e->xbutton.y), action);
 
@@ -789,7 +789,7 @@ int main (int argc, char *argv[])
                                                unsigned int button_mask = Button1Mask | Button2Mask | Button3Mask | Button4Mask | Button5Mask;
                                                if (e.xmotion.state & button_mask)
                                                        event_button_motion_notify (&e);
-                                               
+
                                                if (!g_tooltip.enabled) break;
                                                Panel* panel = get_panel(e.xmotion.window);
                                                Area* area = click_area(panel, e.xmotion.x, e.xmotion.y);
This page took 0.028109 seconds and 4 git commands to generate.