summaryrefslogtreecommitdiff
path: root/plugins/gtkui/ddblistview.c
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-03-11 21:35:17 +0100
committerGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-03-11 21:35:17 +0100
commit457370b19cefbc11eabb08a3954e322e219c3c42 (patch)
tree3b37537f5b783ba8566d64148e25b8e585d5c5e8 /plugins/gtkui/ddblistview.c
parentdcabb2614f08eb07a118c545e8df7af8cf898148 (diff)
fixed listview redraw issue after single click on selected block
Diffstat (limited to 'plugins/gtkui/ddblistview.c')
-rw-r--r--plugins/gtkui/ddblistview.c18
1 files 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);
}