summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <wakeroid@gmail.com>2009-11-07 16:48:24 +0100
committerGravatar Alexey Yakovenko <wakeroid@gmail.com>2009-11-07 16:48:24 +0100
commitda7470b473f0eb55af70e7c124b1cbafb0aa64b4 (patch)
treef31a2f556c3c70d7ba3a9424d8fea62c7c326060
parentecd2e4f2e06dd0033ce374261f4b236ccccd8b32 (diff)
Escape key closes preferences window
-rw-r--r--callbacks.c16
-rw-r--r--callbacks.h5
-rw-r--r--deadbeef.glade1
-rw-r--r--interface.c3
4 files changed, 23 insertions, 2 deletions
diff --git a/callbacks.c b/callbacks.c
index 93325540..213e4b32 100644
--- a/callbacks.c
+++ b/callbacks.c
@@ -1341,9 +1341,8 @@ on_helpwindow_key_press_event (GtkWidget *widget,
if (event->keyval == GDK_Escape) {
gtk_widget_hide (widget);
gtk_widget_destroy (widget);
-// g_object_unref (widget);
}
- return FALSE;
+ return FALSE;
}
@@ -1680,3 +1679,16 @@ on_pref_network_proxytype_changed (GtkComboBox *combobox,
}
}
+
+gboolean
+on_prefwin_key_press_event (GtkWidget *widget,
+ GdkEventKey *event,
+ gpointer user_data)
+{
+ if (event->keyval == GDK_Escape) {
+ gtk_widget_hide (widget);
+ gtk_widget_destroy (widget);
+ }
+ return FALSE;
+}
+
diff --git a/callbacks.h b/callbacks.h
index 36f5c78f..6f0edfbf 100644
--- a/callbacks.h
+++ b/callbacks.h
@@ -662,3 +662,8 @@ on_pref_network_proxyport_changed (GtkEditable *editable,
void
on_pref_network_proxytype_changed (GtkComboBox *combobox,
gpointer user_data);
+
+gboolean
+on_prefwin_key_press_event (GtkWidget *widget,
+ GdkEventKey *event,
+ gpointer user_data);
diff --git a/deadbeef.glade b/deadbeef.glade
index 24834b70..88580fa3 100644
--- a/deadbeef.glade
+++ b/deadbeef.glade
@@ -1312,6 +1312,7 @@
<property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
<property name="focus_on_map">True</property>
<property name="urgency_hint">False</property>
+ <signal name="key_press_event" handler="on_prefwin_key_press_event" last_modification_time="Sat, 07 Nov 2009 15:47:40 GMT"/>
<child>
<widget class="GtkNotebook" id="notebook2">
diff --git a/interface.c b/interface.c
index bbc65189..b961542c 100644
--- a/interface.c
+++ b/interface.c
@@ -1467,6 +1467,9 @@ create_prefwin (void)
gtk_widget_show (label3);
gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook2), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook2), 3), label3);
+ g_signal_connect ((gpointer) prefwin, "key_press_event",
+ G_CALLBACK (on_prefwin_key_press_event),
+ NULL);
g_signal_connect ((gpointer) pref_alsa_resampling, "clicked",
G_CALLBACK (on_pref_alsa_resampling_clicked),
NULL);