Palette color passed to song tag editor where applicable
This commit is contained in:
parent
d65dd12582
commit
774d1f7076
6 changed files with 43 additions and 5 deletions
|
|
@ -11,6 +11,7 @@ import com.kabouzeid.gramophone.dialogs.DeletePlaylistDialog;
|
||||||
import com.kabouzeid.gramophone.dialogs.DeleteSongsDialog;
|
import com.kabouzeid.gramophone.dialogs.DeleteSongsDialog;
|
||||||
import com.kabouzeid.gramophone.dialogs.RenamePlaylistDialog;
|
import com.kabouzeid.gramophone.dialogs.RenamePlaylistDialog;
|
||||||
import com.kabouzeid.gramophone.dialogs.SongDetailDialog;
|
import com.kabouzeid.gramophone.dialogs.SongDetailDialog;
|
||||||
|
import com.kabouzeid.gramophone.interfaces.PaletteColorHolder;
|
||||||
import com.kabouzeid.gramophone.loader.SongFilePathLoader;
|
import com.kabouzeid.gramophone.loader.SongFilePathLoader;
|
||||||
import com.kabouzeid.gramophone.misc.AppKeys;
|
import com.kabouzeid.gramophone.misc.AppKeys;
|
||||||
import com.kabouzeid.gramophone.model.Playlist;
|
import com.kabouzeid.gramophone.model.Playlist;
|
||||||
|
|
@ -43,6 +44,8 @@ public class MenuItemClickHelper {
|
||||||
case R.id.action_tag_editor:
|
case R.id.action_tag_editor:
|
||||||
Intent intent = new Intent(activity, SongTagEditorActivity.class);
|
Intent intent = new Intent(activity, SongTagEditorActivity.class);
|
||||||
intent.putExtra(AppKeys.E_ID, song.id);
|
intent.putExtra(AppKeys.E_ID, song.id);
|
||||||
|
if (activity instanceof PaletteColorHolder)
|
||||||
|
intent.putExtra(AppKeys.E_PALETTE, ((PaletteColorHolder) activity).getPaletteColor());
|
||||||
activity.startActivity(intent);
|
activity.startActivity(intent);
|
||||||
return true;
|
return true;
|
||||||
case R.id.action_details:
|
case R.id.action_details:
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
package com.kabouzeid.gramophone.interfaces;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Aidan Follestad (afollestad)
|
||||||
|
*/
|
||||||
|
public interface PaletteColorHolder {
|
||||||
|
|
||||||
|
int getPaletteColor();
|
||||||
|
}
|
||||||
|
|
@ -13,12 +13,13 @@ public final class AppKeys {
|
||||||
public static final String IS_ORIGINAL_PLAYING_QUEUE = "com.kabouzeid.gramophone.ORIGINAL_PLAYING_QUEUE";
|
public static final String IS_ORIGINAL_PLAYING_QUEUE = "com.kabouzeid.gramophone.ORIGINAL_PLAYING_QUEUE";
|
||||||
public static final String IS_PLAYING_QUEUE = "com.kabouzeid.gramophone.PLAYING_QUEUE";
|
public static final String IS_PLAYING_QUEUE = "com.kabouzeid.gramophone.PLAYING_QUEUE";
|
||||||
public static final String IS_POSITION_IN_QUEUE = "com.kabouzeid.gramophone.POSITION_IN_QUEUE";
|
public static final String IS_POSITION_IN_QUEUE = "com.kabouzeid.gramophone.POSITION_IN_QUEUE";
|
||||||
public static final String IS_ARTIST_JSON_INFO_CACHE = "com.kabouzeid.gramophone.ARTIST_JSON_INFO_CACHE";
|
// public static final String IS_ARTIST_JSON_INFO_CACHE = "com.kabouzeid.gramophone.ARTIST_JSON_INFO_CACHE";
|
||||||
|
|
||||||
public static final String E_ALBUM = "com.kabouzeid.gramophone.ALBUM";
|
public static final String E_ALBUM = "com.kabouzeid.gramophone.ALBUM";
|
||||||
public static final String E_ARTIST = "com.kabouzeid.gramophone.ARTIST";
|
public static final String E_ARTIST = "com.kabouzeid.gramophone.ARTIST";
|
||||||
public static final String E_SONG = "com.kabouzeid.gramophone.SONG";
|
// public static final String E_SONG = "com.kabouzeid.gramophone.SONG";
|
||||||
public static final String E_PLAYLIST = "com.kabouzeid.gramophone.PLAYLIST";
|
public static final String E_PLAYLIST = "com.kabouzeid.gramophone.PLAYLIST";
|
||||||
public static final String E_TAG_EDIT_MODE = "com.kabouzeid.gramophone.TAG_EDIT_MODE";
|
// public static final String E_TAG_EDIT_MODE = "com.kabouzeid.gramophone.TAG_EDIT_MODE";
|
||||||
public static final String E_ID = "com.kabouzeid.gramophone.ID";
|
public static final String E_ID = "com.kabouzeid.gramophone.ID";
|
||||||
|
public static final String E_PALETTE = "com.kabouzeid.gramophone.PALETTE";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@ import com.kabouzeid.gramophone.R;
|
||||||
import com.kabouzeid.gramophone.adapter.songadapter.AlbumSongAdapter;
|
import com.kabouzeid.gramophone.adapter.songadapter.AlbumSongAdapter;
|
||||||
import com.kabouzeid.gramophone.comparator.SongTrackNumberComparator;
|
import com.kabouzeid.gramophone.comparator.SongTrackNumberComparator;
|
||||||
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
|
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
|
||||||
|
import com.kabouzeid.gramophone.interfaces.PaletteColorHolder;
|
||||||
import com.kabouzeid.gramophone.loader.AlbumLoader;
|
import com.kabouzeid.gramophone.loader.AlbumLoader;
|
||||||
import com.kabouzeid.gramophone.loader.AlbumSongLoader;
|
import com.kabouzeid.gramophone.loader.AlbumSongLoader;
|
||||||
import com.kabouzeid.gramophone.misc.AppKeys;
|
import com.kabouzeid.gramophone.misc.AppKeys;
|
||||||
|
|
@ -49,7 +50,7 @@ import java.util.ArrayList;
|
||||||
* <p/>
|
* <p/>
|
||||||
* Should be kinda stable ONLY AS IT IS!!!
|
* Should be kinda stable ONLY AS IT IS!!!
|
||||||
*/
|
*/
|
||||||
public class AlbumDetailActivity extends AbsFabActivity {
|
public class AlbumDetailActivity extends AbsFabActivity implements PaletteColorHolder {
|
||||||
|
|
||||||
public static final String TAG = AlbumDetailActivity.class.getSimpleName();
|
public static final String TAG = AlbumDetailActivity.class.getSimpleName();
|
||||||
private Album album;
|
private Album album;
|
||||||
|
|
@ -209,6 +210,11 @@ public class AlbumDetailActivity extends AbsFabActivity {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getPaletteColor() {
|
||||||
|
return toolbarColor;
|
||||||
|
}
|
||||||
|
|
||||||
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
|
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
|
||||||
private void setNavigationBarColored(boolean colored) {
|
private void setNavigationBarColored(boolean colored) {
|
||||||
if (colored) {
|
if (colored) {
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,7 @@ import com.kabouzeid.gramophone.R;
|
||||||
import com.kabouzeid.gramophone.adapter.ArtistAlbumAdapter;
|
import com.kabouzeid.gramophone.adapter.ArtistAlbumAdapter;
|
||||||
import com.kabouzeid.gramophone.adapter.songadapter.ArtistSongAdapter;
|
import com.kabouzeid.gramophone.adapter.songadapter.ArtistSongAdapter;
|
||||||
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
|
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
|
||||||
|
import com.kabouzeid.gramophone.interfaces.PaletteColorHolder;
|
||||||
import com.kabouzeid.gramophone.lastfm.artist.LastFMArtistBiographyLoader;
|
import com.kabouzeid.gramophone.lastfm.artist.LastFMArtistBiographyLoader;
|
||||||
import com.kabouzeid.gramophone.lastfm.artist.LastFMArtistImageUrlLoader;
|
import com.kabouzeid.gramophone.lastfm.artist.LastFMArtistImageUrlLoader;
|
||||||
import com.kabouzeid.gramophone.loader.ArtistAlbumLoader;
|
import com.kabouzeid.gramophone.loader.ArtistAlbumLoader;
|
||||||
|
|
@ -58,7 +59,7 @@ import java.util.List;
|
||||||
* <p/>
|
* <p/>
|
||||||
* Should be kinda stable ONLY AS IT IS!!!
|
* Should be kinda stable ONLY AS IT IS!!!
|
||||||
*/
|
*/
|
||||||
public class ArtistDetailActivity extends AbsFabActivity {
|
public class ArtistDetailActivity extends AbsFabActivity implements PaletteColorHolder {
|
||||||
|
|
||||||
public static final String TAG = ArtistDetailActivity.class.getSimpleName();
|
public static final String TAG = ArtistDetailActivity.class.getSimpleName();
|
||||||
private Artist artist;
|
private Artist artist;
|
||||||
|
|
@ -303,6 +304,11 @@ public class ArtistDetailActivity extends AbsFabActivity {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getPaletteColor() {
|
||||||
|
return toolbarColor;
|
||||||
|
}
|
||||||
|
|
||||||
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
|
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
|
||||||
private void resetColors() {
|
private void resetColors() {
|
||||||
int titleTextColor = DialogUtils.resolveColor(this, R.attr.title_text_color);
|
int titleTextColor = DialogUtils.resolveColor(this, R.attr.title_text_color);
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package com.kabouzeid.gramophone.ui.activities.tageditor;
|
package com.kabouzeid.gramophone.ui.activities.tageditor;
|
||||||
|
|
||||||
|
import android.annotation.TargetApi;
|
||||||
import android.app.SearchManager;
|
import android.app.SearchManager;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
|
|
@ -27,6 +28,7 @@ import com.kabouzeid.gramophone.misc.SmallObservableScrollViewCallbacks;
|
||||||
import com.kabouzeid.gramophone.model.DataBaseChangedEvent;
|
import com.kabouzeid.gramophone.model.DataBaseChangedEvent;
|
||||||
import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity;
|
import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity;
|
||||||
import com.kabouzeid.gramophone.util.MusicUtil;
|
import com.kabouzeid.gramophone.util.MusicUtil;
|
||||||
|
import com.kabouzeid.gramophone.util.PreferenceUtils;
|
||||||
import com.kabouzeid.gramophone.util.Util;
|
import com.kabouzeid.gramophone.util.Util;
|
||||||
import com.kabouzeid.gramophone.util.ViewUtil;
|
import com.kabouzeid.gramophone.util.ViewUtil;
|
||||||
import com.koushikdutta.ion.Ion;
|
import com.koushikdutta.ion.Ion;
|
||||||
|
|
@ -240,12 +242,23 @@ public abstract class AbsTagEditorActivity extends AbsBaseActivity {
|
||||||
return super.onOptionsItemSelected(item);
|
return super.onOptionsItemSelected(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
|
||||||
protected void setNoImageMode() {
|
protected void setNoImageMode() {
|
||||||
isInNoImageMode = true;
|
isInNoImageMode = true;
|
||||||
image.setVisibility(View.GONE);
|
image.setVisibility(View.GONE);
|
||||||
image.setEnabled(false);
|
image.setEnabled(false);
|
||||||
scrollView.setPadding(0, Util.getActionBarSize(this), 0, 0);
|
scrollView.setPadding(0, Util.getActionBarSize(this), 0, 0);
|
||||||
observableScrollViewCallbacks.onScrollChanged(scrollView.getCurrentScrollY(), false, false);
|
observableScrollViewCallbacks.onScrollChanged(scrollView.getCurrentScrollY(), false, false);
|
||||||
|
|
||||||
|
int primary = getIntent().getIntExtra(AppKeys.E_PALETTE,
|
||||||
|
PreferenceUtils.getInstance(this).getThemeColorPrimary());
|
||||||
|
toolBar.setBackgroundColor(primary);
|
||||||
|
header.setBackgroundColor(primary);
|
||||||
|
if (Util.hasLollipopSDK()) {
|
||||||
|
int primaryDark = ColorChooserDialog.shiftColorDown(primary);
|
||||||
|
getWindow().setStatusBarColor(primaryDark);
|
||||||
|
getWindow().setNavigationBarColor(primaryDark);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void dataChanged() {
|
protected void dataChanged() {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue