diff options
| -rw-r--r-- | indra/llui/lltabcontainer.cpp | 16 | ||||
| -rw-r--r-- | indra/llui/lltabcontainer.h | 2 | ||||
| -rw-r--r-- | indra/newview/llfloaterland.cpp | 5 | ||||
| -rw-r--r-- | indra/newview/llviewerparcelmgr.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llvovolume.cpp | 4 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/panel_outfits_inventory.xml | 3 | 
6 files changed, 20 insertions, 12 deletions
| diff --git a/indra/llui/lltabcontainer.cpp b/indra/llui/lltabcontainer.cpp index 701a06a085..1b2f09cff5 100644 --- a/indra/llui/lltabcontainer.cpp +++ b/indra/llui/lltabcontainer.cpp @@ -210,6 +210,7 @@ LLTabContainer::Params::Params()  	label_pad_left("label_pad_left"),  	tab_position("tab_position"),  	hide_tabs("hide_tabs", false), +	hide_scroll_arrows("hide_scroll_arrows", false),  	tab_padding_right("tab_padding_right"),  	first_tab("first_tab"),  	middle_tab("middle_tab"), @@ -240,6 +241,7 @@ LLTabContainer::LLTabContainer(const LLTabContainer::Params& p)  	mPrevArrowBtn(NULL),  	mNextArrowBtn(NULL),  	mIsVertical( p.tab_position == LEFT ), +	mHideScrollArrows(p.hide_scroll_arrows),  	// Horizontal Specific  	mJumpPrevArrowBtn(NULL),  	mJumpNextArrowBtn(NULL), @@ -409,7 +411,7 @@ void LLTabContainer::draw()  	setScrollPosPixels((S32)lerp((F32)getScrollPosPixels(), (F32)target_pixel_scroll, LLSmoothInterpolation::getInterpolant(0.08f))); -	BOOL has_scroll_arrows = !getTabsHidden() && ((mMaxScrollPos > 0) || (mScrollPosPixels > 0)); +	BOOL has_scroll_arrows = !mHideScrollArrows && !getTabsHidden() && ((mMaxScrollPos > 0) || (mScrollPosPixels > 0));  	if (!mIsVertical)  	{  		mJumpPrevArrowBtn->setVisible( has_scroll_arrows ); @@ -517,7 +519,7 @@ BOOL LLTabContainer::handleMouseDown( S32 x, S32 y, MASK mask )  {  	static LLUICachedControl<S32> tabcntrv_pad ("UITabCntrvPad", 0);  	BOOL handled = FALSE; -	BOOL has_scroll_arrows = (getMaxScrollPos() > 0) && !getTabsHidden(); +	BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0) && !getTabsHidden();  	if (has_scroll_arrows)  	{ @@ -591,7 +593,7 @@ BOOL LLTabContainer::handleMouseDown( S32 x, S32 y, MASK mask )  BOOL LLTabContainer::handleHover( S32 x, S32 y, MASK mask )  {  	BOOL handled = FALSE; -	BOOL has_scroll_arrows = (getMaxScrollPos() > 0) && !getTabsHidden(); +	BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0) && !getTabsHidden();  	if (has_scroll_arrows)  	{ @@ -633,7 +635,7 @@ BOOL LLTabContainer::handleHover( S32 x, S32 y, MASK mask )  BOOL LLTabContainer::handleMouseUp( S32 x, S32 y, MASK mask )  {  	BOOL handled = FALSE; -	BOOL has_scroll_arrows = (getMaxScrollPos() > 0)  && !getTabsHidden(); +	BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0)  && !getTabsHidden();  	S32 local_x = x - getRect().mLeft;  	S32 local_y = y - getRect().mBottom; @@ -701,7 +703,7 @@ BOOL LLTabContainer::handleToolTip( S32 x, S32 y, MASK mask)  	{  		LLTabTuple* firsttuple = getTab(0); -		BOOL has_scroll_arrows = (getMaxScrollPos() > 0); +		BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0);  		LLRect clip;  		if (mIsVertical)  		{ @@ -826,7 +828,7 @@ BOOL LLTabContainer::handleKeyHere(KEY key, MASK mask)  // virtual  BOOL LLTabContainer::handleDragAndDrop(S32 x, S32 y, MASK mask,	BOOL drop,	EDragAndDropType type, void* cargo_data, EAcceptance *accept, std::string	&tooltip)  { -	BOOL has_scroll_arrows = (getMaxScrollPos() > 0); +	BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0);  	if(mOpenTabsOnDragAndDrop && !getTabsHidden())  	{ @@ -1543,7 +1545,7 @@ BOOL LLTabContainer::setTab(S32 which)  						is_visible = FALSE;  					}  				} -				else if (getMaxScrollPos() > 0) +				else if (!mHideScrollArrows && getMaxScrollPos() > 0)  				{  					if( i < getScrollPos() )  					{ diff --git a/indra/llui/lltabcontainer.h b/indra/llui/lltabcontainer.h index 057809dc42..4a5f08f5d3 100644 --- a/indra/llui/lltabcontainer.h +++ b/indra/llui/lltabcontainer.h @@ -83,6 +83,7 @@ public:  											label_pad_left;  		Optional<bool>						hide_tabs; +		Optional<bool>						hide_scroll_arrows;  		Optional<S32>						tab_padding_right;  		Optional<TabParams>					first_tab, @@ -262,6 +263,7 @@ private:  	S32								mCurrentTabIdx;  	BOOL							mTabsHidden; +	BOOL							mHideScrollArrows;  	BOOL							mScrolled;  	LLFrameTimer					mScrollTimer; diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp index 7f952d4dd4..3f7a14483a 100644 --- a/indra/newview/llfloaterland.cpp +++ b/indra/newview/llfloaterland.cpp @@ -2029,7 +2029,6 @@ void LLPanelLandOptions::refresh()  	else  	{  		// something selected, hooray! -		LLViewerRegion* regionp = LLViewerParcelMgr::getInstance()->getSelectionRegion();  		// Display options  		BOOL can_change_options = LLViewerParcelMgr::isParcelModifiableByAgent(parcel, GP_LAND_OPTIONS); @@ -2045,9 +2044,8 @@ void LLPanelLandOptions::refresh()  		mCheckGroupObjectEntry	->set( parcel->getAllowGroupObjectEntry() ||  parcel->getAllowAllObjectEntry());  		mCheckGroupObjectEntry	->setEnabled( can_change_options && !parcel->getAllowAllObjectEntry() ); -		BOOL region_damage = regionp ? regionp->getAllowDamage() : FALSE;  		mCheckSafe			->set( !parcel->getAllowDamage() ); -		mCheckSafe			->setEnabled( can_change_options && region_damage ); +		mCheckSafe			->setEnabled( can_change_options );  		mCheckFly			->set( parcel->getAllowFly() );  		mCheckFly			->setEnabled( can_change_options ); @@ -2127,6 +2125,7 @@ void LLPanelLandOptions::refresh()  			// they can see the checkbox, but its disposition depends on the   			// state of the region +			LLViewerRegion* regionp = LLViewerParcelMgr::getInstance()->getSelectionRegion();  			if (regionp)  			{  				if (regionp->getSimAccess() == SIM_ACCESS_PG) diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp index dddfb6745e..2a126c9f01 100644 --- a/indra/newview/llviewerparcelmgr.cpp +++ b/indra/newview/llviewerparcelmgr.cpp @@ -706,7 +706,7 @@ bool LLViewerParcelMgr::allowAgentScripts(const LLViewerRegion* region, const LL  bool LLViewerParcelMgr::allowAgentDamage(const LLViewerRegion* region, const LLParcel* parcel) const  {  	return (region && region->getAllowDamage()) -		&& (parcel && parcel->getAllowDamage()); +		|| (parcel && parcel->getAllowDamage());  }  BOOL LLViewerParcelMgr::isOwnedAt(const LLVector3d& pos_global) const diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 657babd92c..098996147f 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -81,6 +81,8 @@  const F32 FORCE_SIMPLE_RENDER_AREA = 512.f;  const F32 FORCE_CULL_AREA = 8.f; +const F32 MIN_RENDER_COMPLEXITY = 0.f; +const F32 MAX_RENDER_COMPLEXITY = 1.0e6f;  U32 JOINT_COUNT_REQUIRED_FOR_FULLRIG = 1;  BOOL gAnimateTextures = TRUE; @@ -3615,6 +3617,8 @@ U32 LLVOVolume::getRenderCost(texture_cost_t &textures) const  		shame += media_faces * ARC_MEDIA_FACE_COST;  	} +	shame = llclamp(shame, MIN_RENDER_COMPLEXITY, MAX_RENDER_COMPLEXITY); +  	if (shame > mRenderComplexity_current)  	{  		mRenderComplexity_current = (S32)shame; diff --git a/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml index ff0714adbb..eeb930485e 100644 --- a/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml +++ b/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml @@ -26,10 +26,11 @@       layout="topleft"       left="5"       name="appearance_tabs" -     tab_min_width="150" +     tab_min_width="100"       tab_height="30"       tab_position="top"       halign="center" +     hide_scroll_arrows="true"       top="8"       width="315">           <panel | 
