Search in sources :

Example 11 with Song

use of com.naman14.timber.models.Song in project Timber by naman14.

the class AlbumDetailFragment method setUpAlbumSongs.

private void setUpAlbumSongs() {
    List<Song> songList = AlbumSongLoader.getSongsForAlbum(getActivity(), albumID);
    mAdapter = new AlbumSongsAdapter(getActivity(), songList, albumID);
    recyclerView.addItemDecoration(new DividerItemDecoration(getActivity(), DividerItemDecoration.VERTICAL_LIST));
    recyclerView.setAdapter(mAdapter);
}
Also used : Song(com.naman14.timber.models.Song) AlbumSongsAdapter(com.naman14.timber.adapters.AlbumSongsAdapter) DividerItemDecoration(com.naman14.timber.widgets.DividerItemDecoration)

Example 12 with Song

use of com.naman14.timber.models.Song in project Timber by naman14.

the class PlaylistDetailActivity method setUpSongs.

private void setUpSongs() {
    Runnable navigation = playlistsMap.get(action);
    if (navigation != null) {
        navigation.run();
        DragSortRecycler dragSortRecycler = new DragSortRecycler();
        dragSortRecycler.setViewHandleId(R.id.reorder);
        dragSortRecycler.setOnItemMovedListener(new DragSortRecycler.OnItemMovedListener() {

            @Override
            public void onItemMoved(int from, int to) {
                Log.d("playlist", "onItemMoved " + from + " to " + to);
                Song song = mAdapter.getSongAt(from);
                mAdapter.removeSongAt(from);
                mAdapter.addSongTo(to, song);
                mAdapter.notifyDataSetChanged();
                MediaStore.Audio.Playlists.Members.moveItem(getContentResolver(), playlistID, from, to);
            }
        });
        recyclerView.addItemDecoration(dragSortRecycler);
        recyclerView.addOnItemTouchListener(dragSortRecycler);
        recyclerView.addOnScrollListener(dragSortRecycler.getScrollListener());
    } else {
        Log.d("PlaylistDetail", "mo action specified");
    }
}
Also used : Song(com.naman14.timber.models.Song) DragSortRecycler(com.naman14.timber.widgets.DragSortRecycler)

Example 13 with Song

use of com.naman14.timber.models.Song in project Timber by naman14.

the class AlbumSongsAdapter method onBindViewHolder.

@Override
public void onBindViewHolder(ItemHolder itemHolder, int i) {
    Song localItem = arraylist.get(i);
    itemHolder.title.setText(localItem.title);
    itemHolder.duration.setText(TimberUtils.makeShortTimeString(mContext, (localItem.duration) / 1000));
    int tracknumber = localItem.trackNumber;
    if (tracknumber == 0) {
        itemHolder.trackNumber.setText("-");
    } else
        itemHolder.trackNumber.setText(String.valueOf(tracknumber));
    setOnPopupMenuListener(itemHolder, i);
}
Also used : Song(com.naman14.timber.models.Song)

Example 14 with Song

use of com.naman14.timber.models.Song in project Timber by naman14.

the class FolderAdapter method onBindViewHolder.

@Override
public void onBindViewHolder(final FolderAdapter.ItemHolder itemHolder, int i) {
    File localItem = mFileSet.get(i);
    Song song = mSongs.get(i);
    itemHolder.title.setText(localItem.getName());
    if (localItem.isDirectory()) {
        itemHolder.albumArt.setImageDrawable("..".equals(localItem.getName()) ? mIcons[1] : mIcons[0]);
    } else {
        ImageLoader.getInstance().displayImage(TimberUtils.getAlbumArtUri(song.albumId).toString(), itemHolder.albumArt, new DisplayImageOptions.Builder().cacheInMemory(true).showImageOnFail(mIcons[2]).resetViewBeforeLoading(true).build());
    }
}
Also used : Song(com.naman14.timber.models.Song) File(java.io.File) DisplayImageOptions(com.nostra13.universalimageloader.core.DisplayImageOptions)

Example 15 with Song

use of com.naman14.timber.models.Song in project Timber by naman14.

the class PlaylistAdapter method getAlbumArtUri.

private String getAlbumArtUri(int position, long id) {
    if (mContext != null) {
        firstAlbumID = -1;
        if (showAuto) {
            switch(position) {
                case 0:
                    List<Song> lastAddedSongs = LastAddedLoader.getLastAddedSongs(mContext);
                    songCountInt = lastAddedSongs.size();
                    if (songCountInt != 0) {
                        firstAlbumID = lastAddedSongs.get(0).albumId;
                        return TimberUtils.getAlbumArtUri(firstAlbumID).toString();
                    } else
                        return "nosongs";
                case 1:
                    TopTracksLoader recentloader = new TopTracksLoader(mContext, TopTracksLoader.QueryType.RecentSongs);
                    List<Song> recentsongs = SongLoader.getSongsForCursor(TopTracksLoader.getCursor());
                    songCountInt = recentsongs.size();
                    if (songCountInt != 0) {
                        firstAlbumID = recentsongs.get(0).albumId;
                        return TimberUtils.getAlbumArtUri(firstAlbumID).toString();
                    } else
                        return "nosongs";
                case 2:
                    TopTracksLoader topTracksLoader = new TopTracksLoader(mContext, TopTracksLoader.QueryType.TopTracks);
                    List<Song> topsongs = SongLoader.getSongsForCursor(TopTracksLoader.getCursor());
                    songCountInt = topsongs.size();
                    if (songCountInt != 0) {
                        firstAlbumID = topsongs.get(0).albumId;
                        return TimberUtils.getAlbumArtUri(firstAlbumID).toString();
                    } else
                        return "nosongs";
                default:
                    List<Song> playlistsongs = PlaylistSongLoader.getSongsInPlaylist(mContext, id);
                    songCountInt = playlistsongs.size();
                    if (songCountInt != 0) {
                        firstAlbumID = playlistsongs.get(0).albumId;
                        return TimberUtils.getAlbumArtUri(firstAlbumID).toString();
                    } else
                        return "nosongs";
            }
        } else {
            List<Song> playlistsongs = PlaylistSongLoader.getSongsInPlaylist(mContext, id);
            songCountInt = playlistsongs.size();
            if (songCountInt != 0) {
                firstAlbumID = playlistsongs.get(0).albumId;
                return TimberUtils.getAlbumArtUri(firstAlbumID).toString();
            } else
                return "nosongs";
        }
    }
    return null;
}
Also used : Song(com.naman14.timber.models.Song) TopTracksLoader(com.naman14.timber.dataloaders.TopTracksLoader)

Aggregations

Song (com.naman14.timber.models.Song)20 DisplayImageOptions (com.nostra13.universalimageloader.core.DisplayImageOptions)7 ArrayList (java.util.ArrayList)5 Cursor (android.database.Cursor)3 DividerItemDecoration (com.naman14.timber.widgets.DividerItemDecoration)2 ContentResolver (android.content.ContentResolver)1 Uri (android.net.Uri)1 LinearLayoutManager (android.support.v7.widget.LinearLayoutManager)1 AlbumSongsAdapter (com.naman14.timber.adapters.AlbumSongsAdapter)1 ArtistSongAdapter (com.naman14.timber.adapters.ArtistSongAdapter)1 TopTracksLoader (com.naman14.timber.dataloaders.TopTracksLoader)1 ArtistInfoListener (com.naman14.timber.lastfmapi.callbacks.ArtistInfoListener)1 ArtistQuery (com.naman14.timber.lastfmapi.models.ArtistQuery)1 LastfmArtist (com.naman14.timber.lastfmapi.models.LastfmArtist)1 Album (com.naman14.timber.models.Album)1 Artist (com.naman14.timber.models.Artist)1 DragSortRecycler (com.naman14.timber.widgets.DragSortRecycler)1 FadeInBitmapDisplayer (com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer)1 File (java.io.File)1