Show default color when opening album/artist and image doesn't load fast enough

This commit is contained in:
Karim Abou Zeid 2018-04-29 21:48:31 +02:00
commit 005fd71276
2 changed files with 3 additions and 25 deletions

View file

@ -24,8 +24,6 @@ import com.afollestad.materialcab.MaterialCab;
import com.afollestad.materialdialogs.MaterialDialog; import com.afollestad.materialdialogs.MaterialDialog;
import com.afollestad.materialdialogs.util.DialogUtils; import com.afollestad.materialdialogs.util.DialogUtils;
import com.bumptech.glide.Glide; import com.bumptech.glide.Glide;
import com.bumptech.glide.request.RequestListener;
import com.bumptech.glide.request.target.Target;
import com.github.ksoichiro.android.observablescrollview.ObservableRecyclerView; import com.github.ksoichiro.android.observablescrollview.ObservableRecyclerView;
import com.kabouzeid.appthemehelper.util.ColorUtil; import com.kabouzeid.appthemehelper.util.ColorUtil;
import com.kabouzeid.appthemehelper.util.MaterialValueHelper; import com.kabouzeid.appthemehelper.util.MaterialValueHelper;
@ -36,7 +34,6 @@ import com.kabouzeid.gramophone.dialogs.DeleteSongsDialog;
import com.kabouzeid.gramophone.dialogs.SleepTimerDialog; import com.kabouzeid.gramophone.dialogs.SleepTimerDialog;
import com.kabouzeid.gramophone.glide.PhonographColoredTarget; import com.kabouzeid.gramophone.glide.PhonographColoredTarget;
import com.kabouzeid.gramophone.glide.SongGlideRequest; import com.kabouzeid.gramophone.glide.SongGlideRequest;
import com.kabouzeid.gramophone.glide.palette.BitmapPaletteWrapper;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote; import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
import com.kabouzeid.gramophone.interfaces.CabHolder; import com.kabouzeid.gramophone.interfaces.CabHolder;
import com.kabouzeid.gramophone.interfaces.LoaderIds; import com.kabouzeid.gramophone.interfaces.LoaderIds;
@ -123,8 +120,6 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements
setDrawUnderStatusbar(true); setDrawUnderStatusbar(true);
ButterKnife.bind(this); ButterKnife.bind(this);
supportPostponeEnterTransition();
lastFMRestClient = new LastFMRestClient(this); lastFMRestClient = new LastFMRestClient(this);
setUpObservableListViewParams(); setUpObservableListViewParams();
@ -156,7 +151,6 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements
}; };
private void setUpObservableListViewParams() { private void setUpObservableListViewParams() {
toolbarColor = DialogUtils.resolveColor(this, R.attr.defaultFooterColor);
headerViewHeight = getResources().getDimensionPixelSize(R.dimen.detail_header_height); headerViewHeight = getResources().getDimensionPixelSize(R.dimen.detail_header_height);
} }
@ -168,6 +162,7 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements
NavigationUtil.goToArtist(AlbumDetailActivity.this, album.getArtistId()); NavigationUtil.goToArtist(AlbumDetailActivity.this, album.getArtistId());
} }
}); });
setColors(DialogUtils.resolveColor(this, R.attr.defaultFooterColor));
} }
private void loadAlbumCover() { private void loadAlbumCover() {
@ -175,19 +170,6 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements
.checkIgnoreMediaStore(this) .checkIgnoreMediaStore(this)
.generatePalette(this).build() .generatePalette(this).build()
.dontAnimate() .dontAnimate()
.listener(new RequestListener<Object, BitmapPaletteWrapper>() {
@Override
public boolean onException(Exception e, Object model, Target<BitmapPaletteWrapper> target, boolean isFirstResource) {
supportStartPostponedEnterTransition();
return false;
}
@Override
public boolean onResourceReady(BitmapPaletteWrapper resource, Object model, Target<BitmapPaletteWrapper> target, boolean isFromMemoryCache, boolean isFirstResource) {
supportStartPostponedEnterTransition();
return false;
}
})
.into(new PhonographColoredTarget(albumArtImageView) { .into(new PhonographColoredTarget(albumArtImageView) {
@Override @Override
public void onColorReady(int color) { public void onColorReady(int color) {
@ -453,7 +435,6 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements
@Override @Override
public void onLoadFinished(Loader<Album> loader, Album data) { public void onLoadFinished(Loader<Album> loader, Album data) {
supportStartPostponedEnterTransition();
setAlbum(data); setAlbum(data);
} }

View file

@ -137,15 +137,13 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement
setDrawUnderStatusbar(true); setDrawUnderStatusbar(true);
ButterKnife.bind(this); ButterKnife.bind(this);
supportPostponeEnterTransition();
lastFMRestClient = new LastFMRestClient(this); lastFMRestClient = new LastFMRestClient(this);
usePalette = PreferenceUtil.getInstance(this).albumArtistColoredFooters(); usePalette = PreferenceUtil.getInstance(this).albumArtistColoredFooters();
initViews(); initViews();
setUpObservableListViewParams(); setUpObservableListViewParams();
setUpViews();
setUpToolbar(); setUpToolbar();
setUpViews();
getSupportLoaderManager().initLoader(LOADER_ID, getIntent().getExtras(), this); getSupportLoaderManager().initLoader(LOADER_ID, getIntent().getExtras(), this);
} }
@ -158,7 +156,6 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement
private boolean usePalette; private boolean usePalette;
private void setUpObservableListViewParams() { private void setUpObservableListViewParams() {
toolbarColor = DialogUtils.resolveColor(this, R.attr.defaultFooterColor);
headerViewHeight = getResources().getDimensionPixelSize(R.dimen.detail_header_height); headerViewHeight = getResources().getDimensionPixelSize(R.dimen.detail_header_height);
} }
@ -170,6 +167,7 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement
private void setUpViews() { private void setUpViews() {
setUpSongListView(); setUpSongListView();
setUpAlbumRecyclerView(); setUpAlbumRecyclerView();
setColors(DialogUtils.resolveColor(this, R.attr.defaultFooterColor));
} }
private void setUpSongListView() { private void setUpSongListView() {
@ -465,7 +463,6 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement
@Override @Override
public void onLoadFinished(Loader<Artist> loader, Artist data) { public void onLoadFinished(Loader<Artist> loader, Artist data) {
supportStartPostponedEnterTransition();
setArtist(data); setArtist(data);
} }