Updated deprecated palette methods and fixed a small bug in artist and album detail activity

This commit is contained in:
Karim Abou Zeid 2015-04-22 13:22:40 +02:00
commit 82c7128ea8
7 changed files with 98 additions and 88 deletions

View file

@ -138,7 +138,8 @@ public class AlbumAdapter extends RecyclerView.Adapter<AlbumAdapter.ViewHolder>
} }
private void applyPalette(Bitmap bitmap, final TextView title, final TextView artist, final View footer) { private void applyPalette(Bitmap bitmap, final TextView title, final TextView artist, final View footer) {
Palette.generateAsync(bitmap, new Palette.PaletteAsyncListener() { Palette.from(bitmap)
.generate(new Palette.PaletteAsyncListener() {
@Override @Override
public void onGenerated(Palette palette) { public void onGenerated(Palette palette) {
final Palette.Swatch vibrantSwatch = palette.getVibrantSwatch(); final Palette.Swatch vibrantSwatch = palette.getVibrantSwatch();

View file

@ -197,15 +197,16 @@ public class AlbumDetailActivity extends AbsFabActivity implements PaletteColorH
} }
private void applyPalette(Bitmap bitmap) { private void applyPalette(Bitmap bitmap) {
Palette.generateAsync(bitmap, new Palette.PaletteAsyncListener() { Palette.from(bitmap)
.generate(new Palette.PaletteAsyncListener() {
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override @Override
public void onGenerated(Palette palette) { public void onGenerated(Palette palette) {
Palette.Swatch swatch = palette.getVibrantSwatch(); final Palette.Swatch vibrantSwatch = palette.getVibrantSwatch();
if (swatch != null) { if (vibrantSwatch != null) {
toolbarColor = swatch.getRgb(); toolbarColor = vibrantSwatch.getRgb();
albumTitleView.setBackgroundColor(toolbarColor); albumTitleView.setBackgroundColor(toolbarColor);
albumTitleView.setTextColor(swatch.getTitleTextColor()); albumTitleView.setTextColor(vibrantSwatch.getTitleTextColor());
if (Util.hasLollipopSDK() && PreferenceUtils.getInstance(AlbumDetailActivity.this).coloredNavigationBarAlbumEnabled()) if (Util.hasLollipopSDK() && PreferenceUtils.getInstance(AlbumDetailActivity.this).coloredNavigationBarAlbumEnabled())
getWindow().setNavigationBarColor(toolbarColor); getWindow().setNavigationBarColor(toolbarColor);
notifyTaskColorChange(toolbarColor); notifyTaskColorChange(toolbarColor);

View file

@ -292,17 +292,18 @@ public class ArtistDetailActivity extends AbsFabActivity implements PaletteColor
} }
private void applyPalette(Bitmap bitmap) { private void applyPalette(Bitmap bitmap) {
Palette.generateAsync(bitmap, new Palette.PaletteAsyncListener() { Palette.from(bitmap)
.generate(new Palette.PaletteAsyncListener() {
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override @Override
public void onGenerated(Palette palette) { public void onGenerated(Palette palette) {
Palette.Swatch swatch = palette.getVibrantSwatch(); final Palette.Swatch vibrantSwatch = palette.getVibrantSwatch();
if (swatch != null) { if (vibrantSwatch != null) {
toolbarColor = swatch.getRgb(); toolbarColor = vibrantSwatch.getRgb();
artistNameTv.setBackgroundColor(swatch.getRgb()); artistNameTv.setBackgroundColor(vibrantSwatch.getRgb());
artistNameTv.setTextColor(swatch.getTitleTextColor()); artistNameTv.setTextColor(vibrantSwatch.getTitleTextColor());
if (Util.hasLollipopSDK() && PreferenceUtils.getInstance(ArtistDetailActivity.this).coloredNavigationBarArtistEnabled()) if (Util.hasLollipopSDK() && PreferenceUtils.getInstance(ArtistDetailActivity.this).coloredNavigationBarArtistEnabled())
getWindow().setNavigationBarColor(swatch.getRgb()); getWindow().setNavigationBarColor(vibrantSwatch.getRgb());
notifyTaskColorChange(toolbarColor); notifyTaskColorChange(toolbarColor);
} else { } else {
resetColors(); resetColors();

View file

@ -320,15 +320,16 @@ public class MusicControllerActivity extends AbsFabActivity {
} }
private void applyPalette(Bitmap bitmap) { private void applyPalette(Bitmap bitmap) {
Palette.generateAsync(bitmap, new Palette.PaletteAsyncListener() { Palette.from(bitmap)
.generate(new Palette.PaletteAsyncListener() {
@Override @Override
public void onGenerated(Palette palette) { public void onGenerated(Palette palette) {
Palette.Swatch swatch = palette.getVibrantSwatch(); final Palette.Swatch vibrantSwatch = palette.getVibrantSwatch();
if (swatch != null) { if (vibrantSwatch != null) {
final int swatchRgb = swatch.getRgb(); final int swatchRgb = vibrantSwatch.getRgb();
animateColorChange(swatchRgb); animateColorChange(swatchRgb);
songTitle.setTextColor(swatch.getTitleTextColor()); songTitle.setTextColor(vibrantSwatch.getTitleTextColor());
songArtist.setTextColor(swatch.getBodyTextColor()); songArtist.setTextColor(vibrantSwatch.getBodyTextColor());
notifyTaskColorChange(swatchRgb); notifyTaskColorChange(swatchRgb);
} else { } else {
resetColors(); resetColors();

View file

@ -132,7 +132,7 @@ public abstract class AbsTagEditorActivity extends AbsBaseActivity {
} }
private void setUpViews() { private void setUpViews() {
restoreStandardColors(); resetColors();
setUpScrollView(); setUpScrollView();
setUpFab(); setUpFab();
setUpImageView(); setUpImageView();
@ -208,7 +208,7 @@ public abstract class AbsTagEditorActivity extends AbsBaseActivity {
protected abstract void save(); protected abstract void save();
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @TargetApi(Build.VERSION_CODES.LOLLIPOP)
private void restoreStandardColors() { private void resetColors() {
final int primaryColor = PreferenceUtils.getInstance(this).getThemeColorPrimary(); final int primaryColor = PreferenceUtils.getInstance(this).getThemeColorPrimary();
paletteColorPrimary = primaryColor; paletteColorPrimary = primaryColor;
observableScrollViewCallbacks.onScrollChanged(scrollView.getCurrentScrollY(), false, false); observableScrollViewCallbacks.onScrollChanged(scrollView.getCurrentScrollY(), false, false);
@ -293,15 +293,19 @@ public abstract class AbsTagEditorActivity extends AbsBaseActivity {
if (bitmap != null) { if (bitmap != null) {
image.setImageBitmap(bitmap); image.setImageBitmap(bitmap);
applyPalette(bitmap); applyPalette(bitmap);
} else {
resetColors();
} }
} }
private void applyPalette(final Bitmap bitmap) { private void applyPalette(final Bitmap bitmap) {
if (bitmap != null) { Palette.from(bitmap)
Palette.generateAsync(bitmap, new Palette.PaletteAsyncListener() { .generate(new Palette.PaletteAsyncListener() {
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override @Override
public void onGenerated(Palette palette) { public void onGenerated(Palette palette) {
final Palette.Swatch vibrantSwatch = palette.getVibrantSwatch();
if (vibrantSwatch != null) {
final int vibrantColor = palette.getVibrantColor(DialogUtils.resolveColor(AbsTagEditorActivity.this, R.attr.default_bar_color)); final int vibrantColor = palette.getVibrantColor(DialogUtils.resolveColor(AbsTagEditorActivity.this, R.attr.default_bar_color));
paletteColorPrimary = vibrantColor; paletteColorPrimary = vibrantColor;
observableScrollViewCallbacks.onScrollChanged(scrollView.getCurrentScrollY(), false, false); observableScrollViewCallbacks.onScrollChanged(scrollView.getCurrentScrollY(), false, false);
@ -309,11 +313,11 @@ public abstract class AbsTagEditorActivity extends AbsBaseActivity {
if (Util.hasLollipopSDK() && PreferenceUtils.getInstance(AbsTagEditorActivity.this).coloredNavigationBarTagEditorEnabled()) if (Util.hasLollipopSDK() && PreferenceUtils.getInstance(AbsTagEditorActivity.this).coloredNavigationBarTagEditorEnabled())
getWindow().setNavigationBarColor(vibrantColor); getWindow().setNavigationBarColor(vibrantColor);
notifyTaskColorChange(vibrantColor); notifyTaskColorChange(vibrantColor);
} else {
resetColors();
}
} }
}); });
} else {
restoreStandardColors();
}
} }
@Override @Override

View file

@ -38,6 +38,8 @@
android:layout_height="@dimen/title_view_height" android:layout_height="@dimen/title_view_height"
android:height="@dimen/title_view_height" android:height="@dimen/title_view_height"
android:background="?default_bar_color" android:background="?default_bar_color"
android:clickable="true"
android:elevation="@dimen/toolbar_elevation"
android:fontFamily="sans-serif-medium" android:fontFamily="sans-serif-medium"
android:gravity="center_vertical" android:gravity="center_vertical"
android:paddingLeft="72dp" android:paddingLeft="72dp"
@ -45,7 +47,6 @@
android:singleLine="true" android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Title" android:textAppearance="@style/TextAppearance.AppCompat.Title"
android:textColor="?attr/title_text_color" android:textColor="?attr/title_text_color"
android:elevation="@dimen/toolbar_elevation"
tools:ignore="UnusedAttribute" /> tools:ignore="UnusedAttribute" />
<View <View

View file

@ -38,6 +38,7 @@
android:layout_height="@dimen/title_view_height" android:layout_height="@dimen/title_view_height"
android:height="@dimen/title_view_height" android:height="@dimen/title_view_height"
android:background="?default_bar_color" android:background="?default_bar_color"
android:clickable="true"
android:elevation="@dimen/toolbar_elevation" android:elevation="@dimen/toolbar_elevation"
android:fontFamily="sans-serif-medium" android:fontFamily="sans-serif-medium"
android:gravity="center_vertical" android:gravity="center_vertical"