+Sun Mar 24 10:32:38 2002 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653
+
+ * gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
+ a warning
+
+ * gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
+ when we emit row_activated so that listeners of this signal can
+ grab the mouse, #75629
+
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
+Sun Mar 24 10:32:38 2002 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653
+
+ * gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
+ a warning
+
+ * gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
+ when we emit row_activated so that listeners of this signal can
+ grab the mouse, #75629
+
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
+Sun Mar 24 10:32:38 2002 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653
+
+ * gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
+ a warning
+
+ * gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
+ when we emit row_activated so that listeners of this signal can
+ grab the mouse, #75629
+
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
+Sun Mar 24 10:32:38 2002 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653
+
+ * gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
+ a warning
+
+ * gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
+ when we emit row_activated so that listeners of this signal can
+ grab the mouse, #75629
+
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
+Sun Mar 24 10:32:38 2002 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653
+
+ * gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
+ a warning
+
+ * gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
+ when we emit row_activated so that listeners of this signal can
+ grab the mouse, #75629
+
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
+Sun Mar 24 10:32:38 2002 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653
+
+ * gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
+ a warning
+
+ * gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
+ when we emit row_activated so that listeners of this signal can
+ grab the mouse, #75629
+
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
fontsel->face = match_face;
if (match_face)
{
+#ifdef INCLUDE_FONT_ENTRIES
const gchar *str = pango_font_face_get_face_name (fontsel->face);
-#ifdef INCLUDE_FONT_ENTRIES
gtk_entry_set_text (GTK_ENTRY (fontsel->font_style_entry), str);
#endif
set_cursor_to_iter (GTK_TREE_VIEW (fontsel->face_list), &match_row);
* Return value: A new #GtkTreePath.
**/
GtkTreePath *
-gtk_tree_path_copy (GtkTreePath *path)
+gtk_tree_path_copy (const GtkTreePath *path)
{
GtkTreePath *retval;
gint gtk_tree_path_get_depth (GtkTreePath *path);
gint *gtk_tree_path_get_indices (GtkTreePath *path);
void gtk_tree_path_free (GtkTreePath *path);
-GtkTreePath *gtk_tree_path_copy (GtkTreePath *path);
+GtkTreePath *gtk_tree_path_copy (const GtkTreePath *path);
GType gtk_tree_path_get_type (void);
gint gtk_tree_path_compare (const GtkTreePath *a,
const GtkTreePath *b);
gint pre_val, aft_val;
GtkTreeViewColumn *column = NULL;
gint column_handled_click = FALSE;
+ gboolean emit_row_activated = FALSE;
if (!GTK_WIDGET_HAS_FOCUS (widget))
gtk_widget_grab_focus (widget);
if (event->button == 1 && event->type == GDK_2BUTTON_PRESS &&
tree_view->priv->last_single_clicked)
{
- GtkTreePath *lsc = gtk_tree_row_reference_get_path (tree_view->priv->last_single_clicked);
+ GtkTreePath *lsc;
- if (lsc)
- {
- if (!gtk_tree_path_compare (lsc, path))
- gtk_tree_view_row_activated (tree_view, path, column);
- gtk_tree_path_free (lsc);
- }
+ lsc = gtk_tree_row_reference_get_path (tree_view->priv->last_single_clicked);
if (tree_view->priv->last_single_clicked)
gtk_tree_row_reference_free (tree_view->priv->last_single_clicked);
gtk_tree_row_reference_free (tree_view->priv->last_single_clicked_2);
tree_view->priv->last_single_clicked = NULL;
tree_view->priv->last_single_clicked_2 = NULL;
+
+ if (lsc)
+ {
+ if (!gtk_tree_path_compare (lsc, path))
+ emit_row_activated = TRUE;
+ gtk_tree_path_free (lsc);
+ }
}
else if (event->button == 1 && event->type == GDK_BUTTON_PRESS)
{
GTK_TREE_VIEW_UNSET_FLAG (tree_view, GTK_TREE_VIEW_DRAW_KEYFOCUS);
gtk_tree_path_free (path);
+
+ if (emit_row_activated)
+ {
+ gtk_grab_remove (widget);
+ gtk_tree_view_row_activated (tree_view, path, column);
+ }
return TRUE;
}