From ec2fccbb0e53ab5d1535d79568721885b9e50be2 Mon Sep 17 00:00:00 2001 From: Karl Tauber Date: Fri, 16 Apr 2021 23:25:22 +0200 Subject: [PATCH] FlatSVGIcon: if icon has color filter and did change the color, then do not apply global color filter --- .../java/com/formdev/flatlaf/extras/FlatSVGIcon.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/flatlaf-extras/src/main/java/com/formdev/flatlaf/extras/FlatSVGIcon.java b/flatlaf-extras/src/main/java/com/formdev/flatlaf/extras/FlatSVGIcon.java index 9b17d130..e6d1559c 100644 --- a/flatlaf-extras/src/main/java/com/formdev/flatlaf/extras/FlatSVGIcon.java +++ b/flatlaf-extras/src/main/java/com/formdev/flatlaf/extras/FlatSVGIcon.java @@ -702,10 +702,14 @@ public class FlatSVGIcon } private Color filterColor( Color color ) { - if( colorFilter != null ) - color = colorFilter.filter( color ); - if( globalColorFilter != null ) + if( colorFilter != null ) { + Color newColor = colorFilter.filter( color ); + color = (newColor != color) + ? newColor + : globalColorFilter.filter( color ); + } else color = globalColorFilter.filter( color ); + if( grayFilter != null ) { int oldRGB = color.getRGB(); int newRGB = grayFilter.filterRGB( 0, 0, oldRGB );