diff options
| -rw-r--r-- | indra/newview/llimconversation.cpp | 4 | ||||
| -rw-r--r-- | indra/newview/llimconversation.h | 2 | ||||
| -rw-r--r-- | indra/newview/llimfloater.cpp | 3 | ||||
| -rw-r--r-- | indra/newview/llimfloatercontainer.cpp | 10 | 
4 files changed, 11 insertions, 8 deletions
diff --git a/indra/newview/llimconversation.cpp b/indra/newview/llimconversation.cpp index cc5adfc2e8..ad34acd941 100644 --- a/indra/newview/llimconversation.cpp +++ b/indra/newview/llimconversation.cpp @@ -174,7 +174,7 @@ BOOL LLIMConversation::postBuild()  	setOpenPositioning(LLFloaterEnums::POSITIONING_RELATIVE); -	buildParticipantList(); +	buildConversationViewParticipant();  	updateHeaderAndToolbar(); @@ -307,7 +307,7 @@ void LLIMConversation::appendMessage(const LLChat& chat, const LLSD &args)  } -void LLIMConversation::buildParticipantList() +void LLIMConversation::buildConversationViewParticipant()  {  	// Get the model list  	LLParticipantList* item = getParticipantList(); diff --git a/indra/newview/llimconversation.h b/indra/newview/llimconversation.h index a2e56bb2ef..4e66d000e6 100644 --- a/indra/newview/llimconversation.h +++ b/indra/newview/llimconversation.h @@ -77,6 +77,7 @@ public:  	void removeConversationViewParticipant(const LLUUID& participant_id);  	void updateConversationViewParticipant(const LLUUID& participant_id);  	void refreshConversation(); +	void buildConversationViewParticipant();  protected: @@ -95,7 +96,6 @@ protected:  	// refresh a visual state of the Call button  	void updateCallBtnState(bool callIsActive); -	void buildParticipantList();  	void onSortMenuItemClicked(const LLSD& userdata);  	void hideOrShowTitle(); // toggle the floater's drag handle diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp index 8fbf691897..560b3fa60a 100644 --- a/indra/newview/llimfloater.cpp +++ b/indra/newview/llimfloater.cpp @@ -825,8 +825,7 @@ void LLIMFloater::sessionInitReplyReceived(const LLUUID& im_session_id)  	if (mSessionID != im_session_id)  	{  		initIMSession(im_session_id); - -		buildParticipantList(); +		buildConversationViewParticipant();  	}  	initIMFloater(); diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index 7159b13c8c..89dfd2e149 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -429,7 +429,7 @@ bool LLIMFloaterContainer::onConversationModelEvent(const LLSD& event)  		return false;  	}  	LLConversationViewParticipant* participant_view = session_view->findParticipant(participant_id); -    LLIMFloater *conversation_floater = LLIMFloater::findInstance(session_id); +    LLIMConversation *conversation_floater = (session_id.isNull() ? (LLIMConversation*)(LLFloaterReg::findTypedInstance<LLNearbyChat>("nearby_chat")) : (LLIMConversation*)(LLIMFloater::findInstance(session_id)));  	if (type == "remove_participant")  	{ @@ -830,7 +830,6 @@ void LLIMFloaterContainer::getParticipantUUIDs(uuid_vec_t& selected_uuids)      //When a one-on-one conversation exists, retrieve the participant id from the conversation floater      else if(conversationItem->getType() == LLConversationItem::CONV_SESSION_1_ON_1)      { -		llinfos << "Merov debug : getParticipantUUIDs, LLIMFloater::findInstance, id = " << conversationItem->getUUID() << llendl;          LLIMFloater *conversationFloater = LLIMFloater::findInstance(conversationItem->getUUID());          LLUUID participantID = conversationFloater->getOtherParticipantUUID();          selected_uuids.push_back(participantID); @@ -906,7 +905,6 @@ void LLIMFloaterContainer::doToSelectedConversation(const std::string& command,  {      //Find the conversation floater associated with the selected id      const LLConversationItem * conversationItem = getCurSelectedViewModelItem(); -	llinfos << "Merov debug : doToSelectedConversation, LLIMFloater::findInstance, id = " << conversationItem->getUUID() << llendl;      LLIMFloater *conversationFloater = LLIMFloater::findInstance(conversationItem->getUUID());      if(conversationFloater) @@ -1234,6 +1232,12 @@ LLConversationItem* LLIMFloaterContainer::addConversationListItem(const LLUUID&  		participant_view->addToFolder(widget);  		current_participant_model++;  	} +	// Do that too for the conversation dialog +    LLIMConversation *conversation_floater = (uuid.isNull() ? (LLIMConversation*)(LLFloaterReg::findTypedInstance<LLNearbyChat>("nearby_chat")) : (LLIMConversation*)(LLIMFloater::findInstance(uuid))); +	if (conversation_floater) +	{ +		conversation_floater->buildConversationViewParticipant(); +	}  	if (isWidgetSelected)  	{  | 
