From d70a7476cd53b7986e6defd03f79f2bfb41a1015 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 7 Dec 2005 17:11:53 +0000 Subject: [PATCH] Use the correct window when synthesizing the key event. (#323077, Sadrul 2005-12-07 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct window when synthesizing the key event. (#323077, Sadrul Habib Chowdhury) (gtk_tree_view_search_key_press_event): Also listen for GDK_ISO_Left_Tab. (#323077, Sadrul Habib Chowdhury) --- ChangeLog | 9 +++++++++ ChangeLog.pre-2-10 | 9 +++++++++ gtk/gtktreeview.c | 8 +++++--- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index f1aab51271..d9f893de49 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2005-12-07 Matthias Clasen + + * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct + window when synthesizing the key event. (#323077, + Sadrul Habib Chowdhury) + + (gtk_tree_view_search_key_press_event): Also listen for + GDK_ISO_Left_Tab. (#323077, Sadrul Habib Chowdhury) + 2005-12-07 Ross Burton * docs/reference/gtk/tmpl/gtkenums.sgml: diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index f1aab51271..d9f893de49 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,12 @@ +2005-12-07 Matthias Clasen + + * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct + window when synthesizing the key event. (#323077, + Sadrul Habib Chowdhury) + + (gtk_tree_view_search_key_press_event): Also listen for + GDK_ISO_Left_Tab. (#323077, Sadrul Habib Chowdhury) + 2005-12-07 Ross Burton * docs/reference/gtk/tmpl/gtkenums.sgml: diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c index 57fea1fce2..b1fd41100c 100644 --- a/gtk/gtktreeview.c +++ b/gtk/gtktreeview.c @@ -4457,7 +4457,7 @@ gtk_tree_view_key_press (GtkWidget *widget, old_text = g_strdup (gtk_entry_get_text (GTK_ENTRY (tree_view->priv->search_entry))); new_event = gdk_event_copy ((GdkEvent *) event); g_object_unref (((GdkEventKey *) new_event)->window); - ((GdkEventKey *) new_event)->window = g_object_ref (tree_view->priv->search_entry->window); + ((GdkEventKey *) new_event)->window = g_object_ref (tree_view->priv->search_window->window); gtk_widget_realize (tree_view->priv->search_window); popup_menu_id = g_signal_connect (tree_view->priv->search_entry, @@ -4473,7 +4473,7 @@ gtk_tree_view_key_press (GtkWidget *widget, /* Send the event to the window. If the preedit_changed signal is emitted * during this event, we will set priv->imcontext_changed */ tree_view->priv->imcontext_changed = FALSE; - retval = gtk_widget_event (tree_view->priv->search_entry, new_event); + retval = gtk_widget_event (tree_view->priv->search_window, new_event); gdk_event_free (new_event); gtk_widget_hide (tree_view->priv->search_window); @@ -12734,7 +12734,9 @@ gtk_tree_view_search_key_press_event (GtkWidget *widget, /* close window and cancel the search */ if (event->keyval == GDK_Escape || - event->keyval == GDK_Tab) + event->keyval == GDK_Tab || + event->keyval == GDK_KP_Tab || + event->keyval == GDK_ISO_Left_Tab) { gtk_tree_view_search_dialog_hide (widget, tree_view); return TRUE;