diff options
| author | Tofu Linden <tofu.linden@lindenlab.com> | 2010-02-15 18:42:18 +0000 | 
|---|---|---|
| committer | Tofu Linden <tofu.linden@lindenlab.com> | 2010-02-15 18:42:18 +0000 | 
| commit | f349c30d715b6d49ceaaf3d19610cbbaf982b368 (patch) | |
| tree | b2063b58545b4b685a120464db31213e52d2b6a6 /indra/newview | |
| parent | 398af7dd40a060cf9ad8d799df03d448c2f53a96 (diff) | |
| parent | b20e7dcb7221a949318f0dbe3084f82b3f8d6173 (diff) | |
PE merge
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/llimfloater.cpp | 7 | ||||
| -rw-r--r-- | indra/newview/llimfloatercontainer.cpp | 12 | ||||
| -rw-r--r-- | indra/newview/llimfloatercontainer.h | 2 | 
3 files changed, 21 insertions, 0 deletions
| diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp index 94b540a7e1..52312b87a5 100644 --- a/indra/newview/llimfloater.cpp +++ b/indra/newview/llimfloater.cpp @@ -514,6 +514,13 @@ BOOL LLIMFloater::getVisible()  		// Treat inactive floater as invisible.  		bool is_active = im_container->getActiveFloater() == this; +	 +		//torn off floater is always inactive +		if (!is_active && getHost() != im_container) +		{ +			return LLTransientDockableFloater::getVisible(); +		} +  		// getVisible() returns TRUE when Tabbed IM window is minimized.  		return is_active && !im_container->isMinimized() && im_container->getVisible();  	} diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index 49521b5987..a775115ac9 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -145,4 +145,16 @@ LLIMFloaterContainer* LLIMFloaterContainer::getInstance()  	return LLFloaterReg::getTypedInstance<LLIMFloaterContainer>("im_container");  } +void LLIMFloaterContainer::setMinimized(BOOL b) +{ +	LLMultiFloater::setMinimized(b); + +	if (isMinimized()) return; + +	if (getActiveFloater()) +	{ +		getActiveFloater()->setVisible(TRUE); +	} +} +  // EOF diff --git a/indra/newview/llimfloatercontainer.h b/indra/newview/llimfloatercontainer.h index 46c0617c01..f6cdc25ebd 100644 --- a/indra/newview/llimfloatercontainer.h +++ b/indra/newview/llimfloatercontainer.h @@ -63,6 +63,8 @@ public:  	static LLIMFloaterContainer* getInstance(); +	virtual void setMinimized(BOOL b); +  private:  	typedef std::map<LLUUID,LLFloater*> avatarID_panel_map_t;  	avatarID_panel_map_t mSessions; | 
