From adb435b405fab8c72b68b17582636589bc85eaa5 Mon Sep 17 00:00:00 2001 From: Atrik Date: Fri, 20 Feb 2026 11:19:04 +0100 Subject: [PATCH] Fix inconsistent chat line spacing Chat lines with different text heights were being positioned incorrectly because each line's position was calculated using its own height rather than the cumulative height of all previous lines. This caused overlapping text and inconsistent vertical spacing when messages had varying font sizes or line counts. Now properly track cumulative height as we iterate through lines to ensure each message appears at the correct vertical position regardless of individual line heights. --- binaries/data/mods/public/gui/session/chat/ChatOverlay.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/binaries/data/mods/public/gui/session/chat/ChatOverlay.js b/binaries/data/mods/public/gui/session/chat/ChatOverlay.js index c5d2dc6814..bd5da2e10a 100644 --- a/binaries/data/mods/public/gui/session/chat/ChatOverlay.js +++ b/binaries/data/mods/public/gui/session/chat/ChatOverlay.js @@ -31,6 +31,8 @@ class ChatOverlay displayChatMessages() { + let currentTop = 0; + for (let i = 0; i < this.chatLinesNumber; ++i) { const chatMessage = this.chatMessages[i]; @@ -40,11 +42,13 @@ class ChatOverlay const newSize = this.chatLines[i].getPreferredTextSize(); this.chatLines[i].size = { - "top": i * newSize.height, - "bottom": (i + 1) * newSize.height, + "top": currentTop, + "bottom": currentTop + newSize.height, "right": newSize.width }; + currentTop += newSize.height; + if (chatMessage.callback) this.chatLines[i].onPress = chatMessage.callback;