summaryrefslogtreecommitdiff
path: root/indra/newview/llnearbychat.cpp
diff options
context:
space:
mode:
authorAlexanderP ProductEngine <apaschenko@productengine.com>2012-06-27 16:11:04 +0300
committerAlexanderP ProductEngine <apaschenko@productengine.com>2012-06-27 16:11:04 +0300
commit3385a6398951bc94b3dc5da6224e285d85e606ab (patch)
tree6df82be34df2bf61c9ade5a24bba14ba0256a99d /indra/newview/llnearbychat.cpp
parent0eda1f9a4d909870b15c6d7243e47838540598e8 (diff)
CHUI-162 FIXED Opening a nearby chat when text entered
Diffstat (limited to 'indra/newview/llnearbychat.cpp')
-rw-r--r--indra/newview/llnearbychat.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/indra/newview/llnearbychat.cpp b/indra/newview/llnearbychat.cpp
index 369ca699c5..ee7169b1c3 100644
--- a/indra/newview/llnearbychat.cpp
+++ b/indra/newview/llnearbychat.cpp
@@ -131,6 +131,7 @@ LLNearbyChat::LLNearbyChat(const LLSD& key)
mSpeakerMgr(NULL),
mExpandedHeight(COLLAPSED_HEIGHT + EXPANDED_HEIGHT)
{
+ setIsChrome(TRUE);
mKey = LLSD();
mIsNearbyChat = true;
mSpeakerMgr = LLLocalSpeakerMgr::getInstance();
@@ -394,6 +395,26 @@ LLNearbyChat* LLNearbyChat::getInstance()
return LLFloaterReg::getTypedInstance<LLNearbyChat>("chat_bar");
}
+void LLNearbyChat::show()
+{
+ // Get the floater
+ LLNearbyChat* floater = LLNearbyChat::getInstance();
+ if (floater)
+ {
+ if(isChatMultiTab())
+ {
+ LLIMFloaterContainer* floater_container = LLIMFloaterContainer::getInstance();
+
+ // Add a conversation list item in the left pane: nothing will be done if already in there
+ // but relevant clean up will be done to ensure consistency of the conversation list
+ floater_container->addConversationListItem(floater->getTitle(), LLUUID(), floater);
+
+ floater->openFloater(floater->getKey());
+ }
+
+ floater->setVisible(TRUE);
+ }
+}
void LLNearbyChat::showHistory()
{
@@ -773,6 +794,7 @@ void LLNearbyChat::startChat(const char* line)
if (cb )
{
+ cb->show();
cb->setVisible(TRUE);
cb->setFocus(TRUE);
cb->mChatBox->setFocus(TRUE);