From 9e4940228d4e785a0fd6f5cebca1f3833e53bc1b Mon Sep 17 00:00:00 2001 From: Niklas Date: Wed, 23 Dec 2020 09:26:30 +0100 Subject: [PATCH] TextField now honours right component inset If the placeholder can't be drawn fully, we clip it by adding an ellipse. --- .../main/java/com/formdev/flatlaf/ui/FlatTextFieldUI.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTextFieldUI.java b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTextFieldUI.java index ae66cd30..572a0298 100644 --- a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTextFieldUI.java +++ b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTextFieldUI.java @@ -39,6 +39,7 @@ import javax.swing.text.Caret; import javax.swing.text.JTextComponent; import com.formdev.flatlaf.FlatClientProperties; import com.formdev.flatlaf.util.HiDPIUtils; +import com.formdev.flatlaf.util.JavaCompatibility; /** * Provides the Flat LaF UI delegate for {@link javax.swing.JTextField}. @@ -213,7 +214,9 @@ public class FlatTextFieldUI // paint placeholder g.setColor( placeholderForeground ); - FlatUIUtils.drawString( c, g, (String) placeholder, x, y ); + String clippedPlaceholder = JavaCompatibility.getClippedString( jc, fm, + (String) placeholder, c.getWidth() - insets.left - insets.right ); + FlatUIUtils.drawString( c, g, clippedPlaceholder, x, y ); } @Override