diff --git a/CHANGELOG b/CHANGELOG
index 1ad48b40..606de5a5 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,5 @@
6.4.12:
+- Control automatic pausing with a GtkComboBox
- Move current position slider into the top section
- Tooltip updates
- Swap position of random/repeat and favorite/hide buttons
diff --git a/gui/audio.c b/gui/audio.c
index c4b4df40..e06aa299 100644
--- a/gui/audio.c
+++ b/gui/audio.c
@@ -51,10 +51,12 @@ static void __audio_change_state(GstState state)
static void __audio_config_pause(int n)
{
GtkToggleButton *enabled = GTK_TOGGLE_BUTTON(gui_builder_widget("o_pause_enabled"));
+ GtkComboBox *combo = GTK_COMBO_BOX(gui_builder_widget("o_pause_after"));
if (n >= 0)
gtk_spin_button_set_value(GTK_SPIN_BUTTON(gui_builder_widget("o_pause_count")), n);
gtk_toggle_button_set_active(enabled, n >= 0);
+ gtk_combo_box_set_active(combo, n + 1);
}
void __audio_pause_count(GtkSpinButton *count)
@@ -71,6 +73,12 @@ void __audio_pause_enabled(GtkToggleButton *enabled, GtkSpinButton *count)
audio_pause_after(val);
}
+void __audio_pause_changed(GtkComboBox *combo, gpointer data)
+{
+ int val = gtk_combo_box_get_active(combo) - 1;
+ audio_pause_after(val);
+}
+
void __audio_seek(GtkRange *range, GtkScrollType type, double value, gpointer data)
{
audio_seek(value * GST_SECOND);
diff --git a/include/tests/gui.h b/include/tests/gui.h
index 27ee5288..2eac127c 100644
--- a/include/tests/gui.h
+++ b/include/tests/gui.h
@@ -6,6 +6,7 @@
#ifdef TEST_NEED_AUDIO
void __audio_can_accel() {}
+void __audio_pause_changed() {}
void __audio_pause_count() {}
void __audio_pause_enabled() {}
void __audio_seek() {}
diff --git a/share/ocarina/ocarina6.glade b/share/ocarina/ocarina6.glade
index 449d9f2a..396f6246 100644
--- a/share/ocarina/ocarina6.glade
+++ b/share/ocarina/ocarina6.glade
@@ -541,59 +541,7 @@
2
0
- 3
-
-
-
-
-
- 5
- 0
- 2
+ 4
@@ -654,6 +602,203 @@
3
+
+
+ True
+ False
+ end
+ center
+ 5
+
+
+ True
+ False
+ end
+ Pause after
+
+
+ False
+ False
+ 0
+
+
+
+
+ True
+ False
+ end
+ center
+ 8
+ 0
+
+ - (disabled)
+ - current track
+ - next track
+ - 2 tracks
+ - 3 tracks
+ - 4 tracks
+ - 5 tracks
+ - 6 tracks
+ - 7 tracks
+ - 8 tracks
+ - 9 tracks
+ - 10 tracks
+ - 11 tracks
+ - 12 tracks
+ - 13 tracks
+ - 14 tracks
+ - 15 tracks
+ - 16 tracks
+ - 17 tracks
+ - 18 tracks
+ - 19 tracks
+ - 20 tracks
+ - 21 tracks
+ - 22 tracks
+ - 23 tracks
+ - 24 tracks
+ - 25 tracks
+ - 26 tracks
+ - 27 tracks
+ - 28 tracks
+ - 29 tracks
+ - 30 tracks
+ - 31 tracks
+ - 32 tracks
+ - 33 tracks
+ - 34 tracks
+ - 35 tracks
+ - 36 tracks
+ - 37 tracks
+ - 38 tracks
+ - 39 tracks
+ - 40 tracks
+ - 41 tracks
+ - 42 tracks
+ - 43 tracks
+ - 44 tracks
+ - 45 tracks
+ - 46 tracks
+ - 47 tracks
+ - 48 tracks
+ - 49 tracks
+ - 50 tracks
+ - 51 tracks
+ - 52 tracks
+ - 53 tracks
+ - 54 tracks
+ - 55 tracks
+ - 56 tracks
+ - 57 tracks
+ - 58 tracks
+ - 59 tracks
+ - 60 tracks
+ - 61 tracks
+ - 62 tracks
+ - 63 tracks
+ - 64 tracks
+ - 65 tracks
+ - 66 tracks
+ - 67 tracks
+ - 68 tracks
+ - 69 tracks
+ - 70 tracks
+ - 71 tracks
+ - 72 tracks
+ - 73 tracks
+ - 74 tracks
+ - 75 tracks
+ - 76 tracks
+ - 77 tracks
+ - 78 tracks
+ - 79 tracks
+ - 80 tracks
+ - 81 tracks
+ - 82 tracks
+ - 83 tracks
+ - 84 tracks
+ - 85 tracks
+ - 86 tracks
+ - 87 tracks
+ - 88 tracks
+ - 89 tracks
+ - 90 tracks
+ - 91 tracks
+ - 92 tracks
+ - 93 tracks
+ - 94 tracks
+ - 95 tracks
+ - 96 tracks
+ - 97 tracks
+ - 98 tracks
+ - 99 tracks
+
+
+
+
+ False
+ False
+ 1
+
+
+
+
+ 5
+ 1
+ 2
+
+
+
+
+ True
+ False
+ end
+ start
+ 5
+ 10
+ end
+
+
+ True
+ True
+ True
+ Randomly pick tracks
+ center
+ center
+ image9
+
+
+
+ False
+ False
+ 0
+ True
+
+
+
+
+ True
+ True
+ True
+ Repeat tracks
+ center
+ center
+ image10
+
+
+
+ False
+ False
+ 1
+ True
+
+
+
+
+ 6
+ 0
+
+
False