diff --git a/app-sample/src/main/java/io/noties/markwon/app/samples/image/CoilRecyclerViewSample.kt b/app-sample/src/main/java/io/noties/markwon/app/samples/image/CoilRecyclerViewSample.kt index b9f140fd..b776cc5b 100644 --- a/app-sample/src/main/java/io/noties/markwon/app/samples/image/CoilRecyclerViewSample.kt +++ b/app-sample/src/main/java/io/noties/markwon/app/samples/image/CoilRecyclerViewSample.kt @@ -2,8 +2,8 @@ package io.noties.markwon.app.samples.image import androidx.recyclerview.widget.LinearLayoutManager import coil.Coil -import coil.request.LoadRequest -import coil.request.RequestDisposable +import coil.request.Disposable +import coil.request.ImageRequest import coil.transform.RoundedCornersTransformation import io.noties.markwon.Markwon import io.noties.markwon.app.R @@ -51,8 +51,8 @@ class CoilRecyclerViewSample : MarkwonRecyclerViewSample() { val markwon = Markwon.builder(context) .usePlugin(CoilImagesPlugin.create( object : CoilImagesPlugin.CoilStore { - override fun load(drawable: AsyncDrawable): LoadRequest { - return LoadRequest.Builder(context) + override fun load(drawable: AsyncDrawable): ImageRequest { + return ImageRequest.Builder(context) .transformations( RoundedCornersTransformation(14F) ) @@ -61,7 +61,7 @@ class CoilRecyclerViewSample : MarkwonRecyclerViewSample() { .build() } - override fun cancel(disposable: RequestDisposable) { + override fun cancel(disposable: Disposable) { disposable.dispose() } }, diff --git a/build.gradle b/build.gradle index f11f8b71..f19cfa96 100644 --- a/build.gradle +++ b/build.gradle @@ -58,7 +58,7 @@ ext { final def commonMarkVersion = '0.13.0' final def daggerVersion = '2.10' - final def coilVersion = '0.10.1' + final def coilVersion = '0.12.0' // please note that `pl.droidsonroids.gif:android-gif-drawable:1.2.15` is used due to the minimum // api level mismatch that Markwon supports (16) and later versions of AndroidGifDrawable (17). diff --git a/markwon-image-coil/src/main/java/io/noties/markwon/image/coil/CoilImagesPlugin.java b/markwon-image-coil/src/main/java/io/noties/markwon/image/coil/CoilImagesPlugin.java index 0019de21..605e5146 100644 --- a/markwon-image-coil/src/main/java/io/noties/markwon/image/coil/CoilImagesPlugin.java +++ b/markwon-image-coil/src/main/java/io/noties/markwon/image/coil/CoilImagesPlugin.java @@ -16,8 +16,8 @@ import java.util.concurrent.atomic.AtomicBoolean; import coil.Coil; import coil.ImageLoader; -import coil.request.LoadRequest; -import coil.request.RequestDisposable; +import coil.request.ImageRequest; +import coil.request.Disposable; import coil.target.Target; import io.noties.markwon.AbstractMarkwonPlugin; import io.noties.markwon.MarkwonConfiguration; @@ -37,9 +37,9 @@ public class CoilImagesPlugin extends AbstractMarkwonPlugin { public interface CoilStore { @NonNull - LoadRequest load(@NonNull AsyncDrawable drawable); + ImageRequest load(@NonNull AsyncDrawable drawable); - void cancel(@NonNull RequestDisposable disposable); + void cancel(@NonNull Disposable disposable); } @NonNull @@ -47,14 +47,14 @@ public class CoilImagesPlugin extends AbstractMarkwonPlugin { return create(new CoilStore() { @NonNull @Override - public LoadRequest load(@NonNull AsyncDrawable drawable) { - return LoadRequest.builder(context) + public ImageRequest load(@NonNull AsyncDrawable drawable) { + return new ImageRequest.Builder(context) .data(drawable.getDestination()) .build(); } @Override - public void cancel(@NonNull RequestDisposable disposable) { + public void cancel(@NonNull Disposable disposable) { disposable.dispose(); } }, Coil.imageLoader(context)); @@ -66,14 +66,14 @@ public class CoilImagesPlugin extends AbstractMarkwonPlugin { return create(new CoilStore() { @NonNull @Override - public LoadRequest load(@NonNull AsyncDrawable drawable) { - return LoadRequest.builder(context) + public ImageRequest load(@NonNull AsyncDrawable drawable) { + return new ImageRequest.Builder(context) .data(drawable.getDestination()) .build(); } @Override - public void cancel(@NonNull RequestDisposable disposable) { + public void cancel(@NonNull Disposable disposable) { disposable.dispose(); } }, imageLoader); @@ -116,7 +116,7 @@ public class CoilImagesPlugin extends AbstractMarkwonPlugin { private final CoilStore coilStore; private final ImageLoader imageLoader; - private final Map cache = new HashMap<>(2); + private final Map cache = new HashMap<>(2); CoilAsyncDrawableLoader(@NonNull CoilStore coilStore, @NonNull ImageLoader imageLoader) { this.coilStore = coilStore; @@ -127,13 +127,13 @@ public class CoilImagesPlugin extends AbstractMarkwonPlugin { public void load(@NonNull AsyncDrawable drawable) { final AtomicBoolean loaded = new AtomicBoolean(false); final Target target = new AsyncDrawableTarget(drawable, loaded); - final LoadRequest request = coilStore.load(drawable).newBuilder() + final ImageRequest request = coilStore.load(drawable).newBuilder() .target(target) .build(); // @since 4.5.1 execute can return result _before_ disposable is created, // thus `execute` would finish before we put disposable in cache (and thus result is // not delivered) - final RequestDisposable disposable = imageLoader.execute(request); + final Disposable disposable = imageLoader.enqueue(request); // if flag was not set, then job is running (else - finished before we got here) if (!loaded.get()) { // mark flag @@ -144,7 +144,7 @@ public class CoilImagesPlugin extends AbstractMarkwonPlugin { @Override public void cancel(@NonNull AsyncDrawable drawable) { - final RequestDisposable disposable = cache.remove(drawable); + final Disposable disposable = cache.remove(drawable); if (disposable != null) { coilStore.cancel(disposable); }