From d39810df7d429b87be565fc569b3972dfd8513b1 Mon Sep 17 00:00:00 2001 From: elexis Date: Sun, 29 Nov 2015 00:51:00 +0000 Subject: [PATCH] Closes the chat window after disconnect and prevents opening it again. Fixes #3420. This was SVN commit r17315. --- binaries/data/mods/public/gui/session/menu.js | 12 ++++++++++++ binaries/data/mods/public/gui/session/messages.js | 1 + 2 files changed, 13 insertions(+) diff --git a/binaries/data/mods/public/gui/session/menu.js b/binaries/data/mods/public/gui/session/menu.js index aeed9704fa..5d78b08144 100644 --- a/binaries/data/mods/public/gui/session/menu.js +++ b/binaries/data/mods/public/gui/session/menu.js @@ -209,6 +209,12 @@ function openOptions() function openChat() { + if (g_Disconnected) + { + closeChat(); + return; + } + updateTeamCheckbox(false); Engine.GetGUIObjectByName("chatInput").focus(); // Grant focus to the input area @@ -232,6 +238,12 @@ function updateTeamCheckbox(check) function toggleChatWindow(teamChat) { + if (g_Disconnected) + { + closeChat(); + return; + } + var chatWindow = Engine.GetGUIObjectByName("chatDialogPanel"); var chatInput = Engine.GetGUIObjectByName("chatInput"); diff --git a/binaries/data/mods/public/gui/session/messages.js b/binaries/data/mods/public/gui/session/messages.js index 289e8ffdfa..34a5b52279 100644 --- a/binaries/data/mods/public/gui/session/messages.js +++ b/binaries/data/mods/public/gui/session/messages.js @@ -269,6 +269,7 @@ function handleNetMessage(message) break; case "disconnected": g_Disconnected = true; + closeChat(); // Translation: States the reason why the client disconnected from the server. let reason = sprintf(translate("Reason: %(reason)s."), { "reason": getDisconnectReason(message.reason) }); obj.caption = translate("Connection to the server has been lost.") + "\n" + reason + "\n" + translate("The game has ended.");