Remove LoadImageTask, its Picasso time

This commit is contained in:
Mr. Dragon
2018-05-04 17:38:34 +05:30
parent f713317dd0
commit 2c18efcc45
2 changed files with 13 additions and 86 deletions

View File

@@ -1,68 +0,0 @@
package com.dragons.aurora.task;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
import android.text.TextUtils;
import android.widget.ImageView;
import com.dragons.aurora.BitmapManager;
import com.dragons.aurora.NetworkState;
import com.dragons.aurora.fragment.PreferenceFragment;
import com.dragons.aurora.R;
import com.dragons.aurora.model.ImageSource;
public class LoadImageTask extends AsyncTask<ImageSource, Void, Void> {
protected ImageView imageView;
private Drawable drawable;
private String tag;
public LoadImageTask() {
}
public LoadImageTask(ImageView imageView) {
setImageView(imageView);
}
public LoadImageTask setImageView(ImageView imageView) {
this.imageView = imageView;
tag = (String) imageView.getTag();
return this;
}
@Override
protected void onPreExecute() {
imageView.setImageDrawable(imageView.getContext().getResources().getDrawable(R.color.transparent));
}
@Override
protected void onPostExecute(Void aVoid) {
if (null != imageView.getTag() && !imageView.getTag().equals(tag)) {
return;
}
if (null != drawable) {
imageView.setImageDrawable(drawable);
}
}
@Override
protected Void doInBackground(ImageSource... params) {
ImageSource imageSource = params[0];
if (null != imageSource.getApplicationInfo()) {
drawable = imageView.getContext().getPackageManager().getApplicationIcon(imageSource.getApplicationInfo());
} else if (!TextUtils.isEmpty(imageSource.getUrl())) {
Bitmap bitmap = new BitmapManager(imageView.getContext()).getBitmap(imageSource.getUrl(), imageSource.isFullSize());
if (null != bitmap || !noImages()) {
drawable = new BitmapDrawable(bitmap);
}
}
return null;
}
private boolean noImages() {
return NetworkState.isMetered(imageView.getContext()) && PreferenceFragment.getBoolean(imageView.getContext(), PreferenceFragment.PREFERENCE_NO_IMAGES);
}
}

View File

@@ -5,35 +5,30 @@ import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.dragons.aurora.NetworkState;
import com.dragons.aurora.R;
import com.dragons.aurora.fragment.PreferenceFragment;
import com.dragons.aurora.model.App;
import com.dragons.aurora.model.ImageSource;
import com.squareup.picasso.Picasso;
import java.util.ArrayList;
import java.util.List;
import java.util.WeakHashMap;
import com.dragons.aurora.NetworkState;
import com.dragons.aurora.fragment.PreferenceFragment;
import com.dragons.aurora.R;
import com.dragons.aurora.model.App;
import com.dragons.aurora.model.ImageSource;
import com.dragons.aurora.task.LoadImageTask;
public abstract class AppBadge extends ListItem {
static private WeakHashMap<Integer, LoadImageTask> tasks = new WeakHashMap<>();
protected App app;
protected List<String> line2 = new ArrayList<>();
protected List<String> line3 = new ArrayList<>();
public void setApp(App app) {
this.app = app;
}
public App getApp() {
return app;
}
public void setApp(App app) {
this.app = app;
}
@Override
public void draw() {
view.findViewById(R.id.progress).setVisibility(View.GONE);
@@ -45,11 +40,11 @@ public abstract class AppBadge extends ListItem {
drawIcon((ImageView) view.findViewById(R.id.icon));
if(app.isTestingProgramOptedIn())
if (app.isTestingProgramOptedIn())
view.findViewById(R.id.beta_user).setVisibility(View.VISIBLE);
if(app.isTestingProgramAvailable())
if (app.isTestingProgramAvailable())
view.findViewById(R.id.beta_avail).setVisibility(View.VISIBLE);
if(app.isEarlyAccess())
if (app.isEarlyAccess())
view.findViewById(R.id.early_access).setVisibility(View.VISIBLE);
}
@@ -57,7 +52,7 @@ public abstract class AppBadge extends ListItem {
ImageSource imageSource = app.getIconInfo();
if (null != imageSource.getApplicationInfo() && !noImages()) {
imageView.setImageDrawable(imageView.getContext().getPackageManager().getApplicationIcon(imageSource.getApplicationInfo()));
} else if(!noImages()) {
} else if (!noImages()) {
Picasso
.with(view.getContext())
.load(imageSource.getUrl())