From e3babadd95706fcba5c9543badd2c3b1ac0e06fc Mon Sep 17 00:00:00 2001 From: Sergey Malenkov Date: Tue, 6 Sep 2016 16:16:10 +0300 Subject: [PATCH] IDEA-97406 switch on scalable effects by default It also fixes an issue with Retina on Mac (see JBHiDPIScaledImage) --- .../src/com/intellij/ui/paint/EffectPainter.java | 9 ++++----- platform/util/resources/misc/registry.properties | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/platform/platform-api/src/com/intellij/ui/paint/EffectPainter.java b/platform/platform-api/src/com/intellij/ui/paint/EffectPainter.java index 5205f80d00ba..03526f7f591c 100644 --- a/platform/platform-api/src/com/intellij/ui/paint/EffectPainter.java +++ b/platform/platform-api/src/com/intellij/ui/paint/EffectPainter.java @@ -265,9 +265,7 @@ public enum EffectPainter implements RegionPainter { Long key = color.getRGB() ^ ((long)height << 32); BufferedImage image = myCache.get(key); if (image == null || UIUtil.isRetina(g) != (image instanceof JBHiDPIScaledImage)) { - int period = getPeriod(height); - image = UIUtil.createImageForGraphics(g, period << 8, height, BufferedImage.TYPE_INT_ARGB); - paintImage(image.createGraphics(), color, image.getWidth(), image.getHeight(), period); + image = createImage(g, color, height); myCache.put(key, image); } return image; @@ -275,8 +273,9 @@ public enum EffectPainter implements RegionPainter { BufferedImage createImage(Graphics2D g, Paint paint, int height) { int period = getPeriod(height); - BufferedImage image = UIUtil.createImageForGraphics(g, period << 1, height, BufferedImage.TYPE_INT_ARGB); - paintImage(image.createGraphics(), paint, image.getWidth(), image.getHeight(), period); + int width = period << (paint instanceof Color ? 8 : 1); + BufferedImage image = UIUtil.createImageForGraphics(g, width, height, BufferedImage.TYPE_INT_ARGB); + paintImage(image.createGraphics(), paint, width, height, period); return image; } diff --git a/platform/util/resources/misc/registry.properties b/platform/util/resources/misc/registry.properties index 5f5fd2b9a6fb..cde75dbae362 100644 --- a/platform/util/resources/misc/registry.properties +++ b/platform/util/resources/misc/registry.properties @@ -780,9 +780,9 @@ cidr.xcode.derived.data.override.description=Ignore Xcode DerivedData location s editor.rainbow.identifiers=false editor.rainbow.identifiers.description=Rainbow identifiers in editor -ide.text.effect.new=false +ide.text.effect.new=true ide.text.effect.new.description=Enables new effect painter for text -ide.text.effect.new.scale=false +ide.text.effect.new.scale=true ide.text.effect.new.scale.description=Enables scalable effect painter for text ide.intellij.laf.win10.ui=false