From f8f1252d32824d99e6f51fd1ea9789c1097f44de Mon Sep 17 00:00:00 2001 From: Alexei Arabadji Date: Tue, 15 Dec 2009 09:55:00 +0200 Subject: =?UTF-8?q?mplemented=20EXT-3396=20=E2=80=9CAll=20bottom=20bar=20b?= =?UTF-8?q?uttons,=20including=20chiclets=20and=20nearby=20chat,=20should?= =?UTF-8?q?=20work=20as=20toggles=E2=80=9D,=20made=20hide/unhide=20dockabl?= =?UTF-8?q?e=20floaters=20when=20undocked;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --HG-- branch : product-engine --- indra/llui/lldockablefloater.cpp | 11 +++++++++-- indra/newview/llimfloater.cpp | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/indra/llui/lldockablefloater.cpp b/indra/llui/lldockablefloater.cpp index 9c69e4f2b6..63faf44f9d 100644 --- a/indra/llui/lldockablefloater.cpp +++ b/indra/llui/lldockablefloater.cpp @@ -98,8 +98,15 @@ void LLDockableFloater::toggleInstance(const LLSD& sdname) else if (instance != NULL) { instance->setMinimized(FALSE); - instance->setVisible(TRUE); - gFloaterView->bringToFront(instance); + if (instance->getVisible()) + { + instance->setVisible(FALSE); + } + else + { + instance->setVisible(TRUE); + gFloaterView->bringToFront(instance); + } } } diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp index 22d5b47ae4..7dc21e6e23 100644 --- a/indra/newview/llimfloater.cpp +++ b/indra/newview/llimfloater.cpp @@ -469,7 +469,7 @@ bool LLIMFloater::toggle(const LLUUID& session_id) if(!isChatMultiTab()) { LLIMFloater* floater = LLFloaterReg::findTypedInstance("impanel", session_id); - if (floater && floater->getVisible() && floater->isDocked()) + if (floater && floater->getVisible()) { // clicking on chiclet to close floater just hides it to maintain existing // scroll/text entry state -- cgit v1.2.3