diff options
Diffstat (limited to 'src/main/java/de/thedevstack/conversationsplus/ui/AsyncDrawable.java')
-rw-r--r-- | src/main/java/de/thedevstack/conversationsplus/ui/AsyncDrawable.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/ui/AsyncDrawable.java b/src/main/java/de/thedevstack/conversationsplus/ui/AsyncDrawable.java new file mode 100644 index 00000000..52a9c74f --- /dev/null +++ b/src/main/java/de/thedevstack/conversationsplus/ui/AsyncDrawable.java @@ -0,0 +1,23 @@ +package de.thedevstack.conversationsplus.ui; + +import android.content.res.Resources; +import android.graphics.Bitmap; +import android.graphics.drawable.BitmapDrawable; + +import java.lang.ref.WeakReference; + +import de.thedevstack.conversationsplus.dto.LoadAvatarFor; +import de.thedevstack.conversationsplus.ui.tasks.AvatarBitmapTask; + +public class AsyncDrawable<T extends LoadAvatarFor> extends BitmapDrawable { + private final WeakReference<AvatarBitmapTask<T>> bitmapWorkerTaskReference; + + public AsyncDrawable(Resources res, Bitmap bitmap, AvatarBitmapTask<T> bitmapWorkerTask) { + super(res, bitmap); + bitmapWorkerTaskReference = new WeakReference<>(bitmapWorkerTask); + } + + public AvatarBitmapTask<T> getBitmapWorkerTask() { + return bitmapWorkerTaskReference.get(); + } + }
\ No newline at end of file |