New shadow + more infos songs and artists

This commit is contained in:
Karim Abou Zeid 2015-03-11 21:34:55 +01:00
commit b293123603
32 changed files with 272 additions and 179 deletions

View file

@ -24,6 +24,7 @@ import com.kabouzeid.gramophone.App;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.adapter.songadapter.SongAdapter;
import com.kabouzeid.gramophone.comparator.SongTrackNumberComparator;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.interfaces.KabViewsDisableAble;
import com.kabouzeid.gramophone.loader.AlbumLoader;
import com.kabouzeid.gramophone.loader.AlbumSongLoader;
@ -321,7 +322,7 @@ public class AlbumDetailActivity extends AbsFabActivity implements KabViewsDisab
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (position > 0) {
app.getMusicPlayerRemote().openQueue(songs, position - 1, true);
MusicPlayerRemote.openQueue(songs, position - 1, true);
}
}
});

View file

@ -6,6 +6,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.v13.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.widget.DrawerLayout;
@ -25,6 +26,7 @@ import com.afollestad.materialdialogs.MaterialDialog;
import com.google.samples.apps.iosched.ui.widget.SlidingTabLayout;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.helper.AboutDeveloperDialogHelper;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.helper.PlayingQueueDialogHelper;
import com.kabouzeid.gramophone.interfaces.KabViewsDisableAble;
import com.kabouzeid.gramophone.misc.AppKeys;
@ -73,7 +75,7 @@ public class MainActivity extends AbsFabActivity
private void setUpViewPager() {
viewPagerAdapter = new MainActivityViewPagerAdapter(this);
viewPager.setAdapter(viewPagerAdapter);
int startPosition = getApp().getDefaultSharedPreferences().getInt(AppKeys.SP_VIEWPAGER_ITEM_POSITION, 1);
int startPosition = PreferenceManager.getDefaultSharedPreferences(this).getInt(AppKeys.SP_VIEWPAGER_ITEM_POSITION, 1);
viewPager.setCurrentItem(startPosition);
navigationDrawerFragment.setItemChecked(startPosition);
@ -87,7 +89,7 @@ public class MainActivity extends AbsFabActivity
@Override
public void onPageSelected(final int position) {
getApp().getDefaultSharedPreferences().edit().putInt(AppKeys.SP_VIEWPAGER_ITEM_POSITION, position).apply();
PreferenceManager.getDefaultSharedPreferences(MainActivity.this).edit().putInt(AppKeys.SP_VIEWPAGER_ITEM_POSITION, position).apply();
navigationDrawerFragment.setItemChecked(position);
}
@ -147,7 +149,7 @@ public class MainActivity extends AbsFabActivity
private void updateNavigationDrawerHeader() {
if (navigationDrawerFragment != null) {
Song song = getApp().getMusicPlayerRemote().getCurrentSong();
Song song = MusicPlayerRemote.getCurrentSong();
if (song.id != -1) {
Picasso.with(this)
.load(MusicUtil.getAlbumArtUri(song.albumId))

View file

@ -21,6 +21,7 @@ import android.widget.Toast;
import com.afollestad.materialdialogs.MaterialDialog;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.helper.PlayingQueueDialogHelper;
import com.kabouzeid.gramophone.helper.SongDetailDialogHelper;
import com.kabouzeid.gramophone.lastfm.artist.LastFMArtistImageUrlLoader;
@ -117,7 +118,7 @@ public class MusicControllerActivity extends AbsFabActivity {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser) {
getApp().getMusicPlayerRemote().seekTo(progress);
MusicPlayerRemote.seekTo(progress);
}
}
@ -135,13 +136,13 @@ public class MusicControllerActivity extends AbsFabActivity {
nextButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getApp().getMusicPlayerRemote().playNextSong();
MusicPlayerRemote.playNextSong();
}
});
prevButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getApp().getMusicPlayerRemote().back();
MusicPlayerRemote.back();
}
});
}
@ -151,13 +152,13 @@ public class MusicControllerActivity extends AbsFabActivity {
shuffleButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getApp().getMusicPlayerRemote().toggleShuffleMode();
MusicPlayerRemote.toggleShuffleMode();
}
});
}
private void updateShuffleState() {
switch (getApp().getMusicPlayerRemote().getShuffleMode()) {
switch (MusicPlayerRemote.getShuffleMode()) {
case MusicService.SHUFFLE_MODE_SHUFFLE:
shuffleButton.setImageResource(R.drawable.ic_shuffle_white_48dp);
break;
@ -172,13 +173,13 @@ public class MusicControllerActivity extends AbsFabActivity {
repeatButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getApp().getMusicPlayerRemote().cycleRepeatMode();
MusicPlayerRemote.cycleRepeatMode();
}
});
}
private void updateRepeatState() {
switch (getApp().getMusicPlayerRemote().getRepeatMode()) {
switch (MusicPlayerRemote.getRepeatMode()) {
case MusicService.REPEAT_MODE_NONE:
repeatButton.setImageResource(R.drawable.ic_repeat_grey600_48dp);
break;
@ -299,7 +300,7 @@ public class MusicControllerActivity extends AbsFabActivity {
}
private void getCurrentSong() {
song = getApp().getMusicPlayerRemote().getCurrentSong();
song = MusicPlayerRemote.getCurrentSong();
if (song.id == -1) {
finish();
}
@ -312,10 +313,10 @@ public class MusicControllerActivity extends AbsFabActivity {
public void run() {
int currentPosition = 0;
int total = 0;
while (getApp().getMusicPlayerRemote().isMusicBound() && !killThreads) {
while (!killThreads) {
try {
total = getApp().getMusicPlayerRemote().getSongDurationMillis();
currentPosition = getApp().getMusicPlayerRemote().getSongProgressMillis();
total = MusicPlayerRemote.getSongDurationMillis();
currentPosition = MusicPlayerRemote.getSongProgressMillis();
Thread.sleep(1);
} catch (InterruptedException e) {
return;

View file

@ -19,6 +19,7 @@ import android.widget.ListView;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.adapter.SearchAdapter;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.loader.AlbumLoader;
import com.kabouzeid.gramophone.loader.ArtistLoader;
import com.kabouzeid.gramophone.loader.SongLoader;
@ -60,7 +61,7 @@ public class SearchActivity extends AbsBaseActivity {
if (item instanceof Song) {
List<Song> playList = new ArrayList<>();
playList.add((Song) item);
getApp().getMusicPlayerRemote().openQueue(playList, 0, true);
MusicPlayerRemote.openQueue(playList, 0, true);
} else if (item instanceof Album) {
goToAlbum(((Album) item).id, new Pair[]{Pair.create(view.findViewById(R.id.image), getResources().getString(R.string.transition_album_cover))});
} else if (item instanceof Artist) {

View file

@ -13,6 +13,7 @@ import com.crashlytics.android.Crashlytics;
import com.kabouzeid.gramophone.App;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.adapter.songadapter.SongAdapter;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.interfaces.KabViewsDisableAble;
import com.kabouzeid.gramophone.misc.AppKeys;
import com.kabouzeid.gramophone.ui.activities.AlbumDetailActivity;
@ -74,7 +75,7 @@ public abstract class AbsBaseActivity extends ActionBarActivity implements KabVi
}
protected boolean openCurrentPlayingIfPossible(Pair[] sharedViews) {
if (getApp().getMusicPlayerRemote().getPosition() != -1) {
if (MusicPlayerRemote.getPosition() != -1) {
if (areViewsEnabled()) {
disableViews();
Intent intent = new Intent(this, MusicControllerActivity.class);

View file

@ -10,6 +10,7 @@ import android.widget.Toast;
import com.kabouzeid.gramophone.App;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.misc.SmallOnGestureListener;
import com.kabouzeid.gramophone.model.MusicRemoteEvent;
import com.melnykov.fab.FloatingActionButton;
@ -47,11 +48,11 @@ public abstract class AbsFabActivity extends AbsBaseActivity {
getFab().setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (getApp().getMusicPlayerRemote().getPosition() != -1) {
if (getApp().getMusicPlayerRemote().isPlaying()) {
getApp().getMusicPlayerRemote().pauseSong();
if (MusicPlayerRemote.getPosition() != -1) {
if (MusicPlayerRemote.isPlaying()) {
MusicPlayerRemote.pauseSong();
} else {
getApp().getMusicPlayerRemote().resumePlaying();
MusicPlayerRemote.resumePlaying();
}
} else {
Toast.makeText(AbsFabActivity.this, getResources().getString(R.string.nothing_playing), Toast.LENGTH_SHORT).show();
@ -77,7 +78,7 @@ public abstract class AbsFabActivity extends AbsBaseActivity {
}
private void updateFabState() {
if (getApp().getMusicPlayerRemote().isPlaying()) {
if (MusicPlayerRemote.isPlaying()) {
getFab().setImageResource(R.drawable.ic_pause_white_24dp);
} else {
getFab().setImageResource(R.drawable.ic_play_arrow_white_24dp);

View file

@ -4,6 +4,7 @@ import android.app.Activity;
import android.app.Fragment;
import android.os.Bundle;
import android.os.Handler;
import android.preference.PreferenceManager;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.view.LayoutInflater;
@ -62,7 +63,7 @@ public class NavigationDrawerFragment extends Fragment {
if (!userLearnedDrawer && !fromSavedInstanceState) {
this.drawerLayout.openDrawer(fragmentContainerView);
userLearnedDrawer = true;
app.getDefaultSharedPreferences().edit().putBoolean(AppKeys.SP_USER_LEARNED_DRAWER, true).apply();
PreferenceManager.getDefaultSharedPreferences(getActivity()).edit().putBoolean(AppKeys.SP_USER_LEARNED_DRAWER, true).apply();
}
}
@ -91,7 +92,7 @@ public class NavigationDrawerFragment extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState) {
app = (App) getActivity().getApplicationContext();
userLearnedDrawer = app.getDefaultSharedPreferences().getBoolean(AppKeys.SP_USER_LEARNED_DRAWER, false);
userLearnedDrawer = PreferenceManager.getDefaultSharedPreferences(getActivity()).getBoolean(AppKeys.SP_USER_LEARNED_DRAWER, false);
if (savedInstanceState != null) {
setItemChecked(savedInstanceState.getInt(STATE_SELECTED_POSITION));
fromSavedInstanceState = true;

View file

@ -6,6 +6,7 @@ import android.widget.ListAdapter;
import com.kabouzeid.gramophone.adapter.songadapter.SongAdapter;
import com.kabouzeid.gramophone.comparator.SongAlphabeticComparator;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.loader.ArtistSongLoader;
import com.kabouzeid.gramophone.model.Song;
import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity;
@ -29,7 +30,7 @@ public class ViewPagerTabArtistSongListFragment extends AbsViewPagerTabArtistLis
setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
app.getMusicPlayerRemote().openQueue(songs, position, true);
MusicPlayerRemote.openQueue(songs, position, true);
}
});
return adapter;

View file

@ -12,6 +12,7 @@ import com.kabouzeid.gramophone.App;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.adapter.songadapter.SongViewListAdapter;
import com.kabouzeid.gramophone.comparator.SongAlphabeticComparator;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.loader.SongLoader;
import com.kabouzeid.gramophone.model.Song;
import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity;
@ -73,7 +74,7 @@ public class SongViewFragment extends MainActivityFragment {
absListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
app.getMusicPlayerRemote().openQueue(songs, position, true);
MusicPlayerRemote.openQueue(songs, position, true);
}
});