diff --git a/markwon-image/src/main/java/io/noties/markwon/image/gif/GifMediaDecoder.java b/markwon-image/src/main/java/io/noties/markwon/image/gif/GifMediaDecoder.java index e8ac616e..2efd9f93 100644 --- a/markwon-image/src/main/java/io/noties/markwon/image/gif/GifMediaDecoder.java +++ b/markwon-image/src/main/java/io/noties/markwon/image/gif/GifMediaDecoder.java @@ -11,7 +11,6 @@ import java.io.InputStream; import java.util.Collection; import java.util.Collections; -import io.noties.markwon.image.DrawableUtils; import io.noties.markwon.image.MediaDecoder; import pl.droidsonroids.gif.GifDrawable; @@ -97,9 +96,7 @@ public class GifMediaDecoder extends MediaDecoder { private static void validate() { if (!GifSupport.hasGifSupport()) { - throw new IllegalStateException("`pl.droidsonroids.gif:android-gif-drawable:*` " + - "dependency is missing, please add to your project explicitly if you " + - "wish to use GIF media decoder"); + throw new IllegalStateException(GifSupport.missingMessage()); } } } diff --git a/markwon-image/src/main/java/io/noties/markwon/image/gif/GifSupport.java b/markwon-image/src/main/java/io/noties/markwon/image/gif/GifSupport.java index d90a34d5..b8d91bb5 100644 --- a/markwon-image/src/main/java/io/noties/markwon/image/gif/GifSupport.java +++ b/markwon-image/src/main/java/io/noties/markwon/image/gif/GifSupport.java @@ -1,5 +1,9 @@ package io.noties.markwon.image.gif; +import android.util.Log; + +import androidx.annotation.NonNull; + /** * @since 4.0.0 */ @@ -13,8 +17,9 @@ public abstract class GifSupport { pl.droidsonroids.gif.GifDrawable.class.getName(); result = true; } catch (Throwable t) { - // @since 4.1.1-SNAPSHOT do not print stacktrace (it can become noisy) -// t.printStackTrace(); + // @since 4.1.1-SNAPSHOT instead of printing full stacktrace of the exception, + // just print a warning to the console + Log.w("MarkwonImagesPlugin", missingMessage()); result = false; } HAS_GIF = result; @@ -24,6 +29,16 @@ public abstract class GifSupport { return HAS_GIF; } + /** + * @since 4.1.1-SNAPSHOT + */ + @NonNull + static String missingMessage() { + return "`pl.droidsonroids.gif:android-gif-drawable:*` " + + "dependency is missing, please add to your project explicitly if you " + + "wish to use GIF media-decoder"; + } + private GifSupport() { } } diff --git a/markwon-image/src/main/java/io/noties/markwon/image/svg/SvgMediaDecoder.java b/markwon-image/src/main/java/io/noties/markwon/image/svg/SvgMediaDecoder.java index b307a105..fc5da090 100644 --- a/markwon-image/src/main/java/io/noties/markwon/image/svg/SvgMediaDecoder.java +++ b/markwon-image/src/main/java/io/noties/markwon/image/svg/SvgMediaDecoder.java @@ -83,8 +83,7 @@ public class SvgMediaDecoder extends MediaDecoder { private static void validate() { if (!SvgSupport.hasSvgSupport()) { - throw new IllegalStateException("`com.caverock:androidsvg:*` dependency is missing, " + - "please add to your project explicitly if you wish to use SVG media decoder"); + throw new IllegalStateException(SvgSupport.missingMessage()); } } } diff --git a/markwon-image/src/main/java/io/noties/markwon/image/svg/SvgSupport.java b/markwon-image/src/main/java/io/noties/markwon/image/svg/SvgSupport.java index efb6108a..775cde3d 100644 --- a/markwon-image/src/main/java/io/noties/markwon/image/svg/SvgSupport.java +++ b/markwon-image/src/main/java/io/noties/markwon/image/svg/SvgSupport.java @@ -1,5 +1,9 @@ package io.noties.markwon.image.svg; +import android.util.Log; + +import androidx.annotation.NonNull; + /** * @since 4.0.0 */ @@ -13,8 +17,9 @@ public abstract class SvgSupport { com.caverock.androidsvg.SVG.class.getName(); result = true; } catch (Throwable t) { - // @since 4.1.1-SNAPSHOT do not print stacktrace (it can become noisy) -// t.printStackTrace(); + // @since 4.1.1-SNAPSHOT instead of printing full stacktrace of the exception, + // just print a warning to the console + Log.w("MarkwonImagesPlugin", missingMessage()); result = false; } HAS_SVG = result; @@ -24,6 +29,15 @@ public abstract class SvgSupport { return HAS_SVG; } + /** + * @since 4.1.1-SNAPSHOT + */ + @NonNull + static String missingMessage() { + return "`com.caverock:androidsvg:*` dependency is missing, " + + "please add to your project explicitly if you wish to use SVG media-decoder"; + } + private SvgSupport() { } }