diff --git a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatBorder.java b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatBorder.java index 3e182388..df8802ff 100644 --- a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatBorder.java +++ b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatBorder.java @@ -97,9 +97,11 @@ public class FlatBorder ? (outlineColor != null ? innerOutlineWidth : getInnerFocusWidth( c )) : 0; - g2.setColor( (outlineColor != null) ? outlineColor : getFocusColor( c ) ); - FlatUIUtils.paintComponentOuterBorder( g2, x, y, width, height, - focusWidth, borderWidth + scale( innerWidth ), arc ); + if( focusWidth > 0 || innerWidth > 0 ) { + g2.setColor( (outlineColor != null) ? outlineColor : getFocusColor( c ) ); + FlatUIUtils.paintComponentOuterBorder( g2, x, y, width, height, + focusWidth, borderWidth + scale( innerWidth ), arc ); + } } // paint border diff --git a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatUIUtils.java b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatUIUtils.java index 1f49eb93..4030d43a 100644 --- a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatUIUtils.java +++ b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatUIUtils.java @@ -345,7 +345,7 @@ public class FlatUIUtils float innerArc = arc - (lineWidth * 2); // reduce outer arc slightly for small arcs to make the curve slightly wider - if( arc > 0 && arc < UIScale.scale( 10 ) ) + if( focusWidth > 0 && arc > 0 && arc < UIScale.scale( 10 ) ) outerArc -= UIScale.scale( 2f ); Path2D path = new Path2D.Float( Path2D.WIND_EVEN_ODD );