[gtk+] font chooser: Make repeated Escape cancel the dialog
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] font chooser: Make repeated Escape cancel the dialog
- Date: Tue, 11 Aug 2015 02:44:10 +0000 (UTC)
commit aa9dd72e8f9bdccd9ea8e6f4f019aa7d037be489
Author: Matthias Clasen <mclasen redhat com>
Date: Mon Aug 10 20:32:22 2015 +0200
font chooser: Make repeated Escape cancel the dialog
The first Escape clears the search entry, the second Escape
closes the dialog.
gtk/gtkfontchooserwidget.c | 16 +++++++++++++++-
1 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtkfontchooserwidget.c b/gtk/gtkfontchooserwidget.c
index 6f1701f..956119f 100644
--- a/gtk/gtkfontchooserwidget.c
+++ b/gtk/gtkfontchooserwidget.c
@@ -47,6 +47,7 @@
#include "gtktreeview.h"
#include "gtkwidget.h"
#include "gtksettings.h"
+#include "gtkdialog.h"
/**
* SECTION:gtkfontchooserwidget
@@ -310,7 +311,20 @@ static void
stop_search_cb (GtkEntry *entry,
GtkFontChooserWidget *fc)
{
- gtk_entry_set_text (entry, "");
+ if (gtk_entry_get_text (entry)[0] != 0)
+ gtk_entry_set_text (entry, "");
+ else
+ {
+ GtkWidget *dialog;
+ GtkWidget *button = NULL;
+
+ dialog = gtk_widget_get_ancestor (GTK_WIDGET (fc), GTK_TYPE_DIALOG);
+ if (dialog)
+ button = gtk_dialog_get_widget_for_response (GTK_DIALOG (dialog), GTK_RESPONSE_CANCEL);
+
+ if (button)
+ gtk_widget_activate (button);
+ }
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]