From 205f2fe0dd307ac3f3f2d5f5565a5dbf3fd7543d Mon Sep 17 00:00:00 2001 From: daneren2005 Date: Tue, 6 Aug 2013 16:38:05 -0700 Subject: Close #111 Persist RC state across sessions --- src/github/daneren2005/dsub/service/DownloadServiceImpl.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/github/daneren2005/dsub/service/DownloadServiceImpl.java b/src/github/daneren2005/dsub/service/DownloadServiceImpl.java index dfb161a6..b555da99 100644 --- a/src/github/daneren2005/dsub/service/DownloadServiceImpl.java +++ b/src/github/daneren2005/dsub/service/DownloadServiceImpl.java @@ -330,6 +330,10 @@ public class DownloadServiceImpl extends Service implements DownloadService { public void restore(List songs, int currentPlayingIndex, int currentPlayingPosition) { SharedPreferences prefs = Util.getPreferences(this); + remoteState = RemoteControlState.values()[prefs.getInt(Constants.PREFERENCES_KEY_CONTROL_MODE, 0)]; + if(remoteState == RemoteControlState.JUKEBOX_SERVER) { + jukeboxService.setEnabled(true); + } boolean startShufflePlay = prefs.getBoolean(Constants.PREFERENCES_KEY_SHUFFLE_MODE, false); download(songs, false, false, false, false); if(startShufflePlay) { @@ -1016,7 +1020,7 @@ public class DownloadServiceImpl extends Service implements DownloadService { @Override public void setRemoteEnabled(RemoteControlState newState) { remoteState = newState; - jukeboxService.setEnabled(remoteState != RemoteControlState.LOCAL); + jukeboxService.setEnabled(remoteState == RemoteControlState.JUKEBOX_SERVER); if (remoteState != RemoteControlState.LOCAL) { reset(); @@ -1025,6 +1029,10 @@ public class DownloadServiceImpl extends Service implements DownloadService { currentDownloading.cancelDownload(); } } + + SharedPreferences.Editor editor = Util.getPreferences(this).edit(); + editor.putInt(Constants.PREFERENCES_KEY_CONTROL_MODE, newState.getValue()); + editor.commit(); } @Override -- cgit v1.2.3