From dcb4c0938720f0040834d427241c7ffcc7d9041b Mon Sep 17 00:00:00 2001 From: Dar Date: Fri, 21 Mar 2025 09:12:24 +0100 Subject: [PATCH] fix: extended support for getBorderArc method Fixes `FlatUIUtils.getBorderArc()` returning `0` for `FlatLineBorder`, causing background overflow outside rounded corners when a background color is set. --- .../main/java/com/formdev/flatlaf/ui/FlatUIUtils.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) 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 706e4546..e3060dc8 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 @@ -461,9 +461,13 @@ public class FlatUIUtils * Returns the scaled arc diameter of the border for the given component. */ public static float getBorderArc( JComponent c ) { - FlatBorder border = getOutsideFlatBorder( c ); - return (border != null) - ? UIScale.scale( (float) border.getArc( c ) ) + Border border = c.getBorder(); + if( border instanceof FlatLineBorder ) + return UIScale.scale( ((FlatLineBorder)border).getArc() ); + + FlatBorder outsideBorder = getOutsideFlatBorder( c ); + return (outsideBorder != null) + ? UIScale.scale( (float) outsideBorder.getArc( c ) ) : 0; }