From f135503a9ed99f5e9b009a6608a9c4bc21c5e8cf Mon Sep 17 00:00:00 2001 From: Gilbert Gonzales Date: Tue, 5 Mar 2013 13:41:30 -0800 Subject: CHUI-829 (Allow Conversations floater to display a different chat than the torn off and selected window): Now when selecting a torn off conversation this will not select the conversation line item. --- indra/newview/llfloaterimsessiontab.cpp | 7 ------- 1 file changed, 7 deletions(-) (limited to 'indra/newview/llfloaterimsessiontab.cpp') diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index d3fcfbbc56..de1b398131 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -324,13 +324,6 @@ void LLFloaterIMSessionTab::onFocusReceived() } LLTransientDockableFloater::onFocusReceived(); - - LLFloaterIMContainer* container = LLFloaterReg::findTypedInstance("im_container"); - if (container) - { - container->selectConversationPair(mSessionID, true); - container->showStub(! getHost()); - } } void LLFloaterIMSessionTab::onFocusLost() -- cgit v1.2.3 From d73ca40667527a1fdaf29ac3629ec7ce8a7e0f40 Mon Sep 17 00:00:00 2001 From: Gilbert Gonzales Date: Wed, 6 Mar 2013 17:43:10 -0800 Subject: CHUI-834 (Conversation selection in conversation list does not update when redocking torn off conversations): Now when click to dock a torn off floater, the correct conversation line item will be selected. --- indra/newview/llfloaterimsessiontab.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'indra/newview/llfloaterimsessiontab.cpp') diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index de1b398131..164625fc95 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -798,6 +798,12 @@ void LLFloaterIMSessionTab::onTearOffClicked() { forceReshape(); } + //Upon re-docking the torn off floater, select the corresponding conversation line item + else + { + LLFloaterIMContainer* container = LLFloaterReg::findTypedInstance("im_container"); + container->selectConversation(mSessionID); + } refreshConversation(); updateGearBtn(); } -- cgit v1.2.3 From 014376b49a1e6bf41fa8b0f1b36c0c02fca3096e Mon Sep 17 00:00:00 2001 From: Gilbert Gonzales Date: Thu, 7 Mar 2013 16:26:37 -0800 Subject: CHUI-832 (Different conversation than is selected shown in message panel after tearing off conversation): Now when a conversation is torn off an adjacent conversation is selected (but not focused). --- indra/newview/llfloaterimsessiontab.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'indra/newview/llfloaterimsessiontab.cpp') diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index 164625fc95..faeb860712 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -794,14 +794,16 @@ void LLFloaterIMSessionTab::onTearOffClicked() mSaveRect = isTornOff(); initRectControl(); LLFloater::onClickTearOff(this); + LLFloaterIMContainer* container = LLFloaterReg::findTypedInstance("im_container"); + if (isTornOff()) { + container->selectAdjacentConversation(false); forceReshape(); } //Upon re-docking the torn off floater, select the corresponding conversation line item else { - LLFloaterIMContainer* container = LLFloaterReg::findTypedInstance("im_container"); container->selectConversation(mSessionID); } refreshConversation(); -- cgit v1.2.3 From cb6574c905806feac3846733ca0ead77e431beb1 Mon Sep 17 00:00:00 2001 From: Merov Linden Date: Tue, 12 Mar 2013 19:38:01 -0700 Subject: CHUI-845 : Avoid some xml param parsing error that seems to be linked with crashers --- indra/newview/llfloaterimsessiontab.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llfloaterimsessiontab.cpp') diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index faeb860712..85b25afe43 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -253,6 +253,7 @@ BOOL LLFloaterIMSessionTab::postBuild() p.root = NULL; p.use_ellipses = true; p.options_menu = "menu_conversation.xml"; + p.name = "root"; mConversationsRoot = LLUICtrlFactory::create(p); mConversationsRoot->setCallbackRegistrar(&mCommitCallbackRegistrar); // Attach that root to the scroller -- cgit v1.2.3 From 212e21f3526d7d979a0950cc3c8c7ddaceef6cdc Mon Sep 17 00:00:00 2001 From: AlexanderP ProductEngine Date: Tue, 12 Mar 2013 15:43:07 +0200 Subject: CHUI-847 Fixed [CHUIBUG]Collapse Participant List, operates on all torn off chats: make flag mIsPartListExpanded for saving of the participant list panel expand/collapse state --- indra/newview/llfloaterimsessiontab.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'indra/newview/llfloaterimsessiontab.cpp') diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index 85b25afe43..5fc7f46ca3 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -61,6 +61,7 @@ LLFloaterIMSessionTab::LLFloaterIMSessionTab(const LLSD& session_id) , mRefreshTimer(new LLTimer()) , mIsHostAttached(false) , mHasVisibleBeenInitialized(false) + , mIsParticipantListExpanded(true) { setAutoFocus(FALSE); mSession = LLIMModel::getInstance()->findIMSession(mSessionID); @@ -180,6 +181,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 @@ -269,6 +271,12 @@ BOOL LLFloaterIMSessionTab::postBuild() mRefreshTimer->setTimerExpirySec(0); mRefreshTimer->start(); initBtns(); + + if (mIsParticipantListExpanded != gSavedSettings.getBOOL("IMShowControlPanel")) + { + LLFloaterIMSessionTab::onSlide(this); + } + return result; } @@ -638,7 +646,7 @@ void LLFloaterIMSessionTab::updateHeaderAndToolbar() // Participant list should be visible only in torn off floaters. bool is_participant_list_visible = !is_not_torn_off - && gSavedSettings.getBOOL("IMShowControlPanel") + && mIsParticipantListExpanded && !mIsP2PChat; mParticipantListPanel->setVisible(is_participant_list_visible); @@ -769,9 +777,8 @@ void LLFloaterIMSessionTab::onSlide(LLFloaterIMSessionTab* self) // Expand/collapse the IM control panel self->mParticipantListPanel->setVisible(expand); - - gSavedSettings.setBOOL("IMShowControlPanel", expand); - + gSavedSettings.setBOOL("IMShowControlPanel", expand); + self->mIsParticipantListExpanded = expand; self->mExpandCollapseBtn->setImageOverlay(self->getString(expand ? "collapse_icon" : "expand_icon")); } } -- cgit v1.2.3 From 7e26f6a59e043fd22296452755d532e2a37b0399 Mon Sep 17 00:00:00 2001 From: AlexanderP ProductEngine Date: Wed, 13 Mar 2013 19:34:41 +0200 Subject: build fix --- indra/newview/llfloaterimsessiontab.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llfloaterimsessiontab.cpp') diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index 5fc7f46ca3..9fd22b1537 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -272,7 +272,7 @@ BOOL LLFloaterIMSessionTab::postBuild() mRefreshTimer->start(); initBtns(); - if (mIsParticipantListExpanded != gSavedSettings.getBOOL("IMShowControlPanel")) + if (mIsParticipantListExpanded != (bool)gSavedSettings.getBOOL("IMShowControlPanel")) { LLFloaterIMSessionTab::onSlide(this); } -- cgit v1.2.3