diff options
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/llui/llui.cpp | 16 | ||||
| -rw-r--r-- | indra/newview/gpu_table.txt | 4 | ||||
| -rw-r--r-- | indra/newview/llcofwearables.cpp | 7 | ||||
| -rw-r--r-- | indra/newview/llfolderview.h | 2 | ||||
| -rw-r--r-- | indra/newview/llinventorylistitem.cpp | 10 | ||||
| -rw-r--r-- | indra/newview/llmediactrl.cpp | 14 | ||||
| -rw-r--r-- | indra/newview/llmediactrl.h | 5 | ||||
| -rw-r--r-- | indra/newview/llpanellandmedia.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llviewermedia.cpp | 3 | ||||
| -rw-r--r-- | indra/newview/llviewermedia.h | 3 | ||||
| -rw-r--r-- | indra/newview/llviewerregion.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llvoavatar.cpp | 9 | ||||
| -rw-r--r-- | indra/newview/llvoavatar.h | 2 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/panel_outfits_list.xml | 10 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/pt/floater_about_land.xml | 10 | 
15 files changed, 57 insertions, 42 deletions
| diff --git a/indra/llui/llui.cpp b/indra/llui/llui.cpp index ee308f575a..5d8b628776 100644 --- a/indra/llui/llui.cpp +++ b/indra/llui/llui.cpp @@ -477,8 +477,8 @@ void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 width, S32 height, LLTex  	}  	// add in offset of current image to current ui translation -	const LLVector3 ui_translation = gGL.getUITranslation() + LLVector3(x, y, 0.f);  	const LLVector3 ui_scale = gGL.getUIScale(); +	const LLVector3 ui_translation = (gGL.getUITranslation() + LLVector3(x, y, 0.f)).scaledVec(ui_scale);  	F32 uv_width = uv_outer_rect.getWidth();  	F32 uv_height = uv_outer_rect.getHeight(); @@ -514,8 +514,8 @@ void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 width, S32 height, LLTex  		F32 shrink_scale = 1.f - llmax(shrink_width_ratio, shrink_height_ratio);  		draw_center_rect.mLeft = llround(ui_translation.mV[VX] + (F32)draw_center_rect.mLeft * shrink_scale * ui_scale.mV[VX]); -		draw_center_rect.mTop = llround(ui_translation.mV[VY] + lerp((F32)height, (F32)draw_center_rect.mTop, shrink_scale * ui_scale.mV[VY])); -		draw_center_rect.mRight = llround(ui_translation.mV[VX] + lerp((F32)width, (F32)draw_center_rect.mRight, shrink_scale * ui_scale.mV[VX])); +		draw_center_rect.mTop = llround(ui_translation.mV[VY] + lerp((F32)height, (F32)draw_center_rect.mTop, shrink_scale) * ui_scale.mV[VY]); +		draw_center_rect.mRight = llround(ui_translation.mV[VX] + lerp((F32)width, (F32)draw_center_rect.mRight, shrink_scale) * ui_scale.mV[VX]);  		draw_center_rect.mBottom = llround(ui_translation.mV[VY] + (F32)draw_center_rect.mBottom * shrink_scale * ui_scale.mV[VY]);  	} @@ -735,17 +735,21 @@ void gl_draw_scaled_rotated_image(S32 x, S32 y, S32 width, S32 height, F32 degre  		gGL.begin(LLRender::QUADS);  		{ +			LLVector3 ui_scale = gGL.getUIScale();  			LLVector3 ui_translation = gGL.getUITranslation();  			ui_translation.mV[VX] += x;  			ui_translation.mV[VY] += y; +			ui_translation.scaleVec(ui_scale);  			S32 index = 0; +			S32 scaled_width = llround(width * ui_scale.mV[VX]); +			S32 scaled_height = llround(height * ui_scale.mV[VY]);  			uv[index] = LLVector2(uv_rect.mRight, uv_rect.mTop); -			pos[index] = LLVector3(ui_translation.mV[VX] + width, ui_translation.mV[VY] + height, 0.f); +			pos[index] = LLVector3(ui_translation.mV[VX] + scaled_width, ui_translation.mV[VY] + scaled_height, 0.f);  			index++;  			uv[index] = LLVector2(uv_rect.mLeft, uv_rect.mTop); -			pos[index] = LLVector3(ui_translation.mV[VX], ui_translation.mV[VY] + height, 0.f); +			pos[index] = LLVector3(ui_translation.mV[VX], ui_translation.mV[VY] + scaled_height, 0.f);  			index++;  			uv[index] = LLVector2(uv_rect.mLeft, uv_rect.mBottom); @@ -753,7 +757,7 @@ void gl_draw_scaled_rotated_image(S32 x, S32 y, S32 width, S32 height, F32 degre  			index++;  			uv[index] = LLVector2(uv_rect.mRight, uv_rect.mBottom); -			pos[index] = LLVector3(ui_translation.mV[VX] + width, ui_translation.mV[VY], 0.f); +			pos[index] = LLVector3(ui_translation.mV[VX] + scaled_width, ui_translation.mV[VY], 0.f);  			index++;  			gGL.vertexBatchPreTransformed(pos, uv, NUM_VERTICES); diff --git a/indra/newview/gpu_table.txt b/indra/newview/gpu_table.txt index a481a6d395..da888bc64d 100644 --- a/indra/newview/gpu_table.txt +++ b/indra/newview/gpu_table.txt @@ -191,9 +191,9 @@ NVIDIA G102M					.*NVIDIA.*GeForce G *102M.*			0		1  NVIDIA G103M					.*NVIDIA.*GeForce G *103M.*			0		1  NVIDIA G105M					.*NVIDIA.*GeForce G *105M.*			0		1  NVIDIA G210M					.*NVIDIA.*GeForce G210M.*			0		1 -NVIDIA GT 120					.*NVIDIA.*GeForce GT 12.*			0		1 +NVIDIA GT 120					.*NVIDIA.*GeForce GT 12.*			1		1  NVIDIA GT 130					.*NVIDIA.*GeForce GT 13.*			1		1 -NVIDIA GT 220					.*NVIDIA.*GeForce GT 22.*			0		1 +NVIDIA GT 220					.*NVIDIA.*GeForce GT 22.*			1		1  NVIDIA GT 230					.*NVIDIA.*GeForce GT 23.*			1		1  NVIDIA GT 240					.*NVIDIA.*GeForce GT 24.*			1		1  NVIDIA GT 320					.*NVIDIA.*GeForce GT 32.*			0		1 diff --git a/indra/newview/llcofwearables.cpp b/indra/newview/llcofwearables.cpp index 04c70cb7d8..6648bd7e57 100644 --- a/indra/newview/llcofwearables.cpp +++ b/indra/newview/llcofwearables.cpp @@ -284,8 +284,8 @@ LLCOFWearables::LLCOFWearables() : LLPanel(),  	mAttachmentsTab(NULL),  	mBodyPartsTab(NULL),  	mLastSelectedTab(NULL), -	mCOFVersion(-1), -	mAccordionCtrl(NULL) +	mAccordionCtrl(NULL), +	mCOFVersion(-1)  {  	mClothingMenu = new CofClothingContextMenu(this);  	mAttachmentMenu = new CofAttachmentContextMenu(this); @@ -396,8 +396,7 @@ void LLCOFWearables::refresh()  		return;  	} -	// BAP - removed check; does not detect item name changes. -	//if (mCOFVersion == catp->getVersion()) return; +	if (mCOFVersion == catp->getVersion()) return;  	mCOFVersion = catp->getVersion();  	typedef std::vector<LLSD> values_vector_t; diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index c69f08eb2d..f1d39a41ae 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -262,8 +262,8 @@ public:  	BOOL needsAutoSelect() { return mNeedsAutoSelect && !mAutoSelectOverride; }  	BOOL needsAutoRename() { return mNeedsAutoRename; }  	void setNeedsAutoRename(BOOL val) { mNeedsAutoRename = val; } -	void setAutoSelectOverride(BOOL val) { mAutoSelectOverride = val; }  	void setPinningSelectedItem(BOOL val) { mPinningSelectedItem = val; } +	void setAutoSelectOverride(BOOL val) { mAutoSelectOverride = val; }  	void setCallbackRegistrar(LLUICtrl::CommitCallbackRegistry::ScopedRegistrar* registrar) { mCallbackRegistrar = registrar; } diff --git a/indra/newview/llinventorylistitem.cpp b/indra/newview/llinventorylistitem.cpp index b743ac3dcb..ea57d36c06 100644 --- a/indra/newview/llinventorylistitem.cpp +++ b/indra/newview/llinventorylistitem.cpp @@ -44,7 +44,6 @@  // newview  #include "llinventorymodel.h"  #include "llviewerinventory.h" -#include "llinventorydefines.h"  static LLWidgetNameRegistry::StaticRegistrar sRegisterPanelInventoryListItemBaseParams(&typeid(LLPanelInventoryListItemBase::Params), "inventory_list_item"); @@ -97,12 +96,9 @@ void LLPanelInventoryListItemBase::draw()  	if (mSeparatorVisible && mSeparatorImage)  	{ -		// place under bottom of listitem, using image height -		// item_pad in list using the item should be >= image height -		// to avoid cropping of top of the next item. +		// stretch along bottom of listitem, using image height  		LLRect separator_rect = getLocalRect(); -		separator_rect.mTop = separator_rect.mBottom; -		separator_rect.mBottom -= mSeparatorImage->getHeight(); +		separator_rect.mTop = mSeparatorImage->getHeight();  		mSeparatorImage->draw(separator_rect);  	} @@ -167,7 +163,7 @@ BOOL LLPanelInventoryListItemBase::postBuild()  	LLViewerInventoryItem* inv_item = getItem();  	if (inv_item)  	{ -		mIconImage = LLInventoryIcon::getIcon(inv_item->getType(), inv_item->getInventoryType(), inv_item->getFlags(), LLInventoryItemFlags::II_FLAGS_OBJECT_HAS_MULTIPLE_ITEMS & inv_item->getFlags()); +		mIconImage = LLInventoryIcon::getIcon(inv_item->getType(), inv_item->getInventoryType(), inv_item->getFlags(), FALSE);  		updateItem(inv_item->getName());  	} diff --git a/indra/newview/llmediactrl.cpp b/indra/newview/llmediactrl.cpp index 7a4ed74c4c..d6d128eb29 100644 --- a/indra/newview/llmediactrl.cpp +++ b/indra/newview/llmediactrl.cpp @@ -67,7 +67,8 @@ LLMediaCtrl::Params::Params()  	decouple_texture_size("decouple_texture_size", false),  	texture_width("texture_width", 1024),  	texture_height("texture_height", 1024), -	caret_color("caret_color") +	caret_color("caret_color"), +	initial_mime_type("initial_mime_type")  {  	tab_stop(false);  } @@ -92,7 +93,8 @@ LLMediaCtrl::LLMediaCtrl( const Params& p) :  	mDecoupleTextureSize ( false ),  	mTextureWidth ( 1024 ),  	mTextureHeight ( 1024 ), -	mClearCache(false) +	mClearCache(false), +	mHomePageMimeType(p.initial_mime_type)  {  	{  		LLColor4 color = p.caret_color().get(); @@ -101,7 +103,7 @@ LLMediaCtrl::LLMediaCtrl( const Params& p) :  	setIgnoreUIScale(p.ignore_ui_scale); -	setHomePageUrl(p.start_url); +	setHomePageUrl(p.start_url, p.initial_mime_type);  	setBorderVisible(p.border_visible); @@ -567,12 +569,12 @@ void LLMediaCtrl::navigateHome()  ////////////////////////////////////////////////////////////////////////////////  // -void LLMediaCtrl::setHomePageUrl( const std::string urlIn ) +void LLMediaCtrl::setHomePageUrl( const std::string& urlIn, const std::string& mime_type )  {  	mHomePageUrl = urlIn;  	if (mMediaSource)  	{ -		mMediaSource->setHomeURL(mHomePageUrl); +		mMediaSource->setHomeURL(mHomePageUrl, mime_type);  	}  } @@ -616,7 +618,7 @@ bool LLMediaCtrl::ensureMediaSourceExists()  		if ( mMediaSource )  		{  			mMediaSource->setUsedInUI(true); -			mMediaSource->setHomeURL(mHomePageUrl); +			mMediaSource->setHomeURL(mHomePageUrl, mHomePageMimeType);  			mMediaSource->setVisible( getVisible() );  			mMediaSource->addObserver( this );  			mMediaSource->setBackgroundColor( getBackgroundColor() ); diff --git a/indra/newview/llmediactrl.h b/indra/newview/llmediactrl.h index 310492fe02..784b266d1f 100644 --- a/indra/newview/llmediactrl.h +++ b/indra/newview/llmediactrl.h @@ -63,6 +63,8 @@ public:  								texture_height;  		Optional<LLUIColor>		caret_color; + +		Optional<std::string>	initial_mime_type;  		Params();  	}; @@ -109,7 +111,7 @@ public:  		// because we control the page content.  See DEV-9530.  JC.  		void setTrusted( bool valIn ); -		void setHomePageUrl( const std::string urlIn ); +		void setHomePageUrl( const std::string& urlIn, const std::string& mime_type = LLStringUtil::null );  		std::string getHomePageUrl();  		// set/clear URL to visit when a 404 page is reached @@ -173,6 +175,7 @@ public:  		bool mForceUpdate;  		bool mTrusted;  		std::string mHomePageUrl; +		std::string mHomePageMimeType;  		std::string mCurrentNavUrl;  		bool mIgnoreUIScale;  		bool mAlwaysRefresh; diff --git a/indra/newview/llpanellandmedia.cpp b/indra/newview/llpanellandmedia.cpp index f428e1f795..f0f386c5d1 100644 --- a/indra/newview/llpanellandmedia.cpp +++ b/indra/newview/llpanellandmedia.cpp @@ -151,7 +151,7 @@ void LLPanelLandMedia::refresh()  		mMediaDescEdit->setEnabled( can_change_media );  		std::string mime_type = parcel->getMediaType(); -		if (mime_type.empty()) +		if (mime_type.empty() || mime_type == LLMIMETypes::getDefaultMimeType())  		{  			mime_type = LLMIMETypes::getDefaultMimeTypeTranslation();  		} diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index 99220e288c..77f7740449 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -2196,7 +2196,8 @@ void LLViewerMediaImpl::navigateReload()  //////////////////////////////////////////////////////////////////////////////////////////  void LLViewerMediaImpl::navigateHome()  { -	navigateTo(mHomeURL, "", true, false); +	bool rediscover_mimetype = mHomeMimeType.empty(); +	navigateTo(mHomeURL, mHomeMimeType, rediscover_mimetype, false);  }  ////////////////////////////////////////////////////////////////////////////////////////// diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h index f75f24fbf5..01063aae06 100644 --- a/indra/newview/llviewermedia.h +++ b/indra/newview/llviewermedia.h @@ -237,7 +237,7 @@ public:  	std::string getCurrentMediaURL();  	std::string getHomeURL() { return mHomeURL; }  	std::string getMediaEntryURL() { return mMediaEntryURL; } -    void setHomeURL(const std::string& home_url) { mHomeURL = home_url; }; +	void setHomeURL(const std::string& home_url, const std::string& mime_type = LLStringUtil::null) { mHomeURL = home_url; mHomeMimeType = mime_type;};  	void clearCache();  	std::string getMimeType() { return mMimeType; }  	void scaleMouse(S32 *mouse_x, S32 *mouse_y); @@ -401,6 +401,7 @@ private:  	bool  mMovieImageHasMips;  	std::string mMediaURL;			// The last media url set with NavigateTo  	std::string mHomeURL; +	std::string mHomeMimeType;		// forced mime type for home url  	std::string mMimeType;  	std::string mCurrentMediaURL;	// The most current media url from the plugin (via the "location changed" or "navigate complete" events).  	std::string mCurrentMimeType;	// The MIME type that caused the currently loaded plugin to be loaded. diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index da240cedbb..004d138221 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -429,7 +429,7 @@ void LLViewerRegion::saveCache()  	std::string filename;  	filename = gDirUtilp->getExpandedFilename(LL_PATH_CACHE,"") + gDirUtilp->getDirDelimiter() + -		llformat("sobjects_%d_%d.slc", U32(mHandle>>32)/REGION_WIDTH_UNITS, U32(mHandle)/REGION_WIDTH_UNITS ); +		llformat("objects_%d_%d.slc", U32(mHandle>>32)/REGION_WIDTH_UNITS, U32(mHandle)/REGION_WIDTH_UNITS );  	LLFILE* fp = LLFile::fopen(filename, "wb");		/* Flawfinder: ignore */  	if (!fp) diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 4fac7fe510..6e1a9c61e6 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -4142,7 +4142,7 @@ void LLVOAvatar::updateTextures()  				}  			}  		} -		if (isIndexBakedTexture((ETextureIndex) texture_index)) +		if (isIndexBakedTexture((ETextureIndex) texture_index) && render_avatar)  		{  			const S32 boost_level = getAvatarBakedBoostLevel();  			imagep = LLViewerTextureManager::staticCastToFetchedTexture(getImage(texture_index,0), TRUE); @@ -4219,7 +4219,10 @@ void LLVOAvatar::checkTextureLoading()  			}  			else//unpause  			{ -				tex->unpauseLoadedCallbacks(&mCallbackTextureList) ;				 +				static const F32 START_AREA = 100.f ; + +				tex->unpauseLoadedCallbacks(&mCallbackTextureList) ; +				tex->addTextureStats(START_AREA); //jump start the fetching again  			}  		}		  	}			 @@ -6063,7 +6066,7 @@ void LLVOAvatar::updateMeshTextures()  		}  	} -	const BOOL self_customizing = isSelf() && !gAgentAvatarp->isUsingBakedTextures(); // During face edit mode, we don't use baked textures +	const BOOL self_customizing = isSelf() && gAgentCamera.cameraCustomizeAvatar(); // During face edit mode, we don't use baked textures  	const BOOL other_culled = !isSelf() && mCulled;  	LLLoadedCallbackEntry::source_callback_list_t* src_callback_list = NULL ;  	BOOL paused = FALSE; diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index eb622ce7c7..5de08e8e27 100644 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -1049,7 +1049,7 @@ protected: // Shared with LLVOAvatarSelf   *******************************************************************************/  }; // LLVOAvatar -extern const F32  SELF_ADDITIONAL_PRI; +extern const F32 SELF_ADDITIONAL_PRI;  extern const S32 MAX_TEXTURE_VIRTURE_SIZE_RESET_INTERVAL;  #endif // LL_VO_AVATAR_H diff --git a/indra/newview/skins/default/xui/en/panel_outfits_list.xml b/indra/newview/skins/default/xui/en/panel_outfits_list.xml index 9833b1dccb..d18f0d57ca 100644 --- a/indra/newview/skins/default/xui/en/panel_outfits_list.xml +++ b/indra/newview/skins/default/xui/en/panel_outfits_list.xml @@ -14,6 +14,9 @@       background_visible="true"       bg_alpha_color="DkGray2"       bg_opaque_color="DkGray2" +     no_matched_tabs_text.value="Didn't find what you're looking for? Try [secondlife:///app/search/all/[SEARCH_TERM] Search]." +     no_matched_tabs_text.v_pad="10" +     no_visible_tabs_text.value="You don't have any outfits yet. Try [secondlife:///app/search/all/ Search]"       follows="all"       height="400"       layout="topleft" @@ -21,13 +24,6 @@       name="outfits_accordion"       top="0"       width="309"> -        <no_matched_tabs_text -         name="no_matched_outfits_msg" -         value="Didn't find what you're looking for? Try [secondlife:///app/search/all/[SEARCH_TERM] Search]." -         v_pad="10" /> -        <no_visible_tabs_text -         name="no_outfits_msg" -         value="You don't have any outfits yet. Try [secondlife:///app/search/all/ Search]." />      </accordion>      <panel       background_visible="true" diff --git a/indra/newview/skins/default/xui/pt/floater_about_land.xml b/indra/newview/skins/default/xui/pt/floater_about_land.xml index 56ffcbdece..1767a31496 100644 --- a/indra/newview/skins/default/xui/pt/floater_about_land.xml +++ b/indra/newview/skins/default/xui/pt/floater_about_land.xml @@ -427,7 +427,17 @@ Mídia:  			<check_box label="Repetir mídia" name="media_loop" tool_tip="Executar a mídia repetidamente. Quando a mídia chegar ao fim, ela recomeça."/>  		</panel>  		<panel label="SOM" name="land_audio_panel"> +			<text name="MusicURL:"> +				URL de música: +			</text>  			<check_box label="Ocultar URL" name="hide_music_url" tool_tip="Selecionar esta opção oculta o URL de música a visitantes não autorizados aos dados do terreno."/> +			<text name="Sound:"> +				Som: +			</text> +			<check_box label="Limitar sons de gestos e objetos a esta parcela" name="check sound local"/> +			<text name="Voice settings:"> +				Voz: +			</text>  			<check_box label="Ativar voz" name="parcel_enable_voice_channel"/>  			<check_box label="Ativar voz (definições do terreno)" name="parcel_enable_voice_channel_is_estate_disabled"/>  			<check_box label="Limitar bate-papo de voz a este lote" name="parcel_enable_voice_channel_local"/> | 
