diff options
| author | maxim_productengine <mnikolenko@productengine.com> | 2019-09-24 16:37:15 +0300 | 
|---|---|---|
| committer | maxim_productengine <mnikolenko@productengine.com> | 2019-09-24 16:37:15 +0300 | 
| commit | c7e9bbc20e2c08976cdb72a877d7d41a2546f418 (patch) | |
| tree | eac38d7184d7253332b5b1c54ed760b063750e3d | |
| parent | 6ef78777660460f994713e596a31f29b62678170 (diff) | |
SL-11957 FIXED The Mini-inspector changes position when clicking on the 'View full profile' link
| -rw-r--r-- | indra/newview/llfloaterchatvoicevolume.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llfloatervoicevolume.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llinspect.cpp | 16 | ||||
| -rw-r--r-- | indra/newview/llinspect.h | 2 | ||||
| -rw-r--r-- | indra/newview/llinspectavatar.cpp | 13 | ||||
| -rw-r--r-- | indra/newview/llinspectgroup.cpp | 13 | ||||
| -rw-r--r-- | indra/newview/llinspectobject.cpp | 14 | ||||
| -rw-r--r-- | indra/newview/llinspectremoteobject.cpp | 12 | ||||
| -rw-r--r-- | indra/newview/llinspecttoast.cpp | 2 | 
9 files changed, 26 insertions, 50 deletions
diff --git a/indra/newview/llfloaterchatvoicevolume.cpp b/indra/newview/llfloaterchatvoicevolume.cpp index 3c76a3a43c..67c412dfa6 100644 --- a/indra/newview/llfloaterchatvoicevolume.cpp +++ b/indra/newview/llfloaterchatvoicevolume.cpp @@ -35,7 +35,7 @@ LLFloaterChatVoiceVolume::LLFloaterChatVoiceVolume(const LLSD& key)  void LLFloaterChatVoiceVolume::onOpen(const LLSD& key)  {  	LLInspect::onOpen(key); -	LLUI::positionViewNearMouse(this); +	LLInspect::repositionInspector(key);  }  LLFloaterChatVoiceVolume::~LLFloaterChatVoiceVolume() diff --git a/indra/newview/llfloatervoicevolume.cpp b/indra/newview/llfloatervoicevolume.cpp index 38446e46df..23f19dd5aa 100644 --- a/indra/newview/llfloatervoicevolume.cpp +++ b/indra/newview/llfloatervoicevolume.cpp @@ -127,7 +127,7 @@ void LLFloaterVoiceVolume::onOpen(const LLSD& data)  	// Extract appropriate avatar id  	mAvatarID = data["avatar_id"]; -	LLUI::positionViewNearMouse(this); +	LLInspect::repositionInspector(data);  	getChild<LLUICtrl>("avatar_name")->setValue("");  	updateVolumeControls(); diff --git a/indra/newview/llinspect.cpp b/indra/newview/llinspect.cpp index e6cb068613..4e20c02767 100644 --- a/indra/newview/llinspect.cpp +++ b/indra/newview/llinspect.cpp @@ -147,3 +147,19 @@ bool LLInspect::childHasVisiblePopupMenu()  	}  	return false;  } + +void LLInspect::repositionInspector(const LLSD& data) +{ +	// Position the inspector relative to the mouse cursor +	// Similar to how tooltips are positioned +	// See LLToolTipMgr::createToolTip +	if (data.has("pos")) +	{ +		LLUI::positionViewNearMouse(this, data["pos"]["x"].asInteger(), data["pos"]["y"].asInteger()); +	} +	else +	{ +		LLUI::positionViewNearMouse(this); +	} +	applyRectControl(); +} diff --git a/indra/newview/llinspect.h b/indra/newview/llinspect.h index 1f6aafc7bd..6909aa3f16 100644 --- a/indra/newview/llinspect.h +++ b/indra/newview/llinspect.h @@ -49,6 +49,8 @@ public:  	/// Inspectors close themselves when they lose focus  	/*virtual*/ void onFocusLost(); + +	void repositionInspector(const LLSD& data);  protected: diff --git a/indra/newview/llinspectavatar.cpp b/indra/newview/llinspectavatar.cpp index 88e7ad1b71..cb19071e82 100644 --- a/indra/newview/llinspectavatar.cpp +++ b/indra/newview/llinspectavatar.cpp @@ -45,7 +45,6 @@  #include "llfloater.h"  #include "llfloaterreg.h"  #include "lltextbox.h" -#include "lltooltip.h"	// positionViewNearMouse()  #include "lltrans.h"  class LLFetchAvatarData; @@ -202,17 +201,7 @@ void LLInspectAvatar::onOpen(const LLSD& data)  	// Extract appropriate avatar id  	mAvatarID = data["avatar_id"]; -	// Position the inspector relative to the mouse cursor -	// Similar to how tooltips are positioned -	// See LLToolTipMgr::createToolTip -	if (data.has("pos")) -	{ -		LLUI::positionViewNearMouse(this, data["pos"]["x"].asInteger(), data["pos"]["y"].asInteger()); -	} -	else -	{ -		LLUI::positionViewNearMouse(this); -	} +	LLInspect::repositionInspector(data);  	// Generate link to avatar profile.  	LLTextBase* avatar_profile_link = getChild<LLTextBase>("avatar_profile_link"); diff --git a/indra/newview/llinspectgroup.cpp b/indra/newview/llinspectgroup.cpp index 8332443162..0a30ab9217 100644 --- a/indra/newview/llinspectgroup.cpp +++ b/indra/newview/llinspectgroup.cpp @@ -38,7 +38,6 @@  #include "llfloater.h"  #include "llfloaterreg.h"  #include "llresmgr.h"	// getMonetaryString() -#include "lltooltip.h"	// positionViewNearMouse()  #include "lltrans.h"  #include "lluictrl.h"  #include "llgroupiconctrl.h" @@ -124,17 +123,7 @@ void LLInspectGroup::onOpen(const LLSD& data)  	setGroupID(data["group_id"]); -	// Position the inspector relative to the mouse cursor -	// Similar to how tooltips are positioned -	// See LLToolTipMgr::createToolTip -	if (data.has("pos")) -	{ -		LLUI::positionViewNearMouse(this, data["pos"]["x"].asInteger(), data["pos"]["y"].asInteger()); -	} -	else -	{ -		LLUI::positionViewNearMouse(this); -	} +	LLInspect::repositionInspector(data);  	// can't call from constructor as widgets are not built yet  	requestUpdate(); diff --git a/indra/newview/llinspectobject.cpp b/indra/newview/llinspectobject.cpp index 46019557f8..992bfcfe17 100644 --- a/indra/newview/llinspectobject.cpp +++ b/indra/newview/llinspectobject.cpp @@ -49,7 +49,6 @@  #include "lltextbox.h"			// for description truncation  #include "lltoggleablemenu.h"  #include "lltrans.h" -#include "llui.h"				// positionViewNearMouse()  #include "lluictrl.h"  class LLViewerObject; @@ -197,17 +196,8 @@ void LLInspectObject::onOpen(const LLSD& data)  	{  		mObjectFace = data["object_face"];  	} -	// Position the inspector relative to the mouse cursor -	// Similar to how tooltips are positioned -	// See LLToolTipMgr::createToolTip -	if (data.has("pos")) -	{ -		LLUI::positionViewNearMouse(this, data["pos"]["x"].asInteger(), data["pos"]["y"].asInteger()); -	} -	else -	{ -		LLUI::positionViewNearMouse(this); -	} + +	LLInspect::repositionInspector(data);  	// Promote hovered object to a complete selection, which will also force  	// a request for selected object data off the network diff --git a/indra/newview/llinspectremoteobject.cpp b/indra/newview/llinspectremoteobject.cpp index b64df2bd47..77320510a6 100644 --- a/indra/newview/llinspectremoteobject.cpp +++ b/indra/newview/llinspectremoteobject.cpp @@ -111,17 +111,7 @@ void LLInspectRemoteObject::onOpen(const LLSD& data)  	// update the inspector with the current object state  	update(); -	// Position the inspector relative to the mouse cursor -	// Similar to how tooltips are positioned -	// See LLToolTipMgr::createToolTip -	if (data.has("pos")) -	{ -		LLUI::positionViewNearMouse(this, data["pos"]["x"].asInteger(), data["pos"]["y"].asInteger()); -	} -	else -	{ -		LLUI::positionViewNearMouse(this); -	} +	LLInspect::repositionInspector(data);  }  void LLInspectRemoteObject::onClickMap() diff --git a/indra/newview/llinspecttoast.cpp b/indra/newview/llinspecttoast.cpp index 47560341e7..68801b0895 100644 --- a/indra/newview/llinspecttoast.cpp +++ b/indra/newview/llinspecttoast.cpp @@ -110,7 +110,7 @@ void LLInspectToast::onOpen(const LLSD& notification_id)  	panel_rect = panel->getRect();  	reshape(panel_rect.getWidth(), panel_rect.getHeight()); -	LLUI::positionViewNearMouse(this); +	LLInspect::repositionInspector(notification_id);  }  // virtual  | 
