diff options
author | Alexander Larsson <alexl@src.gnome.org> | 2001-04-24 14:58:33 +0000 |
---|---|---|
committer | Alexander Larsson <alexl@src.gnome.org> | 2001-04-24 14:58:33 +0000 |
commit | c668063747cc787e6ae49c2a451bbc1a8ec24278 (patch) | |
tree | e322ad3c7b983f824fedec8d6183a1f57f79dc0e /gtk/gtkclist.c | |
parent | b84d2f1234b6a6c1fd42cab2541b563f2ad66615 (diff) | |
download | gtk+-c668063747cc787e6ae49c2a451bbc1a8ec24278.tar.gz |
i2001-04-24 Alexander Larsson <alexl@redhat.com>
* gtk/gtkclist.[ch]:
* gtk/gtkctree.c:
When there is a row highlighted for D'n'D it must alse
be painted hightlighted on exposes. Otherwise exposes from
the icon being dragged will mess up the hightlight.
* gtk/gtkfontsel.c:
Don't recenter selected font when exposing the font family
clist. This means you can now actually scroll the font family
list.
* gtk/gtknotebook.c:
Fix focus movement on scrolling tabs that are placed on the left
and right.
Diffstat (limited to 'gtk/gtkclist.c')
-rw-r--r-- | gtk/gtkclist.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gtk/gtkclist.c b/gtk/gtkclist.c index f0a88877dc..a32d4a4524 100644 --- a/gtk/gtkclist.c +++ b/gtk/gtkclist.c @@ -990,6 +990,8 @@ gtk_clist_init (GtkCList *clist) clist->compare = default_compare; clist->sort_type = GTK_SORT_ASCENDING; clist->sort_column = 0; + + clist->drag_highlight_row = -1; } /* Constructor */ @@ -4799,6 +4801,13 @@ gtk_clist_expose (GtkWidget *widget, /* exposure events on the list */ if (event->window == clist->clist_window) draw_rows (clist, &event->area); + + if (event->window == clist->clist_window && + clist->drag_highlight_row >= 0) + GTK_CLIST_GET_CLASS (clist)->draw_drag_highlight + (clist, g_list_nth (clist->row_list, + clist->drag_highlight_row)->data, + clist->drag_highlight_row, clist->drag_highlight_pos); } return FALSE; @@ -7483,6 +7492,7 @@ gtk_clist_drag_leave (GtkWidget *widget, (clist, g_list_nth (clist->row_list, dest_info->cell.row)->data, dest_info->cell.row, dest_info->insert_pos); + clist->drag_highlight_row = -1; break; } list = list->next; @@ -7573,6 +7583,9 @@ gtk_clist_drag_motion (GtkWidget *widget, (clist, g_list_nth (clist->row_list, dest_info->cell.row)->data, dest_info->cell.row, dest_info->insert_pos); + + clist->drag_highlight_row = dest_info->cell.row; + clist->drag_highlight_pos = dest_info->insert_pos; gdk_drag_status (context, context->suggested_action, time); } |