From d1c38ae02c02a54f7ccf12b38d66c4af98b17361 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Thu, 31 May 2012 07:06:31 -0400 Subject: [PATCH] get rid of the OK button in the search dialog --- termite.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/termite.c b/termite.c index 4fb919b..24a7826 100644 --- a/termite.c +++ b/termite.c @@ -45,6 +45,14 @@ static void search_response_cb(GtkDialog *dialog, gint response_id, search_dialo info->open = false; } +static gboolean search_key_press_cb(__attribute__((unused)) GtkDialog *entry, GdkEventKey *event, GtkDialog *dialog) { + if (event->keyval == GDK_KEY_Return) { + gtk_dialog_response(dialog, GTK_RESPONSE_ACCEPT); + return TRUE; + } + return FALSE; +} + static void open_search_dialog(GtkWidget *vte, bool reverse, search_dialog_info *info) { info->reverse = reverse; @@ -59,15 +67,12 @@ static void open_search_dialog(GtkWidget *vte, bool reverse, search_dialog_info dialog = gtk_dialog_new_with_buttons("Search", GTK_WINDOW(gtk_widget_get_toplevel(vte)), GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_STOCK_OK, - GTK_RESPONSE_ACCEPT, NULL); - content_area = gtk_dialog_get_content_area(GTK_DIALOG(dialog)); + g_signal_connect(dialog, "response", G_CALLBACK(search_response_cb), info); + g_signal_connect(info->entry, "key-press-event", G_CALLBACK(search_key_press_cb), dialog); - gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_ACCEPT); - gtk_entry_set_activates_default(GTK_ENTRY(info->entry), TRUE); - + content_area = gtk_dialog_get_content_area(GTK_DIALOG(dialog)); gtk_container_add(GTK_CONTAINER(content_area), info->entry); gtk_widget_show_all(dialog); gtk_widget_grab_focus(GTK_WIDGET(info->entry));