From 457370b19cefbc11eabb08a3954e322e219c3c42 Mon Sep 17 00:00:00 2001 From: Alexey Yakovenko Date: Thu, 11 Mar 2010 21:35:17 +0100 Subject: fixed listview redraw issue after single click on selected block --- plugins/gtkui/ddblistview.c | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/plugins/gtkui/ddblistview.c b/plugins/gtkui/ddblistview.c index 13f2b1ec..ca6a7698 100644 --- a/plugins/gtkui/ddblistview.c +++ b/plugins/gtkui/ddblistview.c @@ -1191,7 +1191,7 @@ ddb_listview_select_single (DdbListview *ps, int sel) { } void -ddb_listview_click_selection (DdbListview *ps, int ex, int ey, int prev_cursor, DdbListviewGroup *grp, int grp_index, int sel, int dnd) { +ddb_listview_click_selection (DdbListview *ps, int ex, int ey, DdbListviewGroup *grp, int grp_index, int sel, int dnd) { if (sel == -1 && (!grp || grp_index >= grp->num_items)) { // clicked empty space, deselect everything DdbListviewIter it; @@ -1244,24 +1244,12 @@ ddb_listview_click_selection (DdbListview *ps, int ex, int ey, int prev_cursor, ddb_listview_select_single (ps, sel); if (dnd) { ps->areaselect = 1; -// ps->areaselect_x = ex; ps->areaselect_y = ey + ps->scrollpos; -// ps->areaselect_dx = -1; -// ps->areaselect_dy = -1; ps->shift_sel_anchor = ps->binding->cursor (); } } else if (dnd) { ps->dragwait = 1; - DdbListviewIter item = ps->binding->get_for_idx (prev_cursor); - ddb_listview_draw_row (ps, prev_cursor, item); - UNREF (item); - int cursor = ps->binding->cursor (); - if (cursor != prev_cursor) { - DdbListviewIter item = ps->binding->get_for_idx (prev_cursor); - ddb_listview_draw_row (ps, cursor, item); - UNREF (item); - } } UNREF (it); } @@ -1338,7 +1326,7 @@ ddb_listview_list_mouse1_pressed (DdbListview *ps, int state, int ex, int ey, do // handle multiple selection if (!(state & (GDK_CONTROL_MASK|GDK_SHIFT_MASK))) { - ddb_listview_click_selection (ps, ex, ey, prev, grp, grp_index, sel, 1); + ddb_listview_click_selection (ps, ex, ey, grp, grp_index, sel, 1); } else if (state & GDK_CONTROL_MASK) { // toggle selection @@ -2316,7 +2304,7 @@ ddb_listview_list_button_press_event (GtkWidget *widget, if (sel != -1) { ps->binding->set_cursor (sel); } - ddb_listview_click_selection (ps, event->x, event->y, prev, grp, grp_index, sel, 0); + ddb_listview_click_selection (ps, event->x, event->y, grp, grp_index, sel, 0); if (sel == -1 && grp_index < grp->num_items) { sel = ps->binding->get_idx (grp->head); } -- cgit v1.2.3