|
|
4b6aa8 |
From 251d1783834f2da5f5219f6102d69b74636772bd Mon Sep 17 00:00:00 2001
|
|
|
4b6aa8 |
From: Jakub Filak <jfilak@redhat.com>
|
|
|
4b6aa8 |
Date: Fri, 18 Jul 2014 13:44:53 +0200
|
|
|
4b6aa8 |
Subject: [LIBREPORT PATCH 47/93] gui: close ask dialogues on Enter key
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
Related to rhbz#1067123
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
Signed-off-by: Jakub Filak <jfilak@redhat.com>
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
Conflicts:
|
|
|
4b6aa8 |
src/gui-wizard-gtk/wizard.c
|
|
|
4b6aa8 |
---
|
|
|
4b6aa8 |
src/gtk-helpers/ask_dialogs.c | 7 ++++++-
|
|
|
4b6aa8 |
src/gui-wizard-gtk/wizard.c | 3 +++
|
|
|
4b6aa8 |
2 files changed, 9 insertions(+), 1 deletion(-)
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
diff --git a/src/gtk-helpers/ask_dialogs.c b/src/gtk-helpers/ask_dialogs.c
|
|
|
4b6aa8 |
index d188dc5..81beea4 100644
|
|
|
4b6aa8 |
--- a/src/gtk-helpers/ask_dialogs.c
|
|
|
4b6aa8 |
+++ b/src/gtk-helpers/ask_dialogs.c
|
|
|
4b6aa8 |
@@ -81,8 +81,11 @@ static int run_ask_yes_no_save_generic_result_dialog(ask_yes_no_dialog_flags fla
|
|
|
4b6aa8 |
/* let's try to use the text as markup
|
|
|
4b6aa8 |
* this allows us to use hyperlinks to man pages */
|
|
|
4b6aa8 |
gtk_message_dialog_set_markup(GTK_MESSAGE_DIALOG(dialog), message);
|
|
|
4b6aa8 |
- gtk_dialog_add_button(GTK_DIALOG(dialog), _("_Yes"), GTK_RESPONSE_YES);
|
|
|
4b6aa8 |
+ /* Follow GTK3's yes-no-buttons order:
|
|
|
4b6aa8 |
+ * [No] [Yes]
|
|
|
4b6aa8 |
+ */
|
|
|
4b6aa8 |
GtkWidget *no_button = gtk_dialog_add_button(GTK_DIALOG(dialog), _("_No"), GTK_RESPONSE_NO);
|
|
|
4b6aa8 |
+ gtk_dialog_add_button(GTK_DIALOG(dialog), _("_Yes"), GTK_RESPONSE_YES);
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
gint response = GTK_RESPONSE_NO;
|
|
|
4b6aa8 |
g_signal_connect(G_OBJECT(dialog), "response",
|
|
|
4b6aa8 |
@@ -101,6 +104,8 @@ static int run_ask_yes_no_save_generic_result_dialog(ask_yes_no_dialog_flags fla
|
|
|
4b6aa8 |
G_CALLBACK(on_toggle_ask_yes_no_yesforever_cb), (gpointer)no_button);
|
|
|
4b6aa8 |
}
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
+ /* Esc -> No, Enter -> Yes */
|
|
|
4b6aa8 |
+ gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_YES);
|
|
|
4b6aa8 |
gtk_widget_show(ask_yes_no_cb);
|
|
|
4b6aa8 |
gtk_dialog_run(GTK_DIALOG(dialog));
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
diff --git a/src/gui-wizard-gtk/wizard.c b/src/gui-wizard-gtk/wizard.c
|
|
|
4b6aa8 |
index 197492a..1fbe290 100644
|
|
|
4b6aa8 |
--- a/src/gui-wizard-gtk/wizard.c
|
|
|
4b6aa8 |
+++ b/src/gui-wizard-gtk/wizard.c
|
|
|
4b6aa8 |
@@ -1635,6 +1635,7 @@ static char *ask_helper(const char *msg, void *args, bool password)
|
|
|
4b6aa8 |
GTK_BUTTONS_OK_CANCEL,
|
|
|
4b6aa8 |
"%s", msg);
|
|
|
4b6aa8 |
char *tagged_msg = tag_url(msg, "\n");
|
|
|
4b6aa8 |
+ gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_OK);
|
|
|
4b6aa8 |
gtk_message_dialog_set_markup(GTK_MESSAGE_DIALOG(dialog), tagged_msg);
|
|
|
4b6aa8 |
free(tagged_msg);
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
@@ -1687,6 +1688,8 @@ static int run_event_gtk_ask_yes_no(const char *msg, void *args)
|
|
|
4b6aa8 |
gtk_message_dialog_set_markup(GTK_MESSAGE_DIALOG(dialog), tagged_msg);
|
|
|
4b6aa8 |
free(tagged_msg);
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
+ /* Esc -> No, Enter -> Yes */
|
|
|
4b6aa8 |
+ gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_YES);
|
|
|
4b6aa8 |
const int ret = gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_YES;
|
|
|
4b6aa8 |
|
|
|
4b6aa8 |
gtk_widget_destroy(dialog);
|
|
|
4b6aa8 |
--
|
|
|
4b6aa8 |
1.8.3.1
|
|
|
4b6aa8 |
|