use of com.naman14.timber.models.Song in project Timber by naman14.
the class SlidingQueueAdapter method onBindViewHolder.
@Override
public void onBindViewHolder(ItemHolder itemHolder, int i) {
// setAnimation(itemHolder.itemView, i);
Song localItem = arraylist.get(i);
ImageLoader.getInstance().displayImage(TimberUtils.getAlbumArtUri(localItem.albumId).toString(), itemHolder.albumArt, new DisplayImageOptions.Builder().cacheInMemory(true).showImageOnFail(R.drawable.ic_empty_music2).resetViewBeforeLoading(true).build());
}
use of com.naman14.timber.models.Song in project Timber by naman14.
the class SongsListAdapter method onBindViewHolder.
@Override
public void onBindViewHolder(ItemHolder itemHolder, int i) {
Song localItem = arraylist.get(i);
itemHolder.title.setText(localItem.title);
itemHolder.artist.setText(localItem.artistName);
ImageLoader.getInstance().displayImage(TimberUtils.getAlbumArtUri(localItem.albumId).toString(), itemHolder.albumArt, new DisplayImageOptions.Builder().cacheInMemory(true).showImageOnFail(R.drawable.ic_empty_music2).resetViewBeforeLoading(true).build());
if (MusicPlayer.getCurrentAudioId() == localItem.id) {
itemHolder.title.setTextColor(Config.accentColor(mContext, ateKey));
if (MusicPlayer.isPlaying()) {
itemHolder.visualizer.setColor(Config.accentColor(mContext, ateKey));
itemHolder.visualizer.setVisibility(View.VISIBLE);
}
} else {
if (isPlaylist)
itemHolder.title.setTextColor(Color.WHITE);
else
itemHolder.title.setTextColor(Config.textColorPrimary(mContext, ateKey));
itemHolder.visualizer.setVisibility(View.GONE);
}
if (animate && isPlaylist && PreferencesUtility.getInstance(mContext).getAnimations()) {
if (TimberUtils.isLollipop())
setAnimation(itemHolder.itemView, i);
else {
if (i > 10)
setAnimation(itemHolder.itemView, i);
}
}
setOnPopupMenuListener(itemHolder, i);
}
use of com.naman14.timber.models.Song in project Timber by naman14.
the class ArtistSongLoader method getSongsForArtist.
public static ArrayList<Song> getSongsForArtist(Context context, long artistID) {
Cursor cursor = makeArtistSongCursor(context, artistID);
ArrayList songsList = new ArrayList();
if ((cursor != null) && (cursor.moveToFirst()))
do {
long id = cursor.getLong(0);
String title = cursor.getString(1);
String artist = cursor.getString(2);
String album = cursor.getString(3);
int duration = cursor.getInt(4);
int trackNumber = cursor.getInt(5);
long albumId = cursor.getInt(6);
long artistId = artistID;
songsList.add(new Song(id, albumId, artistID, title, artist, album, duration, trackNumber));
} while (cursor.moveToNext());
if (cursor != null)
cursor.close();
return songsList;
}
use of com.naman14.timber.models.Song in project Timber by naman14.
the class PlaylistSongLoader method getSongsInPlaylist.
public static List<Song> getSongsInPlaylist(Context mContext, long playlistID) {
ArrayList<Song> mSongList = new ArrayList<>();
context = mContext;
mPlaylistID = playlistID;
final int playlistCount = countPlaylist(context, mPlaylistID);
mCursor = makePlaylistSongCursor(context, mPlaylistID);
if (mCursor != null) {
boolean runCleanup = false;
if (mCursor.getCount() != playlistCount) {
runCleanup = true;
}
if (!runCleanup && mCursor.moveToFirst()) {
final int playOrderCol = mCursor.getColumnIndexOrThrow(Playlists.Members.PLAY_ORDER);
int lastPlayOrder = -1;
do {
int playOrder = mCursor.getInt(playOrderCol);
if (playOrder == lastPlayOrder) {
runCleanup = true;
break;
}
lastPlayOrder = playOrder;
} while (mCursor.moveToNext());
}
if (runCleanup) {
cleanupPlaylist(context, mPlaylistID, mCursor);
mCursor.close();
mCursor = makePlaylistSongCursor(context, mPlaylistID);
if (mCursor != null) {
}
}
}
if (mCursor != null && mCursor.moveToFirst()) {
do {
final long id = mCursor.getLong(mCursor.getColumnIndexOrThrow(MediaStore.Audio.Playlists.Members.AUDIO_ID));
final String songName = mCursor.getString(mCursor.getColumnIndexOrThrow(AudioColumns.TITLE));
final String artist = mCursor.getString(mCursor.getColumnIndexOrThrow(AudioColumns.ARTIST));
final long albumId = mCursor.getLong(mCursor.getColumnIndexOrThrow(AudioColumns.ALBUM_ID));
final long artistId = mCursor.getLong(mCursor.getColumnIndexOrThrow(AudioColumns.ARTIST_ID));
final String album = mCursor.getString(mCursor.getColumnIndexOrThrow(AudioColumns.ALBUM));
final long duration = mCursor.getLong(mCursor.getColumnIndexOrThrow(AudioColumns.DURATION));
final int durationInSecs = (int) duration / 1000;
final int tracknumber = mCursor.getInt(mCursor.getColumnIndexOrThrow(AudioColumns.TRACK));
final Song song = new Song(id, albumId, artistId, songName, artist, album, durationInSecs, tracknumber);
mSongList.add(song);
} while (mCursor.moveToNext());
}
// Close the cursor
if (mCursor != null) {
mCursor.close();
mCursor = null;
}
return mSongList;
}
use of com.naman14.timber.models.Song in project Timber by naman14.
the class Timber6 method onMetaChanged.
@Override
public void onMetaChanged() {
super.onMetaChanged();
if (getActivity() != null) {
long nextId = MusicPlayer.getNextAudioId();
Song next = SongLoader.getSongForID(getActivity(), nextId);
nextSong.setText(next.title);
nextArt.setImageURI(TimberUtils.getAlbumArtUri(next.albumId));
}
}
Aggregations