From 31bdaabe0da1bddb30983135cd47a8df312325bb Mon Sep 17 00:00:00 2001 From: Scott Jackson Date: Mon, 17 Apr 2017 17:14:54 -0700 Subject: Fixes #788: Only download playlist immediately if we match sync settings --- .../dsub/fragments/SelectPlaylistFragment.java | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'app') diff --git a/app/src/main/java/github/daneren2005/dsub/fragments/SelectPlaylistFragment.java b/app/src/main/java/github/daneren2005/dsub/fragments/SelectPlaylistFragment.java index 28cf9911..5cb413fe 100644 --- a/app/src/main/java/github/daneren2005/dsub/fragments/SelectPlaylistFragment.java +++ b/app/src/main/java/github/daneren2005/dsub/fragments/SelectPlaylistFragment.java @@ -1,5 +1,8 @@ package github.daneren2005.dsub.fragments; +import android.content.Context; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; import android.support.v7.app.AlertDialog; import android.content.DialogInterface; import android.content.res.Resources; @@ -342,7 +345,24 @@ public class SelectPlaylistFragment extends SelectRecyclerFragment { private void syncPlaylist(Playlist playlist) { SyncUtil.addSyncedPlaylist(context, playlist.getId()); - downloadPlaylist(playlist.getId(), playlist.getName(), true, true, false, false, true); + + boolean syncImmediately; + if(Util.getPreferences(context).getBoolean(Constants.PREFERENCES_KEY_SYNC_WIFI, true)) { + ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); + NetworkInfo networkInfo = manager.getActiveNetworkInfo(); + + if(networkInfo.getType() == ConnectivityManager.TYPE_WIFI) { + syncImmediately = true; + } else { + syncImmediately = false; + } + } else { + syncImmediately = true; + } + + if(syncImmediately) { + downloadPlaylist(playlist.getId(), playlist.getName(), true, true, false, false, true); + } } private void stopSyncPlaylist(final Playlist playlist) { -- cgit v1.2.3