Index: src/org/openstreetmap/josm/gui/widgets/AbstractTextComponentValidator.java
===================================================================
--- src/org/openstreetmap/josm/gui/widgets/AbstractTextComponentValidator.java	(revision 17306)
+++ src/org/openstreetmap/josm/gui/widgets/AbstractTextComponentValidator.java	(working copy)
@@ -13,8 +13,11 @@
 import java.util.Objects;
 
 import javax.swing.BorderFactory;
+import javax.swing.JComboBox;
+import javax.swing.JComponent;
 import javax.swing.UIManager;
 import javax.swing.border.Border;
+import javax.swing.border.LineBorder;
 import javax.swing.event.DocumentEvent;
 import javax.swing.event.DocumentListener;
 import javax.swing.text.JTextComponent;
@@ -95,8 +98,14 @@
     }
 
     private void feedback(Border border, Color background, String tooltip, Status status, String msg) {
-        tc.setBorder(border);
-        tc.setBackground(background);
+        if (UIManager.getLookAndFeel().getID().startsWith("FlatLaf") ) {
+            JComponent c = (tc.getParent() instanceof JComboBox) ? (JComboBox<?>) tc.getParent() : tc;
+            c.putClientProperty("JComponent.outline", (border instanceof LineBorder) ? ((LineBorder)border).getLineColor() : null);
+            c.setBackground(background);
+        } else {
+            tc.setBorder(border);
+            tc.setBackground(background);
+        }
         tc.setToolTipText(tooltip);
         this.status = status;
         this.msg = msg;
