diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/ThumbnailView.java b/app/src/main/java/org/thoughtcrime/securesms/components/ThumbnailView.java index ff1ef15fe..c397938d8 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/ThumbnailView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/ThumbnailView.java @@ -24,7 +24,6 @@ import androidx.appcompat.widget.AppCompatImageView; import com.bumptech.glide.RequestBuilder; import com.bumptech.glide.load.engine.DiskCacheStrategy; -import com.bumptech.glide.load.resource.bitmap.BitmapTransformation; import com.bumptech.glide.request.Request; import com.bumptech.glide.request.RequestListener; import com.bumptech.glide.request.RequestOptions; @@ -69,7 +68,7 @@ public class ThumbnailView extends FrameLayout { private Bitmap imageBitmap; private final ImageView image; - private final ImageView blurhash; + private final ImageView blurHash; private final View playOverlay; private final View captionIcon; private final AppCompatImageView errorImage; @@ -82,6 +81,7 @@ public class ThumbnailView extends FrameLayout { private final CornerMask cornerMask; + @SuppressWarnings("OptionalUsedAsFieldOrParameterType") private Optional transferControls = Optional.empty(); private SlideClickListener thumbnailClickListener = null; private SlidesClickedListener downloadClickListener = null; @@ -102,7 +102,7 @@ public class ThumbnailView extends FrameLayout { inflate(context, R.layout.thumbnail_view, this); this.image = findViewById(R.id.thumbnail_image); - this.blurhash = findViewById(R.id.thumbnail_blurhash); + this.blurHash = findViewById(R.id.thumbnail_blurhash); this.playOverlay = findViewById(R.id.play_overlay); this.captionIcon = findViewById(R.id.thumbnail_caption_icon); this.errorImage = findViewById(R.id.thumbnail_error); @@ -150,6 +150,7 @@ public class ThumbnailView extends FrameLayout { MeasureSpec.makeMeasureSpec(finalHeight, MeasureSpec.EXACTLY)); } + @SuppressWarnings("SpellCheckingInspection") @Override protected void onSizeChanged(int w, int h, int oldw, int oldh) { super.onSizeChanged(w, h, oldw, oldh); @@ -258,9 +259,9 @@ public class ThumbnailView extends FrameLayout { targetDimens[HEIGHT] = (int) measuredHeight; } - private int getNonZeroCount(int[] vals) { + private int getNonZeroCount(int[] values) { int count = 0; - for (int val : vals) { + for (int val : values) { if (val > 0) { count++; } @@ -276,13 +277,13 @@ public class ThumbnailView extends FrameLayout { @Override public void setFocusable(boolean focusable) { super.setFocusable(focusable); - if (transferControls.isPresent()) transferControls.get().setFocusable(focusable); + transferControls.ifPresent(transferControlView -> transferControlView.setFocusable(focusable)); } @Override public void setClickable(boolean clickable) { super.setClickable(clickable); - if (transferControls.isPresent()) transferControls.get().setClickable(clickable); + transferControls.ifPresent(transferControlView -> transferControlView.setClickable(clickable)); } public @Nullable Bitmap getBitmap() { @@ -307,10 +308,10 @@ public class ThumbnailView extends FrameLayout { public void setImageDrawable(@NonNull GlideRequests glideRequests, @Nullable Drawable drawable) { glideRequests.clear(image); - glideRequests.clear(blurhash); + glideRequests.clear(blurHash); image.setImageDrawable(drawable); - blurhash.setImageDrawable(null); + blurHash.setImageDrawable(null); } @UiThread @@ -331,8 +332,8 @@ public class ThumbnailView extends FrameLayout { transferControls.ifPresent(c -> c.setVisibility(View.GONE)); playOverlay.setVisibility(View.GONE); - glideRequests.clear(blurhash); - blurhash.setImageDrawable(null); + glideRequests.clear(blurHash); + blurHash.setImageDrawable(null); glideRequests.clear(image); image.setImageDrawable(null); @@ -386,7 +387,7 @@ public class ThumbnailView extends FrameLayout { + ", progress " + slide.getTransferState() + ", fast preflight id: " + slide.asAttachment().getFastPreflightId()); - BlurHash previousBlurhash = this.slide != null ? this.slide.getPlaceholderBlur() : null; + BlurHash previousBlurHash = this.slide != null ? this.slide.getPlaceholderBlur() : null; this.slide = slide; @@ -400,19 +401,19 @@ public class ThumbnailView extends FrameLayout { SettableFuture result = new SettableFuture<>(); boolean resultHandled = false; - if (slide.hasPlaceholder() && (previousBlurhash == null || !Objects.equals(slide.getPlaceholderBlur(), previousBlurhash))) { - buildPlaceholderGlideRequest(glideRequests, slide).into(new GlideBitmapListeningTarget(blurhash, result)); + if (slide.hasPlaceholder() && (previousBlurHash == null || !Objects.equals(slide.getPlaceholderBlur(), previousBlurHash))) { + buildPlaceholderGlideRequest(glideRequests, slide).into(new GlideBitmapListeningTarget(blurHash, result)); resultHandled = true; } else if (!slide.hasPlaceholder()) { - glideRequests.clear(blurhash); - blurhash.setImageDrawable(null); + glideRequests.clear(blurHash); + blurHash.setImageDrawable(null); } if (slide.getUri() != null) { if (!MediaUtil.isJpegType(slide.getContentType()) && !MediaUtil.isVideoType(slide.getContentType())) { SettableFuture thumbnailFuture = new SettableFuture<>(); thumbnailFuture.deferTo(result); - thumbnailFuture.addListener(new BlurhashClearListener(glideRequests, blurhash)); + thumbnailFuture.addListener(new BlurHashClearListener(glideRequests, blurHash)); } buildThumbnailGlideRequest(glideRequests, slide).into(new BitmapCaptor(image, result)); @@ -466,7 +467,7 @@ public class ThumbnailView extends FrameLayout { } } - blurhash.setImageDrawable(null); + blurHash.setImageDrawable(null); return future; } @@ -476,17 +477,17 @@ public class ThumbnailView extends FrameLayout { if (transferControls.isPresent()) getTransferControls().setVisibility(View.GONE); - GlideRequest request = glideRequests.load(model) - .diskCacheStrategy(DiskCacheStrategy.NONE) - .placeholder(model.getPlaceholder()) - .transition(withCrossFade()); + GlideRequest request = glideRequests.load(model) + .diskCacheStrategy(DiskCacheStrategy.NONE) + .placeholder(model.getPlaceholder()) + .transition(withCrossFade()); if (width > 0 && height > 0) { request = request.override(width, height); } request.into(new BitmapCaptor(image, future)); - blurhash.setImageDrawable(null); + blurHash.setImageDrawable(null); return future; } @@ -507,8 +508,8 @@ public class ThumbnailView extends FrameLayout { getTransferControls().clear(); } - glideRequests.clear(blurhash); - blurhash.setImageDrawable(null); + glideRequests.clear(blurHash); + blurHash.setImageDrawable(null); slide = null; } @@ -530,8 +531,8 @@ public class ThumbnailView extends FrameLayout { invalidate(); } - private GlideRequest buildThumbnailGlideRequest(@NonNull GlideRequests glideRequests, @NonNull Slide slide) { - GlideRequest request = applySizing(glideRequests.load(new DecryptableUri(slide.getUri())) + private GlideRequest buildThumbnailGlideRequest(@NonNull GlideRequests glideRequests, @NonNull Slide slide) { + GlideRequest request = applySizing(glideRequests.load(new DecryptableUri(Objects.requireNonNull(slide.getUri()))) .diskCacheStrategy(DiskCacheStrategy.RESOURCE) .transition(withCrossFade())); @@ -544,7 +545,7 @@ public class ThumbnailView extends FrameLayout { } } - private RequestBuilder buildPlaceholderGlideRequest(@NonNull GlideRequests glideRequests, @NonNull Slide slide) { + private RequestBuilder buildPlaceholderGlideRequest(@NonNull GlideRequests glideRequests, @NonNull Slide slide) { GlideRequest bitmap = glideRequests.asBitmap(); BlurHash placeholderBlur = slide.getPlaceholderBlur(); @@ -557,7 +558,7 @@ public class ThumbnailView extends FrameLayout { return applySizing(bitmap.diskCacheStrategy(DiskCacheStrategy.NONE)); } - private GlideRequest applySizing(@NonNull GlideRequest request) { + private GlideRequest applySizing(@NonNull GlideRequest request) { int[] size = new int[2]; fillTargetDimensions(size, dimens, bounds); if (size[WIDTH] == 0 && size[HEIGHT] == 0) { @@ -614,31 +615,31 @@ public class ThumbnailView extends FrameLayout { if (downloadClickListener != null && slide != null) { downloadClickListener.onClick(view, Collections.singletonList(slide)); } else { - Log.w(TAG, "Received a download button click, but unable to execute it. slide: " + String.valueOf(slide) + " downloadClickListener: " + String.valueOf(downloadClickListener)); + Log.w(TAG, "Received a download button click, but unable to execute it. slide: " + slide + " downloadClickListener: " + downloadClickListener); } } } - private static class BlurhashClearListener implements ListenableFuture.Listener { + private static class BlurHashClearListener implements ListenableFuture.Listener { private final GlideRequests glideRequests; - private final ImageView blurhash; + private final ImageView blurHash; - private BlurhashClearListener(@NonNull GlideRequests glideRequests, @NonNull ImageView blurhash) { + private BlurHashClearListener(@NonNull GlideRequests glideRequests, @NonNull ImageView blurHash) { this.glideRequests = glideRequests; - this.blurhash = blurhash; + this.blurHash = blurHash; } @Override public void onSuccess(Boolean result) { - glideRequests.clear(blurhash); - blurhash.setImageDrawable(null); + glideRequests.clear(blurHash); + blurHash.setImageDrawable(null); } @Override public void onFailure(ExecutionException e) { - glideRequests.clear(blurhash); - blurhash.setImageDrawable(null); + glideRequests.clear(blurHash); + blurHash.setImageDrawable(null); } }