diff options
author | Christian Schneppe <christian@pix-art.de> | 2019-01-27 10:16:18 +0100 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2019-01-27 10:19:46 +0100 |
commit | e859e69674cd13e82fb6363e219b80853e87ef15 (patch) | |
tree | 2114545b2f68e4e9dd882f45df60d5255756fd08 /src/main/java/de/pixart/messenger/ui/adapter/MediaAdapter.java | |
parent | 7b9ced9fb752ee485b657daf6d827f311ed6e8bc (diff) |
make bitmap worker task static
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/adapter/MediaAdapter.java')
-rw-r--r-- | src/main/java/de/pixart/messenger/ui/adapter/MediaAdapter.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/adapter/MediaAdapter.java b/src/main/java/de/pixart/messenger/ui/adapter/MediaAdapter.java index 8b8c05d05..50460c0f1 100644 --- a/src/main/java/de/pixart/messenger/ui/adapter/MediaAdapter.java +++ b/src/main/java/de/pixart/messenger/ui/adapter/MediaAdapter.java @@ -89,7 +89,7 @@ public class MediaAdapter extends RecyclerView.Adapter<MediaAdapter.MediaViewHol return attr; } - public static void renderPreview(Context context, Attachment attachment, ImageView imageView) { + static void renderPreview(Context context, Attachment attachment, ImageView imageView) { imageView.setBackgroundColor(StyledAttributes.getColor(context, R.attr.color_background_tertiary)); imageView.setImageAlpha(Math.round(StyledAttributes.getFloat(context, R.attr.icon_alpha) * 255)); imageView.setImageDrawable(StyledAttributes.getDrawable(context, getImageAttr(attachment))); @@ -161,7 +161,7 @@ public class MediaAdapter extends RecyclerView.Adapter<MediaAdapter.MediaViewHol } else { imageView.setBackgroundColor(0xff333333); imageView.setImageDrawable(null); - final BitmapWorkerTask task = new BitmapWorkerTask(imageView); + final BitmapWorkerTask task = new BitmapWorkerTask(mediaSize, imageView); final AsyncDrawable asyncDrawable = new AsyncDrawable(activity.getResources(), null, task); imageView.setImageDrawable(asyncDrawable); try { @@ -200,17 +200,23 @@ public class MediaAdapter extends RecyclerView.Adapter<MediaAdapter.MediaViewHol } } - class BitmapWorkerTask extends AsyncTask<Attachment, Void, Bitmap> { + private static class BitmapWorkerTask extends AsyncTask<Attachment, Void, Bitmap> { private final WeakReference<ImageView> imageViewReference; private Attachment attachment = null; + private final int mediaSize; - BitmapWorkerTask(ImageView imageView) { + BitmapWorkerTask(int mediaSize, ImageView imageView) { + this.mediaSize = mediaSize; imageViewReference = new WeakReference<>(imageView); } @Override protected Bitmap doInBackground(Attachment... params) { this.attachment = params[0]; + final XmppActivity activity = XmppActivity.find(imageViewReference); + if (activity == null) { + return null; + } return activity.xmppConnectionService.getFileBackend().getPreviewForUri(this.attachment, mediaSize, false); } |