diff options
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llfloaterimsessiontab.cpp | 17 | ||||
-rw-r--r-- | indra/newview/llfloaterimsessiontab.h | 2 |
2 files changed, 18 insertions, 1 deletions
diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index 01b30305c4..d6955f37f2 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -177,6 +177,7 @@ void LLFloaterIMSessionTab::addToHost(const LLUUID& session_id) // LLFloater::mLastHostHandle = floater_container (a "future" host) conversp->setHost(floater_container); conversp->setHost(NULL); + conversp->forceReshape(); } // Added floaters share some state (like sort order) with their host conversp->setSortOrder(floater_container->getSortOrder()); @@ -226,7 +227,8 @@ BOOL LLFloaterIMSessionTab::postBuild() setOpenPositioning(LLFloaterEnums::POSITIONING_RELATIVE); - mSaveRect = isTornOff(); + mSaveRect = isNearbyChat() + && !gSavedSettings.getBOOL("NearbyChatIsNotTornOff"); initRectControl(); if (isChatMultiTab()) @@ -651,6 +653,15 @@ void LLFloaterIMSessionTab::updateHeaderAndToolbar() showTranslationCheckbox(); } + +void LLFloaterIMSessionTab::forceReshape() +{ + LLRect floater_rect = getRect(); + reshape(llmax(floater_rect.getWidth(), this->getMinWidth()), + llmax(floater_rect.getHeight(), this->getMinHeight()), + true); +} + void LLFloaterIMSessionTab::reshapeChatHistory() { @@ -757,6 +768,10 @@ void LLFloaterIMSessionTab::onTearOffClicked() mSaveRect = isTornOff(); initRectControl(); LLFloater::onClickTearOff(this); + if (isTornOff()) + { + forceReshape(); + } refreshConversation(); updateGearBtn(); } diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index b05708059a..a452c77224 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -97,6 +97,8 @@ public: virtual void updateMessages() {} LLConversationItem* getCurSelectedViewModelItem(); + void forceReshape(); + protected: // callback for click on any items of the visual states menu |