@@ -131,18 +131,16 @@ public void bindHolder(@NonNull Markwon markwon, @NonNull Holder holder, @NonNul
131131
132132 RequestBuilder <Drawable > imageRequestBuilder ;
133133 if (dataSavingMode ) {
134- if (disableImagePreview || (node .mediaMetadata .isGIF && !canShowGif ) || (!node .mediaMetadata .isGIF && !canShowImage )) {
135- holder .binding .imageWrapperRelativeLayoutMarkdownImageAndGifBlock .setVisibility (View .GONE );
136- holder .binding .captionTextViewMarkdownImageAndGifBlock .setVisibility (View .VISIBLE );
137- holder .binding .captionTextViewMarkdownImageAndGifBlock .setGravity (Gravity .NO_GRAVITY );
138- SpannableString spannableString = new SpannableString (node .mediaMetadata .caption == null ? node .mediaMetadata .original .url : node .mediaMetadata .caption );
139- spannableString .setSpan (new URLSpan (node .mediaMetadata .original .url ), 0 , spannableString .length (), Spanned .SPAN_EXCLUSIVE_EXCLUSIVE );
140- holder .binding .captionTextViewMarkdownImageAndGifBlock .setText (spannableString );
134+ if (disableImagePreview ) {
135+ showImageAsUrl (holder , node );
141136 return ;
142137 } else {
143138 imageRequestBuilder = glide .load (node .mediaMetadata .downscaled .url ).listener (holder .requestListener );
144139 holder .binding .imageViewMarkdownImageAndGifBlock .setRatio ((float ) node .mediaMetadata .downscaled .y / node .mediaMetadata .downscaled .x );
145140 }
141+ } else if ((node .mediaMetadata .isGIF && !canShowGif ) || (!node .mediaMetadata .isGIF && !canShowImage )) {
142+ showImageAsUrl (holder , node );
143+ return ;
146144 } else {
147145 imageRequestBuilder = glide .load (node .mediaMetadata .original .url ).listener (holder .requestListener );
148146 holder .binding .imageViewMarkdownImageAndGifBlock .setRatio ((float ) node .mediaMetadata .original .y / node .mediaMetadata .original .x );
@@ -171,6 +169,15 @@ public void bindHolder(@NonNull Markwon markwon, @NonNull Holder holder, @NonNul
171169 }
172170 }
173171
172+ private void showImageAsUrl (@ NonNull Holder holder , @ NonNull ImageAndGifBlock node ) {
173+ holder .binding .imageWrapperRelativeLayoutMarkdownImageAndGifBlock .setVisibility (View .GONE );
174+ holder .binding .captionTextViewMarkdownImageAndGifBlock .setVisibility (View .VISIBLE );
175+ holder .binding .captionTextViewMarkdownImageAndGifBlock .setGravity (Gravity .NO_GRAVITY );
176+ SpannableString spannableString = new SpannableString (node .mediaMetadata .caption == null ? node .mediaMetadata .original .url : node .mediaMetadata .caption );
177+ spannableString .setSpan (new URLSpan (node .mediaMetadata .original .url ), 0 , spannableString .length (), Spanned .SPAN_EXCLUSIVE_EXCLUSIVE );
178+ holder .binding .captionTextViewMarkdownImageAndGifBlock .setText (spannableString );
179+ }
180+
174181 @ Override
175182 public void onViewRecycled (@ NonNull Holder holder ) {
176183 super .onViewRecycled (holder );
0 commit comments