From fb4fe75e62d5dbdec1b6ac91cd65d278d8d8f6b6 Mon Sep 17 00:00:00 2001 From: David Cernat Date: Sat, 30 Apr 2022 01:54:43 +0300 Subject: [PATCH] [Client] Always set visibility of GUIChat, not its main widget Don't change the windowState when GUIChat is closed. --- apps/openmw/mwmp/GUI/GUIChat.cpp | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/apps/openmw/mwmp/GUI/GUIChat.cpp b/apps/openmw/mwmp/GUI/GUIChat.cpp index 38c3ecd43..9cfa44482 100644 --- a/apps/openmw/mwmp/GUI/GUIChat.cpp +++ b/apps/openmw/mwmp/GUI/GUIChat.cpp @@ -40,7 +40,7 @@ namespace mwmp mHistory->setNeedKeyFocus(false); windowState = CHAT_DISABLED; - mCommandLine->setVisible(0); + mCommandLine->setVisible(false); delay = 3; // 3 sec. } @@ -48,7 +48,7 @@ namespace mwmp { // Give keyboard focus to the combo box whenever the console is // turned on - setEditState(0); + setEditState(false); if (windowState == CHAT_DISABLED) windowState = CHAT_ENABLED; @@ -56,10 +56,7 @@ namespace mwmp void GUIChat::onClose() { - // Apparently, hidden widgets can retain key focus - // Remove for MyGUI 3.2.2 - windowState = CHAT_DISABLED; - setEditState(0); + setEditState(false); } bool GUIChat::exit() @@ -82,7 +79,7 @@ namespace mwmp if (cm.empty()) { mCommandLine->setCaption(""); - setEditState(0); + setEditState(false); return; } @@ -99,7 +96,7 @@ namespace mwmp // It prevents the re-triggering of the acceptCommand() event for the same command // during the actual command execution mCommandLine->setCaption(""); - setEditState(0); + setEditState(false); send (cm); } @@ -175,14 +172,14 @@ namespace mwmp switch (windowState) { case CHAT_DISABLED: - this->mMainWidget->setVisible(false); - setEditState(0); + setVisible(false); + setEditState(false); break; case CHAT_ENABLED: - this->mMainWidget->setVisible(true); + setVisible(true); break; default: //CHAT_HIDDENMODE - this->mMainWidget->setVisible(true); + setVisible(true); curTime = 0; } } @@ -252,7 +249,7 @@ namespace mwmp if (curTime >= delay) { setEditState(false); - this->mMainWidget->setVisible(false); + setVisible(false); } } }