diff options
| -rw-r--r-- | indra/newview/llselectmgr.cpp | 23 | ||||
| -rw-r--r-- | indra/newview/llviewermedia.cpp | 14 | ||||
| -rw-r--r-- | indra/newview/llviewermedia.h | 2 | ||||
| -rw-r--r-- | indra/newview/llviewermediafocus.cpp | 7 | ||||
| -rw-r--r-- | indra/newview/llviewermediafocus.h | 2 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/floater_water.xml | 135 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/panel_notification.xml | 11 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/panel_preferences_sound.xml | 36 | 
8 files changed, 96 insertions, 134 deletions
| diff --git a/indra/newview/llselectmgr.cpp b/indra/newview/llselectmgr.cpp index 26e668adb5..dd07a3c015 100644 --- a/indra/newview/llselectmgr.cpp +++ b/indra/newview/llselectmgr.cpp @@ -3406,7 +3406,7 @@ void LLSelectMgr::deselectAll()  	{  		return;  	} - +		  	// Zap the angular velocity, as the sim will set it to zero  	for (LLObjectSelection::iterator iter = mSelectedObjects->begin();  		 iter != mSelectedObjects->end(); iter++ ) @@ -3496,6 +3496,7 @@ void LLSelectMgr::deselectAllIfTooFar()  	LLVector3d selectionCenter = getSelectionCenterGlobal();  	if (gSavedSettings.getBOOL("LimitSelectDistance")  		&& (!mSelectedObjects->getPrimaryObject() || !mSelectedObjects->getPrimaryObject()->isAvatar()) +		&& (mSelectedObjects->getPrimaryObject() != LLViewerMediaFocus::getInstance()->getFocusedObject())  		&& !mSelectedObjects->isAttachment()  		&& !selectionCenter.isExactlyZero())  	{ @@ -4912,6 +4913,7 @@ void LLSelectMgr::renderSilhouettes(BOOL for_hud)  		{  			inspect_item_id = inspect_instance->getSelectedUUID();  		} +		LLUUID focus_item_id = LLViewerMediaFocus::getInstance()->getFocusedObjectID();  		for (S32 pass = 0; pass < 2; pass++)  		{  			for (LLObjectSelection::iterator iter = mSelectedObjects->begin(); @@ -4925,7 +4927,11 @@ void LLSelectMgr::renderSilhouettes(BOOL for_hud)  				{  					continue;  				} -				if(objectp->getID() == inspect_item_id) +				if (objectp->getID() == focus_item_id) +				{ +					node->renderOneSilhouette(gFocusMgr.getFocusColor()); +				} +				else if(objectp->getID() == inspect_item_id)  				{  					node->renderOneSilhouette(sHighlightInspectColor);  				} @@ -4979,19 +4985,6 @@ void LLSelectMgr::renderSilhouettes(BOOL for_hud)  		}  	} -#if 0	 -	// Hilight focused media object -	{ -		LLViewerObject* objectp = LLViewerMediaFocus::getInstance()->getFocusedObject(); -		if(objectp) -		{ -			// FIXME: how do I construct a silhouette for an object that's not selected? -			// Would we need to add another LLObjectSelectionHandle for this purpose? -			node->renderOneSilhouette(gFocusMgr.getFocusColor()); -		} -	} -#endif -  	if (for_hud && avatar)  	{  		glMatrixMode(GL_PROJECTION); diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index 55e4f28e75..40bf9fb1fe 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -658,6 +658,8 @@ LLViewerMediaImpl::LLViewerMediaImpl(	  const LLUUID& texture_id,  	mMediaAutoScale(media_auto_scale),  	mMediaLoop(media_loop),  	mNeedsNewTexture(true), +	mTextureUsedWidth(0), +	mTextureUsedHeight(0),  	mSuspendUpdates(false),  	mVisible(true),  	mLastSetCursor( UI_CURSOR_ARROW ), @@ -1568,8 +1570,11 @@ LLViewerMediaTexture* LLViewerMediaImpl::updatePlaceholderImage()  	if (mNeedsNewTexture   		|| placeholder_image->getUseMipMaps() -		|| placeholder_image->getWidth() != mMediaSource->getTextureWidth() -		|| placeholder_image->getHeight() != mMediaSource->getTextureHeight()) +		|| (placeholder_image->getWidth() != mMediaSource->getTextureWidth()) +		|| (placeholder_image->getHeight() != mMediaSource->getTextureHeight()) +		|| (mTextureUsedWidth > mMediaSource->getWidth()) +		|| (mTextureUsedHeight > mMediaSource->getHeight()) +		)  	{  		LL_DEBUGS("Media") << "initializing media placeholder" << LL_ENDL;  		LL_DEBUGS("Media") << "movie image id " << mTextureId << LL_ENDL; @@ -1601,6 +1606,11 @@ LLViewerMediaTexture* LLViewerMediaImpl::updatePlaceholderImage()  		// FIXME  //		placeholder_image->mIsMediaTexture = true;  		mNeedsNewTexture = false; +				 +		// If the amount of the texture being drawn by the media goes down in either width or height,  +		// recreate the texture to avoid leaving parts of the old image behind. +		mTextureUsedWidth = mMediaSource->getWidth(); +		mTextureUsedHeight = mMediaSource->getHeight();  	}  	return placeholder_image; diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h index d6dde0c93e..4cb0817735 100644 --- a/indra/newview/llviewermedia.h +++ b/indra/newview/llviewermedia.h @@ -306,6 +306,8 @@ public:  	bool mMediaAutoScale;  	bool mMediaLoop;  	bool mNeedsNewTexture; +	S32 mTextureUsedWidth; +	S32 mTextureUsedHeight;  	bool mSuspendUpdates;  	bool mVisible;  	ECursorType mLastSetCursor; diff --git a/indra/newview/llviewermediafocus.cpp b/indra/newview/llviewermediafocus.cpp index 657c58364f..b2a0fa4b1c 100644 --- a/indra/newview/llviewermediafocus.cpp +++ b/indra/newview/llviewermediafocus.cpp @@ -77,6 +77,10 @@ void LLViewerMediaFocus::setFocusFace(LLPointer<LLViewerObject> objectp, S32 fac  	{  		old_media_impl->focus(false);  	} +	 +	// Always clear the current selection.  If we're setting focus on a face, we'll reselect the correct object below. +	LLSelectMgr::getInstance()->deselectAll(); +	mSelection = NULL;  	if (media_impl.notNull() && objectp.notNull())  	{ @@ -87,6 +91,9 @@ void LLViewerMediaFocus::setFocusFace(LLPointer<LLViewerObject> objectp, S32 fac  		mFocusedObjectFace = face;  		mFocusedObjectNormal = pick_normal; +		// Set the selection in the selection manager so we can draw the focus ring. +		mSelection = LLSelectMgr::getInstance()->selectObjectOnly(objectp, face); +  		// Focusing on a media face clears its disable flag.  		media_impl->setDisabled(false); diff --git a/indra/newview/llviewermediafocus.h b/indra/newview/llviewermediafocus.h index e5f36d341c..89ee0ae283 100644 --- a/indra/newview/llviewermediafocus.h +++ b/indra/newview/llviewermediafocus.h @@ -76,6 +76,7 @@ public:  	LLViewerMediaImpl* getFocusedMediaImpl();  	LLViewerObject* getFocusedObject();  	S32 getFocusedFace() { return mFocusedObjectFace; } +	LLUUID getFocusedObjectID() { return mFocusedObjectID; }  	// These look up (by uuid) and return the values that were set with setHoverFace.  They will return null if the objects have been destroyed.  	LLViewerMediaImpl* getHoverMediaImpl(); @@ -95,6 +96,7 @@ protected:  private:  	LLHandle<LLPanelPrimMediaControls> mMediaControls; +	LLObjectSelectionHandle mSelection;  	LLUUID mFocusedObjectID;  	S32 mFocusedObjectFace; diff --git a/indra/newview/skins/default/xui/en/floater_water.xml b/indra/newview/skins/default/xui/en/floater_water.xml index a6876dcf7d..b13a11c05d 100644 --- a/indra/newview/skins/default/xui/en/floater_water.xml +++ b/indra/newview/skins/default/xui/en/floater_water.xml @@ -16,7 +16,7 @@       type="string"       length="1"       follows="left|top|right" -     font="SansSerif" +     font.style="BOLD"       height="16"       layout="topleft"       left="10" @@ -28,7 +28,7 @@      <combo_box       height="18"       layout="topleft" -     left_delta="110" +     left_pad="10"       name="WaterPresetsCombo"       top_delta="-2"       width="150" /> @@ -40,7 +40,7 @@       left_pad="20"       name="WaterNewPreset"       top_delta="1" -     width="70" /> +     width="90" />      <button       height="20"       label="Save" @@ -49,7 +49,7 @@       left_pad="10"       name="WaterSavePreset"       top_delta="0" -     width="70" /> +     width="90" />      <button       height="20"       label="Delete" @@ -58,8 +58,9 @@       left_pad="10"       name="WaterDeletePreset"       top_delta="0" -     width="70" /> +     width="90" />      <tab_container +    border="false"       follows="left|top"       height="180"       halign="center" @@ -67,20 +68,20 @@       left="0"       name="Water Tabs"       tab_position="top" -     tab_height="20"       top="60"       width="700">          <panel           border="true" -         follows="left|top|right|bottom" +         border_color="EmphasisColor" +         follows="all"           height="180"           label="Settings"           layout="topleft" -         left="1" +         left="0"           mouse_opaque="false"           help_topic="water_settings_tab"           name="Settings" -         top="60" +         top="0"           width="698">              <text               type="string" @@ -92,11 +93,10 @@               left="10"               name="BHText"               top="4" -             width="355"> +             width="200">                  Water Fog Color              </text>              <color_swatch -             border_color="0.45098 0.517647 0.607843 1"               can_apply_immediately="true"               color="0.5 0.5 0.5 1"               follows="left|top" @@ -117,7 +117,7 @@               left="10"               name="WaterFogDensText"               top="74" -             width="355"> +             width="200">                  Fog Density Exponent              </text>              <slider @@ -142,7 +142,7 @@               left_delta="-14"               name="WaterUnderWaterFogModText"               top_delta="4" -             width="355"> +             width="200">                  Underwater Fog Modifier              </text>              <slider @@ -167,83 +167,44 @@               left="245"               name="BDensText"               top="4" -             width="355"> +             width="200">                  Reflection Wavelet Scale              </text> -            <text -             type="string" -             length="1" -             follows="left|top|right" -             halign="center" -             height="16" -             layout="topleft" -             left="245" -             name="BHText2" -             top="21" -             width="10"> -                1 -            </text> -            <text -             type="string" -             length="1" -             follows="left|top|right" -             halign="center" -             height="16" -             layout="topleft" -             left_delta="0" -             name="BHText3" -             top_delta="11" -             width="10"> -                2 -            </text> -            <text -             type="string" -             length="1" -             follows="left|top|right" -             halign="center" -             height="16" -             layout="topleft" -             left_delta="0" -             name="BHText4" -             top_delta="11" -             width="10"> -                3 -            </text>              <slider               control_name="WaterNormalScaleX"               decimal_digits="1"               follows="left" -             height="10" +             height="15"               initial_value="0.7" +             label="1"               layout="topleft" -             left_pad="4"               max_val="10"               name="WaterNormalScaleX" -             top_delta="-3" +             top_pad="20"               width="200" />              <slider               control_name="WaterNormalScaleY"               decimal_digits="1"               follows="left" -             height="10" +             height="15"               initial_value="0.7" +             label="2"               layout="topleft" -             left_delta="0"               max_val="10"               name="WaterNormalScaleY" -             top_pad="1" +             top_pad="0"               width="200" />              <slider               control_name="WaterNormalScaleZ"               decimal_digits="1"               follows="left" -             height="10" +             height="15"               initial_value="0.7" +             label="3"               layout="topleft" -             left_delta="0"               max_val="10"               name="WaterNormalScaleZ" -             top_pad="1" +             top_pad="0"               width="200" />              <text               type="string" @@ -252,10 +213,9 @@               font="SansSerif"               height="16"               layout="topleft" -             left_delta="-14"               name="HDText" -             top_delta="2" -             width="355"> +             top_pad="-10" +             width="200">                  Fresnel Scale              </text>              <slider @@ -266,9 +226,8 @@               increment="0.01"               initial_value="0.7"               layout="topleft" -             left="259"               name="WaterFresnelScale" -             top="100" +             top_pad="20"               width="200" />              <text               type="string" @@ -277,10 +236,9 @@               font="SansSerif"               height="16"               layout="topleft" -             left_delta="-14"               name="FresnelOffsetText" -             top_delta="-1" -             width="355"> +             top_pad="-10" +             width="200">                  Fresnel Offset              </text>              <slider @@ -291,9 +249,8 @@               increment="0.01"               initial_value="0.7"               layout="topleft" -             left="259"               name="WaterFresnelOffset" -             top="135" +             top_pad="20"               width="200" />              <text               type="string" @@ -305,7 +262,7 @@               left="480"               name="DensMultText"               top="4" -             width="355"> +             width="200">                  Refract Scale Above              </text>              <slider @@ -330,7 +287,7 @@               left_delta="-14"               name="WaterScaleBelowText"               top_delta="-3" -             width="355"> +             width="200">                  Refract Scale Below              </text>              <slider @@ -355,7 +312,7 @@               left_delta="-14"               name="MaxAltText"               top_delta="-2" -             width="355"> +             width="200">                  Blur Multiplier              </text>              <slider @@ -373,15 +330,15 @@          </panel>          <panel           border="true" -         follows="left|top|right|bottom" +         follows="all"           height="180"           label="Image"           layout="topleft" -         left_delta="0" +         left="0"           mouse_opaque="false"           help_topic="water_waves_tab"           name="Waves" -         top_delta="44" +         top="0"           width="698">              <text               type="string" @@ -392,8 +349,8 @@               layout="topleft"               left="10"               name="BHText" -             top="4" -             width="355"> +             top="10" +             width="200">                  Big Wave Direction              </text>              <text @@ -405,7 +362,7 @@               layout="topleft"               left="10"               name="WaterWave1DirXText" -             top="21" +             top_pad="4"               width="10">                  X              </text> @@ -418,7 +375,7 @@               layout="topleft"               left_delta="0"               name="WaterWave1DirYText" -             top_delta="11" +             top_delta="18"               width="10">                  Y              </text> @@ -434,7 +391,7 @@               max_val="4"               min_val="-4"               name="WaterWave1DirX" -             top="40" +             top="55"               width="200" />              <slider               control_name="WaterWave1DirY" @@ -448,7 +405,7 @@               max_val="4"               min_val="-4"               name="WaterWave1DirY" -             top_pad="1" +             top_pad="5"               width="200" />              <text               type="string" @@ -472,7 +429,7 @@               layout="topleft"               left="10"               name="WaterWave2DirXText" -             top="71" +             top="90"               width="10">                  X              </text> @@ -485,7 +442,7 @@               layout="topleft"               left_delta="0"               name="WaterWave2DirYText" -             top_delta="11" +             top_delta="20"               width="10">                  Y              </text> @@ -501,7 +458,7 @@               max_val="4"               min_val="-4"               name="WaterWave2DirX" -             top="90" +             top="115"               width="200" />              <slider               control_name="WaterWave2DirY" @@ -515,7 +472,7 @@               max_val="4"               min_val="-4"               name="WaterWave2DirY" -             top_pad="1" +             top_pad="10"               width="200" />              <text               type="string" @@ -527,7 +484,7 @@               left="240"               name="BHText3"               top="4" -             width="355"> +             width="200">                  Normal Map              </text>              <texture_picker diff --git a/indra/newview/skins/default/xui/en/panel_notification.xml b/indra/newview/skins/default/xui/en/panel_notification.xml index 0d34aa0f08..34a185fb44 100644 --- a/indra/newview/skins/default/xui/en/panel_notification.xml +++ b/indra/newview/skins/default/xui/en/panel_notification.xml @@ -2,9 +2,6 @@  <panel    background_opaque="false"        border_visible="false" -  border = "false" -  border_drop_shadow_visible = "false" -  drop_shadow_visible = "false"    background_visible="true"    bg_alpha_color="0.3 0.3 0.3 0"    bg_opaque_color="0.3 0.3 0.3 0" @@ -18,12 +15,7 @@    <!-- THIS PANEL CONTROLS TOAST HEIGHT? -->    <panel        border_visible="false" -      drop_shadow="false"   bevel_style="none" - border_style="none" -  border = "false" -  border_drop_shadow_visible = "false" -  drop_shadow_visible = "false"      background_visible="true"    bg_alpha_color="0.3 0.3 0.3 0"    bg_opaque_color="0.3 0.3 0.3 0" @@ -67,9 +59,6 @@  	v_pad="0"        bg_readonly_color="0.0 0.0 0.0 0"        border_visible="false" -	  border = "false" -	  border_drop_shadow_visible = "false" -	  drop_shadow_visible = "false"        embedded_items="false"        enabled="false"        follows="left|right|top|bottom" diff --git a/indra/newview/skins/default/xui/en/panel_preferences_sound.xml b/indra/newview/skins/default/xui/en/panel_preferences_sound.xml index 78ae9a8224..c3e0cb352b 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_sound.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_sound.xml @@ -228,15 +228,18 @@       tab_stop="false"       top_delta="-2"       width="22" /> -     <check_box -     height="16" -	 control_name ="EnableVoiceChat" -	 disabled_control="CmdLineDisableVoice" -     label="Enable Voice" -     layout="topleft" -     left="22" +   <check_box +     label_text.halign="left" +     follows="right|top" +    height="16" +    control_name ="EnableVoiceChat" +   disabled_control="CmdLineDisableVoice" +     label="Voice" +     left="50"       name="enable_voice_check" -     width="100"> +     top_pad="5" +     width="110" +     >      </check_box>      <slider       control_name="AudioLevelVoice" @@ -246,16 +249,15 @@       height="15"       increment="0.05"       initial_value="0.5" -	 label="Voice" -     label_width="60" +     label_width="0"       layout="topleft" -     left="100" +     left="165" +     top_delta="0"       name="Voice Volume"       show_text="false"       slider_label.halign="right" -     top_pad="-15"       volume="true" -     width="250"> +     width="185">          <slider.commit_callback           function="Pref.setControlFalse"           parameter="MuteVoice" /> @@ -289,7 +291,7 @@      <icon  	 follows="left"  	 height="18" -	 image_name="CameraView_Off" +	 image_name="Cam_FreeCam_Off"  	 name="camera_icon"  	 mouse_opaque="false"  	 visible="true" @@ -316,13 +318,13 @@           height="16"           label="Camera position"           left_pad="1" -		 follows="topleft" +	follows="topleft"           name="0"           top_delta="-30"           width="200" />          <radio_item           height="16" -		 follows="topleft" +	follows="topleft"           label="Avatar position"           left_delta="0"           name="1" @@ -401,7 +403,7 @@          My volume:      </text>        <slider_bar -        control_name="AudioLevelMic"  +        control_name="AudioLevelMic"       follows="left|top"       height="17"       increment="0.05" | 
