diff --git a/ChangeLog b/ChangeLog index 1d7408ef84..bc4d803e5b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2004-10-08 Matthias Clasen + * gtk/gtktreeview.c (gtk_tree_view_grab_notify): Don't start a + drag if we loose the grab. + * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Set the cell renderer to inert mode to avoid bug #154921. This fixes a crash which would otherwise occur if the editing is stopped for the second diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 1d7408ef84..bc4d803e5b 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,5 +1,8 @@ 2004-10-08 Matthias Clasen + * gtk/gtktreeview.c (gtk_tree_view_grab_notify): Don't start a + drag if we loose the grab. + * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Set the cell renderer to inert mode to avoid bug #154921. This fixes a crash which would otherwise occur if the editing is stopped for the second diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 1d7408ef84..bc4d803e5b 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,5 +1,8 @@ 2004-10-08 Matthias Clasen + * gtk/gtktreeview.c (gtk_tree_view_grab_notify): Don't start a + drag if we loose the grab. + * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Set the cell renderer to inert mode to avoid bug #154921. This fixes a crash which would otherwise occur if the editing is stopped for the second diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 1d7408ef84..bc4d803e5b 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,5 +1,8 @@ 2004-10-08 Matthias Clasen + * gtk/gtktreeview.c (gtk_tree_view_grab_notify): Don't start a + drag if we loose the grab. + * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Set the cell renderer to inert mode to avoid bug #154921. This fixes a crash which would otherwise occur if the editing is stopped for the second diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c index ec59b810ca..ce8d659cc7 100644 --- a/gtk/gtktreeview.c +++ b/gtk/gtktreeview.c @@ -178,6 +178,8 @@ static gint gtk_tree_view_focus (GtkWidget *widget, static void gtk_tree_view_grab_focus (GtkWidget *widget); static void gtk_tree_view_style_set (GtkWidget *widget, GtkStyle *previous_style); +static void gtk_tree_view_grab_notify (GtkWidget *widget, + gboolean was_grabbed); /* container signals */ static void gtk_tree_view_remove (GtkContainer *container, @@ -513,6 +515,7 @@ gtk_tree_view_class_init (GtkTreeViewClass *class) widget_class->focus = gtk_tree_view_focus; widget_class->grab_focus = gtk_tree_view_grab_focus; widget_class->style_set = gtk_tree_view_style_set; + widget_class->grab_notify = gtk_tree_view_grab_notify; /* GtkContainer signals */ container_class->remove = gtk_tree_view_remove; @@ -12328,3 +12331,13 @@ _gtk_tree_view_set_hover_selection (GtkTreeView *tree_view, tree_view->priv->hover_selection = hover; } + +static void +gtk_tree_view_grab_notify (GtkWidget *widget, + gboolean was_grabbed) +{ + GtkTreeView *tree_view = GTK_TREE_VIEW (widget); + + if (!was_grabbed) + tree_view->priv->pressed_button = -1; +}