all repos — tint2 @ 67d5bfcfce1f4d1cca337da411d450e8c8279738

fork of the tint2 desktop panel for my custom setup - only minimized windows across all desktops for the taskbar

Sort tasks on taskbar: handle task drag and drop (disabled, work in progress) - issue 478

git-svn-id: http://tint2.googlecode.com/svn/trunk@742 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
o9000 o9000
commit

67d5bfcfce1f4d1cca337da411d450e8c8279738

parent

82fe74743c93e56da29383c528d214604958cf9c

1 files changed, 14 insertions(+), 13 deletions(-)

jump to
M src/tint.csrc/tint.c

@@ -462,21 +462,22 @@ Task * event_task = click_task(panel, e->xbutton.x, e->xbutton.y);

// If the event takes place on the same taskbar as the task being dragged if(event_taskbar == task_drag->area.parent) { - // Swap the task_drag with the task on the event's location (if they differ) - if(event_task && event_task != task_drag) { - GSList * drag_iter = g_slist_find(event_taskbar->area.list, task_drag); - GSList * task_iter = g_slist_find(event_taskbar->area.list, event_task); - if(drag_iter && task_iter) { - gpointer temp = task_iter->data; - task_iter->data = drag_iter->data; - drag_iter->data = temp; - event_taskbar->area.resize = 1; - panel_refresh = 1; - task_dragged = 1; - } - } if (sort_tasks_method == TASKBAR_SORT_POSITION) { sort_tasks(event_taskbar); + } else { + // Swap the task_drag with the task on the event's location (if they differ) + if(event_task && event_task != task_drag) { + GSList * drag_iter = g_slist_find(event_taskbar->area.list, task_drag); + GSList * task_iter = g_slist_find(event_taskbar->area.list, event_task); + if(drag_iter && task_iter) { + gpointer temp = task_iter->data; + task_iter->data = drag_iter->data; + drag_iter->data = temp; + event_taskbar->area.resize = 1; + panel_refresh = 1; + task_dragged = 1; + } + } } } else { // The event is on another taskbar than the task being dragged