diff --git a/README.md b/README.md index 5617f064..b253f734 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,15 @@ # Phonograph -A material designed local music player for Android. + +**A material designed local music player for Android.** + +![Screenshots](./art/art.jpg?raw=true) Get it on Google Play + src="https://play.google.com/intl/en_us/badges/images/apps/en-play-badge.png" /> + ## License + Phonograph is released under the GNU General Public License v3.0 (GPLv3), which can be found here: [License](LICENSE.txt) diff --git a/app/build.gradle b/app/build.gradle index a6ac3652..424d2dc5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -17,11 +17,6 @@ apply plugin: 'com.jakewharton.hugo' repositories { maven { url 'https://maven.fabric.io/public' } - - maven { - name 'glide-snapshot' - url 'http://oss.sonatype.org/content/repositories/snapshots' - } } android { @@ -37,9 +32,9 @@ android { renderscriptTargetApi 25 vectorDrawables.useSupportLibrary = true - applicationId "com.kabouzeid.gramophone" + applicationId 'com.kabouzeid.gramophone' versionCode 132 - versionName "0.15.0" + versionName '0.15.0' } buildTypes { release { @@ -93,7 +88,7 @@ dependencies { compile 'com.crashlytics.sdk.android:crashlytics:2.6.7' compile 'com.github.kabouzeid:app-theme-helper:1.3.7' - compile 'com.github.kabouzeid:RecyclerView-FastScroll:1.9-kmod' + compile 'com.github.kabouzeid:RecyclerView-FastScroll:1.0.16-kmod' compile 'com.github.kabouzeid:SeekArc:1.2-kmod' compile 'com.github.kabouzeid:AndroidSlidingUpPanel:3.3.0-kmod3' @@ -101,12 +96,11 @@ dependencies { compile 'com.afollestad.material-dialogs:commons:0.9.4.5' compile 'com.afollestad:material-cab:0.1.12' - compile "com.h6ah4i.android.widget.advrecyclerview:advrecyclerview:0.10.6" + compile 'com.h6ah4i.android.widget.advrecyclerview:advrecyclerview:0.10.6' compile 'com.github.ksoichiro:android-observablescrollview:1.6.0' compile 'com.squareup.retrofit2:retrofit:2.3.0' compile 'com.squareup.retrofit2:converter-gson:2.3.0' - //noinspection GradleDynamicVersion - compile 'com.anjlab.android.iab.v3:library:1.0.+' + compile 'com.anjlab.android.iab.v3:library:1.0.40' compile 'de.psdev.licensesdialog:licensesdialog:1.8.1' compile 'com.github.bumptech.glide:glide:3.8.0' compile 'com.github.bumptech.glide:okhttp3-integration:1.5.0' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index e5bbfac4..1ee61abb 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -10,6 +10,7 @@ + + @@ -93,6 +95,31 @@ + + + + + + + + + - - - - - + + + + + + + + - - - - - - diff --git a/app/src/main/java/com/kabouzeid/gramophone/App.java b/app/src/main/java/com/kabouzeid/gramophone/App.java index bf8d228e..9937185f 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/App.java +++ b/app/src/main/java/com/kabouzeid/gramophone/App.java @@ -25,7 +25,7 @@ public class App extends Application { .build(); Fabric.with(this, crashlyticsKit); - //Set up dynamic shortcuts + // Set up dynamic shortcuts if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) { new DynamicShortcutManager(this).initDynamicShortcuts(); } diff --git a/app/src/main/java/com/kabouzeid/gramophone/adapter/album/HorizontalAlbumAdapter.java b/app/src/main/java/com/kabouzeid/gramophone/adapter/album/HorizontalAlbumAdapter.java index 0ebdcf68..e2ed6b1b 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/adapter/album/HorizontalAlbumAdapter.java +++ b/app/src/main/java/com/kabouzeid/gramophone/adapter/album/HorizontalAlbumAdapter.java @@ -25,7 +25,7 @@ import java.util.ArrayList; public class HorizontalAlbumAdapter extends AlbumAdapter { public static final String TAG = AlbumAdapter.class.getSimpleName(); - public HorizontalAlbumAdapter(@NonNull AppCompatActivity activity, ArrayList dataSet,boolean usePalette, @Nullable CabHolder cabHolder) { + public HorizontalAlbumAdapter(@NonNull AppCompatActivity activity, ArrayList dataSet, boolean usePalette, @Nullable CabHolder cabHolder) { super(activity, dataSet, HorizontalAdapterHelper.LAYOUT_RES, usePalette, cabHolder); } diff --git a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/AppShortcutIconGenerator.java b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/AppShortcutIconGenerator.java index 6984edf7..a01488b2 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/AppShortcutIconGenerator.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/AppShortcutIconGenerator.java @@ -18,7 +18,6 @@ import com.kabouzeid.gramophone.util.Util; /** * @author Adrian Campos */ - @RequiresApi(Build.VERSION_CODES.N_MR1) public final class AppShortcutIconGenerator { public static Icon generateThemedIcon(Context context, int iconId) { @@ -30,7 +29,7 @@ public final class AppShortcutIconGenerator { } private static Icon generateDefaultThemedIcon(Context context, int iconId) { - //Return an Icon of iconId with default colors + // Return an Icon of iconId with default colors return generateThemedIcon(context, iconId, context.getColor(R.color.app_shortcut_default_foreground), context.getColor(R.color.app_shortcut_default_background) @@ -38,11 +37,11 @@ public final class AppShortcutIconGenerator { } private static Icon generateUserThemedIcon(Context context, int iconId) { - //Get background color from context's theme + // Get background color from context's theme final TypedValue typedColorBackground = new TypedValue(); context.getTheme().resolveAttribute(android.R.attr.colorBackground, typedColorBackground, true); - //Return an Icon of iconId with those colors + // Return an Icon of iconId with those colors return generateThemedIcon(context, iconId, ThemeStore.primaryColor(context), typedColorBackground.data @@ -50,14 +49,14 @@ public final class AppShortcutIconGenerator { } private static Icon generateThemedIcon(Context context, int iconId, int foregroundColor, int backgroundColor) { - //Get and tint foreground and background drawables + // Get and tint foreground and background drawables Drawable vectorDrawable = Util.getTintedVectorDrawable(context, iconId, foregroundColor); Drawable backgroundDrawable = Util.getTintedVectorDrawable(context, R.drawable.ic_app_shortcut_background, backgroundColor); - //Squash the two drawables together + // Squash the two drawables together LayerDrawable layerDrawable = new LayerDrawable(new Drawable[]{backgroundDrawable, vectorDrawable}); - //Return as an Icon + // Return as an Icon return Icon.createWithBitmap(drawableToBitmap(layerDrawable)); } diff --git a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/AppShortcutLauncherActivity.java b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/AppShortcutLauncherActivity.java index 03bbdb79..b2beae9c 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/AppShortcutLauncherActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/AppShortcutLauncherActivity.java @@ -31,7 +31,7 @@ public class AppShortcutLauncherActivity extends Activity { int shortcutType = SHORTCUT_TYPE_NONE; - //Set shortcutType from the intent extras + // Set shortcutType from the intent extras Bundle extras = getIntent().getExtras(); if (extras != null) { //noinspection WrongConstant diff --git a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/BaseShortcutType.java b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/BaseShortcutType.java index 53733d9f..c260261f 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/BaseShortcutType.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/BaseShortcutType.java @@ -4,6 +4,7 @@ import android.annotation.TargetApi; import android.content.Context; import android.content.Intent; import android.content.pm.ShortcutInfo; +import android.os.Build; import android.os.Bundle; import com.kabouzeid.gramophone.appshortcuts.AppShortcutLauncherActivity; @@ -11,8 +12,7 @@ import com.kabouzeid.gramophone.appshortcuts.AppShortcutLauncherActivity; /** * @author Adrian Campos */ - -@TargetApi(25) +@TargetApi(Build.VERSION_CODES.N_MR1) public abstract class BaseShortcutType { static final String ID_PREFIX = "com.kabouzeid.gramophone.appshortcuts.id."; @@ -23,13 +23,11 @@ public abstract class BaseShortcutType { this.context = context; } - - abstract ShortcutInfo getShortcutInfo(); - static public String getId() { return ID_PREFIX + "invalid"; } + abstract ShortcutInfo getShortcutInfo(); /** * Creates an Intent that will launch MainActivtiy and immediately play {@param songs} in either shuffle or normal mode diff --git a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/LastAddedShortcutType.java b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/LastAddedShortcutType.java index 77182f1e..7b764939 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/LastAddedShortcutType.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/LastAddedShortcutType.java @@ -3,6 +3,7 @@ package com.kabouzeid.gramophone.appshortcuts.shortcuttype; import android.annotation.TargetApi; import android.content.Context; import android.content.pm.ShortcutInfo; +import android.os.Build; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.appshortcuts.AppShortcutIconGenerator; @@ -11,13 +12,16 @@ import com.kabouzeid.gramophone.appshortcuts.AppShortcutLauncherActivity; /** * @author Adrian Campos */ - -@TargetApi(25) +@TargetApi(Build.VERSION_CODES.N_MR1) public final class LastAddedShortcutType extends BaseShortcutType { public LastAddedShortcutType(Context context) { super(context); } + public static String getId() { + return ID_PREFIX + "last_added"; + } + public ShortcutInfo getShortcutInfo() { return new ShortcutInfo.Builder(context, getId()) .setShortLabel(context.getString(R.string.app_shortcut_last_added_short)) @@ -26,8 +30,4 @@ public final class LastAddedShortcutType extends BaseShortcutType { .setIntent(getPlaySongsIntent(AppShortcutLauncherActivity.SHORTCUT_TYPE_LAST_ADDED)) .build(); } - - public static String getId(){ - return ID_PREFIX + "last_added"; - } } diff --git a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/ShuffleAllShortcutType.java b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/ShuffleAllShortcutType.java index dd952d16..bd90d577 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/ShuffleAllShortcutType.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/ShuffleAllShortcutType.java @@ -3,6 +3,7 @@ package com.kabouzeid.gramophone.appshortcuts.shortcuttype; import android.annotation.TargetApi; import android.content.Context; import android.content.pm.ShortcutInfo; +import android.os.Build; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.appshortcuts.AppShortcutIconGenerator; @@ -11,13 +12,16 @@ import com.kabouzeid.gramophone.appshortcuts.AppShortcutLauncherActivity; /** * @author Adrian Campos */ - -@TargetApi(25) +@TargetApi(Build.VERSION_CODES.N_MR1) public final class ShuffleAllShortcutType extends BaseShortcutType { public ShuffleAllShortcutType(Context context) { super(context); } + public static String getId() { + return ID_PREFIX + "shuffle_all"; + } + public ShortcutInfo getShortcutInfo() { return new ShortcutInfo.Builder(context, getId()) .setShortLabel(context.getString(R.string.app_shortcut_shuffle_all_short)) @@ -26,8 +30,4 @@ public final class ShuffleAllShortcutType extends BaseShortcutType { .setIntent(getPlaySongsIntent(AppShortcutLauncherActivity.SHORTCUT_TYPE_SHUFFLE_ALL)) .build(); } - - public static String getId() { - return ID_PREFIX + "shuffle_all"; - } } diff --git a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/TopTracksShortcutType.java b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/TopTracksShortcutType.java index ef82f306..068700ce 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/TopTracksShortcutType.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appshortcuts/shortcuttype/TopTracksShortcutType.java @@ -3,6 +3,7 @@ package com.kabouzeid.gramophone.appshortcuts.shortcuttype; import android.annotation.TargetApi; import android.content.Context; import android.content.pm.ShortcutInfo; +import android.os.Build; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.appshortcuts.AppShortcutIconGenerator; @@ -11,13 +12,16 @@ import com.kabouzeid.gramophone.appshortcuts.AppShortcutLauncherActivity; /** * @author Adrian Campos */ - -@TargetApi(25) +@TargetApi(Build.VERSION_CODES.N_MR1) public final class TopTracksShortcutType extends BaseShortcutType { public TopTracksShortcutType(Context context) { super(context); } + public static String getId() { + return ID_PREFIX + "top_tracks"; + } + public ShortcutInfo getShortcutInfo() { return new ShortcutInfo.Builder(context, getId()) .setShortLabel(context.getString(R.string.app_shortcut_top_tracks_short)) @@ -26,8 +30,4 @@ public final class TopTracksShortcutType extends BaseShortcutType { .setIntent(getPlaySongsIntent(AppShortcutLauncherActivity.SHORTCUT_TYPE_TOP_TRACKS)) .build(); } - - public static String getId() { - return ID_PREFIX + "top_tracks"; - } } diff --git a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetBig.java b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetBig.java index 562132b5..7445cb47 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetBig.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetBig.java @@ -32,6 +32,7 @@ public class AppWidgetBig extends BaseAppWidget { public static final String NAME = "app_widget_big"; private static AppWidgetBig mInstance; + private Target target; // for cancellation public static synchronized AppWidgetBig getInstance() { if (mInstance == null) { @@ -125,14 +126,14 @@ public class AppWidgetBig extends BaseAppWidget { int playPauseRes = isPlaying ? R.drawable.ic_pause_white_24dp : R.drawable.ic_play_arrow_white_24dp; appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause, createBitmap(Util.getTintedVectorDrawable(service, playPauseRes, MaterialValueHelper.getPrimaryTextColor(service, false)), 1f)); - // set prev/next button drawables + // Set prev/next button drawables appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(Util.getTintedVectorDrawable(service, R.drawable.ic_skip_next_white_24dp, MaterialValueHelper.getPrimaryTextColor(service, false)), 1f)); appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(Util.getTintedVectorDrawable(service, R.drawable.ic_skip_previous_white_24dp, MaterialValueHelper.getPrimaryTextColor(service, false)), 1f)); // Link actions buttons to intents linkButtons(service, appWidgetView); - // load the album cover async and push the update on completion + // Load the album cover async and push the update on completion Point p = Util.getScreenSize(service); final int widgetImageSize = Math.min(p.x, p.y); final Context appContext = service.getApplicationContext(); @@ -171,8 +172,6 @@ public class AppWidgetBig extends BaseAppWidget { }); } - private Target target; // for cancellation - /** * Link up various button actions using {@link PendingIntent}. */ diff --git a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetClassic.java b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetClassic.java index 0a75e38a..bdbc01f0 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetClassic.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetClassic.java @@ -31,6 +31,7 @@ public class AppWidgetClassic extends BaseAppWidget { public static final String NAME = "app_widget_classic"; private static AppWidgetClassic mInstance; + private Target target; // for cancellation public static synchronized AppWidgetClassic getInstance() { if (mInstance == null) { @@ -124,14 +125,14 @@ public class AppWidgetClassic extends BaseAppWidget { int playPauseRes = isPlaying ? R.drawable.ic_pause_white_24dp : R.drawable.ic_play_arrow_white_24dp; appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause, createBitmap(Util.getTintedVectorDrawable(service, playPauseRes, MaterialValueHelper.getSecondaryTextColor(service, false)), 1f)); - // set prev/next button drawables + // Set prev/next button drawables appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(Util.getTintedVectorDrawable(service, R.drawable.ic_skip_next_white_24dp, MaterialValueHelper.getSecondaryTextColor(service, false)), 1f)); appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(Util.getTintedVectorDrawable(service, R.drawable.ic_skip_previous_white_24dp, MaterialValueHelper.getSecondaryTextColor(service, false)), 1f)); // Link actions buttons to intents linkButtons(service, appWidgetView); - // load the album cover async and push the update on completion + // Load the album cover async and push the update on completion final Context appContext = service.getApplicationContext(); final int widgetImageSize = service.getResources().getDimensionPixelSize(R.dimen.app_widget_classic_image_size); service.runOnUiThread(new Runnable() { @@ -169,8 +170,6 @@ public class AppWidgetClassic extends BaseAppWidget { }); } - private Target target; // for cancellation - /** * Link up various button actions using {@link PendingIntent}. */ diff --git a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetSmall.java b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetSmall.java index 78f3a6e6..de54ac0b 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetSmall.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/AppWidgetSmall.java @@ -31,6 +31,7 @@ public class AppWidgetSmall extends BaseAppWidget { public static final String NAME = "app_widget_small"; private static AppWidgetSmall mInstance; + private Target target; // for cancellation public static synchronized AppWidgetSmall getInstance() { if (mInstance == null) { @@ -130,14 +131,14 @@ public class AppWidgetSmall extends BaseAppWidget { int playPauseRes = isPlaying ? R.drawable.ic_pause_white_24dp : R.drawable.ic_play_arrow_white_24dp; appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause, createBitmap(Util.getTintedVectorDrawable(service, playPauseRes, MaterialValueHelper.getSecondaryTextColor(service, false)), 1f)); - // set prev/next button drawables + // Set prev/next button drawables appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(Util.getTintedVectorDrawable(service, R.drawable.ic_skip_next_white_24dp, MaterialValueHelper.getSecondaryTextColor(service, false)), 1f)); appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(Util.getTintedVectorDrawable(service, R.drawable.ic_skip_previous_white_24dp, MaterialValueHelper.getSecondaryTextColor(service, false)), 1f)); // Link actions buttons to intents linkButtons(service, appWidgetView); - // load the album cover async and push the update on completion + // Load the album cover async and push the update on completion final Context appContext = service.getApplicationContext(); final int widgetImageSize = service.getResources().getDimensionPixelSize(R.dimen.app_widget_small_image_size); service.runOnUiThread(new Runnable() { @@ -175,8 +176,6 @@ public class AppWidgetSmall extends BaseAppWidget { }); } - private Target target; // for cancellation - /** * Link up various button actions using {@link PendingIntent}. */ diff --git a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/BaseAppWidget.java b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/BaseAppWidget.java index c44f0bf6..1ba0e4b9 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/BaseAppWidget.java +++ b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/BaseAppWidget.java @@ -14,12 +14,6 @@ import android.graphics.drawable.Drawable; */ public class BaseAppWidget extends AppWidgetProvider { - protected PendingIntent buildPendingIntent(Context context, final String action, final ComponentName serviceName) { - Intent intent = new Intent(action); - intent.setComponent(serviceName); - return PendingIntent.getService(context, 0, intent, 0); - } - protected static Bitmap createBitmap(Drawable drawable, float sizeMultiplier) { Bitmap bitmap = Bitmap.createBitmap((int) (drawable.getIntrinsicWidth() * sizeMultiplier), (int) (drawable.getIntrinsicHeight() * sizeMultiplier), Bitmap.Config.ARGB_8888); Canvas c = new Canvas(bitmap); @@ -27,4 +21,10 @@ public class BaseAppWidget extends AppWidgetProvider { drawable.draw(c); return bitmap; } + + protected PendingIntent buildPendingIntent(Context context, final String action, final ComponentName serviceName) { + Intent intent = new Intent(action); + intent.setComponent(serviceName); + return PendingIntent.getService(context, 0, intent, 0); + } } diff --git a/app/src/main/java/com/kabouzeid/gramophone/appwidgets/BootReceiver.java b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/BootReceiver.java new file mode 100644 index 00000000..0773efce --- /dev/null +++ b/app/src/main/java/com/kabouzeid/gramophone/appwidgets/BootReceiver.java @@ -0,0 +1,27 @@ +package com.kabouzeid.gramophone.appwidgets; + +import android.appwidget.AppWidgetManager; +import android.content.BroadcastReceiver; +import android.content.ComponentName; +import android.content.Context; +import android.content.Intent; + +import com.kabouzeid.gramophone.service.MusicService; + +/** + * @author Eugene Cheung (arkon) + */ +public class BootReceiver extends BroadcastReceiver { + @Override + public void onReceive(Context context, Intent intent) { + final AppWidgetManager widgetManager = AppWidgetManager.getInstance(context); + + // Start music service if there are any existing widgets + if (widgetManager.getAppWidgetIds(new ComponentName(context, AppWidgetBig.class)).length > 0 || + widgetManager.getAppWidgetIds(new ComponentName(context, AppWidgetClassic.class)).length > 0 || + widgetManager.getAppWidgetIds(new ComponentName(context, AppWidgetSmall.class)).length > 0) { + final Intent serviceIntent = new Intent(context, MusicService.class); + context.startService(serviceIntent); + } + } +} diff --git a/app/src/main/java/com/kabouzeid/gramophone/glide/artistimage/ArtistImageFetcher.java b/app/src/main/java/com/kabouzeid/gramophone/glide/artistimage/ArtistImageFetcher.java index e504e849..1a49230f 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/glide/artistimage/ArtistImageFetcher.java +++ b/app/src/main/java/com/kabouzeid/gramophone/glide/artistimage/ArtistImageFetcher.java @@ -48,8 +48,8 @@ public class ArtistImageFetcher implements DataFetcher { @Override public InputStream loadData(Priority priority) throws Exception { - if (!MusicUtil.isArtistNameUnknown(model.artistName) && Util.isAllowedToAutoDownload(context)) { - Response response = lastFMRestClient.getApiService().getArtistInfo(model.artistName, model.skipOkHttpCache ? "no-cache" : null).execute(); + if (!MusicUtil.isArtistNameUnknown(model.artistName) && Util.isAllowedToDownloadMetadata(context)) { + Response response = lastFMRestClient.getApiService().getArtistInfo(model.artistName, null, model.skipOkHttpCache ? "no-cache" : null).execute(); if (!response.isSuccessful()) { throw new IOException("Request failed with code: " + response.code()); diff --git a/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/LastFMRestClient.java b/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/LastFMRestClient.java index 77cac50a..9d556c08 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/LastFMRestClient.java +++ b/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/LastFMRestClient.java @@ -18,7 +18,6 @@ import okhttp3.Response; import retrofit2.Retrofit; import retrofit2.converter.gson.GsonConverterFactory; - /** * @author Karim Abou Zeid (kabouzeid) */ diff --git a/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/model/LastFmAlbum.java b/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/model/LastFmAlbum.java index 1992b7e3..fd4e833a 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/model/LastFmAlbum.java +++ b/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/model/LastFmAlbum.java @@ -1,4 +1,3 @@ - package com.kabouzeid.gramophone.lastfm.rest.model; import com.google.gson.annotations.Expose; @@ -8,7 +7,6 @@ import java.util.ArrayList; import java.util.List; public class LastFmAlbum { - @Expose private Album album; @@ -21,9 +19,10 @@ public class LastFmAlbum { } public static class Album { - @Expose private List image = new ArrayList<>(); + @Expose + private Wiki wiki; public List getImage() { return image; @@ -33,8 +32,26 @@ public class LastFmAlbum { this.image = image; } - public static class Image { + public Wiki getWiki() { return wiki; } + public void setWiki(Wiki wiki) { + this.wiki = wiki; + } + + public class Wiki { + @Expose + private String content; + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + } + + public static class Image { @SerializedName("#text") @Expose private String Text; @@ -58,5 +75,4 @@ public class LastFmAlbum { } } } - } diff --git a/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/model/LastFmArtist.java b/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/model/LastFmArtist.java index 42478cfd..30ca8f37 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/model/LastFmArtist.java +++ b/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/model/LastFmArtist.java @@ -1,4 +1,3 @@ - package com.kabouzeid.gramophone.lastfm.rest.model; import com.google.gson.annotations.Expose; @@ -8,7 +7,6 @@ import java.util.ArrayList; import java.util.List; public class LastFmArtist { - @Expose private Artist artist; @@ -21,7 +19,6 @@ public class LastFmArtist { } public static class Artist { - @Expose private List image = new ArrayList<>(); @Expose @@ -44,7 +41,6 @@ public class LastFmArtist { } public class Bio { - @Expose private String content; @@ -55,11 +51,9 @@ public class LastFmArtist { public void setContent(String content) { this.content = content; } - } public static class Image { - @SerializedName("#text") @Expose private String Text; @@ -81,9 +75,6 @@ public class LastFmArtist { public void setSize(String size) { this.size = size; } - } - } - } diff --git a/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/service/LastFMService.java b/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/service/LastFMService.java index 7883af74..4a9b33c7 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/service/LastFMService.java +++ b/app/src/main/java/com/kabouzeid/gramophone/lastfm/rest/service/LastFMService.java @@ -18,8 +18,8 @@ public interface LastFMService { String BASE_QUERY_PARAMETERS = "?format=json&autocorrect=1&api_key=" + API_KEY; @GET(BASE_QUERY_PARAMETERS + "&method=album.getinfo") - Call getAlbumInfo(@Query("album") String albumName, @Query("artist") String artistName); + Call getAlbumInfo(@Query("album") String albumName, @Query("artist") String artistName, @Nullable @Query("lang") String language); @GET(BASE_QUERY_PARAMETERS + "&method=artist.getinfo") - Call getArtistInfo(@Query("artist") String artistName, @Nullable @Header("Cache-Control") String cacheControl); + Call getArtistInfo(@Query("artist") String artistName, @Nullable @Query("lang") String language, @Nullable @Header("Cache-Control") String cacheControl); } \ No newline at end of file diff --git a/app/src/main/java/com/kabouzeid/gramophone/misc/SimpleTransitionListener.java b/app/src/main/java/com/kabouzeid/gramophone/misc/SimpleTransitionListener.java index 679d1f99..fda8216c 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/misc/SimpleTransitionListener.java +++ b/app/src/main/java/com/kabouzeid/gramophone/misc/SimpleTransitionListener.java @@ -1,35 +1,31 @@ package com.kabouzeid.gramophone.misc; import android.annotation.TargetApi; +import android.os.Build; import android.transition.Transition; /** * @author Karim Abou Zeid (kabouzeid) */ -@TargetApi(21) +@TargetApi(Build.VERSION_CODES.LOLLIPOP) public abstract class SimpleTransitionListener implements Transition.TransitionListener { @Override public void onTransitionStart(Transition transition) { - } @Override public void onTransitionEnd(Transition transition) { - } @Override public void onTransitionCancel(Transition transition) { - } @Override public void onTransitionPause(Transition transition) { - } @Override public void onTransitionResume(Transition transition) { - } } diff --git a/app/src/main/java/com/kabouzeid/gramophone/model/smartplaylist/LastAddedPlaylist.java b/app/src/main/java/com/kabouzeid/gramophone/model/smartplaylist/LastAddedPlaylist.java index 02958ef2..9009632a 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/model/smartplaylist/LastAddedPlaylist.java +++ b/app/src/main/java/com/kabouzeid/gramophone/model/smartplaylist/LastAddedPlaylist.java @@ -7,7 +7,6 @@ import android.support.annotation.NonNull; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.loader.LastAddedLoader; import com.kabouzeid.gramophone.model.Song; -import com.kabouzeid.gramophone.util.PreferenceUtil; import java.util.ArrayList; diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/AboutActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/AboutActivity.java index eb38fcae..8d9a39ec 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/AboutActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/AboutActivity.java @@ -21,7 +21,6 @@ import com.kabouzeid.gramophone.dialogs.DonationsDialog; import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity; import com.kabouzeid.gramophone.ui.activities.bugreport.BugReportActivity; import com.kabouzeid.gramophone.ui.activities.intro.AppIntroActivity; -import com.kabouzeid.gramophone.util.ViewUtil; import butterknife.BindView; import butterknife.ButterKnife; @@ -69,7 +68,7 @@ public class AboutActivity extends AbsBaseActivity implements View.OnClickListen LinearLayout addToGooglePlusCircles; @BindView(R.id.follow_on_twitter) LinearLayout followOnTwitter; - @BindView(R.id.fork_on_git_hub) + @BindView(R.id.fork_on_github) LinearLayout forkOnGitHub; @BindView(R.id.visit_website) LinearLayout visitWebsite; @@ -95,8 +94,6 @@ public class AboutActivity extends AbsBaseActivity implements View.OnClickListen AppCompatButton maartenCorpelGooglePlus; @BindView(R.id.aleksandar_tesic_google_plus) AppCompatButton aleksandarTesicGooglePlus; - @BindView(R.id.status_bar) - View statusBar; @Override protected void onCreate(Bundle savedInstanceState) { @@ -108,7 +105,6 @@ public class AboutActivity extends AbsBaseActivity implements View.OnClickListen setStatusbarColorAuto(); setNavigationbarColorAuto(); setTaskDescriptionColorAuto(); - ViewUtil.setStatusBarHeight(this, statusBar); setUpViews(); } diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/AlbumDetailActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/AlbumDetailActivity.java index 8e0759af..f435d505 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/AlbumDetailActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/AlbumDetailActivity.java @@ -5,18 +5,23 @@ import android.content.Intent; import android.os.Build; import android.os.Bundle; import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import android.support.v4.app.LoaderManager; import android.support.v4.content.Loader; import android.support.v7.widget.GridLayoutManager; import android.support.v7.widget.RecyclerView; import android.support.v7.widget.Toolbar; +import android.text.Html; +import android.text.Spanned; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.ImageView; import android.widget.TextView; +import android.widget.Toast; import com.afollestad.materialcab.MaterialCab; +import com.afollestad.materialdialogs.MaterialDialog; import com.afollestad.materialdialogs.util.DialogUtils; import com.bumptech.glide.Glide; import com.bumptech.glide.request.RequestListener; @@ -36,6 +41,8 @@ import com.kabouzeid.gramophone.helper.MusicPlayerRemote; import com.kabouzeid.gramophone.interfaces.CabHolder; import com.kabouzeid.gramophone.interfaces.LoaderIds; import com.kabouzeid.gramophone.interfaces.PaletteColorHolder; +import com.kabouzeid.gramophone.lastfm.rest.LastFMRestClient; +import com.kabouzeid.gramophone.lastfm.rest.model.LastFmAlbum; import com.kabouzeid.gramophone.loader.AlbumLoader; import com.kabouzeid.gramophone.misc.SimpleObservableScrollViewCallbacks; import com.kabouzeid.gramophone.misc.WrappedAsyncTaskLoader; @@ -47,12 +54,16 @@ import com.kabouzeid.gramophone.ui.activities.tageditor.AlbumTagEditorActivity; import com.kabouzeid.gramophone.util.NavigationUtil; import com.kabouzeid.gramophone.util.PhonographColorUtil; import com.kabouzeid.gramophone.util.Util; -import com.kabouzeid.gramophone.util.ViewUtil; + +import java.util.Locale; import java.util.ArrayList; import butterknife.BindView; import butterknife.ButterKnife; +import retrofit2.Call; +import retrofit2.Callback; +import retrofit2.Response; /** * Be careful when changing things in this Activity! @@ -77,8 +88,6 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements TextView albumTitleView; @BindView(R.id.list_background) View songsBackgroundView; - @BindView(R.id.status_bar) - View statusBar; private AlbumSongAdapter adapter; @@ -89,6 +98,11 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements private int toolbarColor; private float toolbarAlpha; + @Nullable + private Spanned wiki; + private MaterialDialog wikiDialog; + private LastFMRestClient lastFMRestClient; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -97,10 +111,11 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements supportPostponeEnterTransition(); + lastFMRestClient = new LastFMRestClient(this); + setUpObservableListViewParams(); setUpToolBar(); setUpViews(); - ViewUtil.setStatusBarHeight(this, statusBar); getSupportLoaderManager().initLoader(LOADER_ID, getIntent().getExtras(), this); } @@ -242,6 +257,49 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements return true; } + private void loadWiki() { + loadWiki(Locale.getDefault().getLanguage()); + } + + private void loadWiki(@Nullable final String lang) { + wiki = null; + + lastFMRestClient.getApiService() + .getAlbumInfo(getAlbum().getTitle(), getAlbum().getArtistName(), lang) + .enqueue(new Callback() { + @Override + public void onResponse(@NonNull Call call, @NonNull Response response) { + final LastFmAlbum lastFmAlbum = response.body(); + if (lastFmAlbum != null && lastFmAlbum.getAlbum() != null && lastFmAlbum.getAlbum().getWiki() != null) { + final String wikiContent = lastFmAlbum.getAlbum().getWiki().getContent(); + if (wikiContent != null && !wikiContent.trim().isEmpty()) { + wiki = Html.fromHtml(wikiContent); + } + } + + // If the "lang" parameter is set and no wiki is given, retry with default language + if (wiki == null && lang != null) { + loadWiki(null); + return; + } + + if (!Util.isAllowedToDownloadMetadata(AlbumDetailActivity.this)) { + if (wiki != null) { + wikiDialog.setContent(wiki); + } else { + wikiDialog.dismiss(); + Toast.makeText(AlbumDetailActivity.this, getResources().getString(R.string.wiki_unavailable), Toast.LENGTH_SHORT).show(); + } + } + } + + @Override + public void onFailure(@NonNull Call call, @NonNull Throwable t) { + t.printStackTrace(); + } + }); + } + @Override public boolean onOptionsItemSelected(@NonNull MenuItem item) { int id = item.getItemId(); @@ -279,6 +337,25 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements case R.id.action_go_to_artist: NavigationUtil.goToArtist(this, getAlbum().getArtistId()); return true; + case R.id.action_wiki: + if (wikiDialog == null) { + wikiDialog = new MaterialDialog.Builder(this) + .title(album.getTitle()) + .positiveText(android.R.string.ok) + .build(); + } + if (Util.isAllowedToDownloadMetadata(this)) { + if (wiki != null) { + wikiDialog.setContent(wiki); + wikiDialog.show(); + } else { + Toast.makeText(this, getResources().getString(R.string.wiki_unavailable), Toast.LENGTH_SHORT).show(); + } + } else { + wikiDialog.show(); + loadWiki(); + } + return true; } return super.onOptionsItemSelected(item); } @@ -345,6 +422,11 @@ public class AlbumDetailActivity extends AbsSlidingMusicPanelActivity implements private void setAlbum(Album album) { this.album = album; loadAlbumCover(); + + if (Util.isAllowedToDownloadMetadata(this)) { + loadWiki(); + } + albumTitleView.setText(album.getTitle()); adapter.swapDataSet(album.songs); } diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/ArtistDetailActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/ArtistDetailActivity.java index 66b83730..a63fe2c7 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/ArtistDetailActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/ArtistDetailActivity.java @@ -57,7 +57,8 @@ import com.kabouzeid.gramophone.util.NavigationUtil; import com.kabouzeid.gramophone.util.PhonographColorUtil; import com.kabouzeid.gramophone.util.PreferenceUtil; import com.kabouzeid.gramophone.util.Util; -import com.kabouzeid.gramophone.util.ViewUtil; + +import java.util.Locale; import java.util.ArrayList; @@ -87,8 +88,6 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement TextView artistName; @BindView(R.id.toolbar) Toolbar toolbar; - @BindView(R.id.status_bar) - View statusBar; View songListHeader; RecyclerView albumRecyclerView; @@ -104,6 +103,7 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement private Artist artist; @Nullable private Spanned biography; + private MaterialDialog biographyDialog; private HorizontalAlbumAdapter albumAdapter; private ArtistSongAdapter songAdapter; @@ -118,13 +118,12 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement supportPostponeEnterTransition(); lastFMRestClient = new LastFMRestClient(this); - usePalette=PreferenceUtil.getInstance(this).albumArtistColoredFooters(); + usePalette = PreferenceUtil.getInstance(this).albumArtistColoredFooters(); initViews(); setUpObservableListViewParams(); setUpViews(); setUpToolbar(); - ViewUtil.setStatusBarHeight(this, statusBar); getSupportLoaderManager().initLoader(LOADER_ID, getIntent().getExtras(), this); } @@ -227,34 +226,47 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement } private void loadBiography() { - lastFMRestClient.getApiService().getArtistInfo(getArtist().getName(), null).enqueue(new Callback() { - @Override - public void onResponse(Call call, Response response) { - LastFmArtist lastFmArtist = response.body(); - if (lastFmArtist.getArtist() != null) { - String bio = lastFmArtist.getArtist().getBio().getContent(); - if (bio != null && !bio.trim().equals("")) { - biography = Html.fromHtml(bio); - return; - } - } - biography = null; - } - - @Override - public void onFailure(Call call, Throwable t) { - t.printStackTrace(); - biography = null; - } - }); + loadBiography(Locale.getDefault().getLanguage()); } - private MaterialDialog getBiographyDialog() { - return new MaterialDialog.Builder(ArtistDetailActivity.this) - .title(getArtist().getName()) - .content(biography != null ? biography : "") - .positiveText(android.R.string.ok) - .build(); + private void loadBiography(@Nullable final String lang) { + biography = null; + + lastFMRestClient.getApiService() + .getArtistInfo(getArtist().getName(), lang, null) + .enqueue(new Callback() { + @Override + public void onResponse(@NonNull Call call, @NonNull Response response) { + final LastFmArtist lastFmArtist = response.body(); + if (lastFmArtist != null && lastFmArtist.getArtist() != null) { + final String bioContent = lastFmArtist.getArtist().getBio().getContent(); + if (bioContent != null && !bioContent.trim().isEmpty()) { + biography = Html.fromHtml(bioContent); + } + } + + // If the "lang" parameter is set and no biography is given, retry with default language + if (biography == null && lang != null) { + loadBiography(null); + return; + } + + if (!Util.isAllowedToDownloadMetadata(ArtistDetailActivity.this)) { + if (biography != null) { + biographyDialog.setContent(biography); + } else { + biographyDialog.dismiss(); + Toast.makeText(ArtistDetailActivity.this, getResources().getString(R.string.biography_unavailable), Toast.LENGTH_SHORT).show(); + } + } + } + + @Override + public void onFailure(@NonNull Call call, @NonNull Throwable t) { + t.printStackTrace(); + biography = null; + } + }); } private void loadArtistImage(final boolean forceDownload) { @@ -357,10 +369,22 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement super.onBackPressed(); return true; case R.id.action_biography: - if (biography != null) { - getBiographyDialog().show(); + if (biographyDialog == null) { + biographyDialog = new MaterialDialog.Builder(this) + .title(artist.getName()) + .positiveText(android.R.string.ok) + .build(); + } + if (Util.isAllowedToDownloadMetadata(ArtistDetailActivity.this)) { + if (biography != null) { + biographyDialog.setContent(biography); + biographyDialog.show(); + } else { + Toast.makeText(ArtistDetailActivity.this, getResources().getString(R.string.biography_unavailable), Toast.LENGTH_SHORT).show(); + } } else { - Toast.makeText(ArtistDetailActivity.this, getResources().getString(R.string.biography_unavailable), Toast.LENGTH_SHORT).show(); + biographyDialog.show(); + loadBiography(); } return true; case R.id.action_re_download_artist_image: @@ -428,7 +452,11 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement private void setArtist(Artist artist) { this.artist = artist; loadArtistImage(false); - loadBiography(); + + if (Util.isAllowedToDownloadMetadata(this)) { + loadBiography(); + } + artistName.setText(artist.getName()); songAdapter.swapDataSet(artist.getSongs()); albumAdapter.swapDataSet(artist.albums); diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/PlaylistDetailActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/PlaylistDetailActivity.java index 490ef998..52d5094c 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/PlaylistDetailActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/PlaylistDetailActivity.java @@ -61,8 +61,6 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme Toolbar toolbar; @BindView(android.R.id.empty) TextView empty; - @BindView(R.id.status_bar) - View statusBar; private Playlist playlist; @@ -81,7 +79,6 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme setStatusbarColorAuto(); setNavigationbarColorAuto(); setTaskDescriptionColorAuto(); - ViewUtil.setStatusBarHeight(this, statusBar); playlist = getIntent().getExtras().getParcelable(EXTRA_PLAYLIST); diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/SearchActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/SearchActivity.java index e410618a..2947c15c 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/SearchActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/SearchActivity.java @@ -27,7 +27,6 @@ import com.kabouzeid.gramophone.loader.SongLoader; import com.kabouzeid.gramophone.misc.WrappedAsyncTaskLoader; import com.kabouzeid.gramophone.ui.activities.base.AbsMusicServiceActivity; import com.kabouzeid.gramophone.util.Util; -import com.kabouzeid.gramophone.util.ViewUtil; import java.util.ArrayList; import java.util.Collections; @@ -47,8 +46,6 @@ public class SearchActivity extends AbsMusicServiceActivity implements SearchVie Toolbar toolbar; @BindView(android.R.id.empty) TextView empty; - @BindView(R.id.status_bar) - View statusBar; SearchView searchView; @@ -65,7 +62,6 @@ public class SearchActivity extends AbsMusicServiceActivity implements SearchVie setStatusbarColorAuto(); setNavigationbarColorAuto(); setTaskDescriptionColorAuto(); - ViewUtil.setStatusBarHeight(this, statusBar); recyclerView.setLayoutManager(new LinearLayoutManager(this)); adapter = new SearchAdapter(this, Collections.emptyList()); diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/SettingsActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/SettingsActivity.java index b018768c..659766ea 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/SettingsActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/SettingsActivity.java @@ -33,7 +33,6 @@ import com.kabouzeid.gramophone.service.MusicService; import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity; import com.kabouzeid.gramophone.util.NavigationUtil; import com.kabouzeid.gramophone.util.PreferenceUtil; -import com.kabouzeid.gramophone.util.ViewUtil; import butterknife.BindView; import butterknife.ButterKnife; @@ -43,8 +42,6 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia @BindView(R.id.toolbar) Toolbar toolbar; - @BindView(R.id.status_bar) - View statusBar; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { @@ -56,7 +53,6 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia setStatusbarColorAuto(); setNavigationbarColorAuto(); setTaskDescriptionColorAuto(); - ViewUtil.setStatusBarHeight(this, statusBar); toolbar.setBackgroundColor(ThemeStore.primaryColor(this)); setSupportActionBar(toolbar); diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/tageditor/AlbumTagEditorActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/tageditor/AlbumTagEditorActivity.java index 7a6fd6ce..ef8ec723 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/tageditor/AlbumTagEditorActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/tageditor/AlbumTagEditorActivity.java @@ -100,7 +100,7 @@ public class AlbumTagEditorActivity extends AbsTagEditorActivity implements Text Toast.makeText(this, getResources().getString(R.string.album_or_artist_empty), Toast.LENGTH_SHORT).show(); return; } - lastFMRestClient.getApiService().getAlbumInfo(albumTitleStr, albumArtistNameStr).enqueue(new Callback() { + lastFMRestClient.getApiService().getAlbumInfo(albumTitleStr, albumArtistNameStr, null).enqueue(new Callback() { @Override public void onResponse(Call call, Response response) { LastFmAlbum lastFmAlbum = response.body(); diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/folders/FoldersFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/folders/FoldersFragment.java index db89d0b8..e516dbc6 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/folders/FoldersFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/folders/FoldersFragment.java @@ -92,8 +92,6 @@ public class FoldersFragment extends AbsMainActivityFragment implements MainActi AppBarLayout appbar; @BindView(R.id.recycler_view) FastScrollRecyclerView recyclerView; - @BindView(R.id.status_bar) - View statusBar; private SongFileAdapter adapter; private MaterialCab cab; @@ -170,7 +168,6 @@ public class FoldersFragment extends AbsMainActivityFragment implements MainActi setUpBreadCrumbs(); setUpRecyclerView(); setUpAdapter(); - ViewUtil.setStatusBarHeight(getActivity(), statusBar); } private void setUpAppbarColor() { diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/LibraryFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/LibraryFragment.java index 97828cd0..ab2487af 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/LibraryFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/LibraryFragment.java @@ -39,7 +39,6 @@ import com.kabouzeid.gramophone.util.NavigationUtil; import com.kabouzeid.gramophone.util.PhonographColorUtil; import com.kabouzeid.gramophone.util.PreferenceUtil; import com.kabouzeid.gramophone.util.Util; -import com.kabouzeid.gramophone.util.ViewUtil; import butterknife.BindView; import butterknife.ButterKnife; @@ -58,8 +57,6 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde AppBarLayout appbar; @BindView(R.id.pager) ViewPager pager; - @BindView(R.id.status_bar) - View statusBar; private MusicLibraryPagerAdapter pagerAdapter; private MaterialCab cab; @@ -93,8 +90,6 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde setUpToolbar(); setUpViewPager(); - setUpStatusBar(); - ViewUtil.setStatusBarHeight(getActivity(), statusBar); } private void setUpToolbar() { @@ -127,12 +122,6 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde pager.addOnPageChangeListener(this); } - private void setUpStatusBar() { - ViewGroup.LayoutParams layoutParams = statusBar.getLayoutParams(); - layoutParams.height = Util.getStatusBarHeight(getMainActivity()); - statusBar.setLayoutParams(layoutParams); - } - public Fragment getCurrentFragment() { return pagerAdapter.getFragment(pager.getCurrentItem()); } diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/AlbumsFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/AlbumsFragment.java index c8ae4186..0837e08d 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/AlbumsFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/AlbumsFragment.java @@ -9,8 +9,8 @@ import android.support.v7.widget.GridLayoutManager; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.adapter.album.AlbumAdapter; -import com.kabouzeid.gramophone.loader.AlbumLoader; import com.kabouzeid.gramophone.interfaces.LoaderIds; +import com.kabouzeid.gramophone.loader.AlbumLoader; import com.kabouzeid.gramophone.misc.WrappedAsyncTaskLoader; import com.kabouzeid.gramophone.model.Album; import com.kabouzeid.gramophone.util.PreferenceUtil; diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/ArtistsFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/ArtistsFragment.java index 7b39f14d..b4dbc956 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/ArtistsFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/ArtistsFragment.java @@ -9,8 +9,8 @@ import android.support.v7.widget.GridLayoutManager; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.adapter.artist.ArtistAdapter; -import com.kabouzeid.gramophone.loader.ArtistLoader; import com.kabouzeid.gramophone.interfaces.LoaderIds; +import com.kabouzeid.gramophone.loader.ArtistLoader; import com.kabouzeid.gramophone.misc.WrappedAsyncTaskLoader; import com.kabouzeid.gramophone.model.Artist; import com.kabouzeid.gramophone.util.PreferenceUtil; diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/PlaylistsFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/PlaylistsFragment.java index 0927f3f4..359b956b 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/PlaylistsFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/PlaylistsFragment.java @@ -9,8 +9,8 @@ import android.support.v7.widget.LinearLayoutManager; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.adapter.PlaylistAdapter; -import com.kabouzeid.gramophone.loader.PlaylistLoader; import com.kabouzeid.gramophone.interfaces.LoaderIds; +import com.kabouzeid.gramophone.loader.PlaylistLoader; import com.kabouzeid.gramophone.misc.WrappedAsyncTaskLoader; import com.kabouzeid.gramophone.model.Playlist; import com.kabouzeid.gramophone.model.smartplaylist.HistoryPlaylist; diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/SongsFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/SongsFragment.java index 1b57fc9a..0b9e3023 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/SongsFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/mainactivity/library/pager/SongsFragment.java @@ -10,8 +10,8 @@ import android.support.v7.widget.GridLayoutManager; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.adapter.song.ShuffleButtonSongAdapter; import com.kabouzeid.gramophone.adapter.song.SongAdapter; -import com.kabouzeid.gramophone.loader.SongLoader; import com.kabouzeid.gramophone.interfaces.LoaderIds; +import com.kabouzeid.gramophone.loader.SongLoader; import com.kabouzeid.gramophone.misc.WrappedAsyncTaskLoader; import com.kabouzeid.gramophone.model.Song; import com.kabouzeid.gramophone.util.PreferenceUtil; diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/AbsPlayerFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/AbsPlayerFragment.java index f0ad25e1..633c8144 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/AbsPlayerFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/AbsPlayerFragment.java @@ -88,6 +88,10 @@ public abstract class AbsPlayerFragment extends AbsMusicServiceFragment implemen MusicUtil.toggleFavorite(getActivity(), song); } + protected String getUpNextAndQueueTime() { + return getResources().getString(R.string.up_next) + " • " + MusicUtil.getReadableDurationString(MusicPlayerRemote.getQueueDurationMillis(MusicPlayerRemote.getPosition())); + } + public abstract void onShow(); public abstract void onHide(); diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/card/CardPlayerFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/card/CardPlayerFragment.java index 46ae480b..3d002a18 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/card/CardPlayerFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/card/CardPlayerFragment.java @@ -119,12 +119,6 @@ public class CardPlayerFragment extends AbsPlayerFragment implements PlayerAlbum setUpPlayerToolbar(); setUpSubFragments(); - // portrait view doesn't have a statusBar, so can't bind it up top as will throw an exception. - View statusBar = view.findViewById(R.id.status_bar); - if (statusBar != null) { - ViewUtil.setStatusBarHeight(getActivity(), statusBar); - } - setUpRecyclerView(); slidingUpPanelLayout.addPanelSlideListener(this); @@ -204,7 +198,7 @@ public class CardPlayerFragment extends AbsPlayerFragment implements PlayerAlbum private void updateQueue() { playingQueueAdapter.swapDataSet(MusicPlayerRemote.getPlayingQueue(), MusicPlayerRemote.getPosition()); - playerQueueSubHeader.setText(getResources().getString(R.string.up_next) + " • " + MusicUtil.getReadableDurationString(MusicPlayerRemote.getQueueDurationMillis(MusicPlayerRemote.getPosition()))); + playerQueueSubHeader.setText(getUpNextAndQueueTime()); if (slidingUpPanelLayout.getPanelState() == SlidingUpPanelLayout.PanelState.COLLAPSED) { resetToCurrentPosition(); } @@ -212,7 +206,7 @@ public class CardPlayerFragment extends AbsPlayerFragment implements PlayerAlbum private void updateQueuePosition() { playingQueueAdapter.setCurrent(MusicPlayerRemote.getPosition()); - playerQueueSubHeader.setText(getResources().getString(R.string.up_next) + " • " + MusicUtil.getReadableDurationString(MusicPlayerRemote.getQueueDurationMillis(MusicPlayerRemote.getPosition()))); + playerQueueSubHeader.setText(getUpNextAndQueueTime()); if (slidingUpPanelLayout.getPanelState() == SlidingUpPanelLayout.PanelState.COLLAPSED) { resetToCurrentPosition(); } @@ -323,6 +317,7 @@ public class CardPlayerFragment extends AbsPlayerFragment implements PlayerAlbum try { return AudioFileIO.read(new File(song.data)).getTagOrCreateDefault().getFirst(FieldKey.LYRICS); } catch (Exception e) { + e.printStackTrace(); cancel(false); return null; } diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/flat/FlatPlayerFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/flat/FlatPlayerFragment.java index 1b07a2f6..434849ba 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/flat/FlatPlayerFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/flat/FlatPlayerFragment.java @@ -114,9 +114,7 @@ public class FlatPlayerFragment extends AbsPlayerFragment implements PlayerAlbum impl.init(); setUpPlayerToolbar(); - setUpStatusBar(); setUpSubFragments(); - ViewUtil.setStatusBarHeight(getActivity(), playerStatusBar); setUpRecyclerView(); @@ -196,7 +194,7 @@ public class FlatPlayerFragment extends AbsPlayerFragment implements PlayerAlbum private void updateQueue() { playingQueueAdapter.swapDataSet(MusicPlayerRemote.getPlayingQueue(), MusicPlayerRemote.getPosition()); - playerQueueSubHeader.setText(getResources().getString(R.string.up_next) + " • " + MusicUtil.getReadableDurationString(MusicPlayerRemote.getQueueDurationMillis(MusicPlayerRemote.getPosition()))); + playerQueueSubHeader.setText(getUpNextAndQueueTime()); if (slidingUpPanelLayout == null || slidingUpPanelLayout.getPanelState() == SlidingUpPanelLayout.PanelState.COLLAPSED) { resetToCurrentPosition(); } @@ -204,7 +202,7 @@ public class FlatPlayerFragment extends AbsPlayerFragment implements PlayerAlbum private void updateQueuePosition() { playingQueueAdapter.setCurrent(MusicPlayerRemote.getPosition()); - playerQueueSubHeader.setText(getResources().getString(R.string.up_next) + " • " + MusicUtil.getReadableDurationString(MusicPlayerRemote.getQueueDurationMillis(MusicPlayerRemote.getPosition()))); + playerQueueSubHeader.setText(getUpNextAndQueueTime()); if (slidingUpPanelLayout == null || slidingUpPanelLayout.getPanelState() == SlidingUpPanelLayout.PanelState.COLLAPSED) { resetToCurrentPosition(); } @@ -234,12 +232,6 @@ public class FlatPlayerFragment extends AbsPlayerFragment implements PlayerAlbum toolbar.setOnMenuItemClickListener(this); } - private void setUpStatusBar() { - ViewGroup.LayoutParams layoutParams = playerStatusBar.getLayoutParams(); - layoutParams.height = Util.getStatusBarHeight(getActivity()); - playerStatusBar.setLayoutParams(layoutParams); - } - @Override public boolean onMenuItemClick(MenuItem item) { switch (item.getItemId()) { @@ -321,6 +313,7 @@ public class FlatPlayerFragment extends AbsPlayerFragment implements PlayerAlbum try { return AudioFileIO.read(new File(song.data)).getTagOrCreateDefault().getFirst(FieldKey.LYRICS); } catch (Exception e) { + e.printStackTrace(); cancel(false); return null; } diff --git a/app/src/main/java/com/kabouzeid/gramophone/util/CalendarUtil.java b/app/src/main/java/com/kabouzeid/gramophone/util/CalendarUtil.java index 136f686f..0cd4751a 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/util/CalendarUtil.java +++ b/app/src/main/java/com/kabouzeid/gramophone/util/CalendarUtil.java @@ -4,7 +4,7 @@ import java.util.Calendar; import java.util.GregorianCalendar; /** - * @author Karim Abou Zeid (kabouzeid) + * @author Eugene Cheung (arkon) */ public class CalendarUtil { private static final long MS_PER_MINUTE = 60 * 1000; diff --git a/app/src/main/java/com/kabouzeid/gramophone/util/Util.java b/app/src/main/java/com/kabouzeid/gramophone/util/Util.java index b71c550b..5d292441 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/util/Util.java +++ b/app/src/main/java/com/kabouzeid/gramophone/util/Util.java @@ -49,7 +49,7 @@ public class Util { return size; } - @TargetApi(19) + @TargetApi(Build.VERSION_CODES.KITKAT) public static void setStatusBarTranslucent(@NonNull Window window) { window.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, @@ -121,7 +121,7 @@ public class Util { } else return false; } - public static boolean isAllowedToAutoDownload(final Context context) { + public static boolean isAllowedToDownloadMetadata(final Context context) { switch (PreferenceUtil.getInstance(context).autoDownloadImagesPolicy()) { case "always": return true; @@ -135,12 +135,4 @@ public class Util { } } - public static int getStatusBarHeight(final Context context) { - int result = 0; - int resourceId = context.getResources().getIdentifier("status_bar_height", "dimen", "android"); - if (resourceId > 0) { - result = context.getResources().getDimensionPixelSize(resourceId); - } - return result; - } } \ No newline at end of file diff --git a/app/src/main/java/com/kabouzeid/gramophone/util/ViewUtil.java b/app/src/main/java/com/kabouzeid/gramophone/util/ViewUtil.java index 0974cb59..db92315a 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/util/ViewUtil.java +++ b/app/src/main/java/com/kabouzeid/gramophone/util/ViewUtil.java @@ -16,7 +16,6 @@ import android.support.annotation.ColorInt; import android.support.v4.view.ViewCompat; import android.util.DisplayMetrics; import android.view.View; -import android.view.ViewGroup; import android.view.animation.PathInterpolator; import android.widget.TextView; @@ -97,10 +96,4 @@ public class ViewUtil { DisplayMetrics metrics = resources.getDisplayMetrics(); return px / metrics.density; } - - public static void setStatusBarHeight(final Context context, View statusBar) { - ViewGroup.LayoutParams lp = statusBar.getLayoutParams(); - lp.height = Util.getStatusBarHeight(context); - statusBar.requestLayout(); - } } \ No newline at end of file diff --git a/app/src/main/res/drawable-v21/rect_selector.xml b/app/src/main/res/drawable-v21/rect_selector.xml index f12d9ce1..08954384 100644 --- a/app/src/main/res/drawable-v21/rect_selector.xml +++ b/app/src/main/res/drawable-v21/rect_selector.xml @@ -7,8 +7,8 @@ + android:drawable="@color/ripple_material_light" + android:state_activated="true" /> diff --git a/app/src/main/res/drawable-v21/rect_selector_dark.xml b/app/src/main/res/drawable-v21/rect_selector_dark.xml index bc94abd5..f76d5d15 100644 --- a/app/src/main/res/drawable-v21/rect_selector_dark.xml +++ b/app/src/main/res/drawable-v21/rect_selector_dark.xml @@ -1,5 +1,5 @@ + android:color="@color/ripple_material_dark"> + android:drawable="@color/ripple_material_dark" + android:state_activated="true" /> diff --git a/app/src/main/res/drawable-v21/round_selector_mask.xml b/app/src/main/res/drawable-v21/round_selector_mask.xml index 04c6208f..a6f3dfaa 100644 --- a/app/src/main/res/drawable-v21/round_selector_mask.xml +++ b/app/src/main/res/drawable-v21/round_selector_mask.xml @@ -1,5 +1,5 @@ + android:shape="oval"> \ No newline at end of file diff --git a/app/src/main/res/drawable-xxhdpi/ic_drag_vertical_white_24dp.xml b/app/src/main/res/drawable-xxhdpi/ic_drag_vertical_white_24dp.xml index be0c17aa..f8b46989 100644 --- a/app/src/main/res/drawable-xxhdpi/ic_drag_vertical_white_24dp.xml +++ b/app/src/main/res/drawable-xxhdpi/ic_drag_vertical_white_24dp.xml @@ -1,8 +1,8 @@ + android:height="24dp" + android:viewportHeight="24" + android:viewportWidth="24"> diff --git a/app/src/main/res/drawable/ic_access_time_white_24dp.xml b/app/src/main/res/drawable/ic_access_time_white_24dp.xml index cc55531c..eff2d327 100644 --- a/app/src/main/res/drawable/ic_access_time_white_24dp.xml +++ b/app/src/main/res/drawable/ic_access_time_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_assignment_turned_in_white_24dp.xml b/app/src/main/res/drawable/ic_assignment_turned_in_white_24dp.xml index 1b87ba3f..61e5d911 100644 --- a/app/src/main/res/drawable/ic_assignment_turned_in_white_24dp.xml +++ b/app/src/main/res/drawable/ic_assignment_turned_in_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_bookmark_music_white_24dp.xml b/app/src/main/res/drawable/ic_bookmark_music_white_24dp.xml index 7ec7f093..fa10a8fa 100644 --- a/app/src/main/res/drawable/ic_bookmark_music_white_24dp.xml +++ b/app/src/main/res/drawable/ic_bookmark_music_white_24dp.xml @@ -1,9 +1,9 @@ + android:height="24dp" + android:viewportHeight="24" + android:viewportWidth="24"> diff --git a/app/src/main/res/drawable/ic_bug_report_white_24dp.xml b/app/src/main/res/drawable/ic_bug_report_white_24dp.xml index ae908f44..7775f342 100644 --- a/app/src/main/res/drawable/ic_bug_report_white_24dp.xml +++ b/app/src/main/res/drawable/ic_bug_report_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_card_giftcard_white_24dp.xml b/app/src/main/res/drawable/ic_card_giftcard_white_24dp.xml index f7da14ba..ad25117e 100644 --- a/app/src/main/res/drawable/ic_card_giftcard_white_24dp.xml +++ b/app/src/main/res/drawable/ic_card_giftcard_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_close_white_24dp.xml b/app/src/main/res/drawable/ic_close_white_24dp.xml index c63eeb59..fd67dab5 100644 --- a/app/src/main/res/drawable/ic_close_white_24dp.xml +++ b/app/src/main/res/drawable/ic_close_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_comment_text_outline_white_24dp.xml b/app/src/main/res/drawable/ic_comment_text_outline_white_24dp.xml index 03f39dd9..47850a05 100644 --- a/app/src/main/res/drawable/ic_comment_text_outline_white_24dp.xml +++ b/app/src/main/res/drawable/ic_comment_text_outline_white_24dp.xml @@ -1,9 +1,9 @@ + android:height="24dp" + android:viewportHeight="24" + android:viewportWidth="24"> diff --git a/app/src/main/res/drawable/ic_delete_white_24dp.xml b/app/src/main/res/drawable/ic_delete_white_24dp.xml index 1014e3d9..1decb44f 100644 --- a/app/src/main/res/drawable/ic_delete_white_24dp.xml +++ b/app/src/main/res/drawable/ic_delete_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_description_white_24dp.xml b/app/src/main/res/drawable/ic_description_white_24dp.xml index 6f55b8de..19b33df0 100644 --- a/app/src/main/res/drawable/ic_description_white_24dp.xml +++ b/app/src/main/res/drawable/ic_description_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_email_white_24dp.xml b/app/src/main/res/drawable/ic_email_white_24dp.xml index 86700b9c..7827ffbc 100644 --- a/app/src/main/res/drawable/ic_email_white_24dp.xml +++ b/app/src/main/res/drawable/ic_email_white_24dp.xml @@ -1,9 +1,9 @@ + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_expand_less_white_24dp.xml b/app/src/main/res/drawable/ic_expand_less_white_24dp.xml index 2648fbba..04ec6dd5 100644 --- a/app/src/main/res/drawable/ic_expand_less_white_24dp.xml +++ b/app/src/main/res/drawable/ic_expand_less_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_favorite_border_white_24dp.xml b/app/src/main/res/drawable/ic_favorite_border_white_24dp.xml index fd124161..7e5e0ac1 100644 --- a/app/src/main/res/drawable/ic_favorite_border_white_24dp.xml +++ b/app/src/main/res/drawable/ic_favorite_border_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_favorite_white_24dp.xml b/app/src/main/res/drawable/ic_favorite_white_24dp.xml index 48dfa57b..a5db7a2d 100644 --- a/app/src/main/res/drawable/ic_favorite_white_24dp.xml +++ b/app/src/main/res/drawable/ic_favorite_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_file_music_white_24dp.xml b/app/src/main/res/drawable/ic_file_music_white_24dp.xml index 96594671..4d018bdf 100644 --- a/app/src/main/res/drawable/ic_file_music_white_24dp.xml +++ b/app/src/main/res/drawable/ic_file_music_white_24dp.xml @@ -1,9 +1,9 @@ + android:height="24dp" + android:viewportHeight="24" + android:viewportWidth="24"> diff --git a/app/src/main/res/drawable/ic_flag_white_24dp.xml b/app/src/main/res/drawable/ic_flag_white_24dp.xml index 0a6acfb6..0a211ea1 100644 --- a/app/src/main/res/drawable/ic_flag_white_24dp.xml +++ b/app/src/main/res/drawable/ic_flag_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_folder_white_24dp.xml b/app/src/main/res/drawable/ic_folder_white_24dp.xml index cbccbd4b..a410a795 100644 --- a/app/src/main/res/drawable/ic_folder_white_24dp.xml +++ b/app/src/main/res/drawable/ic_folder_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_github_circle_white_24dp.xml b/app/src/main/res/drawable/ic_github_circle_white_24dp.xml index e236be14..b2446883 100644 --- a/app/src/main/res/drawable/ic_github_circle_white_24dp.xml +++ b/app/src/main/res/drawable/ic_github_circle_white_24dp.xml @@ -1,9 +1,9 @@ + android:height="24dp" + android:viewportHeight="24" + android:viewportWidth="24"> diff --git a/app/src/main/res/drawable/ic_google_circles_communities_white_24dp.xml b/app/src/main/res/drawable/ic_google_circles_communities_white_24dp.xml index 77db0fcb..58ee29f9 100644 --- a/app/src/main/res/drawable/ic_google_circles_communities_white_24dp.xml +++ b/app/src/main/res/drawable/ic_google_circles_communities_white_24dp.xml @@ -1,9 +1,9 @@ + android:height="24dp" + android:viewportHeight="24" + android:viewportWidth="24"> diff --git a/app/src/main/res/drawable/ic_google_plus_white_24dp.xml b/app/src/main/res/drawable/ic_google_plus_white_24dp.xml index 2d3f0c6d..6c2c66b0 100644 --- a/app/src/main/res/drawable/ic_google_plus_white_24dp.xml +++ b/app/src/main/res/drawable/ic_google_plus_white_24dp.xml @@ -1,9 +1,9 @@ + android:height="24dp" + android:viewportHeight="24" + android:viewportWidth="24"> diff --git a/app/src/main/res/drawable/ic_help_white_24dp.xml b/app/src/main/res/drawable/ic_help_white_24dp.xml index 04c1c00f..26e7d0db 100644 --- a/app/src/main/res/drawable/ic_help_white_24dp.xml +++ b/app/src/main/res/drawable/ic_help_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_info_outline_white_24dp.xml b/app/src/main/res/drawable/ic_info_outline_white_24dp.xml index a6ad5d39..9893be24 100644 --- a/app/src/main/res/drawable/ic_info_outline_white_24dp.xml +++ b/app/src/main/res/drawable/ic_info_outline_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_insert_drive_file_white_24dp.xml b/app/src/main/res/drawable/ic_insert_drive_file_white_24dp.xml index 0a8dd41e..dd78df45 100644 --- a/app/src/main/res/drawable/ic_insert_drive_file_white_24dp.xml +++ b/app/src/main/res/drawable/ic_insert_drive_file_white_24dp.xml @@ -1,9 +1,9 @@ + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_keyboard_arrow_right_white_24dp.xml b/app/src/main/res/drawable/ic_keyboard_arrow_right_white_24dp.xml index 0793e1d3..4ef25e3f 100644 --- a/app/src/main/res/drawable/ic_keyboard_arrow_right_white_24dp.xml +++ b/app/src/main/res/drawable/ic_keyboard_arrow_right_white_24dp.xml @@ -1,9 +1,9 @@ + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_library_add_white_24dp.xml b/app/src/main/res/drawable/ic_library_add_white_24dp.xml index be44d76c..23a1d967 100644 --- a/app/src/main/res/drawable/ic_library_add_white_24dp.xml +++ b/app/src/main/res/drawable/ic_library_add_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_library_music_white_24dp.xml b/app/src/main/res/drawable/ic_library_music_white_24dp.xml index e040bd52..bc20fd65 100644 --- a/app/src/main/res/drawable/ic_library_music_white_24dp.xml +++ b/app/src/main/res/drawable/ic_library_music_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_menu_white_24dp.xml b/app/src/main/res/drawable/ic_menu_white_24dp.xml index c47718d9..fcfdec1d 100644 --- a/app/src/main/res/drawable/ic_menu_white_24dp.xml +++ b/app/src/main/res/drawable/ic_menu_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_more_vert_white_24dp.xml b/app/src/main/res/drawable/ic_more_vert_white_24dp.xml index 61e8792a..c42c1dcd 100644 --- a/app/src/main/res/drawable/ic_more_vert_white_24dp.xml +++ b/app/src/main/res/drawable/ic_more_vert_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_music_note_white_24dp.xml b/app/src/main/res/drawable/ic_music_note_white_24dp.xml index 645f5822..3a3652b3 100644 --- a/app/src/main/res/drawable/ic_music_note_white_24dp.xml +++ b/app/src/main/res/drawable/ic_music_note_white_24dp.xml @@ -1,9 +1,9 @@ + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_open_in_browser_white_24dp.xml b/app/src/main/res/drawable/ic_open_in_browser_white_24dp.xml index 7a90c802..7671bbbc 100644 --- a/app/src/main/res/drawable/ic_open_in_browser_white_24dp.xml +++ b/app/src/main/res/drawable/ic_open_in_browser_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_pause_white_24dp.xml b/app/src/main/res/drawable/ic_pause_white_24dp.xml index 193030b1..660fbd6b 100644 --- a/app/src/main/res/drawable/ic_pause_white_24dp.xml +++ b/app/src/main/res/drawable/ic_pause_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_person_white_24dp.xml b/app/src/main/res/drawable/ic_person_white_24dp.xml index 4726b88c..1bfe6f2b 100644 --- a/app/src/main/res/drawable/ic_person_white_24dp.xml +++ b/app/src/main/res/drawable/ic_person_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_play_arrow_white_24dp.xml b/app/src/main/res/drawable/ic_play_arrow_white_24dp.xml index 4250d72c..69301a3c 100644 --- a/app/src/main/res/drawable/ic_play_arrow_white_24dp.xml +++ b/app/src/main/res/drawable/ic_play_arrow_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_playlist_add_white_24dp.xml b/app/src/main/res/drawable/ic_playlist_add_white_24dp.xml index d2ce69e9..1b3f8ba5 100644 --- a/app/src/main/res/drawable/ic_playlist_add_white_24dp.xml +++ b/app/src/main/res/drawable/ic_playlist_add_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_queue_music_white_24dp.xml b/app/src/main/res/drawable/ic_queue_music_white_24dp.xml index 39f63a2d..fa6188af 100644 --- a/app/src/main/res/drawable/ic_queue_music_white_24dp.xml +++ b/app/src/main/res/drawable/ic_queue_music_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_redo_white_24dp.xml b/app/src/main/res/drawable/ic_redo_white_24dp.xml index ece45645..63153f06 100644 --- a/app/src/main/res/drawable/ic_redo_white_24dp.xml +++ b/app/src/main/res/drawable/ic_redo_white_24dp.xml @@ -1,9 +1,9 @@ + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_repeat_one_white_24dp.xml b/app/src/main/res/drawable/ic_repeat_one_white_24dp.xml index 109f1744..0482a447 100644 --- a/app/src/main/res/drawable/ic_repeat_one_white_24dp.xml +++ b/app/src/main/res/drawable/ic_repeat_one_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_repeat_white_24dp.xml b/app/src/main/res/drawable/ic_repeat_white_24dp.xml index cf0fb37c..59caeb1e 100644 --- a/app/src/main/res/drawable/ic_repeat_white_24dp.xml +++ b/app/src/main/res/drawable/ic_repeat_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_restore_white_24dp.xml b/app/src/main/res/drawable/ic_restore_white_24dp.xml index bb75fb8b..4e76e285 100644 --- a/app/src/main/res/drawable/ic_restore_white_24dp.xml +++ b/app/src/main/res/drawable/ic_restore_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_save_white_24dp.xml b/app/src/main/res/drawable/ic_save_white_24dp.xml index 79a5174f..0599800e 100644 --- a/app/src/main/res/drawable/ic_save_white_24dp.xml +++ b/app/src/main/res/drawable/ic_save_white_24dp.xml @@ -1,9 +1,9 @@ + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_send_white_24dp.xml b/app/src/main/res/drawable/ic_send_white_24dp.xml index 9cfa9cce..f4d24f08 100644 --- a/app/src/main/res/drawable/ic_send_white_24dp.xml +++ b/app/src/main/res/drawable/ic_send_white_24dp.xml @@ -1,9 +1,9 @@ + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_settings_white_24dp.xml b/app/src/main/res/drawable/ic_settings_white_24dp.xml index 60555103..df63c9aa 100644 --- a/app/src/main/res/drawable/ic_settings_white_24dp.xml +++ b/app/src/main/res/drawable/ic_settings_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_shuffle_white_24dp.xml b/app/src/main/res/drawable/ic_shuffle_white_24dp.xml index e9860b73..22d32c8c 100644 --- a/app/src/main/res/drawable/ic_shuffle_white_24dp.xml +++ b/app/src/main/res/drawable/ic_shuffle_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_skip_next_white_24dp.xml b/app/src/main/res/drawable/ic_skip_next_white_24dp.xml index b5e31f5d..473f8513 100644 --- a/app/src/main/res/drawable/ic_skip_next_white_24dp.xml +++ b/app/src/main/res/drawable/ic_skip_next_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_skip_previous_white_24dp.xml b/app/src/main/res/drawable/ic_skip_previous_white_24dp.xml index dd6c1cb2..487947c7 100644 --- a/app/src/main/res/drawable/ic_skip_previous_white_24dp.xml +++ b/app/src/main/res/drawable/ic_skip_previous_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_star_white_24dp.xml b/app/src/main/res/drawable/ic_star_white_24dp.xml index de6119f8..8e90db92 100644 --- a/app/src/main/res/drawable/ic_star_white_24dp.xml +++ b/app/src/main/res/drawable/ic_star_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_trending_up_white_24dp.xml b/app/src/main/res/drawable/ic_trending_up_white_24dp.xml index 6ac9a1c8..1842c8b1 100644 --- a/app/src/main/res/drawable/ic_trending_up_white_24dp.xml +++ b/app/src/main/res/drawable/ic_trending_up_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/ic_twitter_white_24dp.xml b/app/src/main/res/drawable/ic_twitter_white_24dp.xml index 08b364bc..3a3a6ddb 100644 --- a/app/src/main/res/drawable/ic_twitter_white_24dp.xml +++ b/app/src/main/res/drawable/ic_twitter_white_24dp.xml @@ -1,9 +1,9 @@ + android:height="24dp" + android:viewportHeight="24" + android:viewportWidth="24"> diff --git a/app/src/main/res/drawable/ic_volume_up_white_24dp.xml b/app/src/main/res/drawable/ic_volume_up_white_24dp.xml index 5d604f82..b57d5c00 100644 --- a/app/src/main/res/drawable/ic_volume_up_white_24dp.xml +++ b/app/src/main/res/drawable/ic_volume_up_white_24dp.xml @@ -1,8 +1,8 @@ + android:viewportHeight="24.0" + android:viewportWidth="24.0"> diff --git a/app/src/main/res/drawable/round_selected.xml b/app/src/main/res/drawable/round_selected.xml index 6903efe2..0a18d996 100644 --- a/app/src/main/res/drawable/round_selected.xml +++ b/app/src/main/res/drawable/round_selected.xml @@ -1,5 +1,5 @@ + android:shape="oval"> \ No newline at end of file diff --git a/app/src/main/res/drawable/round_selected_dark.xml b/app/src/main/res/drawable/round_selected_dark.xml index 6912e24a..9fa8e56b 100644 --- a/app/src/main/res/drawable/round_selected_dark.xml +++ b/app/src/main/res/drawable/round_selected_dark.xml @@ -1,5 +1,5 @@ + android:shape="oval"> \ No newline at end of file diff --git a/app/src/main/res/drawable/round_selector.xml b/app/src/main/res/drawable/round_selector.xml index 7c07220e..77f09a4c 100644 --- a/app/src/main/res/drawable/round_selector.xml +++ b/app/src/main/res/drawable/round_selector.xml @@ -1,7 +1,7 @@ - + \ No newline at end of file diff --git a/app/src/main/res/drawable/round_selector_dark.xml b/app/src/main/res/drawable/round_selector_dark.xml index aef563f3..2a7e3680 100644 --- a/app/src/main/res/drawable/round_selector_dark.xml +++ b/app/src/main/res/drawable/round_selector_dark.xml @@ -1,7 +1,7 @@ - + \ No newline at end of file diff --git a/app/src/main/res/drawable/shadow_down.xml b/app/src/main/res/drawable/shadow_down.xml index d9200945..2cf5263f 100644 --- a/app/src/main/res/drawable/shadow_down.xml +++ b/app/src/main/res/drawable/shadow_down.xml @@ -1,9 +1,9 @@ + android:shape="rectangle"> \ No newline at end of file diff --git a/app/src/main/res/drawable/shadow_down_strong.xml b/app/src/main/res/drawable/shadow_down_strong.xml index 90e9cc9b..fc796e73 100644 --- a/app/src/main/res/drawable/shadow_down_strong.xml +++ b/app/src/main/res/drawable/shadow_down_strong.xml @@ -3,7 +3,7 @@ android:shape="rectangle"> \ No newline at end of file diff --git a/app/src/main/res/drawable/shadow_up.xml b/app/src/main/res/drawable/shadow_up.xml index 98070e90..b9971acc 100644 --- a/app/src/main/res/drawable/shadow_up.xml +++ b/app/src/main/res/drawable/shadow_up.xml @@ -1,9 +1,9 @@ + android:shape="rectangle"> \ No newline at end of file diff --git a/app/src/main/res/drawable/shadow_up_strong.xml b/app/src/main/res/drawable/shadow_up_strong.xml index 988524af..c353f6d9 100644 --- a/app/src/main/res/drawable/shadow_up_strong.xml +++ b/app/src/main/res/drawable/shadow_up_strong.xml @@ -3,7 +3,7 @@ android:shape="rectangle"> \ No newline at end of file diff --git a/app/src/main/res/drawable/slider_thumb.xml b/app/src/main/res/drawable/slider_thumb.xml index fa815ee9..7ac0f609 100644 --- a/app/src/main/res/drawable/slider_thumb.xml +++ b/app/src/main/res/drawable/slider_thumb.xml @@ -1,6 +1,6 @@ + android:shape="rectangle"> diff --git a/app/src/main/res/layout-land/fragment_card_player.xml b/app/src/main/res/layout-land/fragment_card_player.xml index b1d8b169..813846de 100644 --- a/app/src/main/res/layout-land/fragment_card_player.xml +++ b/app/src/main/res/layout-land/fragment_card_player.xml @@ -1,13 +1,13 @@ - - + \ No newline at end of file diff --git a/app/src/main/res/layout-w640dp/activity_about_content.xml b/app/src/main/res/layout-w640dp/activity_about_content.xml index a1129570..3a522330 100644 --- a/app/src/main/res/layout-w640dp/activity_about_content.xml +++ b/app/src/main/res/layout-w640dp/activity_about_content.xml @@ -6,11 +6,11 @@ android:padding="8dp" grid:alignmentMode="alignBounds"> - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_drawer_layout.xml b/app/src/main/res/layout/activity_main_drawer_layout.xml index 06d43f7b..ead1e1e6 100644 --- a/app/src/main/res/layout/activity_main_drawer_layout.xml +++ b/app/src/main/res/layout/activity_main_drawer_layout.xml @@ -7,10 +7,10 @@ android:fitsSystemWindows="true"> + android:layout_height="match_parent" + android:fitsSystemWindows="true" /> + android:textSize="@dimen/empty_text_size" + android:visibility="gone" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_preferences.xml b/app/src/main/res/layout/activity_preferences.xml index a75011c3..653ae7bc 100644 --- a/app/src/main/res/layout/activity_preferences.xml +++ b/app/src/main/res/layout/activity_preferences.xml @@ -1,6 +1,5 @@ - diff --git a/app/src/main/res/layout/activity_search.xml b/app/src/main/res/layout/activity_search.xml index 9720b786..b4268a14 100644 --- a/app/src/main/res/layout/activity_search.xml +++ b/app/src/main/res/layout/activity_search.xml @@ -1,3 +1,4 @@ + - @@ -119,7 +119,6 @@ - @@ -138,7 +137,6 @@ - @@ -178,7 +176,6 @@ - - diff --git a/app/src/main/res/layout/app_widget_big.xml b/app/src/main/res/layout/app_widget_big.xml index 8f185794..d15738de 100644 --- a/app/src/main/res/layout/app_widget_big.xml +++ b/app/src/main/res/layout/app_widget_big.xml @@ -19,9 +19,9 @@ android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:background="@drawable/shadow_up_strong" + android:layoutDirection="ltr" android:orientation="horizontal" - android:padding="16dp" - android:layoutDirection="ltr"> + android:padding="16dp"> + + android:padding="8dp"> + android:layoutDirection="ltr" + android:orientation="horizontal"> + diff --git a/app/src/main/res/layout/artist_detail_header.xml b/app/src/main/res/layout/artist_detail_header.xml index ed4e6262..92c820ff 100644 --- a/app/src/main/res/layout/artist_detail_header.xml +++ b/app/src/main/res/layout/artist_detail_header.xml @@ -1,3 +1,4 @@ + diff --git a/app/src/main/res/layout/card_about_app.xml b/app/src/main/res/layout/card_about_app.xml index 32d92e9c..38abd730 100644 --- a/app/src/main/res/layout/card_about_app.xml +++ b/app/src/main/res/layout/card_about_app.xml @@ -145,7 +145,7 @@ diff --git a/app/src/main/res/layout/card_author.xml b/app/src/main/res/layout/card_author.xml index 468d48c9..93482056 100644 --- a/app/src/main/res/layout/card_author.xml +++ b/app/src/main/res/layout/card_author.xml @@ -64,6 +64,7 @@ android:layout_height="wrap_content" android:text="@string/aachen_germany" android:textAppearance="@style/TextAppearance.AppCompat.Caption" /> + diff --git a/app/src/main/res/layout/card_support_development.xml b/app/src/main/res/layout/card_support_development.xml index d00af3af..97ac4165 100644 --- a/app/src/main/res/layout/card_support_development.xml +++ b/app/src/main/res/layout/card_support_development.xml @@ -65,6 +65,7 @@ android:layout_height="wrap_content" android:text="@string/report_bugs_summary" android:textAppearance="@style/TextAppearance.AppCompat.Caption" /> + @@ -108,6 +109,7 @@ android:layout_height="wrap_content" android:text="@string/join_community_summary" android:textAppearance="@style/TextAppearance.AppCompat.Caption" /> + @@ -151,6 +153,7 @@ android:layout_height="wrap_content" android:text="@string/translate_summary" android:textAppearance="@style/TextAppearance.AppCompat.Caption" /> + @@ -194,6 +197,7 @@ android:layout_height="wrap_content" android:text="@string/rate_on_google_play_summary" android:textAppearance="@style/TextAppearance.AppCompat.Caption" /> + @@ -237,6 +241,7 @@ android:layout_height="wrap_content" android:text="@string/donate_summary" android:textAppearance="@style/TextAppearance.AppCompat.Caption" /> + diff --git a/app/src/main/res/layout/dialog_donation.xml b/app/src/main/res/layout/dialog_donation.xml index 86d8d653..992e9293 100644 --- a/app/src/main/res/layout/dialog_donation.xml +++ b/app/src/main/res/layout/dialog_donation.xml @@ -5,8 +5,7 @@ android:layout_height="match_parent" android:orientation="vertical"> - - diff --git a/app/src/main/res/layout/fragment_card_player.xml b/app/src/main/res/layout/fragment_card_player.xml index 9138521d..1320f0fc 100644 --- a/app/src/main/res/layout/fragment_card_player.xml +++ b/app/src/main/res/layout/fragment_card_player.xml @@ -1,14 +1,14 @@ - + diff --git a/app/src/main/res/layout/fragment_card_player_playback_controls.xml b/app/src/main/res/layout/fragment_card_player_playback_controls.xml index 052c017d..d12ce3fe 100644 --- a/app/src/main/res/layout/fragment_card_player_playback_controls.xml +++ b/app/src/main/res/layout/fragment_card_player_playback_controls.xml @@ -1,11 +1,11 @@ - + android:orientation="vertical"> + android:layout_centerInParent="true" + app:elevation="4dp" + app:pressedTranslationZ="2dp" /> diff --git a/app/src/main/res/layout/fragment_flat_player.xml b/app/src/main/res/layout/fragment_flat_player.xml index 38a85e06..0c0a4f61 100644 --- a/app/src/main/res/layout/fragment_flat_player.xml +++ b/app/src/main/res/layout/fragment_flat_player.xml @@ -20,9 +20,9 @@ - + diff --git a/app/src/main/res/layout/fragment_folder.xml b/app/src/main/res/layout/fragment_folder.xml index da021c9c..11840e70 100644 --- a/app/src/main/res/layout/fragment_folder.xml +++ b/app/src/main/res/layout/fragment_folder.xml @@ -14,6 +14,7 @@ tools:ignore="UnusedAttribute"> + - diff --git a/app/src/main/res/layout/fragment_library.xml b/app/src/main/res/layout/fragment_library.xml index 8299b25a..e402e90f 100644 --- a/app/src/main/res/layout/fragment_library.xml +++ b/app/src/main/res/layout/fragment_library.xml @@ -14,6 +14,7 @@ tools:ignore="UnusedAttribute"> + - diff --git a/app/src/main/res/layout/fragment_mini_player.xml b/app/src/main/res/layout/fragment_mini_player.xml index 3b60b323..3e28e3a4 100644 --- a/app/src/main/res/layout/fragment_mini_player.xml +++ b/app/src/main/res/layout/fragment_mini_player.xml @@ -10,9 +10,7 @@ android:transitionName="@string/transition_mini_player" tools:ignore="UnusedAttribute"> - diff --git a/app/src/main/res/layout/fragment_player_album_cover.xml b/app/src/main/res/layout/fragment_player_album_cover.xml index c97fd705..03c14fc4 100644 --- a/app/src/main/res/layout/fragment_player_album_cover.xml +++ b/app/src/main/res/layout/fragment_player_album_cover.xml @@ -16,10 +16,11 @@ android:layout_height="match_parent" android:layout_gravity="center" android:padding="72dp" + android:scaleType="fitXY" android:tint="@color/md_pink_A400" android:tintMode="src_in" - android:scaleType="fitXY" android:visibility="invisible" app:srcCompat="@drawable/ic_favorite_white_24dp" tools:ignore="ContentDescription,UnusedAttribute" /> + \ No newline at end of file diff --git a/app/src/main/res/layout/item_list.xml b/app/src/main/res/layout/item_list.xml index 791d7587..281761f1 100644 --- a/app/src/main/res/layout/item_list.xml +++ b/app/src/main/res/layout/item_list.xml @@ -1,9 +1,9 @@ @@ -14,10 +14,10 @@ android:layout_gravity="center_vertical|start" android:layout_marginLeft="-8dp" android:layout_marginStart="-8dp" - app:srcCompat="@drawable/ic_drag_vertical_white_24dp" android:tint="?attr/iconColor" - android:visibility="gone" android:tintMode="src_in" + android:visibility="gone" + app:srcCompat="@drawable/ic_drag_vertical_white_24dp" tools:ignore="ContentDescription" /> @@ -14,8 +14,8 @@ android:layout_gravity="center_vertical|start" android:layout_marginLeft="-8dp" android:layout_marginStart="-8dp" - app:srcCompat="@drawable/ic_drag_vertical_white_24dp" android:visibility="gone" + app:srcCompat="@drawable/ic_drag_vertical_white_24dp" tools:ignore="ContentDescription" /> - - @@ -46,6 +45,7 @@ android:layout_marginTop="12dp" android:scaleType="centerInside" tools:ignore="ContentDescription" /> + + + - - - + + + \ No newline at end of file diff --git a/app/src/main/res/layout/notification_big.xml b/app/src/main/res/layout/notification_big.xml index 48e925c2..9bc97941 100644 --- a/app/src/main/res/layout/notification_big.xml +++ b/app/src/main/res/layout/notification_big.xml @@ -36,8 +36,8 @@ android:scaleType="centerCrop" tools:ignore="ContentDescription" /> - + + - - - + + + \ No newline at end of file diff --git a/app/src/main/res/layout/preference_now_playing_screen_item.xml b/app/src/main/res/layout/preference_now_playing_screen_item.xml index 4d1a08f8..0e12b8ef 100644 --- a/app/src/main/res/layout/preference_now_playing_screen_item.xml +++ b/app/src/main/res/layout/preference_now_playing_screen_item.xml @@ -12,8 +12,8 @@ android:layout_height="wrap_content" android:gravity="center" android:padding="16dp" - android:textColor="?android:textColorSecondary" android:textAppearance="@style/TextAppearance.AppCompat.Title" + android:textColor="?android:textColorSecondary" tools:text="Card layout" /> + android:layout_height="wrap_content" + android:orientation="vertical"> + android:layout_height="wrap_content" + android:orientation="vertical"> + + \ No newline at end of file diff --git a/app/src/main/res/layout/sliding_music_panel_layout.xml b/app/src/main/res/layout/sliding_music_panel_layout.xml index bf2980e0..80ce7ef8 100644 --- a/app/src/main/res/layout/sliding_music_panel_layout.xml +++ b/app/src/main/res/layout/sliding_music_panel_layout.xml @@ -1,6 +1,7 @@ - + - \ No newline at end of file + android:textAppearance="@style/TextAppearance.AppCompat.Body2" + android:textColor="?android:textColorSecondary" /> \ No newline at end of file diff --git a/app/src/main/res/menu/menu_album_detail.xml b/app/src/main/res/menu/menu_album_detail.xml index 817890bf..b2bb1d54 100644 --- a/app/src/main/res/menu/menu_album_detail.xml +++ b/app/src/main/res/menu/menu_album_detail.xml @@ -4,10 +4,15 @@ tools:context="com.kabouzeid.gramophone.ui.activities.AlbumDetailActivity"> + + + app:showAsAction="never" /> + app:actionViewClass="android.support.v7.widget.SearchView" + app:showAsAction="ifRoom|collapseActionView" /> \ No newline at end of file diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 05e5cfe2..6a2afd60 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -115,7 +115,7 @@ شريط تنقل ملون صفحة البدء أظهر صورة الألبوم - حمل صور الفنانين تلقائياً + حمل صور الفنانين تلقائياً تغييم صورة الألبوم إشعار ملون تجاهل صور متجر الوسائط @@ -200,7 +200,7 @@ المؤلف أضف إلى دوائر جوجل + تابع في تويتر - Fork عن طريق Github + Fork عن طريق Github زر موقعنا أبلغ عن وجود مشكلة أبلغ عن وجود مشاكل أو طلب ميزات جديدة diff --git a/app/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml index b8fe998b..20c72acf 100644 --- a/app/src/main/res/values-bg/strings.xml +++ b/app/src/main/res/values-bg/strings.xml @@ -117,7 +117,7 @@ Оцветени навигационни бутони Начална страница Покажи обложката на албум - Автоматично изтегляне на изображения на артист + Автоматично изтегляне на изображения на артист Размажи обложката Оцвети известията Игнорирай вградените обложки @@ -202,7 +202,7 @@ Автор Добави в Гугъл Плюс Последвай в Twitter - Посети GitHub страница + Посети GitHub страница Посети уебсайт Съобщи за бъгове Съобщи за бъгове или предложи нови идеи diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 845b2dcf..98219bd8 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -122,7 +122,7 @@ Barevné zkratky aplikace Zvolit výchozí obrazovku Obal alba na odemykací obrazovce - Automaticky stahovat obrázky umělců + Automaticky stahovat obrázky umělců Rozostřit obal alba Barevné notifikace Ignorovat obaly Media Storu @@ -209,7 +209,7 @@ Autor Přidat do kruhů Google Plus Sledovat na Twitteru - Fork na GitHubu + Fork na GitHubu Navštívit stránku Ohlásit chybu "Nahlásit chyby nebo požádat o nové funkce. " diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index f05954dc..91fa40a2 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -122,7 +122,7 @@ Gefärbte App-Shortcuts Startseite Album Cover anzeigen - Interpreten Bilder automatisch herunterladen + Interpreten Bilder automatisch herunterladen Album Cover weichzeichnen Gefärbte Benachrichtigung Media Store Cover ignorieren @@ -209,7 +209,7 @@ Autor Zu Google Plus Kreisen hinzufügen Auf Twitter folgen - Auf GitHub forken + Auf GitHub forken Website besuchen Fehler melden Melde Fehler oder schlage neue Features vor. diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index 646e4285..5789a887 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -118,7 +118,7 @@ Έγχρωμη μπάρα πλοήγησης Αρχική σελίδα Εμφάνιση album art - Αυτόματο κατέβασμα πορτρέτων καλλιτεχνών + Αυτόματο κατέβασμα πορτρέτων καλλιτεχνών Θάμπωμα πορτρέτων καλλιτεχνών Χρωματιστή πλοήγηση Παράληψη των album art στην SD @@ -203,7 +203,7 @@ Εκδότης Προσθήκη στους κύκλους σας στο Google Plus Ακολουθήστε στο Twitter - Παρακολουθήστε στο GitHub + Παρακολουθήστε στο GitHub Επισκεφθείτε την ιστοσελίδα μας Αναφορά σφαλμάτων Αναφέρετε σφάλματα ή ζητείστε νέα χαρακτηριστικά. diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index d9f834ec..6ebe4ace 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -122,7 +122,7 @@ Atajos coloreados de la aplicación Página de inicio Mostrar carátula del álbum - Descargar automaticamente las fotos de los artistas + Descargar automaticamente las fotos de los artistas Desenfocar carátula de álbum Notificación coloreada Ignorar carátulas provenientes del almacenamiento local @@ -208,7 +208,7 @@ Autor Añadir a círculos en Google Plus Seguir en Twitter - Fork en GitHub + Fork en GitHub Visitar sitio web Reportar errores Reportar errores o sugerir nuevas características. diff --git a/app/src/main/res/values-es-rUS/strings.xml b/app/src/main/res/values-es-rUS/strings.xml index 77d6c869..13496029 100644 --- a/app/src/main/res/values-es-rUS/strings.xml +++ b/app/src/main/res/values-es-rUS/strings.xml @@ -122,7 +122,7 @@ Accesos directos coloreados Sección de inicio Mostrar carátula del álbum - Descarga automática de imágenes de artistas + Descarga automática de imágenes de artistas Desenfocar imagen de álbum Notificación coloreada Ignorar imágenes de la librería del sistema @@ -209,7 +209,7 @@ Autor Añadir a círculos de Google+ Seguir en Twitter - Fork en GitHub + Fork en GitHub Visitar sitio web Reportar errores Reportar errores o sugerir nuevas características. diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index d1c3b78f..9efc3fcb 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -117,7 +117,7 @@ Värillinen navigointipalkki Aloitussivu Näytä albumin kansi - Lataa automaattisesti artistien kuvat + Lataa automaattisesti artistien kuvat Sumenna albumin kansi Värillinen ilmoitus Sivuuta Media Storen albumikannet @@ -202,7 +202,7 @@ Luoja Lisää Google Plus -piireihin Seuraa Twitterissä - Seuraa GitHubissa + Seuraa GitHubissa Vieraile verkkosivulla Raportoi bugeja Raportoi bugeja tai ehdota uusia ominaisuuksia. diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index f13fd242..f053ac53 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -122,7 +122,7 @@ Raccourcis de l\'application colorés Page d\'accueil Afficher la pochette d\'album - Télécharger automatiquement les images + Télécharger automatiquement les images Pochette d\'album floue Notification colorée Ignorer le stockage des pochettes @@ -209,7 +209,7 @@ Auteur Ajouter aux cercles Google+ Suivre sur Twitter - Aller sur GitHub + Aller sur GitHub Visiter le site internet Signaler des bugs Signalez des bugs ou demandez des nouvelles fonctionnalités. diff --git a/app/src/main/res/values-he/strings.xml b/app/src/main/res/values-he/strings.xml index 2cf98310..493ffb12 100644 --- a/app/src/main/res/values-he/strings.xml +++ b/app/src/main/res/values-he/strings.xml @@ -116,7 +116,7 @@ סרגל ניווט צבעוני עמוד פתיחה הצג עטיפת אלבום - הורדה אוטומטית של תמונות האמן + הורדה אוטומטית של תמונות האמן טשטוש עטיפת האלבום התראה צבעונית ניגון ללא מרווחים בין השירים diff --git a/app/src/main/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml index 94ce16e3..14641b10 100644 --- a/app/src/main/res/values-hr/strings.xml +++ b/app/src/main/res/values-hr/strings.xml @@ -117,7 +117,7 @@ Obojena navigacijska traka Početna stranica Prikaži omot albuma na zaklj. zaslonu - Automatski preuzmi slike izvođača + Automatski preuzmi slike izvođača Zamagli omot albuma Obojene obavijesti Ignoriraj Media Store omote @@ -202,7 +202,7 @@ Autor Dodajte u Google Plus krugove Pratite na Twitteru - Fork-ajte na GitHub-u + Fork-ajte na GitHub-u Posjetite web-stranicu Prijavi pogreške Prijavite pogreške i zatražite nove mogućnosti. diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml index 4d3865f4..b598ab07 100644 --- a/app/src/main/res/values-hu/strings.xml +++ b/app/src/main/res/values-hu/strings.xml @@ -122,7 +122,7 @@ Színes alkalmazás hivatkozások Kezdő oldal Albumboritó megjelenítése - Előadó képének automatikus letöltése + Előadó képének automatikus letöltése Albumborító elhomályosítása Színezett értesítés A médiában tárolt albumborítók figyelmen kívül hagyása @@ -209,7 +209,7 @@ Készítő Google Plus Twitter - GitHub + GitHub Weboldal Hibajelentés A felmerülő problémák jelentése. diff --git a/app/src/main/res/values-id/strings.xml b/app/src/main/res/values-id/strings.xml index 0e5274e9..2418753f 100644 --- a/app/src/main/res/values-id/strings.xml +++ b/app/src/main/res/values-id/strings.xml @@ -117,7 +117,7 @@ Warnai alat navigasi di bagian bawah layar Halaman awal Perlihatkan sampul album pada layar kunci - Unduh otomatis gambar-gambar artis + Unduh otomatis gambar-gambar artis Buramkan sampul album Notifikasi berwarna Abaikan sampul-sampul dari \'Media Store\' android. @@ -202,7 +202,7 @@ Pengelola Tambahkan ke lingkaran Google Plus Ikuti di Twitter - Salin di GitHub + Salin di GitHub Kunjungi situs Laporkan masalah Laporkan masalah atau sarankan fitur baru diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml index 0e5274e9..2418753f 100644 --- a/app/src/main/res/values-in/strings.xml +++ b/app/src/main/res/values-in/strings.xml @@ -117,7 +117,7 @@ Warnai alat navigasi di bagian bawah layar Halaman awal Perlihatkan sampul album pada layar kunci - Unduh otomatis gambar-gambar artis + Unduh otomatis gambar-gambar artis Buramkan sampul album Notifikasi berwarna Abaikan sampul-sampul dari \'Media Store\' android. @@ -202,7 +202,7 @@ Pengelola Tambahkan ke lingkaran Google Plus Ikuti di Twitter - Salin di GitHub + Salin di GitHub Kunjungi situs Laporkan masalah Laporkan masalah atau sarankan fitur baru diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 0aecf05c..eec0301f 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -122,7 +122,7 @@ Scorciatoie app colorate Pagina iniziale Mostra copertina album nella schermata di blocco - Scarica automaticamente le immagini degli artisti + Scarica automaticamente le immagini degli artisti Sfoca la copertina Notifica colorata Ignora le copertine del Media Store @@ -209,7 +209,7 @@ Autore Aggiungi alle cerchie di Google+ Segui su Twitter - Crea fork su GitHub + Crea fork su GitHub Visita sito web Segnala bug Segnala bug o richiedi nuove funzionalità. diff --git a/app/src/main/res/values-iw/strings.xml b/app/src/main/res/values-iw/strings.xml index 2cf98310..493ffb12 100644 --- a/app/src/main/res/values-iw/strings.xml +++ b/app/src/main/res/values-iw/strings.xml @@ -116,7 +116,7 @@ סרגל ניווט צבעוני עמוד פתיחה הצג עטיפת אלבום - הורדה אוטומטית של תמונות האמן + הורדה אוטומטית של תמונות האמן טשטוש עטיפת האלבום התראה צבעונית ניגון ללא מרווחים בין השירים diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 92fcf380..18aad185 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -107,7 +107,7 @@ ナビゲーションバーの彩色設定 起動時の画面 アルバムアートをロック画面に表示する - アーティスト画像の自動ダウンロード + アーティスト画像の自動ダウンロード アルバムアートにぼかし効果をかける 通知コントロールに色を付ける アルバムアートを直接読み込む diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index 7d5819c2..16974e7a 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -112,7 +112,7 @@ 내비게이션 바 색상 틴트 시작 화면 앨범 커버 보이기 - 아티스트 이미지 자동 다운로드 + 아티스트 이미지 자동 다운로드 앨범 커버 블러 효과 알림 색상 틴트 미디어 스토어 앨범 커버 무시 diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 69af3765..a8753b80 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -121,7 +121,7 @@ Gekleurde navigatiebalk Startpagina Toon albumhoes - Download artiesten afbeeldingen + Download artiesten afbeeldingen Vervaag albumhoes Gekleurde notificatie Negeer Mediaopslag illustraties @@ -206,7 +206,7 @@ Auteur Toevoegen aan Google Plus cirkels Volgen op Twitter - Fork op GitHub + Fork op GitHub Bezoek website Rapporteer bugs Rapporteer bugs of verzoek nieuwe functies. diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 911c5bc1..c3a1dc18 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -117,7 +117,7 @@ Kolorowy pasek nawigacyjny Strona startowa Pokazuj okładki albumów - Automatyczne pobieranie zdjęć wykonawców + Automatyczne pobieranie zdjęć wykonawców Rozmywanie okładki albumu Kolorowy odtwarzacz w pasku powiadomień Ignoruj okładki z Media Store @@ -202,7 +202,7 @@ O autorze Dodaj do kręgów Google+ Śledź na Twitterze - Dołącz na GitHub\'ie + Dołącz na GitHub\'ie Odwiedź stronę Zgłoś błędy Zgłaszaj błędy lub propozycje nowych funkcji diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 1d96a0ca..29791a5b 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -117,7 +117,7 @@ Barra de navegação colorida Página inicial Visualizar capa do álbum - Baixar as imagens dos artistas automaticamente + Baixar as imagens dos artistas automaticamente Capa de álbum esmaecida Notificação colorida Ignorar capas Media Store @@ -202,7 +202,7 @@ Autor Adicionar aos círculos do Google+ Seguir no Twitter - Garfo no GitHub + Garfo no GitHub Visitar site Reportar bugs Reportar bugs ou pedir por novas funções. diff --git a/app/src/main/res/values-pt-rPT/strings.xml b/app/src/main/res/values-pt-rPT/strings.xml index baa07cfc..4063eec4 100644 --- a/app/src/main/res/values-pt-rPT/strings.xml +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -117,7 +117,7 @@ Barra de navegação colorida Página Inicial Mostrar capa do álbum - Download automático das imagens dos artistas + Download automático das imagens dos artistas Desfocar capa do álbum Notificação colorida Ignorar capas Media Store @@ -201,7 +201,7 @@ Autor Adicionar aos seus círculos do Google Plus Seguir no Twitter - Fork no Github + Fork no Github Visitar sítio na Internet Reportar erros Reportar erros ou sugerir novas funcionalidades. diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index aa51342a..e0d99525 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -122,7 +122,7 @@ Цветные шорткаты Установить начальную страницу Показывать обложку альбома - Автоматически загружать изображения исполнителей + Автоматически загружать изображения исполнителей "Размытая обложка альбома " Окрашенное уведомление Игнорировать хранилище обложек альбомов @@ -209,7 +209,7 @@ Автор Добавить в круги Google Plus Следить в Twitter - Форк на GitHub + Форк на GitHub Посетить сайт Отправить отчет об ошибке Отправить отчет об ошибке или попросить новые функции. diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index fae35676..e0b7ec36 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -122,7 +122,7 @@ Renkli uygulama kısayolları Başlangıç sayfası Albüm kapağını göster - Sanatçı resimlerini otomatik indir + Sanatçı resimlerini otomatik indir Bulanık albüm kapağı Renkli bildirim Media Store albüm kapağını yoksay @@ -209,7 +209,7 @@ Yapımcı Google+ çevrelerine ekle Twitterda takip et - GitHub da katkıda bulunun + GitHub da katkıda bulunun Websitesini ziyaret ediniz Hata raporlayınız Hata raporlayın ya da yeni özellikler talep edin diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index 0c0a840f..441ff1c9 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -117,7 +117,7 @@ Кольорова панель навігації Початкова сторінка Показати обкладинку альбому - Автоматично завантажувати зображення виконавців + Автоматично завантажувати зображення виконавців Розмити обкладинку альбому Кольорове сповіщення Ігнорувати обкладинки з Медіасховища. @@ -202,7 +202,7 @@ Автор Додати в кола Google Plus Слідкувати у Твіттері - Форк на GitHub + Форк на GitHub Відвідати веб-сайт Повідомити про помилку Повідомити про помилку чи попросити нові функції. diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index 4a126c92..9775a7ef 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -122,7 +122,7 @@ Màu sắc biểu tượng ứng dụng Trang bắt đầu Hiện bìa album - Tự động tải về hình ảnh nghệ sĩ + Tự động tải về hình ảnh nghệ sĩ Làm mờ bìa album Màu thông báo Bỏ qua kho ảnh bìa trong Kho Phương tiện @@ -209,7 +209,7 @@ Tác giả Thêm vào vòng kết nối Google Plus Theo dõi trên Twitter - Fork trên GitHub + Fork trên GitHub Truy cập trang web Báo lỗi Báo lỗi và yêu cầu tính năng mới. diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index e1f629cb..a79e7f24 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -122,7 +122,7 @@ 着色应用快捷方式 起始页 显示专辑封面 - 自动下载艺术家图像 + 自动下载艺术家图像 专辑封面模糊化 启用通知背景着色 忽略媒体储存中的专辑封面 @@ -209,7 +209,7 @@ 作者 添加到 Google+ 圈子 在 Twitter 上关注 - 参与 Github 项目 + 参与 Github 项目 访问网站 提交 bug 提交 bug 或申请添加新功能 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index a3696098..f7216aa7 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -123,7 +123,7 @@ 彩色的應用快捷方式 首頁 顯示專輯封面 - 自動下載演出者圖片 + 自動下載演出者圖片 將專輯圖片模糊化 彩色的狀態列 忽略音訊檔內嵌的專輯封面 @@ -210,7 +210,7 @@ 作者 加入 Google+ 社交圈 在 Twitter 上追蹤我們 - 在 GitHub 上幫助開發 + 在 GitHub 上幫助開發 造訪網站 回報程式錯誤 建議新功能或回報問題 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 50f7c06e..95629fcd 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -38,8 +38,10 @@ Songs Playlists Couldn\u2019t play this song. - Couldn\u2019t find the artists biography. + Couldn\u2019t find a biography entry for this artist. + Couldn\u2019t find a wiki entry for this album. Biography + Wiki Audio focus denied. Album Artist @@ -129,7 +131,7 @@ Colored app shortcuts Start page Show album cover - Auto download artist images + Auto download metadata Blur album cover Colored notification Classic notification design @@ -229,7 +231,7 @@ Write an email Add to Google Plus circles Follow on Twitter - Fork on GitHub + Fork on GitHub Visit website Report bugs Report bugs or request new features. diff --git a/app/src/main/res/xml/pref_images.xml b/app/src/main/res/xml/pref_images.xml index e4c7e127..e5f407af 100644 --- a/app/src/main/res/xml/pref_images.xml +++ b/app/src/main/res/xml/pref_images.xml @@ -16,7 +16,7 @@ android:key="auto_download_images_policy" android:negativeButtonText="@null" android:positiveButtonText="@null" - android:title="@string/pref_title_auto_download_artist_images" /> + android:title="@string/pref_title_auto_download_metadata" /> diff --git a/art/art.jpg b/art/art.jpg new file mode 100644 index 00000000..45017feb Binary files /dev/null and b/art/art.jpg differ diff --git a/art/art.psd b/art/art.psd new file mode 100644 index 00000000..ee610c88 Binary files /dev/null and b/art/art.psd differ diff --git a/build.gradle b/build.gradle index eedfcc82..5972b324 100644 --- a/build.gradle +++ b/build.gradle @@ -3,14 +3,14 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:2.3.1' + classpath 'com.android.tools.build:gradle:2.3.3' } } allprojects { repositories { jcenter() - maven { url "https://maven.google.com" } + google() maven { url "https://jitpack.io" } } } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index ac15fbe1..42bfa95e 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4c8eae3c..a4843e88 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Tue Apr 11 17:46:33 SGT 2017 +#Thu Jun 15 14:24:17 EDT 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-all.zip