From 6e80288d30f0fce8254871dd5cd99570bc670768 Mon Sep 17 00:00:00 2001 From: elexis Date: Mon, 14 Dec 2015 03:12:26 +0000 Subject: [PATCH] Add a chat-command to clear all messages. Works for lobby, gamesetup and session. Patch by ruiRanger, fixes #3396. This was SVN commit r17465. --- binaries/data/mods/public/gui/common/functions_utility.js | 6 ++++++ binaries/data/mods/public/gui/common/network.js | 4 ++++ binaries/data/mods/public/gui/lobby/lobby.js | 3 +++ 3 files changed, 13 insertions(+) diff --git a/binaries/data/mods/public/gui/common/functions_utility.js b/binaries/data/mods/public/gui/common/functions_utility.js index 897fd7a043..6d804f3056 100644 --- a/binaries/data/mods/public/gui/common/functions_utility.js +++ b/binaries/data/mods/public/gui/common/functions_utility.js @@ -230,3 +230,9 @@ function autoCompleteNick(guiName, playerList) input.caption = newText + text.substring(bufferPosition); input.buffer_position = bufferPosition + (newText.length - textTillBufferPosition.length); } + +function clearChatMessages() +{ + g_ChatMessages.length = 0; + Engine.GetGUIObjectByName("chatText").caption = ""; +} diff --git a/binaries/data/mods/public/gui/common/network.js b/binaries/data/mods/public/gui/common/network.js index 68d92e8da7..e5918e6d84 100644 --- a/binaries/data/mods/public/gui/common/network.js +++ b/binaries/data/mods/public/gui/common/network.js @@ -84,6 +84,10 @@ function executeNetworkCommand(input) if (!Engine.KickPlayer(argument, true)) addChatMessage({ "type": "system", "text": sprintf(translate("Could not ban %(name)s."), { "name": argument }) }); return true; + + case "/clear": + clearChatMessages(); + return true; } return false; } diff --git a/binaries/data/mods/public/gui/lobby/lobby.js b/binaries/data/mods/public/gui/lobby/lobby.js index cf6922b0bd..d857f94926 100644 --- a/binaries/data/mods/public/gui/lobby/lobby.js +++ b/binaries/data/mods/public/gui/lobby/lobby.js @@ -688,6 +688,9 @@ function handleSpecialCommand(text) case "quit": returnToMainMenu(); break; + case "clear": + clearChatMessages(); + break; case "say": case "me": return false;