diff options
| author | Merov Linden <merov@lindenlab.com> | 2013-01-14 15:26:59 -0800 | 
|---|---|---|
| committer | Merov Linden <merov@lindenlab.com> | 2013-01-14 15:26:59 -0800 | 
| commit | cefcdd445b6bad0e2382d848cd73b20a1a51cc01 (patch) | |
| tree | 8460fe9c4162cc933af16bd3eefdd3eda3c16252 | |
| parent | e206dff762e9055391a8627c0067de0a11319f2f (diff) | |
CHUI-458 : WIP : Allow change of the general conversations panel when the selected conversation needs it (e.g. P2P is typing)
| -rw-r--r-- | indra/newview/llfloaterimcontainer.cpp | 6 | ||||
| -rw-r--r-- | indra/newview/llfloaterimcontainer.h | 1 | ||||
| -rw-r--r-- | indra/newview/llfloaterimsession.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llfloaterimsession.h | 2 | 
4 files changed, 10 insertions, 1 deletions
| diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp index f825e253d4..cf81a2b046 100644 --- a/indra/newview/llfloaterimcontainer.cpp +++ b/indra/newview/llfloaterimcontainer.cpp @@ -238,6 +238,9 @@ BOOL LLFloaterIMContainer::postBuild()  	// Init the sort order now that the root had been created  	setSortOrder(LLConversationSort(gSavedSettings.getU32("ConversationSortOrder"))); +	// Keep the xml set title around for when we have to overwrite it +	mGeneralTitle = getTitle(); +	  	mInitialized = true;  	// Add callbacks: @@ -515,6 +518,9 @@ void LLFloaterIMContainer::draw()  			current_participant_model++;  		} +		// is P2P? Test if we can change the title +		LLFloaterIMSession * conversation_floaterp = LLFloaterIMSession::findInstance(current_session->getUUID()); +		setTitle(conversation_floaterp && conversation_floaterp->hasSpecialTitle() ? conversation_floaterp->getSpecialTitle() : mGeneralTitle);  	}  	LLFloater::draw(); diff --git a/indra/newview/llfloaterimcontainer.h b/indra/newview/llfloaterimcontainer.h index 85d950c58b..06af6c7b51 100644 --- a/indra/newview/llfloaterimcontainer.h +++ b/indra/newview/llfloaterimcontainer.h @@ -169,6 +169,7 @@ private:  	bool mInitialized;  	LLUUID mSelectedSession; +	std::string mGeneralTitle;  	// Conversation list implementation  public: diff --git a/indra/newview/llfloaterimsession.cpp b/indra/newview/llfloaterimsession.cpp index d36b138c21..931ee0dc66 100644 --- a/indra/newview/llfloaterimsession.cpp +++ b/indra/newview/llfloaterimsession.cpp @@ -705,7 +705,7 @@ BOOL LLFloaterIMSession::getVisible()  		// getVisible() returns TRUE when Tabbed IM window is minimized.  			visible = is_active && !im_container->isMinimized()  						&& im_container->getVisible(); -	} +		}  	}  	else  	{ diff --git a/indra/newview/llfloaterimsession.h b/indra/newview/llfloaterimsession.h index 6a2f4b29eb..7239481e56 100644 --- a/indra/newview/llfloaterimsession.h +++ b/indra/newview/llfloaterimsession.h @@ -132,6 +132,8 @@ public:  	static boost::signals2::connection setIMFloaterShowedCallback(const floater_showed_signal_t::slot_type& cb);  	static floater_showed_signal_t sIMFloaterShowedSignal; +	bool hasSpecialTitle() { return mOtherTyping; } +	std::string getSpecialTitle() { return getTitle(); }  private:  	/*virtual*/ void refresh(); | 
