From 93b5f0081dd7b379e5d88da85b0779cdee0256c9 Mon Sep 17 00:00:00 2001 From: Karl Tauber Date: Mon, 15 Nov 2021 00:24:56 +0100 Subject: [PATCH] Window decorations: reduced number of FlatTitlePane.updateNativeTitleBarHeightAndHitTestSpots() invokations --- .../main/java/com/formdev/flatlaf/ui/FlatTitlePane.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) 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(); } ); }