diff options
author | Jonathan Gordon <rockbox@jdgordon.info> | 2011-03-22 09:31:45 +0000 |
---|---|---|
committer | Jonathan Gordon <rockbox@jdgordon.info> | 2011-03-22 09:31:45 +0000 |
commit | 98881fd8225b24cbcab69d18062e2b7918c5de51 (patch) | |
tree | 4047caf5e473ce9117aeb1e8c67ac5fcfd72e5f5 /apps/gui/skin_engine | |
parent | d3c796d20e4bd8e15f18a0dac2e9c4283df5740b (diff) | |
download | rockbox-98881fd8225b24cbcab69d18062e2b7918c5de51.tar.gz rockbox-98881fd8225b24cbcab69d18062e2b7918c5de51.zip |
Add some playback controls to the SBS. 2 new touch regions wps_next/wps_prev needed to make it work. 'next' in the sbs changes list selection, 'wps_next' in sbs changes audio tracks. no difference in the wps
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29631 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui/skin_engine')
-rw-r--r-- | apps/gui/skin_engine/skin_parser.c | 1 | ||||
-rw-r--r-- | apps/gui/skin_engine/skin_touchsupport.c | 53 |
2 files changed, 53 insertions, 1 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c index c09bed6e4f..236c6feea1 100644 --- a/apps/gui/skin_engine/skin_parser.c +++ b/apps/gui/skin_engine/skin_parser.c | |||
@@ -965,6 +965,7 @@ static const struct touchaction touchactions[] = { | |||
965 | {"setting_set", ACTION_SETTINGS_SET}, | 965 | {"setting_set", ACTION_SETTINGS_SET}, |
966 | 966 | ||
967 | /* WPS specific actions */ | 967 | /* WPS specific actions */ |
968 | {"wps_prev", ACTION_WPS_SKIPPREV }, {"wps_next", ACTION_WPS_SKIPNEXT }, | ||
968 | {"browse", ACTION_WPS_BROWSE }, | 969 | {"browse", ACTION_WPS_BROWSE }, |
969 | {"play", ACTION_WPS_PLAY }, {"stop", ACTION_WPS_STOP }, | 970 | {"play", ACTION_WPS_PLAY }, {"stop", ACTION_WPS_STOP }, |
970 | {"shuffle", ACTION_TOUCH_SHUFFLE }, {"repmode", ACTION_TOUCH_REPMODE }, | 971 | {"shuffle", ACTION_TOUCH_SHUFFLE }, {"repmode", ACTION_TOUCH_REPMODE }, |
diff --git a/apps/gui/skin_engine/skin_touchsupport.c b/apps/gui/skin_engine/skin_touchsupport.c index 110e97f997..c16d223af3 100644 --- a/apps/gui/skin_engine/skin_touchsupport.c +++ b/apps/gui/skin_engine/skin_touchsupport.c | |||
@@ -28,7 +28,10 @@ | |||
28 | #include "option_select.h" | 28 | #include "option_select.h" |
29 | #include "sound.h" | 29 | #include "sound.h" |
30 | #include "settings_list.h" | 30 | #include "settings_list.h" |
31 | 31 | #include "wps.h" | |
32 | #include "lang.h" | ||
33 | #include "splash.h" | ||
34 | #include "playlist.h" | ||
32 | 35 | ||
33 | /** Disarms all touchregions. */ | 36 | /** Disarms all touchregions. */ |
34 | void skin_disarm_touchregions(struct wps_data *data) | 37 | void skin_disarm_touchregions(struct wps_data *data) |
@@ -125,8 +128,56 @@ int skin_get_touchaction(struct wps_data *data, int* edge_offset, | |||
125 | 128 | ||
126 | if (returncode != ACTION_NONE) | 129 | if (returncode != ACTION_NONE) |
127 | { | 130 | { |
131 | if (global_settings.party_mode) | ||
132 | { | ||
133 | switch (returncode) | ||
134 | { | ||
135 | case ACTION_WPS_PLAY: | ||
136 | case ACTION_WPS_SKIPPREV: | ||
137 | case ACTION_WPS_SKIPNEXT: | ||
138 | case ACTION_WPS_STOP: | ||
139 | returncode = ACTION_NONE; | ||
140 | break; | ||
141 | default: | ||
142 | break; | ||
143 | } | ||
144 | } | ||
128 | switch (returncode) | 145 | switch (returncode) |
129 | { | 146 | { |
147 | case ACTION_WPS_PLAY: | ||
148 | if (!audio_status()) | ||
149 | { | ||
150 | if ( global_status.resume_index != -1 ) | ||
151 | { | ||
152 | if (playlist_resume() != -1) | ||
153 | { | ||
154 | playlist_start(global_status.resume_index, | ||
155 | global_status.resume_offset); | ||
156 | } | ||
157 | } | ||
158 | else | ||
159 | { | ||
160 | splash(HZ*2, ID2P(LANG_NOTHING_TO_RESUME)); | ||
161 | } | ||
162 | } | ||
163 | else | ||
164 | { | ||
165 | wps_do_playpause(false); | ||
166 | } | ||
167 | returncode = ACTION_REDRAW; | ||
168 | break; | ||
169 | case ACTION_WPS_SKIPPREV: | ||
170 | audio_prev(); | ||
171 | returncode = ACTION_REDRAW; | ||
172 | break; | ||
173 | case ACTION_WPS_SKIPNEXT: | ||
174 | audio_next(); | ||
175 | returncode = ACTION_REDRAW; | ||
176 | break; | ||
177 | case ACTION_WPS_STOP: | ||
178 | audio_stop(); | ||
179 | returncode = ACTION_REDRAW; | ||
180 | break; | ||
130 | case ACTION_SETTINGS_INC: | 181 | case ACTION_SETTINGS_INC: |
131 | case ACTION_SETTINGS_DEC: | 182 | case ACTION_SETTINGS_DEC: |
132 | { | 183 | { |