Increased album cover quality and loading time when loading them directly from the song files.

This commit is contained in:
Karim Abou Zeid 2015-08-23 16:10:51 +02:00
commit 1350454484
5 changed files with 36 additions and 101 deletions

View file

@ -27,7 +27,6 @@ import com.afollestad.materialdialogs.MaterialDialog;
import com.afollestad.materialdialogs.util.DialogUtils;
import com.github.ksoichiro.android.observablescrollview.ObservableScrollView;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.misc.LagTracker;
import com.kabouzeid.gramophone.misc.SimpleObservableScrollViewCallbacks;
import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity;
import com.kabouzeid.gramophone.util.ColorUtil;
@ -99,9 +98,7 @@ public abstract class AbsTagEditorActivity extends AbsBaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LagTracker.get().start("setContentView");
setContentView(getContentViewLayout());
LagTracker.get().end("setContentView");
ButterKnife.bind(this);
getIntentExtras();

View file

@ -1,7 +1,6 @@
package com.kabouzeid.gramophone.ui.activities.tageditor;
import android.graphics.Bitmap;
import android.graphics.Point;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.NonNull;
@ -24,7 +23,6 @@ import com.kabouzeid.gramophone.util.Util;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.assist.FailReason;
import com.nostra13.universalimageloader.core.assist.ImageSize;
import com.nostra13.universalimageloader.core.listener.SimpleImageLoadingListener;
import com.nostra13.universalimageloader.core.process.BitmapProcessor;
@ -107,15 +105,13 @@ public class AlbumTagEditorActivity extends AbsTagEditorActivity implements Text
@Override
public void success(@NonNull AlbumInfo albumInfo, Response response) {
if (albumInfo.getAlbum() != null) {
Point size = Util.getScreenSize(AlbumTagEditorActivity.this);
final int screenWidth = Math.min(size.x, size.y);
final int smallerScreenSize = Util.getSmallerScreenSize(AlbumTagEditorActivity.this);
ImageLoader.getInstance().loadImage(LastFMUtil.getLargestAlbumImageUrl(albumInfo.getAlbum().getImage()),
new DisplayImageOptions.Builder()
.preProcessor(new BitmapProcessor() {
@Override
public Bitmap process(Bitmap bitmap) {
//noinspection SuspiciousNameCombination
return ImageUtil.getResizedBitmap(bitmap, screenWidth, screenWidth, true);
return ImageUtil.getResizedBitmap(bitmap, smallerScreenSize, smallerScreenSize, true);
}
})
.build(),
@ -213,8 +209,16 @@ public class AlbumTagEditorActivity extends AbsTagEditorActivity implements Text
@Override
protected void loadImageFromFile(@NonNull final Uri selectedFileUri) {
final int smallerScreenSize = Util.getSmallerScreenSize(AlbumTagEditorActivity.this);
ImageLoader.getInstance().loadImage(selectedFileUri.toString(),
new ImageSize(500, 500),
new DisplayImageOptions.Builder()
.preProcessor(new BitmapProcessor() {
@Override
public Bitmap process(Bitmap bitmap) {
return ImageUtil.getResizedBitmap(bitmap, smallerScreenSize, smallerScreenSize, true);
}
})
.build(),
new SimpleImageLoadingListener() {
@Override
public void onLoadingFailed(String imageUri, View view, FailReason failReason) {