diff --git a/gui/audio.c b/gui/audio.c
index d94fb233..4daff059 100644
--- a/gui/audio.c
+++ b/gui/audio.c
@@ -44,13 +44,9 @@ static void __audio_load(struct track *track)
static void __audio_change_state(GstState state)
{
- if (state == GST_STATE_PLAYING) {
- gtk_widget_hide(gui_builder_widget("o_play"));
- gtk_widget_show(gui_builder_widget("o_pause"));
- } else {
- gtk_widget_show(gui_builder_widget("o_play"));
- gtk_widget_hide(gui_builder_widget("o_pause"));
- }
+ bool playing = (state == GST_STATE_PLAYING);
+ gtk_widget_set_visible(GTK_WIDGET(gui_play_button()), !playing);
+ gtk_widget_set_visible(GTK_WIDGET(gui_pause_button()), playing);
}
static void __audio_config_pause(int n)
@@ -88,7 +84,7 @@ static int __audio_timeout(gpointer data)
return G_SOURCE_CONTINUE;
}
-gboolean __audio_can_accel(GtkWidget *widget, guint signal_id)
+gboolean __gui_audio_can_accel(GtkWidget *widget, guint signal_id)
{
g_signal_stop_emission_by_name(widget, "can-activate-accel");
return !GTK_IS_ENTRY(gtk_window_get_focus(gui_window())) &&
diff --git a/include/gui/audio.h b/include/gui/audio.h
index 037821d8..5fcca3c3 100644
--- a/include/gui/audio.h
+++ b/include/gui/audio.h
@@ -44,6 +44,30 @@ static inline GtkLabel *gui_duration(void)
return GTK_LABEL(gui_builder_widget("duration"));
}
+/* Called to get the play button. */
+static inline GtkButton *gui_play_button(void)
+{
+ return GTK_BUTTON(gui_builder_widget("play_button"));
+}
+
+/* Called to get the pause button. */
+static inline GtkButton *gui_pause_button(void)
+{
+ return GTK_BUTTON(gui_builder_widget("pause_button"));
+}
+
+/* Called to get the previous button. */
+static inline GtkButton *gui_prev_button(void)
+{
+ return GTK_BUTTON(gui_builder_widget("prev_button"));
+}
+
+/* Called to get the next button. */
+static inline GtkButton *gui_next_button(void)
+{
+ return GTK_BUTTON(gui_builder_widget("next_button"));
+}
+
#ifdef CONFIG_TESTING
void test_gui_audio_timeout();
#endif /* CONFIG_TESTING */
diff --git a/share/ocarina/ocarina.ui b/share/ocarina/ocarina.ui
index 39115c6d..ce850419 100644
--- a/share/ocarina/ocarina.ui
+++ b/share/ocarina/ocarina.ui
@@ -135,7 +135,7 @@
center
start
-