@Override public boolean onMenuItemClick(MenuItem item) { final Song nowPlaying = PlayerController.getNowPlaying(); if (nowPlaying == null) { return false; } switch (item.getItemId()) { case 0: // Go to artist Artist artist = Library.findArtistById(nowPlaying.getArtistId()); Navigate.to(getContext(), ArtistActivity.class, ArtistActivity.ARTIST_EXTRA, artist); return true; case 1: // Go to album Album album = Library.findAlbumById(nowPlaying.getAlbumId()); Navigate.to(getContext(), AlbumActivity.class, AlbumActivity.ALBUM_EXTRA, album); return true; case 2: // Add to playlist PlaylistDialog.AddToNormal.alert( getView(), nowPlaying, getString(R.string.header_add_song_name_to_playlist, nowPlaying.getSongName())); return true; } return false; }
@Override public void onUpdate() { Song nowPlaying = PlayerController.getNowPlaying(); if (nowPlaying != null) { songTitle.setText(nowPlaying.getSongName()); songArtist.setText(nowPlaying.getArtistName()); songAlbum.setText(nowPlaying.getAlbumName()); int duration = PlayerController.getDuration(); timeDuration.setTime(duration); seekBar.setMax(duration); if (!observer.isRunning()) { observerThread = new Thread(observer); observerThread.start(); } } else { songTitle.setText(R.string.nothing_playing); songArtist.setText(R.string.unknown_artist); songAlbum.setText(R.string.unknown_album); } seekBar.setEnabled(nowPlaying != null); if (PlayerController.isPlaying()) { playPauseButton.setImageResource(R.drawable.ic_pause_36dp); } else { playPauseButton.setImageResource(R.drawable.ic_play_arrow_36dp); } }