summaryrefslogtreecommitdiff
path: root/plugins/dfinput/cfg-gtk2.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/dfinput/cfg-gtk2.c')
-rw-r--r--plugins/dfinput/cfg-gtk2.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/plugins/dfinput/cfg-gtk2.c b/plugins/dfinput/cfg-gtk2.c
index a0e34647..c2013833 100644
--- a/plugins/dfinput/cfg-gtk2.c
+++ b/plugins/dfinput/cfg-gtk2.c
@@ -213,6 +213,13 @@ static void UpdateKey() {
}
static void OnConfigExit(GtkWidget *widget, gpointer user_data) {
+ gtk_widget_destroy(widget);
+ SDL_Quit();
+
+ gtk_exit(0);
+}
+
+static void OnConfigOk(GtkWidget *widget, gpointer user_data) {
SaveConfig();
gtk_widget_destroy(widget);
@@ -560,9 +567,13 @@ long PADconfigure() {
g_signal_connect_data(GTK_OBJECT(widget), "delete_event",
GTK_SIGNAL_FUNC(OnConfigExit), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btnclose");
+ widget = glade_xml_get_widget(xml, "btncancel");
+ g_signal_connect_data(GTK_OBJECT(widget), "clicked",
+ GTK_SIGNAL_FUNC(OnConfigExit), NULL, NULL, G_CONNECT_AFTER);
+
+ widget = glade_xml_get_widget(xml, "btnok");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- GTK_SIGNAL_FUNC(OnConfigExit), xml, NULL, G_CONNECT_AFTER);
+ GTK_SIGNAL_FUNC(OnConfigOk), xml, NULL, G_CONNECT_AFTER);
PopulateDevList();
UpdateKeyList();