diff options
author | Lars Hamann <lars@gtk.org> | 1999-01-17 23:44:18 +0000 |
---|---|---|
committer | Lars Hamann <lars@src.gnome.org> | 1999-01-17 23:44:18 +0000 |
commit | c9a2b791760f536b56fe5d9c7718052a4563a9fc (patch) | |
tree | fcee9f25a5a284c304c9457c3274ff6784efd2f3 | |
parent | e65030aaed38522735b1959bad28143445357c4d (diff) | |
download | gdk-pixbuf-c9a2b791760f536b56fe5d9c7718052a4563a9fc.tar.gz |
block drag source signal handler during column resizes.
Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org>
* gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release):
block drag source signal handler during column resizes.
(gtk_clist_set_column_visibility): resize clist if needed.
(gtk_clist_map): raise resize windows to make resize
cursor visible again.
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-0 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-2 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 8 | ||||
-rw-r--r-- | gtk/gtkclist.c | 23 |
8 files changed, 76 insertions, 3 deletions
@@ -1,3 +1,11 @@ +Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org> + + * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release): + block drag source signal handler during column resizes. + (gtk_clist_set_column_visibility): resize clist if needed. + (gtk_clist_map): raise resize windows to make resize + cursor visible again. + Sun Jan 17 22:47:15 1999 Tim Janik <timj@gtk.org> * gtk/gtkwidget.[hc]: diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index aac5b8899..74a2c072a 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,11 @@ +Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org> + + * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release): + block drag source signal handler during column resizes. + (gtk_clist_set_column_visibility): resize clist if needed. + (gtk_clist_map): raise resize windows to make resize + cursor visible again. + Sun Jan 17 22:47:15 1999 Tim Janik <timj@gtk.org> * gtk/gtkwidget.[hc]: diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index aac5b8899..74a2c072a 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,11 @@ +Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org> + + * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release): + block drag source signal handler during column resizes. + (gtk_clist_set_column_visibility): resize clist if needed. + (gtk_clist_map): raise resize windows to make resize + cursor visible again. + Sun Jan 17 22:47:15 1999 Tim Janik <timj@gtk.org> * gtk/gtkwidget.[hc]: diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index aac5b8899..74a2c072a 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,11 @@ +Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org> + + * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release): + block drag source signal handler during column resizes. + (gtk_clist_set_column_visibility): resize clist if needed. + (gtk_clist_map): raise resize windows to make resize + cursor visible again. + Sun Jan 17 22:47:15 1999 Tim Janik <timj@gtk.org> * gtk/gtkwidget.[hc]: diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index aac5b8899..74a2c072a 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,11 @@ +Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org> + + * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release): + block drag source signal handler during column resizes. + (gtk_clist_set_column_visibility): resize clist if needed. + (gtk_clist_map): raise resize windows to make resize + cursor visible again. + Sun Jan 17 22:47:15 1999 Tim Janik <timj@gtk.org> * gtk/gtkwidget.[hc]: diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index aac5b8899..74a2c072a 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,11 @@ +Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org> + + * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release): + block drag source signal handler during column resizes. + (gtk_clist_set_column_visibility): resize clist if needed. + (gtk_clist_map): raise resize windows to make resize + cursor visible again. + Sun Jan 17 22:47:15 1999 Tim Janik <timj@gtk.org> * gtk/gtkwidget.[hc]: diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index aac5b8899..74a2c072a 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,11 @@ +Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org> + + * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release): + block drag source signal handler during column resizes. + (gtk_clist_set_column_visibility): resize clist if needed. + (gtk_clist_map): raise resize windows to make resize + cursor visible again. + Sun Jan 17 22:47:15 1999 Tim Janik <timj@gtk.org> * gtk/gtkwidget.[hc]: diff --git a/gtk/gtkclist.c b/gtk/gtkclist.c index 6cf880e8d..63cf36ff3 100644 --- a/gtk/gtkclist.c +++ b/gtk/gtkclist.c @@ -1651,6 +1651,8 @@ gtk_clist_set_column_visibility (GtkCList *clist, else gtk_widget_hide (clist->column[column].button); } + + gtk_widget_queue_resize (GTK_WIDGET(clist)); } void @@ -4611,11 +4613,13 @@ gtk_clist_map (GtkWidget *widget) !GTK_WIDGET_MAPPED (clist->column[i].button)) gtk_widget_map (clist->column[i].button); - /* map resize windows AFTER column buttons (above) */ for (i = 0; i < clist->columns; i++) if (clist->column[i].window && clist->column[i].button) - gdk_window_show (clist->column[i].window); - + { + gdk_window_raise (clist->column[i].window); + gdk_window_show (clist->column[i].window); + } + gdk_window_show (clist->title_window); gdk_window_show (clist->clist_window); gdk_window_show (widget->window); @@ -4998,6 +5002,8 @@ gtk_clist_button_press (GtkWidget *widget, if (clist->column[i].resizeable && clist->column[i].window && event->window == clist->column[i].window) { + gpointer drag_data; + gdk_pointer_grab (clist->column[i].window, FALSE, GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON1_MOTION_MASK | @@ -5006,6 +5012,11 @@ gtk_clist_button_press (GtkWidget *widget, gtk_grab_add (widget); GTK_CLIST_SET_FLAG (clist, CLIST_IN_DRAG); + /* block attached dnd signal handler */ + drag_data = gtk_object_get_data (GTK_OBJECT (clist), "gtk-site-data"); + if (drag_data) + gtk_signal_handler_block_by_data (GTK_OBJECT (clist), drag_data); + if (!GTK_WIDGET_HAS_FOCUS(widget)) gtk_widget_grab_focus (widget); @@ -5040,6 +5051,7 @@ gtk_clist_button_release (GtkWidget *widget, /* release on resize windows */ if (GTK_CLIST_IN_DRAG(clist)) { + gpointer drag_data; gint width; gint x; gint i; @@ -5047,6 +5059,11 @@ gtk_clist_button_release (GtkWidget *widget, i = clist->drag_pos; clist->drag_pos = -1; + /* unblock attached dnd signal handler */ + drag_data = gtk_object_get_data (GTK_OBJECT (clist), "gtk-site-data"); + if (drag_data) + gtk_signal_handler_unblock_by_data (GTK_OBJECT (clist), drag_data); + GTK_CLIST_UNSET_FLAG (clist, CLIST_IN_DRAG); gtk_widget_get_pointer (widget, &x, NULL); gtk_grab_remove (widget); |