diff --git a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTitlePane.java b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTitlePane.java index d79e64f9..38a45cf5 100644 --- a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTitlePane.java +++ b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTitlePane.java @@ -711,9 +711,15 @@ debug*/ return window != null && FlatNativeWindowBorder.hasCustomDecoration( window ); } + // used to invoke updateNativeTitleBarHeightAndHitTestSpots() only once from latest invokeLater() + private int laterCounter; + protected void updateNativeTitleBarHeightAndHitTestSpotsLater() { + laterCounter++; EventQueue.invokeLater( () -> { - updateNativeTitleBarHeightAndHitTestSpots(); + laterCounter--; + if( laterCounter == 0 ) + updateNativeTitleBarHeightAndHitTestSpots(); } ); }