From 69f07babe1662ae4c915a0db2426998c0f255883 Mon Sep 17 00:00:00 2001 From: extio-de Date: Tue, 24 Feb 2026 21:52:48 +0100 Subject: [PATCH] feat(renderer): add delay in caption update to ensure correct timing for UiControlEvent --- .../g2d/control/impl/G2DMultiLineTextAreaControlImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/de/extio/game_engine/renderer/g2d/control/impl/G2DMultiLineTextAreaControlImpl.java b/src/main/java/de/extio/game_engine/renderer/g2d/control/impl/G2DMultiLineTextAreaControlImpl.java index 80d3a21..2268b1a 100644 --- a/src/main/java/de/extio/game_engine/renderer/g2d/control/impl/G2DMultiLineTextAreaControlImpl.java +++ b/src/main/java/de/extio/game_engine/renderer/g2d/control/impl/G2DMultiLineTextAreaControlImpl.java @@ -71,6 +71,11 @@ public class G2DMultiLineTextAreaControlImpl extends G2DBaseControlImpl implemen this.textArea = new CustomMultiLineTextArea(this.rendererData.getThemeManager(), text -> { this.lastText = text; this.lastCaptionUpdateTimeInternal = System.currentTimeMillis(); + try { + Thread.sleep(2); // Ensure that the next caption update time (e.g. reacting on UiControlEvent) is always after the last caption update time internal to trigger the caption update in the render method + } + catch (final InterruptedException e) { + } this.rendererData.getEventService().fire(new UiControlEvent(this.id, text)); });