From c1b3170eb144c19016cb8ebe4b8727d48e0a1102 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Tue, 29 Sep 2015 13:48:45 +0300 Subject: [PATCH] Mac UI: change icon in Option Button if button is disabled --- .../src/com/intellij/ui/components/JBOptionButton.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/platform/platform-api/src/com/intellij/ui/components/JBOptionButton.java b/platform/platform-api/src/com/intellij/ui/components/JBOptionButton.java index a1f08c6221cb..02796df6d1b0 100644 --- a/platform/platform-api/src/com/intellij/ui/components/JBOptionButton.java +++ b/platform/platform-api/src/com/intellij/ui/components/JBOptionButton.java @@ -17,6 +17,7 @@ package com.intellij.ui.components; import com.intellij.icons.AllIcons; import com.intellij.openapi.Disposable; +import com.intellij.openapi.ui.GraphicsConfig; import com.intellij.openapi.ui.JBMenuItem; import com.intellij.openapi.ui.JBPopupMenu; import com.intellij.openapi.util.Disposer; @@ -26,6 +27,7 @@ import com.intellij.openapi.util.Weighted; import com.intellij.openapi.wm.IdeGlassPane; import com.intellij.openapi.wm.IdeGlassPaneUtil; import com.intellij.ui.ScreenUtil; +import com.intellij.util.ui.GraphicsUtil; import com.intellij.util.ui.JBInsets; import com.intellij.util.ui.JBUI; import com.intellij.util.ui.UIUtil; @@ -362,10 +364,12 @@ public class JBOptionButton extends JButton implements MouseMotionListener, Weig protected void paintChildren(Graphics g) { super.paintChildren(g); if (SystemInfo.isMac && UIUtil.isUnderIntelliJLaF()) { - int x = getWidth() - getInsets().right - 8; + int x = getWidth() - getInsets().right - 10; Icon icon = AllIcons.Mac.YosemiteOptionButtonSelector; int y = (getHeight() - icon.getIconHeight()) / 2; + GraphicsConfig config = isEnabled() ? new GraphicsConfig(g) : GraphicsUtil.paintWithAlpha(g, 0.6f); icon.paintIcon(this, g, x, y); + config.restore(); return; }