Project

General

Profile

feature594_patch.git_diff.txt

Jim Turner, December 11, 2015 04:15

 
1
diff --git a/src/audacious/dbus-server.cc b/src/audacious/dbus-server.cc
2
index c6cf76a..5902546 100644
3
--- a/src/audacious/dbus-server.cc
4
+++ b/src/audacious/dbus-server.cc
5
@@ -385,6 +385,13 @@ static gboolean do_reverse (Obj * obj, Invoc * invoc)
6
     return true;
7
 }
8
 
9
+static gboolean do_record (Obj * obj, Invoc * invoc)
10
+{
11
+    aud_drct_enable_record (!aud_drct_get_record_enabled ());
12
+    FINISH (record);
13
+    return true;
14
+}
15
+
16
 static gboolean do_seek (Obj * obj, Invoc * invoc, unsigned pos)
17
 {
18
     aud_drct_seek (pos);
19
@@ -712,6 +719,7 @@ handlers[] =
20
     {"handle-quit", (GCallback) do_quit},
21
     {"handle-repeat", (GCallback) do_repeat},
22
     {"handle-reverse", (GCallback) do_reverse},
23
+    {"handle-record", (GCallback) do_record},
24
     {"handle-seek", (GCallback) do_seek},
25
     {"handle-set-active-playlist", (GCallback) do_set_active_playlist},
26
     {"handle-set-active-playlist-name", (GCallback) do_set_active_playlist_name},
27
diff --git a/src/audtool/audtool.h b/src/audtool/audtool.h
28
index cb62488..5a03995 100644
29
--- a/src/audtool/audtool.h
30
+++ b/src/audtool/audtool.h
31
@@ -114,6 +114,7 @@ void playback_stopped (int, char * *);
32
 void playback_status (int, char * *);
33
 void playback_seek (int, char * *);
34
 void playback_seek_relative (int, char * *);
35
+void playback_record (int, char * *);
36
 
37
 void mainwin_show (int, char * *);
38
 void show_preferences_window (int, char * *);
39
diff --git a/src/audtool/handlers_playback.c b/src/audtool/handlers_playback.c
40
index 1b3a90a..be9ab5a 100644
41
--- a/src/audtool/handlers_playback.c
42
+++ b/src/audtool/handlers_playback.c
43
@@ -19,7 +19,6 @@
44
  */
45
 
46
 #include <stdlib.h>
47
-
48
 #include "audtool.h"
49
 
50
 void playback_play (int argc, char * * argv)
51
@@ -50,6 +49,11 @@ void playback_playing (int argc, char * * argv)
52
     exit (! playing);
53
 }
54
 
55
+void playback_record (int argc, char * * argv)
56
+{
57
+    obj_audacious_call_playback_record (dbus_proxy, NULL, NULL);
58
+}
59
+
60
 void playback_paused (int argc, char * * argv)
61
 {
62
     gboolean paused = FALSE;
63
diff --git a/src/audtool/main.c b/src/audtool/main.c
64
index 2ed0fa9..825b85a 100644
65
--- a/src/audtool/main.c
66
+++ b/src/audtool/main.c
67
@@ -54,6 +54,7 @@ const struct commandhandler handlers[] =
68
     {"playback-status", playback_status, "print status (playing/paused/stopped)", 0},
69
     {"playback-seek", playback_seek, "seek to given time", 1},
70
     {"playback-seek-relative", playback_seek_relative, "seek to relative time offset", 1},
71
+    {"playback-record", playback_record, "toggle recording (dubbing)", 1},
72
 
73
     {"<sep>", NULL, "Playlist commands", 0},
74
     {"playlist-advance", playlist_advance, "skip to next song", 0},