Cleaned up MediaStore loaders, preparing for album art loading directly from the file

This commit is contained in:
Karim Abou Zeid 2015-07-09 16:37:45 +02:00
commit da92636180
23 changed files with 271 additions and 374 deletions

View file

@ -42,7 +42,6 @@ import com.kabouzeid.gramophone.dialogs.SongDetailDialog;
import com.kabouzeid.gramophone.dialogs.SongShareDialog;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.helper.bitmapblur.StackBlurManager;
import com.kabouzeid.gramophone.loader.SongFilePathLoader;
import com.kabouzeid.gramophone.misc.SmallTransitionListener;
import com.kabouzeid.gramophone.model.Song;
import com.kabouzeid.gramophone.service.MusicService;
@ -641,7 +640,7 @@ public class MusicControllerActivity extends AbsFabActivity {
invalidateOptionsMenu();
return true;
case R.id.action_share:
SongShareDialog.create(song.id).show(getSupportFragmentManager(), "SHARE_SONG");
SongShareDialog.create(song).show(getSupportFragmentManager(), "SHARE_SONG");
return true;
case R.id.action_equalizer:
NavigationUtil.openEqualizer(this);
@ -664,8 +663,7 @@ public class MusicControllerActivity extends AbsFabActivity {
startActivity(intent);
return true;
case R.id.action_details:
String songFilePath = SongFilePathLoader.getSongFilePath(this, song.id);
File songFile = new File(songFilePath);
File songFile = new File(song.data);
SongDetailDialog.create(songFile).show(getSupportFragmentManager(), "SONG_DETAIL");
return true;
case R.id.action_go_to_album:

View file

@ -15,7 +15,6 @@ import com.kabouzeid.gramophone.lastfm.rest.LastFMRestClient;
import com.kabouzeid.gramophone.lastfm.rest.model.albuminfo.AlbumInfo;
import com.kabouzeid.gramophone.lastfm.rest.model.albuminfo.Image;
import com.kabouzeid.gramophone.loader.AlbumSongLoader;
import com.kabouzeid.gramophone.loader.SongFilePathLoader;
import com.kabouzeid.gramophone.model.Song;
import com.kabouzeid.gramophone.util.MusicUtil;
import com.nostra13.universalimageloader.core.ImageLoader;
@ -190,12 +189,12 @@ public class AlbumTagEditorActivity extends AbsTagEditorActivity implements Text
@Override
protected List<String> getSongPaths() {
List<Song> songs = AlbumSongLoader.getAlbumSongList(this, getId());
int[] songIds = new int[songs.size()];
for (int i = 0; i < songs.size(); i++) {
songIds[i] = songs.get(i).id;
ArrayList<Song> songs = AlbumSongLoader.getAlbumSongList(this, getId());
ArrayList<String> paths = new ArrayList<>(songs.size());
for (Song song : songs) {
paths.add(song.data);
}
return SongFilePathLoader.getSongFilePaths(this, songIds);
return paths;
}
@Override

View file

@ -7,10 +7,11 @@ import android.text.TextWatcher;
import android.widget.EditText;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.loader.SongFilePathLoader;
import com.kabouzeid.gramophone.loader.SongLoader;
import org.jaudiotagger.tag.FieldKey;
import java.util.ArrayList;
import java.util.EnumMap;
import java.util.List;
import java.util.Map;
@ -107,7 +108,9 @@ public class SongTagEditorActivity extends AbsTagEditorActivity implements TextW
@Override
protected List<String> getSongPaths() {
return SongFilePathLoader.getSongFilePaths(this, new int[]{getId()});
ArrayList<String> paths = new ArrayList<>(1);
paths.add(SongLoader.getSong(this, getId()).data);
return paths;
}
@Override