aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--linden/indra/llcommon/llfile.cpp8
-rw-r--r--linden/indra/llcommon/llfile.h6
-rw-r--r--linden/indra/llcommon/llversionviewer.h2
-rw-r--r--linden/indra/llmath/llvolume.cpp34
-rw-r--r--linden/indra/llmedia/llmediaimplllmozlib.cpp53
-rw-r--r--linden/indra/llmessage/llcurl.cpp1
-rw-r--r--linden/indra/llwindow/llwindowsdl.cpp1
-rw-r--r--linden/indra/newview/English.lproj/InfoPlist.strings4
-rw-r--r--linden/indra/newview/Info-SecondLife.plist2
-rw-r--r--linden/indra/newview/gpu_table.txt14
-rw-r--r--linden/indra/newview/llcontroldef.cpp2
-rw-r--r--linden/indra/newview/llinventorybridge.cpp2
-rw-r--r--linden/indra/newview/llmediaremotectrl.cpp9
-rw-r--r--linden/indra/newview/llmediaremotectrl.h3
-rw-r--r--linden/indra/newview/llmimetypes.cpp8
-rw-r--r--linden/indra/newview/llpaneldirfind.cpp12
-rw-r--r--linden/indra/newview/llpanellandmedia.cpp24
-rw-r--r--linden/indra/newview/llpanellandmedia.h2
-rw-r--r--linden/indra/newview/llpreviewtexture.cpp2
-rw-r--r--linden/indra/newview/llpreviewtexture.h2
-rw-r--r--linden/indra/newview/lltexturefetch.cpp2
-rw-r--r--linden/indra/newview/llviewerimage.h2
-rw-r--r--linden/indra/newview/llviewermedia.cpp7
-rw-r--r--linden/indra/newview/llviewerparcelmedia.cpp32
-rw-r--r--linden/indra/newview/llviewerpartsource.cpp5
-rw-r--r--linden/indra/newview/res/newViewRes.rc8
-rw-r--r--linden/indra/newview/skins/xui/en-us/floater_about_land.xml33
-rw-r--r--linden/indra/newview/skins/xui/en-us/panel_media_controls.xml24
-rw-r--r--linden/indra/newview/skins/xui/en-us/panel_media_remote.xml24
29 files changed, 221 insertions, 107 deletions
diff --git a/linden/indra/llcommon/llfile.cpp b/linden/indra/llcommon/llfile.cpp
index 6ccf6ac..d551f28 100644
--- a/linden/indra/llcommon/llfile.cpp
+++ b/linden/indra/llcommon/llfile.cpp
@@ -266,6 +266,7 @@ void llofstream::open(const char* _Filename, /* Flawfinder: ignore */
266 } 266 }
267 llassert(_Filebuffer==NULL); 267 llassert(_Filebuffer==NULL);
268 _Filebuffer = new _Myfb(filep); 268 _Filebuffer = new _Myfb(filep);
269 _ShouldClose = true;
269 _Myios::init(_Filebuffer); 270 _Myios::init(_Filebuffer);
270} 271}
271 272
@@ -279,14 +280,17 @@ void llofstream::close()
279llofstream::llofstream(const char *_Filename, 280llofstream::llofstream(const char *_Filename,
280 std::ios_base::openmode _Mode, 281 std::ios_base::openmode _Mode,
281 int _Prot) 282 int _Prot)
282 : std::basic_ostream<char,std::char_traits < char > >(NULL,true),_Filebuffer(NULL) 283 : std::basic_ostream<char,std::char_traits < char > >(NULL,true),_Filebuffer(NULL),_ShouldClose(false)
283{ // construct with named file and specified mode 284{ // construct with named file and specified mode
284 open(_Filename, _Mode , _Prot); /* Flawfinder: ignore */ 285 open(_Filename, _Mode , _Prot); /* Flawfinder: ignore */
285} 286}
286 287
287llofstream::~llofstream() 288llofstream::~llofstream()
288{ // destroy the object 289{ // destroy the object
289 close(); 290 if (_ShouldClose)
291 {
292 close();
293 }
290 delete _Filebuffer; 294 delete _Filebuffer;
291} 295}
292 296
diff --git a/linden/indra/llcommon/llfile.h b/linden/indra/llcommon/llfile.h
index 2650775..d449ec9 100644
--- a/linden/indra/llcommon/llfile.h
+++ b/linden/indra/llcommon/llfile.h
@@ -127,7 +127,7 @@ public:
127 typedef std::basic_ios<char,std::char_traits < char > > _Myios; 127 typedef std::basic_ios<char,std::char_traits < char > > _Myios;
128 128
129 llofstream() 129 llofstream()
130 : std::basic_ostream<char,std::char_traits < char > >(NULL,true),_Filebuffer(NULL) 130 : std::basic_ostream<char,std::char_traits < char > >(NULL,true),_Filebuffer(NULL),_ShouldClose(false)
131 { // construct unopened 131 { // construct unopened
132 } 132 }
133 133
@@ -138,7 +138,8 @@ public:
138 138
139 explicit llofstream(_Filet *_File) 139 explicit llofstream(_Filet *_File)
140 : std::basic_ostream<char,std::char_traits < char > >(NULL,true), 140 : std::basic_ostream<char,std::char_traits < char > >(NULL,true),
141 _Filebuffer(new _Myfb(_File))//_File) 141 _Filebuffer(new _Myfb(_File)),//_File)
142 _ShouldClose(false)
142 { // construct with specified C stream 143 { // construct with specified C stream
143 } 144 }
144 145
@@ -157,6 +158,7 @@ public:
157 158
158private: 159private:
159 _Myfb *_Filebuffer; // the file buffer 160 _Myfb *_Filebuffer; // the file buffer
161 bool _ShouldClose;
160}; 162};
161 163
162 164
diff --git a/linden/indra/llcommon/llversionviewer.h b/linden/indra/llcommon/llversionviewer.h
index c1e6778..998ea9e 100644
--- a/linden/indra/llcommon/llversionviewer.h
+++ b/linden/indra/llcommon/llversionviewer.h
@@ -35,7 +35,7 @@
35const S32 LL_VERSION_MAJOR = 1; 35const S32 LL_VERSION_MAJOR = 1;
36const S32 LL_VERSION_MINOR = 19; 36const S32 LL_VERSION_MINOR = 19;
37const S32 LL_VERSION_PATCH = 1; 37const S32 LL_VERSION_PATCH = 1;
38const S32 LL_VERSION_BUILD = 0; 38const S32 LL_VERSION_BUILD = 1;
39 39
40const char * const LL_CHANNEL = "Second Life Release"; 40const char * const LL_CHANNEL = "Second Life Release";
41 41
diff --git a/linden/indra/llmath/llvolume.cpp b/linden/indra/llmath/llvolume.cpp
index 266ec08..7403724 100644
--- a/linden/indra/llmath/llvolume.cpp
+++ b/linden/indra/llmath/llvolume.cpp
@@ -2078,6 +2078,14 @@ void LLVolume::sculpt(U16 sculpt_width, U16 sculpt_height, S8 sculpt_components,
2078 } 2078 }
2079 2079
2080 mSculptLevel = sculpt_level; 2080 mSculptLevel = sculpt_level;
2081
2082 // Delete any existing faces so that they get regenerated
2083 if (mVolumeFaces)
2084 {
2085 delete[] mVolumeFaces;
2086 mVolumeFaces = NULL;
2087 }
2088
2081 createVolumeFaces(); 2089 createVolumeFaces();
2082} 2090}
2083 2091
@@ -4820,29 +4828,33 @@ BOOL LLVolumeFace::createSide(BOOL partial_build)
4820 } 4828 }
4821 } 4829 }
4822 4830
4823 //generate normals 4831 //generate normals
4824 for (U32 i = 0; i < mIndices.size()/3; i++) { //for each triangle 4832 for (U32 i = 0; i < mIndices.size()/3; i++) //for each triangle
4825 const VertexData& v0 = mVertices[mIndices[i*3+0]]; 4833 {
4826 const VertexData& v1 = mVertices[mIndices[i*3+1]]; 4834 const S32 i0 = mIndices[i*3+0];
4827 const VertexData& v2 = mVertices[mIndices[i*3+2]]; 4835 const S32 i1 = mIndices[i*3+1];
4836 const S32 i2 = mIndices[i*3+2];
4837 const VertexData& v0 = mVertices[i0];
4838 const VertexData& v1 = mVertices[i1];
4839 const VertexData& v2 = mVertices[i2];
4828 4840
4829 //calculate triangle normal 4841 //calculate triangle normal
4830 LLVector3 norm = (v0.mPosition-v1.mPosition)% 4842 LLVector3 norm = (v0.mPosition-v1.mPosition) % (v0.mPosition-v2.mPosition);
4831 (v0.mPosition-v2.mPosition);
4832 4843
4833 for (U32 j = 0; j < 3; j++) 4844 for (U32 j = 0; j < 3; j++)
4834 { //add triangle normal to vertices 4845 { //add triangle normal to vertices
4835 mVertices[mIndices[i*3+j]].mNormal += norm; // * (weight_sum - d[j])/weight_sum; 4846 const S32 idx = mIndices[i*3+j];
4847 mVertices[idx].mNormal += norm; // * (weight_sum - d[j])/weight_sum;
4836 } 4848 }
4837 4849
4838 //even out quad contributions 4850 //even out quad contributions
4839 if (i % 2 == 0) 4851 if ((i & 1) == 0)
4840 { 4852 {
4841 mVertices[mIndices[i*3+2]].mNormal += norm; 4853 mVertices[i2].mNormal += norm;
4842 } 4854 }
4843 else 4855 else
4844 { 4856 {
4845 mVertices[mIndices[i*3+1]].mNormal += norm; 4857 mVertices[i1].mNormal += norm;
4846 } 4858 }
4847 } 4859 }
4848 4860
diff --git a/linden/indra/llmedia/llmediaimplllmozlib.cpp b/linden/indra/llmedia/llmediaimplllmozlib.cpp
index 06250f7..87d9c77 100644
--- a/linden/indra/llmedia/llmediaimplllmozlib.cpp
+++ b/linden/indra/llmedia/llmediaimplllmozlib.cpp
@@ -47,6 +47,7 @@
47 // Linux, MESA headers, but not necessarily assuming MESA runtime. 47 // Linux, MESA headers, but not necessarily assuming MESA runtime.
48 // quotes so we get libraries/.../GL/ version 48 // quotes so we get libraries/.../GL/ version
49 #include "GL/gl.h" 49 #include "GL/gl.h"
50 #include <locale.h>
50#endif 51#endif
51 52
52#include <iostream> 53#include <iostream>
@@ -84,6 +85,14 @@ LLMediaImplLLMozLib::LLMediaImplLLMozLib() :
84// (static) super-initialization - called once at application startup 85// (static) super-initialization - called once at application startup
85bool LLMediaImplLLMozLib::startup( LLMediaManagerData* init_data ) 86bool LLMediaImplLLMozLib::startup( LLMediaManagerData* init_data )
86{ 87{
88#if LL_LINUX
89 // Yuck, Mozilla's GTK callbacks play with the locale - push/pop
90 // the locale to protect it, as exotic/non-C locales
91 // causes our code lots of general critical weirdness
92 // and crashness. (SL-35450)
93 std::string saved_locale = setlocale(LC_ALL, NULL);
94#endif // LL_LINUX
95
87 bool result = LLMozLib::getInstance()->init( init_data->getBrowserApplicationDir(), 96 bool result = LLMozLib::getInstance()->init( init_data->getBrowserApplicationDir(),
88 init_data->getBrowserComponentDir(), 97 init_data->getBrowserComponentDir(),
89 init_data->getBrowserProfileDir(), 98 init_data->getBrowserProfileDir(),
@@ -92,6 +101,10 @@ bool LLMediaImplLLMozLib::startup( LLMediaManagerData* init_data )
92 // append special string to the embedded browser user agent string 101 // append special string to the embedded browser user agent string
93 LLMozLib::getInstance()->setBrowserAgentId( init_data->getBrowserUserAgentId() ); 102 LLMozLib::getInstance()->setBrowserAgentId( init_data->getBrowserUserAgentId() );
94 103
104#if LL_LINUX
105 setlocale(LC_ALL, saved_locale.c_str() );
106#endif // LL_LINUX
107
95 return result; 108 return result;
96} 109}
97 110
@@ -114,6 +127,10 @@ bool LLMediaImplLLMozLib::init()
114 if ( mWindowId ) 127 if ( mWindowId )
115 return false; 128 return false;
116 129
130#if LL_LINUX
131 std::string saved_locale = setlocale(LC_ALL, NULL);
132#endif // LL_LINUX
133
117 mWindowId = LLMozLib::getInstance()->createBrowserWindow( mBrowserWindowWidth, mBrowserWindowHeight ); 134 mWindowId = LLMozLib::getInstance()->createBrowserWindow( mBrowserWindowWidth, mBrowserWindowHeight );
118 135
119 LLMozLib::getInstance()->setSize( mWindowId, mBrowserWindowWidth, mBrowserWindowHeight ); 136 LLMozLib::getInstance()->setSize( mWindowId, mBrowserWindowWidth, mBrowserWindowHeight );
@@ -132,6 +149,10 @@ bool LLMediaImplLLMozLib::init()
132 // set media depth now we have created a browser window and know what it is 149 // set media depth now we have created a browser window and know what it is
133 setMediaDepth( LLMozLib::getInstance()->getBrowserDepth( mWindowId ) ); 150 setMediaDepth( LLMozLib::getInstance()->getBrowserDepth( mWindowId ) );
134 151
152#if LL_LINUX
153 setlocale(LC_ALL, saved_locale.c_str() );
154#endif // LL_LINUX
155
135 return true; 156 return true;
136} 157}
137 158
@@ -177,9 +198,17 @@ bool LLMediaImplLLMozLib::setCaretColor( unsigned int red, unsigned int green, u
177// virtual 198// virtual
178bool LLMediaImplLLMozLib::navigateTo( const std::string url ) 199bool LLMediaImplLLMozLib::navigateTo( const std::string url )
179{ 200{
201#if LL_LINUX
202 std::string saved_locale = setlocale(LC_ALL, NULL);
203#endif // LL_LINUX
204
180 // pass url to llmozlib 205 // pass url to llmozlib
181 LLMozLib::getInstance()->navigateTo( mWindowId, url ); 206 LLMozLib::getInstance()->navigateTo( mWindowId, url );
182 207
208#if LL_LINUX
209 setlocale(LC_ALL, saved_locale.c_str() );
210#endif // LL_LINUX
211
183 // emit event with size change to kick things off 212 // emit event with size change to kick things off
184 LLMediaEvent event( this ); 213 LLMediaEvent event( this );
185 mEventEmitter.update( &LLMediaObserver::onMediaSizeChange, event ); 214 mEventEmitter.update( &LLMediaObserver::onMediaSizeChange, event );
@@ -235,6 +264,10 @@ bool LLMediaImplLLMozLib::updateState()
235 clearCommand(); 264 clearCommand();
236 }; 265 };
237 266
267#if LL_LINUX
268 std::string saved_locale = setlocale(LC_ALL, NULL);
269#endif // LL_LINUX
270
238 if ( nextCommand() == LLMediaBase::COMMAND_BACK ) 271 if ( nextCommand() == LLMediaBase::COMMAND_BACK )
239 { 272 {
240 setStatus( LLMediaBase::STATUS_STARTED ); 273 setStatus( LLMediaBase::STATUS_STARTED );
@@ -249,6 +282,10 @@ bool LLMediaImplLLMozLib::updateState()
249 clearCommand(); 282 clearCommand();
250 }; 283 };
251 284
285#if LL_LINUX
286 setlocale(LC_ALL, saved_locale.c_str() );
287#endif // LL_LINUX
288
252 return true; 289 return true;
253} 290}
254 291
@@ -345,8 +382,16 @@ bool LLMediaImplLLMozLib::recomputeSizes()
345 new_height = LLMediaManager::textureHeightFromMediaHeight( new_height ); 382 new_height = LLMediaManager::textureHeightFromMediaHeight( new_height );
346 } 383 }
347 384
385#if LL_LINUX
386 std::string saved_locale = setlocale(LC_ALL, NULL);
387#endif // LL_LINUX
388
348 bool status = LLMozLib::getInstance()->setSize( mWindowId, new_width, new_height ); 389 bool status = LLMozLib::getInstance()->setSize( mWindowId, new_width, new_height );
349 390
391#if LL_LINUX
392 setlocale(LC_ALL, saved_locale.c_str() );
393#endif // LL_LINUX
394
350 if (status) 395 if (status)
351 setMediaSize(new_width, new_height); 396 setMediaSize(new_width, new_height);
352 397
@@ -578,12 +623,20 @@ bool LLMediaImplLLMozLib::clearCookies()
578// virtual 623// virtual
579bool LLMediaImplLLMozLib::reset() 624bool LLMediaImplLLMozLib::reset()
580{ 625{
626#if LL_LINUX
627 std::string saved_locale = setlocale(LC_ALL, NULL);
628#endif // LL_LINUX
629
581 LLMozLib::getInstance()->remObserver( mWindowId, this ); 630 LLMozLib::getInstance()->remObserver( mWindowId, this );
582 631
583 LLMozLib::getInstance()->destroyBrowserWindow( mWindowId ); 632 LLMozLib::getInstance()->destroyBrowserWindow( mWindowId );
584 633
585 mWindowId = 0; 634 mWindowId = 0;
586 635
636#if LL_LINUX
637 setlocale(LC_ALL, saved_locale.c_str() );
638#endif // LL_LINUX
639
587 return true; 640 return true;
588} 641}
589 642
diff --git a/linden/indra/llmessage/llcurl.cpp b/linden/indra/llmessage/llcurl.cpp
index badda64..a8bb46b 100644
--- a/linden/indra/llmessage/llcurl.cpp
+++ b/linden/indra/llmessage/llcurl.cpp
@@ -121,7 +121,6 @@ void LLCurl::Responder::error(U32 status, const std::string& reason)
121// virtual 121// virtual
122void LLCurl::Responder::result(const LLSD& content) 122void LLCurl::Responder::result(const LLSD& content)
123{ 123{
124 llwarns << "Virtual Function not implemented" << llendl;
125} 124}
126 125
127// virtual 126// virtual
diff --git a/linden/indra/llwindow/llwindowsdl.cpp b/linden/indra/llwindow/llwindowsdl.cpp
index f8a87c4..e0a4169 100644
--- a/linden/indra/llwindow/llwindowsdl.cpp
+++ b/linden/indra/llwindow/llwindowsdl.cpp
@@ -48,6 +48,7 @@
48extern "C" { 48extern "C" {
49# include "gtk/gtk.h" 49# include "gtk/gtk.h"
50} 50}
51#include <locale.h>
51#endif // LL_GTK 52#endif // LL_GTK
52 53
53#if LL_LINUX || LL_SOLARIS 54#if LL_LINUX || LL_SOLARIS
diff --git a/linden/indra/newview/English.lproj/InfoPlist.strings b/linden/indra/newview/English.lproj/InfoPlist.strings
index 5bca4ea..9ac8301 100644
--- a/linden/indra/newview/English.lproj/InfoPlist.strings
+++ b/linden/indra/newview/English.lproj/InfoPlist.strings
@@ -1,5 +1,5 @@
1/* Localized versions of Info.plist keys */ 1/* Localized versions of Info.plist keys */
2 2
3CFBundleName = "Second Life"; 3CFBundleName = "Second Life";
4CFBundleShortVersionString = "Second Life version 1.19.1.0"; 4CFBundleShortVersionString = "Second Life version 1.19.1.1";
5CFBundleGetInfoString = "Second Life version 1.19.1.0, Copyright 2004-2008 Linden Research, Inc."; 5CFBundleGetInfoString = "Second Life version 1.19.1.1, Copyright 2004-2008 Linden Research, Inc.";
diff --git a/linden/indra/newview/Info-SecondLife.plist b/linden/indra/newview/Info-SecondLife.plist
index 6f8c464..2f53848 100644
--- a/linden/indra/newview/Info-SecondLife.plist
+++ b/linden/indra/newview/Info-SecondLife.plist
@@ -32,7 +32,7 @@
32 </dict> 32 </dict>
33 </array> 33 </array>
34 <key>CFBundleVersion</key> 34 <key>CFBundleVersion</key>
35 <string>1.19.1.0</string> 35 <string>1.19.1.1</string>
36 <key>CSResourcesFileMapped</key> 36 <key>CSResourcesFileMapped</key>
37 <true/> 37 <true/>
38</dict> 38</dict>
diff --git a/linden/indra/newview/gpu_table.txt b/linden/indra/newview/gpu_table.txt
index 066cd98..1d33fcb 100644
--- a/linden/indra/newview/gpu_table.txt
+++ b/linden/indra/newview/gpu_table.txt
@@ -39,8 +39,8 @@ ATI ASUS EAH26xx .*ATI.*ASUS.*EAH26.* 3 1
39ATI ASUS X1xxx .*ATI.*ASUS.*X1.* 2 1 39ATI ASUS X1xxx .*ATI.*ASUS.*X1.* 2 1
40ATI Diamond X1xxx .*ATI.*Diamond.*X1.* 3 1 40ATI Diamond X1xxx .*ATI.*Diamond.*X1.* 3 1
41ATI Diamond X550 .*ATI.*Diamond X550.* 1 1 41ATI Diamond X550 .*ATI.*Diamond X550.* 1 1
42ATI FireGL 5xxx .*ATI.*FireGL V5.* 1 0 42ATI FireGL 5xxx .*ATI.*FireGL V5.* 1 1
43ATI FireGL .*ATI.*Fire.*GL.* 0 0 43ATI FireGL .*ATI.*Fire.*GL.* 0 1
44ATI FireMV .*ATI.*FireMV.* 0 0 44ATI FireMV .*ATI.*FireMV.* 0 0
45ATI Generic .*ATI.*Generic.* 0 0 45ATI Generic .*ATI.*Generic.* 0 0
46ATI Hercules 9800 .*ATI.*Hercules.*9800.* 1 1 46ATI Hercules 9800 .*ATI.*Hercules.*9800.* 1 1
@@ -176,11 +176,11 @@ NVIDIA GeForce Go 6 .*GeForce Go 6.* 1 1
176NVIDIA GeForce PCX .*GeForce PCX.* 0 1 176NVIDIA GeForce PCX .*GeForce PCX.* 0 1
177NVIDIA Generic .*NVIDIA.*Unknown.* 0 0 177NVIDIA Generic .*NVIDIA.*Unknown.* 0 0
178NVIDIA NV43 .*NVIDIA.*NV43.* 1 1 178NVIDIA NV43 .*NVIDIA.*NV43.* 1 1
179NVIDIA Quadro2 .*Quadro2.* 0 0 179NVIDIA Quadro2 .*Quadro2.* 0 1
180NVIDIA Quadro4 .*Quadro4.* 0 0 180NVIDIA Quadro4 .*Quadro4.* 0 1
181NVIDIA Quadro DCC .*Quadro DCC.* 0 0 181NVIDIA Quadro DCC .*Quadro DCC.* 0 1
182NVIDIA Quadro FX .*Quadro FX.* 1 0 182NVIDIA Quadro FX .*Quadro FX.* 1 1
183NVIDIA Quadro NVS .*Quadro NVS.* 0 0 183NVIDIA Quadro NVS .*Quadro NVS.* 0 1
184NVIDIA RIVA TNT .*RIVA TNT.* 0 0 184NVIDIA RIVA TNT .*RIVA TNT.* 0 0
185S3 .*S3 Graphics.* 0 0 185S3 .*S3 Graphics.* 0 0
186SiS SiS.* 0 0 186SiS SiS.* 0 0
diff --git a/linden/indra/newview/llcontroldef.cpp b/linden/indra/newview/llcontroldef.cpp
index 22c5fac..aed0a82 100644
--- a/linden/indra/newview/llcontroldef.cpp
+++ b/linden/indra/newview/llcontroldef.cpp
@@ -1471,7 +1471,7 @@ void declare_settings()
1471 "URL to use for searches"); 1471 "URL to use for searches");
1472 // Version 2 added [SESSION], must invalidate old saved settings. 1472 // Version 2 added [SESSION], must invalidate old saved settings.
1473 gSavedSettings.declareString("SearchURLSuffix2", 1473 gSavedSettings.declareString("SearchURLSuffix2",
1474 "m=[MATURE]&t=[TEEN]&region=[REGION]&x=[X]&y=[Y]&z=[Z]&session=[SESSION]", 1474 "lang=[LANG]&m=[MATURE]&t=[TEEN]&region=[REGION]&x=[X]&y=[Y]&z=[Z]&session=[SESSION]",
1475 "Parameters added to end of search queries"); 1475 "Parameters added to end of search queries");
1476 1476
1477 // Hide/Show search bar 1477 // Hide/Show search bar
diff --git a/linden/indra/newview/llinventorybridge.cpp b/linden/indra/newview/llinventorybridge.cpp
index 6d981cc..be2bb9a 100644
--- a/linden/indra/newview/llinventorybridge.cpp
+++ b/linden/indra/newview/llinventorybridge.cpp
@@ -3281,7 +3281,7 @@ void rez_attachment(LLViewerInventoryItem* item, LLViewerJointAttachment* attach
3281 { 3281 {
3282 if (iter->second == attachment) 3282 if (iter->second == attachment)
3283 { 3283 {
3284 rez_action->mAttachPt = iter->first; 3284 attach_pt = iter->first;
3285 break; 3285 break;
3286 } 3286 }
3287 } 3287 }
diff --git a/linden/indra/newview/llmediaremotectrl.cpp b/linden/indra/newview/llmediaremotectrl.cpp
index 401fc7e..61c0042 100644
--- a/linden/indra/newview/llmediaremotectrl.cpp
+++ b/linden/indra/newview/llmediaremotectrl.cpp
@@ -74,6 +74,9 @@ void LLMediaRemoteCtrl::build()
74 74
75BOOL LLMediaRemoteCtrl::postBuild() 75BOOL LLMediaRemoteCtrl::postBuild()
76{ 76{
77 mControls = getChild<LLPanel>("media_controls");
78 llassert_always(mControls);
79
77 childSetAction("media_play",LLOverlayBar::toggleMediaPlay,this); 80 childSetAction("media_play",LLOverlayBar::toggleMediaPlay,this);
78 childSetAction("music_play",LLOverlayBar::toggleMusicPlay,this); 81 childSetAction("music_play",LLOverlayBar::toggleMusicPlay,this);
79 childSetAction("media_stop",LLOverlayBar::mediaStop,this); 82 childSetAction("media_stop",LLOverlayBar::mediaStop,this);
@@ -132,7 +135,7 @@ void LLMediaRemoteCtrl::setToolTip(const LLString& msg)
132 LLString mime_type = LLMIMETypes::translate(LLViewerMedia::getMimeType()); 135 LLString mime_type = LLMIMETypes::translate(LLViewerMedia::getMimeType());
133 LLString tool_tip = LLMIMETypes::findToolTip(LLViewerMedia::getMimeType()); 136 LLString tool_tip = LLMIMETypes::findToolTip(LLViewerMedia::getMimeType());
134 LLString play_tip = LLMIMETypes::findPlayTip(LLViewerMedia::getMimeType()); 137 LLString play_tip = LLMIMETypes::findPlayTip(LLViewerMedia::getMimeType());
135 // childSetToolTip("media_stop", getString("stop_label") + "\n" + tool_tip); 138 // childSetToolTip("media_stop", mControls->getString("stop_label") + "\n" + tool_tip);
136 childSetToolTip("media_icon", tool_tip); 139 childSetToolTip("media_icon", tool_tip);
137 childSetToolTip("media_play", play_tip); 140 childSetToolTip("media_play", play_tip);
138} 141}
@@ -151,7 +154,7 @@ void LLMediaRemoteCtrl::enableMediaButtons()
151 LLString media_type = "none/none"; 154 LLString media_type = "none/none";
152 155
153 // Put this in xui file 156 // Put this in xui file
154 LLString media_url = getString("default_tooltip_label"); 157 LLString media_url = mControls->getString("default_tooltip_label");
155 LLParcel* parcel = gParcelMgr->getAgentParcel(); 158 LLParcel* parcel = gParcelMgr->getAgentParcel();
156 159
157 if (gSavedSettings.getBOOL("AudioStreamingVideo")) 160 if (gSavedSettings.getBOOL("AudioStreamingVideo"))
@@ -160,7 +163,7 @@ void LLMediaRemoteCtrl::enableMediaButtons()
160 { 163 {
161 // Set the tooltip 164 // Set the tooltip
162 // Put this text into xui file 165 // Put this text into xui file
163 media_url = parcel->getObscureMedia() ? getString("media_hidden_label") : parcel->getMediaURL(); 166 media_url = parcel->getObscureMedia() ? mControls->getString("media_hidden_label") : parcel->getMediaURL();
164 media_type = parcel->getMediaType(); 167 media_type = parcel->getMediaType();
165 168
166 play_media_enabled = true; 169 play_media_enabled = true;
diff --git a/linden/indra/newview/llmediaremotectrl.h b/linden/indra/newview/llmediaremotectrl.h
index cacb2b3..07c2ee9 100644
--- a/linden/indra/newview/llmediaremotectrl.h
+++ b/linden/indra/newview/llmediaremotectrl.h
@@ -47,8 +47,11 @@ public:
47 47
48 void enableMediaButtons(); 48 void enableMediaButtons();
49 49
50 LLPanel* mControls;
51
50 static void onClickExpandBtn(void* user_data); 52 static void onClickExpandBtn(void* user_data);
51 static void* createVolumePanel(void* data); 53 static void* createVolumePanel(void* data);
54
52 virtual void setToolTip(const LLString& msg); 55 virtual void setToolTip(const LLString& msg);
53 56
54protected: 57protected:
diff --git a/linden/indra/newview/llmimetypes.cpp b/linden/indra/newview/llmimetypes.cpp
index 3fd0590..db00079 100644
--- a/linden/indra/newview/llmimetypes.cpp
+++ b/linden/indra/newview/llmimetypes.cpp
@@ -131,11 +131,15 @@ bool LLMIMETypes::parseMIMETypes(const LLString& xml_filename)
131 } 131 }
132 if (child->hasName("allow_resize")) 132 if (child->hasName("allow_resize"))
133 { 133 {
134 child->getBoolValue( 1, (BOOL*)&( info.mAllowResize ) ); 134 BOOL allow_resize = FALSE;
135 child->getBoolValue( 1, &allow_resize );
136 info.mAllowResize = (bool)allow_resize;
135 } 137 }
136 if (child->hasName("allow_looping")) 138 if (child->hasName("allow_looping"))
137 { 139 {
138 child->getBoolValue( 1, (BOOL*)&( info.mAllowLooping ) ); 140 BOOL allow_looping = FALSE;
141 child->getBoolValue( 1, &allow_looping );
142 info.mAllowLooping = (bool)allow_looping;
139 } 143 }
140 } 144 }
141 sWidgetMap[set_name] = info; 145 sWidgetMap[set_name] = info;
diff --git a/linden/indra/newview/llpaneldirfind.cpp b/linden/indra/newview/llpaneldirfind.cpp
index 5d34d47..294c535 100644
--- a/linden/indra/newview/llpaneldirfind.cpp
+++ b/linden/indra/newview/llpaneldirfind.cpp
@@ -297,6 +297,18 @@ std::string LLPanelDirFindAll::getSearchURLSuffix(bool mature_in)
297 substring = "[SESSION]"; 297 substring = "[SESSION]";
298 url.replace(url.find(substring), substring.length(), session_string); 298 url.replace(url.find(substring), substring.length(), session_string);
299 299
300 // set the currently selected lanaguage by asking the pref setting
301 std::string language_string = LLUI::sConfigGroup->getString( "Language" );
302 if ( language_string == "default" )
303 {
304 // if "default system language" setting used, ask again
305 // (we can't do this directly since it can vary if you install
306 // under one language and select a different one using prefs)
307 language_string = gSavedSettings.getString( "SystemLanguage" );
308 }
309 std::string language_tag = "[LANG]";
310 url.replace( url.find( language_tag ), language_tag.length(), language_string );
311
300 return url; 312 return url;
301} 313}
302 314
diff --git a/linden/indra/newview/llpanellandmedia.cpp b/linden/indra/newview/llpanellandmedia.cpp
index c8f79b5..cb8e8c5 100644
--- a/linden/indra/newview/llpanellandmedia.cpp
+++ b/linden/indra/newview/llpanellandmedia.cpp
@@ -124,7 +124,6 @@ BOOL LLPanelLandMedia::postBuild()
124 mMediaTypeCombo = LLUICtrlFactory::getComboBoxByName(this, "media type"); 124 mMediaTypeCombo = LLUICtrlFactory::getComboBoxByName(this, "media type");
125 childSetCommitCallback("media type", onCommitType, this); 125 childSetCommitCallback("media type", onCommitType, this);
126 populateMIMECombo(); 126 populateMIMECombo();
127 mMediaTypeCombo->sortByName();
128 127
129 mMediaWidthCtrl = LLUICtrlFactory::getSpinnerByName(this, "media_size_width"); 128 mMediaWidthCtrl = LLUICtrlFactory::getSpinnerByName(this, "media_size_width");
130 childSetCommitCallback("media_size_width", onCommitAny, this); 129 childSetCommitCallback("media_size_width", onCommitAny, this);
@@ -275,14 +274,28 @@ void LLPanelLandMedia::refresh()
275 274
276void LLPanelLandMedia::populateMIMECombo() 275void LLPanelLandMedia::populateMIMECombo()
277{ 276{
277 LLString default_mime_type = "none/none";
278 LLString default_label;
278 LLMIMETypes::mime_widget_set_map_t::const_iterator it; 279 LLMIMETypes::mime_widget_set_map_t::const_iterator it;
279 for (it = LLMIMETypes::sWidgetMap.begin(); it != LLMIMETypes::sWidgetMap.end(); ++it) 280 for (it = LLMIMETypes::sWidgetMap.begin(); it != LLMIMETypes::sWidgetMap.end(); ++it)
280 { 281 {
281 const LLString& mime_type = it->first; 282 const LLString& mime_type = it->first;
282 const LLMIMETypes::LLMIMEWidgetSet& info = it->second; 283 const LLMIMETypes::LLMIMEWidgetSet& info = it->second;
283 mMediaTypeCombo->add(info.mLabel, mime_type); 284 if (info.mDefaultMimeType == default_mime_type)
285 {
286 // Add this label at the end to make UI look cleaner
287 default_label = info.mLabel;
288 }
289 else
290 {
291 mMediaTypeCombo->add(info.mLabel, mime_type);
292 }
284 } 293 }
294 // *TODO: The sort order is based on std::map key, which is
295 // ASCII-sorted and is wrong in other languages. TRANSLATE
296 mMediaTypeCombo->add( default_label, default_mime_type, ADD_BOTTOM );
285} 297}
298
286void LLPanelLandMedia::setMediaType(const LLString& mime_type) 299void LLPanelLandMedia::setMediaType(const LLString& mime_type)
287{ 300{
288 LLParcel *parcel = mParcel->getParcel(); 301 LLParcel *parcel = mParcel->getParcel();
@@ -298,7 +311,11 @@ void LLPanelLandMedia::setMediaURL(const LLString& media_url)
298{ 311{
299 mMediaURLEdit->setText(media_url); 312 mMediaURLEdit->setText(media_url);
300 mMediaURLEdit->onCommit(); 313 mMediaURLEdit->onCommit();
314}
301 315
316LLString LLPanelLandMedia::getMediaURL()
317{
318 return mMediaURLEdit->getText();
302} 319}
303 320
304// static 321// static
@@ -314,8 +331,9 @@ void LLPanelLandMedia::onCommitType(LLUICtrl *ctrl, void *userdata)
314 onCommitAny(ctrl, userdata); 331 onCommitAny(ctrl, userdata);
315 332
316} 333}
334
317// static 335// static
318void LLPanelLandMedia::onCommitAny(LLUICtrl *ctrl, void *userdata) 336void LLPanelLandMedia::onCommitAny(LLUICtrl*, void *userdata)
319{ 337{
320 LLPanelLandMedia *self = (LLPanelLandMedia *)userdata; 338 LLPanelLandMedia *self = (LLPanelLandMedia *)userdata;
321 339
diff --git a/linden/indra/newview/llpanellandmedia.h b/linden/indra/newview/llpanellandmedia.h
index 8efa0f5..b2b0abe 100644
--- a/linden/indra/newview/llpanellandmedia.h
+++ b/linden/indra/newview/llpanellandmedia.h
@@ -48,7 +48,7 @@ public:
48 void refresh(); 48 void refresh();
49 void setMediaType(const LLString& media_type); 49 void setMediaType(const LLString& media_type);
50 void setMediaURL(const LLString& media_type); 50 void setMediaURL(const LLString& media_type);
51 const LLString& getMediaURL() { return mMediaURLEdit->getText(); } 51 LLString getMediaURL();
52 52
53private: 53private:
54 void populateMIMECombo(); 54 void populateMIMECombo();
diff --git a/linden/indra/newview/llpreviewtexture.cpp b/linden/indra/newview/llpreviewtexture.cpp
index b054db5..b8fa668 100644
--- a/linden/indra/newview/llpreviewtexture.cpp
+++ b/linden/indra/newview/llpreviewtexture.cpp
@@ -291,7 +291,7 @@ void LLPreviewTexture::draw()
291 291
292 292
293// virtual 293// virtual
294BOOL LLPreviewTexture::canSaveAs() 294BOOL LLPreviewTexture::canSaveAs() const
295{ 295{
296 return mIsCopyable && !mLoadingFullImage && mImage.notNull() && !mImage->isMissingAsset(); 296 return mIsCopyable && !mLoadingFullImage && mImage.notNull() && !mImage->isMissingAsset();
297} 297}
diff --git a/linden/indra/newview/llpreviewtexture.h b/linden/indra/newview/llpreviewtexture.h
index 4930368..d1e9bb0 100644
--- a/linden/indra/newview/llpreviewtexture.h
+++ b/linden/indra/newview/llpreviewtexture.h
@@ -59,7 +59,7 @@ public:
59 59
60 virtual void draw(); 60 virtual void draw();
61 61
62 virtual BOOL canSaveAs(); 62 virtual BOOL canSaveAs() const;
63 virtual void saveAs(); 63 virtual void saveAs();
64 64
65 virtual void loadAsset(); 65 virtual void loadAsset();
diff --git a/linden/indra/newview/lltexturefetch.cpp b/linden/indra/newview/lltexturefetch.cpp
index 1cc28d2..1b02970 100644
--- a/linden/indra/newview/lltexturefetch.cpp
+++ b/linden/indra/newview/lltexturefetch.cpp
@@ -91,7 +91,7 @@ private:
91 LLUUID mID; 91 LLUUID mID;
92 }; 92 };
93 93
94 class HTTPGetResponder : public LLCurl::Responder 94 class HTTPGetResponder : public LLHTTPClient::Responder
95 { 95 {
96 public: 96 public:
97 HTTPGetResponder(LLTextureFetch* fetcher, const LLUUID& id) 97 HTTPGetResponder(LLTextureFetch* fetcher, const LLUUID& id)
diff --git a/linden/indra/newview/llviewerimage.h b/linden/indra/newview/llviewerimage.h
index 732c773..c90a672 100644
--- a/linden/indra/newview/llviewerimage.h
+++ b/linden/indra/newview/llviewerimage.h
@@ -285,7 +285,7 @@ public:
285 void setKnownDrawSize(S32 width, S32 height); 285 void setKnownDrawSize(S32 width, S32 height);
286 286
287 void setIsMissingAsset(); 287 void setIsMissingAsset();
288 BOOL isMissingAsset() { return mIsMissingAsset; } 288 BOOL isMissingAsset() const { return mIsMissingAsset; }
289 289
290 bool hasCallbacks() { return mLoadedCallbackList.empty() ? false : true; } 290 bool hasCallbacks() { return mLoadedCallbackList.empty() ? false : true; }
291 291
diff --git a/linden/indra/newview/llviewermedia.cpp b/linden/indra/newview/llviewermedia.cpp
index 0cc4e2d..0429a3c 100644
--- a/linden/indra/newview/llviewermedia.cpp
+++ b/linden/indra/newview/llviewermedia.cpp
@@ -147,6 +147,9 @@ void LLViewerMediaImpl::play(const std::string& media_url,
147 return; 147 return;
148 } 148 }
149 149
150 // Store the URL and Mime Type
151 mMediaURL = media_url;
152
150 if ((media_width != 0) && (media_height != 0)) 153 if ((media_width != 0) && (media_height != 0))
151 { 154 {
152 mMediaSource->setRequestedMediaSize(media_width, media_height); 155 mMediaSource->setRequestedMediaSize(media_width, media_height);
@@ -157,10 +160,6 @@ void LLViewerMediaImpl::play(const std::string& media_url,
157 mMediaSource->addObserver( this ); 160 mMediaSource->addObserver( this );
158 mMediaSource->navigateTo( media_url ); 161 mMediaSource->navigateTo( media_url );
159 mMediaSource->addCommand(LLMediaBase::COMMAND_START); 162 mMediaSource->addCommand(LLMediaBase::COMMAND_START);
160
161 // Store the URL and Mime Type
162 mMediaURL = media_url;
163
164} 163}
165 164
166void LLViewerMediaImpl::stop() 165void LLViewerMediaImpl::stop()
diff --git a/linden/indra/newview/llviewerparcelmedia.cpp b/linden/indra/newview/llviewerparcelmedia.cpp
index cd0197c..2925b8d 100644
--- a/linden/indra/newview/llviewerparcelmedia.cpp
+++ b/linden/indra/newview/llviewerparcelmedia.cpp
@@ -274,7 +274,8 @@ void LLViewerParcelMedia::processParcelMediaCommandMessage( LLMessageSystem *msg
274 } 274 }
275 else 275 else
276 // play 276 // play
277 if( command == PARCEL_MEDIA_COMMAND_PLAY ) 277 if(( command == PARCEL_MEDIA_COMMAND_PLAY ) ||
278 ( command == PARCEL_MEDIA_COMMAND_LOOP ))
278 { 279 {
279 if (LLViewerMedia::isMediaPaused()) 280 if (LLViewerMedia::isMediaPaused())
280 { 281 {
@@ -287,16 +288,6 @@ void LLViewerParcelMedia::processParcelMediaCommandMessage( LLMessageSystem *msg
287 } 288 }
288 } 289 }
289 else 290 else
290 // loop
291 if( command == PARCEL_MEDIA_COMMAND_LOOP )
292 {
293 //llinfos << ">>> LLMediaEngine::process_parcel_media with command = " <<( '0' + command ) << llendl;
294
295 // huh? what is play?
296 //convertImageAndLoadUrl( play );
297 //convertImageAndLoadUrl( true, false, std::string() );
298 }
299 else
300 // unload 291 // unload
301 if( command == PARCEL_MEDIA_COMMAND_UNLOAD ) 292 if( command == PARCEL_MEDIA_COMMAND_UNLOAD )
302 { 293 {
@@ -354,10 +345,19 @@ void LLViewerParcelMedia::processParcelMediaUpdate( LLMessageSystem *msg, void *
354 (parcel->getMediaHeight() == media_height) && 345 (parcel->getMediaHeight() == media_height) &&
355 (parcel->getMediaAutoScale() == media_auto_scale) && 346 (parcel->getMediaAutoScale() == media_auto_scale) &&
356 (parcel->getMediaLoop() == media_loop)); 347 (parcel->getMediaLoop() == media_loop));
357 }
358 348
359 if (!same) 349 if (!same)
360 LLViewerMedia::play(media_url, media_type, media_id, 350 {
361 media_auto_scale, media_width, media_height, 351 // temporarily store these new values in the parcel
362 media_loop); 352 parcel->setMediaURL(media_url);
353 parcel->setMediaType(media_type.c_str());
354 parcel->setMediaID(media_id);
355 parcel->setMediaWidth(media_width);
356 parcel->setMediaHeight(media_height);
357 parcel->setMediaAutoScale(media_auto_scale);
358 parcel->setMediaLoop(media_loop);
359
360 play(parcel);
361 }
362 }
363} 363}
diff --git a/linden/indra/newview/llviewerpartsource.cpp b/linden/indra/newview/llviewerpartsource.cpp
index f54495a..d0ef2aa 100644
--- a/linden/indra/newview/llviewerpartsource.cpp
+++ b/linden/indra/newview/llviewerpartsource.cpp
@@ -84,7 +84,10 @@ LLUUID LLViewerPartSource::getImageUUID() const
84} 84}
85void LLViewerPartSource::setStart() 85void LLViewerPartSource::setStart()
86{ 86{
87 mDelay = 99 ; 87 //cancel delaying to start a new added particle source, because some particle source just emits for a short time.
88 //however, canceling this might cause overall particle emmitting fluctuate for a while because the new added source jumps to
89 //the current particle emmitting settings instantly. -->bao
90 mDelay = 0 ; //99
88} 91}
89 92
90LLViewerPartSourceScript::LLViewerPartSourceScript(LLViewerObject *source_objp) : 93LLViewerPartSourceScript::LLViewerPartSourceScript(LLViewerObject *source_objp) :
diff --git a/linden/indra/newview/res/newViewRes.rc b/linden/indra/newview/res/newViewRes.rc
index fafbc2d..ed4539f 100644
--- a/linden/indra/newview/res/newViewRes.rc
+++ b/linden/indra/newview/res/newViewRes.rc
@@ -231,8 +231,8 @@ TOOLMEDIAOPEN CURSOR "toolmediaopen.cur"
231// 231//
232 232
233VS_VERSION_INFO VERSIONINFO 233VS_VERSION_INFO VERSIONINFO
234 FILEVERSION 1,19,1,0 234 FILEVERSION 1,19,1,1
235 PRODUCTVERSION 1,19,1,0 235 PRODUCTVERSION 1,19,1,1
236 FILEFLAGSMASK 0x3fL 236 FILEFLAGSMASK 0x3fL
237#ifdef _DEBUG 237#ifdef _DEBUG
238 FILEFLAGS 0x1L 238 FILEFLAGS 0x1L
@@ -249,12 +249,12 @@ BEGIN
249 BEGIN 249 BEGIN
250 VALUE "CompanyName", "Linden Lab" 250 VALUE "CompanyName", "Linden Lab"
251 VALUE "FileDescription", "Second Life" 251 VALUE "FileDescription", "Second Life"
252 VALUE "FileVersion", "1.19.1.0" 252 VALUE "FileVersion", "1.19.1.1"
253 VALUE "InternalName", "Second Life" 253 VALUE "InternalName", "Second Life"
254 VALUE "LegalCopyright", "Copyright © 2001-2008, Linden Research, Inc." 254 VALUE "LegalCopyright", "Copyright © 2001-2008, Linden Research, Inc."
255 VALUE "OriginalFilename", "SecondLife.exe" 255 VALUE "OriginalFilename", "SecondLife.exe"
256 VALUE "ProductName", "Second Life" 256 VALUE "ProductName", "Second Life"
257 VALUE "ProductVersion", "1.19.1.0" 257 VALUE "ProductVersion", "1.19.1.1"
258 END 258 END
259 END 259 END
260 BLOCK "VarFileInfo" 260 BLOCK "VarFileInfo"
diff --git a/linden/indra/newview/skins/xui/en-us/floater_about_land.xml b/linden/indra/newview/skins/xui/en-us/floater_about_land.xml
index 7e7c2f8..13a70eb 100644
--- a/linden/indra/newview/skins/xui/en-us/floater_about_land.xml
+++ b/linden/indra/newview/skins/xui/en-us/floater_about_land.xml
@@ -657,7 +657,19 @@
657 <panel border="false" bottom="-349" enabled="true" follows="left|top|right|bottom" 657 <panel border="false" bottom="-349" enabled="true" follows="left|top|right|bottom"
658 height="363" label="Media" left="1" mouse_opaque="true" 658 height="363" label="Media" left="1" mouse_opaque="true"
659 name="land_media_panel" width="458"> 659 name="land_media_panel" width="458">
660 <text type="string" length="1" bottom="-25" follows="left|top" font="SansSerifSmall" halign="left" height="16" 660 <text type="string" length="1" bottom="-25" follows="left|top" font="SansSerifSmall" halign="left"
661 height="16" left="10" name="at URL:" width="65">
662 Media URL:
663 </text>
664 <line_editor bottom_delta="0" follows="left|top|right" font="SansSerifSmall"
665 height="16" left="150"
666 name="media_url" right="-15"
667 select_all_on_focus_received="true" select_on_focus="true"
668 text_readonly_color="0.576471 0.662745 0.835294 1" />
669 <button bottom_delta="0" follows="left|top" font="SansSerifSmall" halign="center"
670 height="16" label="Set..." label_selected="Set..." mouse_opaque="true"
671 name="set_media_url" left="80" scale_image="true" width="60" />
672 <text type="string" length="1" bottom_delta="-25" follows="left|top" font="SansSerifSmall" halign="left" height="16"
661 left="10" mouse_opaque="true" name="with media:" width="65"> 673 left="10" mouse_opaque="true" name="with media:" width="65">
662 Media Type: 674 Media Type:
663 </text> 675 </text>
@@ -668,23 +680,12 @@
668 <text bottom_delta="0" follows="left|top" font="SansSerifSmall" height="16" 680 <text bottom_delta="0" follows="left|top" font="SansSerifSmall" height="16"
669 left_delta="130" name="mime_type" width="200" /> 681 left_delta="130" name="mime_type" width="200" />
670 <text type="string" length="1" bottom_delta="-20" follows="left|top" font="SansSerifSmall" halign="left" 682 <text type="string" length="1" bottom_delta="-20" follows="left|top" font="SansSerifSmall" halign="left"
671 height="16" left="10" name="at URL:" width="65"> 683 height="16" left="10" name="Description:" width="65">
672 Media URL:
673 </text>
674 <line_editor bottom_delta="0" follows="left|top" font="SansSerifSmall" height="16" left="80"
675 max_length="255" name="media_url" right="-80"
676 select_all_on_focus_received="true" select_on_focus="true"
677 text_readonly_color="0.576471 0.662745 0.835294 1" />
678 <button bottom_delta="0" follows="left|top" font="SansSerifSmall" halign="center"
679 height="16" label="Set..." label_selected="Set..." mouse_opaque="true"
680 name="set_media_url" right="-12" scale_image="true" width="60" />
681 <text type="string" length="1" bottom_delta="-20" follows="left|top" font="SansSerifSmall" halign="left"
682 height="16" left="10" name="Description:" width="364">
683 Description: 684 Description:
684 </text> 685 </text>
685 <line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="0" 686 <line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="0"
686 follows="left|top" font="SansSerifSmall" height="16" left="80" 687 follows="left|top|right" font="SansSerifSmall" height="16" left="80"
687 max_length="255" name="url_description" right="-80" 688 max_length="255" name="url_description" right="-15"
688 select_all_on_focus_received="true" select_on_focus="true" 689 select_all_on_focus_received="true" select_on_focus="true"
689 text_readonly_color="0.576471 0.662745 0.835294 1" 690 text_readonly_color="0.576471 0.662745 0.835294 1"
690 tool_tip="Text displayed next to play/load button" /> 691 tool_tip="Text displayed next to play/load button" />
@@ -752,7 +753,7 @@ Options:
752 Music URL: 753 Music URL:
753 </text> 754 </text>
754 <line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="0" 755 <line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="0"
755 enabled="true" follows="left|top" font="SansSerifSmall" 756 enabled="true" follows="left|top|right" font="SansSerifSmall"
756 handle_edit_keys_directly="false" height="16" left="80" max_length="255" 757 handle_edit_keys_directly="false" height="16" left="80" max_length="255"
757 mouse_opaque="true" name="music_url" right="-15" 758 mouse_opaque="true" name="music_url" right="-15"
758 select_all_on_focus_received="true" select_on_focus="true" 759 select_all_on_focus_received="true" select_on_focus="true"
diff --git a/linden/indra/newview/skins/xui/en-us/panel_media_controls.xml b/linden/indra/newview/skins/xui/en-us/panel_media_controls.xml
index da1b519..9a39f0e 100644
--- a/linden/indra/newview/skins/xui/en-us/panel_media_controls.xml
+++ b/linden/indra/newview/skins/xui/en-us/panel_media_controls.xml
@@ -57,4 +57,28 @@
57 <button bottom="-22" control_name="ShowVolumeSettingsPopup" height="22" label="" 57 <button bottom="-22" control_name="ShowVolumeSettingsPopup" height="22" label=""
58 left_delta="25" name="expand" scale_image="true" toggle="true" 58 left_delta="25" name="expand" scale_image="true" toggle="true"
59 tool_tip="Adjust individual volume levels" width="22" /> 59 tool_tip="Adjust individual volume levels" width="22" />
60 <string name="play_label">
61 Play
62 </string>
63 <string name="stop_label">
64 Stop
65 </string>
66 <string name="pause_label">
67 Pause
68 </string>
69 <string name="default_tooltip_label">
70 No Media Specified
71 </string>
72 <string name="media_hidden_label">
73 (URL hidden by parcel owner)
74 </string>
75 <string name="media_icon_tooltip_web">
76 This location displays content from the World Wide Web. Click the Play button to display Web content.
77 </string>
78 <string name="media_icon_tooltip_movie">
79 This location displays Video content. Click the Play button to play the video.
80 </string>
81 <string name="media_play_tooltip">
82 Display Web content at this location.
83 </string>
60</panel> 84</panel>
diff --git a/linden/indra/newview/skins/xui/en-us/panel_media_remote.xml b/linden/indra/newview/skins/xui/en-us/panel_media_remote.xml
index e3c3427..8f37b89 100644
--- a/linden/indra/newview/skins/xui/en-us/panel_media_remote.xml
+++ b/linden/indra/newview/skins/xui/en-us/panel_media_remote.xml
@@ -4,28 +4,4 @@
4 name="media_remote" use_bounding_rect="true" width="250"> 4 name="media_remote" use_bounding_rect="true" width="250">
5 <panel bottom="0" filename="panel_bg_tab.xml" height="22" left="0" width="250" /> 5 <panel bottom="0" filename="panel_bg_tab.xml" height="22" left="0" width="250" />
6 <panel bottom="0" filename="panel_media_controls.xml" height="20" left="0" width="250" /> 6 <panel bottom="0" filename="panel_media_controls.xml" height="20" left="0" width="250" />
7 <string name="play_label">
8 Play
9 </string>
10 <string name="stop_label">
11 Stop
12 </string>
13 <string name="pause_label">
14 Pause
15 </string>
16 <string name="default_tooltip_label">
17 No Media Specified
18 </string>
19 <string name="media_hidden_label">
20 (URL hidden by parcel owner)
21 </string>
22 <string name="media_icon_tooltip_web">
23 This location displays content from the World Wide Web. Click the Play button to display Web content.
24 </string>
25 <string name="media_icon_tooltip_movie">
26 This location displays Video content. Click the Play button to play the video.
27 </string>
28 <string name="media_play_tooltip">
29 Display Web content at this location.
30 </string>
31</panel> 7</panel>