From c1a34ca4a49fa686d96987993685f6238e550d02 Mon Sep 17 00:00:00 2001 From: Alexander Lobas Date: Wed, 15 Jan 2025 18:29:12 +0100 Subject: [PATCH] IJPL-175180 Some tool window buttons is grayed out on tool window stripe in Dark theme GitOrigin-RevId: a7ace0e9c2d09dfd92769b969271d96d08f1c2d3 --- platform/core-ui/src/ui/icons/customIconUtil.kt | 4 ++-- .../header/toolbar/HeaderToolbarButtonLook.kt | 3 ++- .../com/intellij/ui/NotificationBalloonActionProvider.java | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/platform/core-ui/src/ui/icons/customIconUtil.kt b/platform/core-ui/src/ui/icons/customIconUtil.kt index 13dda87ba459..796f382b8dae 100644 --- a/platform/core-ui/src/ui/icons/customIconUtil.kt +++ b/platform/core-ui/src/ui/icons/customIconUtil.kt @@ -81,7 +81,7 @@ fun loadIconCustomVersionOrScale(icon: ScalableIcon, size: Int): Icon { } @ApiStatus.Internal -fun loadIconCustomVersionOrScale(icon: CachedImageIcon, size: Int, isDark: Boolean? = null): Icon { +fun loadIconCustomVersionOrScale(icon: CachedImageIcon, size: Int, isDark: Boolean? = null, isDarkForScale: Boolean? = null): Icon { if (icon.iconWidth == JBUIScale.scale(size)) { return if (isDark == null) icon else icon.getDarkIcon(isDark) } @@ -89,5 +89,5 @@ fun loadIconCustomVersionOrScale(icon: CachedImageIcon, size: Int, isDark: Boole loadIconCustomVersion(icon = icon, width = size, height = size, isDark = isDark)?.let { return it } - return icon.scale(scale = (JBUIScale.scale(1.0f) * size) / icon.getRawIconWidth(), isDark = isDark ?: false) + return icon.scale(scale = (JBUIScale.scale(1.0f) * size) / icon.getRawIconWidth(), isDark = isDarkForScale) } \ No newline at end of file diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/customFrameDecorations/header/toolbar/HeaderToolbarButtonLook.kt b/platform/platform-impl/src/com/intellij/openapi/wm/impl/customFrameDecorations/header/toolbar/HeaderToolbarButtonLook.kt index d605491ab5c8..f4d20dfc8abc 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/customFrameDecorations/header/toolbar/HeaderToolbarButtonLook.kt +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/customFrameDecorations/header/toolbar/HeaderToolbarButtonLook.kt @@ -93,7 +93,8 @@ open class HeaderToolbarButtonLook( } if (icon is CachedImageIcon) { - return loadIconCustomVersionOrScale(icon = icon, size = iconSize, isDark = isDarkHeader().takeIf { it }) + val darkHeader = isDarkHeader() + return loadIconCustomVersionOrScale(icon = icon, size = iconSize, isDark = darkHeader.takeIf { it }, isDarkForScale = darkHeader) } return if (icon is ScalableIcon) loadIconCustomVersionOrScale(icon = icon, size = iconSize) else icon diff --git a/platform/platform-impl/src/com/intellij/ui/NotificationBalloonActionProvider.java b/platform/platform-impl/src/com/intellij/ui/NotificationBalloonActionProvider.java index 104a14f35042..7b085fd8b30f 100644 --- a/platform/platform-impl/src/com/intellij/ui/NotificationBalloonActionProvider.java +++ b/platform/platform-impl/src/com/intellij/ui/NotificationBalloonActionProvider.java @@ -170,7 +170,7 @@ public final class NotificationBalloonActionProvider implements BalloonImpl.Acti } } if (ColorUtil.isDark(JBColor.namedColor("MainToolbar.background")) && JBColor.isBright() && icon instanceof CachedImageIcon) { - icon = CustomIconUtilKt.loadIconCustomVersionOrScale((CachedImageIcon)icon, 16, true); + icon = CustomIconUtilKt.loadIconCustomVersionOrScale((CachedImageIcon)icon, 16, true, true); } } return icon;