From d52f1643069fc6aa05e8c2c17f00b48270ab628e Mon Sep 17 00:00:00 2001 From: Anton Tarasov Date: Fri, 10 Feb 2017 17:54:47 +0300 Subject: [PATCH] Set "needRetinaImage" criteria --- platform/util/src/com/intellij/openapi/util/IconLoader.java | 2 +- platform/util/src/com/intellij/util/ImageLoader.java | 4 ++-- platform/util/src/com/intellij/util/ui/ImageUtil.java | 4 ++++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/platform/util/src/com/intellij/openapi/util/IconLoader.java b/platform/util/src/com/intellij/openapi/util/IconLoader.java index b2fdc0d54d58..c29b57bd42eb 100644 --- a/platform/util/src/com/intellij/openapi/util/IconLoader.java +++ b/platform/util/src/com/intellij/openapi/util/IconLoader.java @@ -524,7 +524,7 @@ public final class IconLoader { * Retrieves the orig image based on the pixScale. */ private Image getOrLoadOrigImage(float pixScale, boolean allowFloatScaling) { - boolean needRetinaImage = (pixScale > 1.0f); + boolean needRetinaImage = ImageUtil.needRetinaImage(pixScale); Image image = SoftReference.dereference(origImagesCache.get(needRetinaImage)); if (image != null) return image; diff --git a/platform/util/src/com/intellij/util/ImageLoader.java b/platform/util/src/com/intellij/util/ImageLoader.java index 11b1d3ca921b..83cf0db0a1dd 100644 --- a/platform/util/src/com/intellij/util/ImageLoader.java +++ b/platform/util/src/com/intellij/util/ImageLoader.java @@ -314,7 +314,7 @@ public class ImageLoader implements Serializable { } private static float adjustScaleFactor(boolean allowFloatScaling, float scale) { - return allowFloatScaling ? scale : scale > 1.5f ? 2f : 1f; + return allowFloatScaling ? scale : ImageUtil.needRetinaImage(scale) ? 2f : 1f; } @NotNull @@ -362,7 +362,7 @@ public class ImageLoader implements Serializable { @Nullable public static Image loadFromResource(@NonNls @NotNull String path, @NotNull Class aClass) { - return ImageDescList.create(path, aClass, UIUtil.isUnderDarcula(), JBUI.pixScale() >= 1.5f, true). + return ImageDescList.create(path, aClass, UIUtil.isUnderDarcula(), ImageUtil.needRetinaImage(JBUI.pixScale()), true). load(ImageConverterChain.create().withRetina()); } diff --git a/platform/util/src/com/intellij/util/ui/ImageUtil.java b/platform/util/src/com/intellij/util/ui/ImageUtil.java index cc2a2b10b01f..8d84977784f3 100644 --- a/platform/util/src/com/intellij/util/ui/ImageUtil.java +++ b/platform/util/src/com/intellij/util/ui/ImageUtil.java @@ -111,4 +111,8 @@ public class ImageUtil { public static Image scaleImage(Image image, float scale) { return ImageLoader.scaleImage(image, scale); } + + public static boolean needRetinaImage(float scale) { + return scale > 1.5f; + } }