diff --git a/.hgtags b/.hgtags
index a4fb6ce9f80c89f13d812b8466a457d6d6dc5d24..75ece0c9b419ee269d0a124500fc33de41215f5a 100755
--- a/.hgtags
+++ b/.hgtags
@@ -553,3 +553,4 @@ ab2ec5c5423b277d23fd0511ce50c15123ff2e03 6.2.3-release
 67297f9902857e357570c44722ad84de3aff974e 6.2.4-release
 9777aec6dc4a30a24537297ac040861ce16b82ae 6.3.0-release
 ece699718f163921717bb95a6131e94af4c4138f 6.3.1-release
+07f5d5bc9faebb45695853d40a9549773db816c0 6.3.2-release
diff --git a/autobuild.xml b/autobuild.xml
index 5f072512c1822073e92618f18d5b459c41cbf060..3983e123130cb07872635916f36b574be17adf40 100644
--- a/autobuild.xml
+++ b/autobuild.xml
@@ -3138,9 +3138,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>aaf04f5ed1d28477781d976dc04871ee</string>
+              <string>42066e2447c7a3359784438d16510992</string>
               <key>url</key>
-              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/31904/266163/viewer_manager-2.0.524157-darwin64-524157.tar.bz2</string>
+              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/40539/348124/viewer_manager-2.0.529188-darwin64-529188.tar.bz2</string>
             </map>
             <key>name</key>
             <string>darwin64</string>
@@ -3162,9 +3162,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>4604624f11b215b052f4a840f4da4bf8</string>
+              <string>ca230428635ce13cb7ace0f9522f8546</string>
               <key>url</key>
-              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/31906/266177/viewer_manager-2.0.524157-windows-524157.tar.bz2</string>
+              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/40538/348130/viewer_manager-2.0.529188-windows-529188.tar.bz2</string>
             </map>
             <key>name</key>
             <string>windows</string>
@@ -3175,7 +3175,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
         <key>source_type</key>
         <string>hg</string>
         <key>version</key>
-        <string>2.0.524157</string>
+        <string>2.0.529188</string>
       </map>
       <key>vlc-bin</key>
       <map>
diff --git a/doc/contributions.txt b/doc/contributions.txt
index 317e586dc50036a85e5f26b2366499e3d215c0e0..eb8ae60cb79a1adc4ff0e073b7fd33d5dd78c29c 100755
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -1460,6 +1460,7 @@ Tonya Souther
 	STORM-1905
 	BUG-3875
 	BUG-3968
+	OPEN-345
 Torben Trautman
 TouchaHoney Perhaps
 TraductoresAnonimos Alter
diff --git a/indra/cmake/BuildPackagesInfo.cmake b/indra/cmake/BuildPackagesInfo.cmake
index 93461cea953c54f0d0b17bb3670c81df841186bb..4314cca33d5c4ed594cf7a4395c2bc80e37c0d14 100644
--- a/indra/cmake/BuildPackagesInfo.cmake
+++ b/indra/cmake/BuildPackagesInfo.cmake
@@ -8,7 +8,7 @@ include(Python)
 # building in an IDE, it probably isn't. Set it explicitly using
 # run_build_test.py.
 add_custom_command(OUTPUT packages-info.txt
-  COMMENT Generating packages-info.txt for the about box
+  COMMENT "Generating packages-info.txt for the about box"
   MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/../autobuild.xml
   DEPENDS ${CMAKE_SOURCE_DIR}/../scripts/packages-formatter.py
           ${CMAKE_SOURCE_DIR}/../autobuild.xml
diff --git a/indra/llcommon/llfasttimer.h b/indra/llcommon/llfasttimer.h
index 2024d707da5d3a0bbfe1e2a89a6dffe5b69cafdc..d463fc9d653eaf5f6eb0691b8b7159ad3d40a94d 100644
--- a/indra/llcommon/llfasttimer.h
+++ b/indra/llcommon/llfasttimer.h
@@ -199,14 +199,10 @@ class BlockTimer
 	friend BlockTimer timeThisBlock(BlockTimerStatHandle&); 
 
 	BlockTimer(BlockTimerStatHandle& timer);
-#if !defined(MSC_VER) || MSC_VER < 1700
-	// Visual Studio 2010 has a bug where capturing an object returned by value
-	// into a local reference requires access to the copy constructor at the call site.
-	// This appears to be fixed in 2012.
-public:
-#endif
+
 	// no-copy
-	BlockTimer(const BlockTimer& other) {};
+	BlockTimer(const BlockTimer& other);
+	BlockTimer& operator=(const BlockTimer& other);
 
 private:
 	U64						mStartTime;
diff --git a/indra/llcommon/llmortician.cpp b/indra/llcommon/llmortician.cpp
index 287f096eaec23f22efa86e4a983cc13a3135c35d..93c7d520f2b46325fe73fb68178f2cd01d7925f8 100644
--- a/indra/llcommon/llmortician.cpp
+++ b/indra/llcommon/llmortician.cpp
@@ -37,6 +37,42 @@ LLMortician::~LLMortician()
 	sGraveyard.remove(this);
 }
 
+U32 LLMortician::logClass(std::stringstream &str)
+{
+    U32 size = sGraveyard.size();
+    str << "Mortician graveyard count: " << size;
+    str << " Zealous: " << (sDestroyImmediate ? "True" : "False");
+    if (size == 0)
+    {
+        return size;
+    }
+    str << " Output:\n";
+    std::list<LLMortician*>::iterator iter = sGraveyard.begin();
+    std::list<LLMortician*>::iterator end = sGraveyard.end();
+    while (iter!=end)
+    {
+        LLMortician* dead = *iter;
+        iter++;
+        // Be as detailed and safe as possible to figure out issues
+        str << "Pointer: " << dead;
+        if (dead)
+        {
+            try
+            {
+                str << " Is dead: " << (dead->isDead() ? "True" : "False");
+                str << " Name: " << typeid(*dead).name();
+            }
+            catch (...)
+            {
+
+            }
+        }
+        str << "\n";
+    }
+    str << "--------------------------------------------";
+    return size;
+}
+
 void LLMortician::updateClass() 
 {
 	while (!sGraveyard.empty()) 
diff --git a/indra/llcommon/llmortician.h b/indra/llcommon/llmortician.h
index 9517e2db5e2eabb1424f7d87f637f20bb50b311d..41cb49fab15d73ab8be712ca287f4cbab4c17d36 100644
--- a/indra/llcommon/llmortician.h
+++ b/indra/llcommon/llmortician.h
@@ -34,6 +34,8 @@ class LL_COMMON_API LLMortician
 {
 public:
 	LLMortician() { mIsDead = FALSE; }
+	static U32 graveyardCount() { return sGraveyard.size(); };
+	static U32 logClass(std::stringstream &str);
 	static void updateClass();
 	virtual ~LLMortician();
 	void die();
diff --git a/indra/llui/lltransutil.cpp b/indra/llui/lltransutil.cpp
index b1534bb5e4a7daa13c3c983f202b4a8cfb166b50..5da722a72bb8fd1815c5ee3ddcdb4cb58926f765 100644
--- a/indra/llui/lltransutil.cpp
+++ b/indra/llui/lltransutil.cpp
@@ -44,6 +44,7 @@ bool LLTransUtil::parseStrings(const std::string& xml_filename, const std::set<s
 	bool success = LLUICtrlFactory::getLayeredXMLNode(xml_filename, root, LLDir::ALL_SKINS);
 	if (!success)
 	{
+		gDirUtilp->dumpCurrentDirectories(LLError::LEVEL_WARN);
 		LL_ERRS() << "Couldn't load string table " << xml_filename << ". Please reinstall viewer from  https://secondlife.com/support/downloads/ and contact https://support.secondlife.com if issue persists after reinstall." << LL_ENDL;
 		return false;
 	}
diff --git a/indra/llvfs/lldir.cpp b/indra/llvfs/lldir.cpp
index 18836e54b0fd19a991f1bf820aa41672c2a955e7..2076ce334e426a221ed4a48d2a2832466cf6b4e4 100644
--- a/indra/llvfs/lldir.cpp
+++ b/indra/llvfs/lldir.cpp
@@ -1033,24 +1033,24 @@ bool LLDir::setCacheDir(const std::string &path)
 	}
 }
 
-void LLDir::dumpCurrentDirectories()
+void LLDir::dumpCurrentDirectories(LLError::ELevel level)
 {
-	LL_DEBUGS("AppInit","Directories") << "Current Directories:" << LL_ENDL;
-
-	LL_DEBUGS("AppInit","Directories") << "  CurPath:               " << getCurPath() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  AppName:               " << getAppName() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  ExecutableFilename:    " << getExecutableFilename() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  ExecutableDir:         " << getExecutableDir() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  ExecutablePathAndName: " << getExecutablePathAndName() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  WorkingDir:            " << getWorkingDir() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  AppRODataDir:          " << getAppRODataDir() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  OSUserDir:             " << getOSUserDir() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  OSUserAppDir:          " << getOSUserAppDir() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  LindenUserDir:         " << getLindenUserDir() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  TempDir:               " << getTempDir() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  CAFile:				 " << getCAFile() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  SkinBaseDir:           " << getSkinBaseDir() << LL_ENDL;
-	LL_DEBUGS("AppInit","Directories") << "  SkinDir:               " << getSkinDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit","Directories") << "Current Directories:" << LL_ENDL;
+
+	LL_VLOGS(level, "AppInit", "Directories") << "  CurPath:               " << getCurPath() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  AppName:               " << getAppName() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  ExecutableFilename:    " << getExecutableFilename() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  ExecutableDir:         " << getExecutableDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  ExecutablePathAndName: " << getExecutablePathAndName() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  WorkingDir:            " << getWorkingDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  AppRODataDir:          " << getAppRODataDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  OSUserDir:             " << getOSUserDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  OSUserAppDir:          " << getOSUserAppDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  LindenUserDir:         " << getLindenUserDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  TempDir:               " << getTempDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  CAFile:                " << getCAFile() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  SkinBaseDir:           " << getSkinBaseDir() << LL_ENDL;
+	LL_VLOGS(level, "AppInit", "Directories") << "  SkinDir:               " << getSkinDir() << LL_ENDL;
 }
 
 void LLDir::append(std::string& destpath, const std::string& name) const
diff --git a/indra/llvfs/lldir.h b/indra/llvfs/lldir.h
index e233413a7f422a7010a7fa1eccc5a5d8bd5e6701..38e204ef04729a9657a74f45a8540ae4a3083ce0 100644
--- a/indra/llvfs/lldir.h
+++ b/indra/llvfs/lldir.h
@@ -194,7 +194,7 @@ class LLDir
 	virtual bool setCacheDir(const std::string &path);
 	virtual void updatePerAccountChatLogsDir();
 
-	virtual void dumpCurrentDirectories();
+	virtual void dumpCurrentDirectories(LLError::ELevel level = LLError::LEVEL_DEBUG);
 
 	// Utility routine
 	std::string buildSLOSCacheDir() const;
diff --git a/indra/llwindow/llappdelegate-objc.h b/indra/llwindow/llappdelegate-objc.h
index 6daf1ac55b98c6f080c49deb483d34d7ff8e934d..0b38647b4a75930691ef41559d43a6e972270555 100644
--- a/indra/llwindow/llappdelegate-objc.h
+++ b/indra/llwindow/llappdelegate-objc.h
@@ -46,3 +46,6 @@
 - (void) languageUpdated;
 - (bool) romanScript;
 @end
+
+@interface LLApplication : NSApplication
+@end
diff --git a/indra/llwindow/llopenglview-objc.mm b/indra/llwindow/llopenglview-objc.mm
index 33eed7227af3ca0cd333ad1e9f75368eb5c8f04d..1990499459d966dcea3bb2c2760354469a1f06e7 100644
--- a/indra/llwindow/llopenglview-objc.mm
+++ b/indra/llwindow/llopenglview-objc.mm
@@ -509,15 +509,6 @@ attributedStringInfo getSegments(NSAttributedString *str)
     {
         [[self inputContext] handleEvent:theEvent];
     }
-    
-    // OS X intentionally does not send us key-up information on cmd-key combinations.
-    // This behaviour is not a bug, and only applies to cmd-combinations (no others).
-    // Since SL assumes we receive those, we fake it here.
-    if (mModifiers & NSCommandKeyMask && !mHasMarkedText)
-    {
-        eventData.mKeyEvent = NativeKeyEventData::KEYUP;
-        callKeyUp(&eventData, [theEvent keyCode], mModifiers);
-    }
 }
 
 - (void)flagsChanged:(NSEvent *)theEvent
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index 7916e0a8b16f7eae73a4dfdecd5841eb7f59bf90..f216c3a593e6cc117bc5138b0ef134d166d1ec50 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -2116,7 +2116,7 @@ if (DARWIN)
   set(MACOSX_BUNDLE_BUNDLE_VERSION "${VIEWER_SHORT_VERSION}${VIEWER_MACOSX_PHASE}${VIEWER_REVISION}")
   set(MACOSX_BUNDLE_COPYRIGHT "Copyright © Linden Research, Inc. 2019")
   set(MACOSX_BUNDLE_NSMAIN_NIB_FILE "SecondLife.nib")
-  set(MACOSX_BUNDLE_NSPRINCIPAL_CLASS "NSApplication")
+  set(MACOSX_BUNDLE_NSPRINCIPAL_CLASS "LLApplication")
 
   # https://blog.kitware.com/upcoming-in-cmake-2-8-12-osx-rpath-support/
   set(CMAKE_MACOSX_RPATH 1)
diff --git a/indra/newview/installers/windows/lang_en-us.nsi b/indra/newview/installers/windows/lang_en-us.nsi
index fd4d340816abc487166547c2ec01d4a9ac58cf88..ea680f08e4252ea5aed981ec13ed961eb9cfc621 100644
Binary files a/indra/newview/installers/windows/lang_en-us.nsi and b/indra/newview/installers/windows/lang_en-us.nsi differ
diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp
index ef1d7974d61e09c6a3ad0c4a14504c256c272b0b..a36e82b155f2c2ecf9f05f28a3c42f90b3c6e473 100644
--- a/indra/newview/llagent.cpp
+++ b/indra/newview/llagent.cpp
@@ -3723,6 +3723,23 @@ BOOL LLAgent::getHomePosGlobal( LLVector3d* pos_global )
 	return TRUE;
 }
 
+bool LLAgent::isInHomeRegion()
+{
+	if(!mHaveHomePosition)
+	{
+		return false;
+	}
+	if (!getRegion())
+	{
+		return false;
+	}
+	if (getRegion()->getHandle() != mHomeRegionHandle)
+	{
+		return false;
+	}
+	return true;
+}
+
 void LLAgent::clearVisualParams(void *data)
 {
 	if (isAgentAvatarValid())
diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h
index 6a8b8a2fe7d24724d799323222106f452038ee4d..1a352d339719aa4c2ae0c06dc977e6484395acf5 100644
--- a/indra/newview/llagent.h
+++ b/indra/newview/llagent.h
@@ -241,6 +241,8 @@ class LLAgent : public LLOldEvents::LLObservable
 	void			setStartPosition(U32 location_id); // Marks current location as start, sends information to servers
 	void			setHomePosRegion(const U64& region_handle, const LLVector3& pos_region);
 	BOOL			getHomePosGlobal(LLVector3d* pos_global);
+	bool			isInHomeRegion();
+
 private:
     void            setStartPositionSuccess(const LLSD &result);
 
diff --git a/indra/newview/llappdelegate-objc.mm b/indra/newview/llappdelegate-objc.mm
index 1d555374278ea00658edb318b90c4814bbe77fa6..47fde299c7e3863fe0b0dbde6fbaf2fa918f691a 100644
--- a/indra/newview/llappdelegate-objc.mm
+++ b/indra/newview/llappdelegate-objc.mm
@@ -342,3 +342,16 @@ struct AttachmentInfo
 #endif // LL_BUGSPLAT
 
 @end
+
+@implementation LLApplication
+
+- (void)sendEvent:(NSEvent *)event
+{
+    [super sendEvent:event];
+    if ([event type] == NSKeyUp && ([event modifierFlags] & NSCommandKeyMask))
+    {   
+        [[self keyWindow] sendEvent:event];
+    }
+}
+
+@end
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 599ab12a0c6f0bdf9c857ff445078f802bd85ae1..9317f5fd4e08f08c7b1327af5680af3655fa73a0 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -2886,6 +2886,7 @@ void LLAppViewer::initStrings()
 	if (strings_path_full.empty() || !LLFile::isfile(strings_path_full))
 	{
 		// initial check to make sure files are there failed
+		gDirUtilp->dumpCurrentDirectories(LLError::LEVEL_WARN);
 		LL_ERRS() << "Viewer failed to find localization and UI files. Please reinstall viewer from  https://secondlife.com/support/downloads/ and contact https://support.secondlife.com if issue persists after reinstall." << LL_ENDL;
 	}
 	LLTransUtil::parseStrings(strings_file, default_trans_args);
@@ -4508,10 +4509,37 @@ void LLAppViewer::saveFinalSnapshot()
 
 		std::string snap_filename = gDirUtilp->getLindenUserDir();
 		snap_filename += gDirUtilp->getDirDelimiter();
-		snap_filename += SCREEN_LAST_FILENAME;
+		snap_filename += LLStartUp::getScreenLastFilename();
 		// use full pixel dimensions of viewer window (not post-scale dimensions)
-		gViewerWindow->saveSnapshot(snap_filename, gViewerWindow->getWindowWidthRaw(), gViewerWindow->getWindowHeightRaw(), FALSE, TRUE);
+		gViewerWindow->saveSnapshot(snap_filename,
+									gViewerWindow->getWindowWidthRaw(),
+									gViewerWindow->getWindowHeightRaw(),
+									FALSE,
+									TRUE,
+									LLSnapshotModel::SNAPSHOT_TYPE_COLOR,
+									LLSnapshotModel::SNAPSHOT_FORMAT_PNG);
 		mSavedFinalSnapshot = TRUE;
+
+		if (gAgent.isInHomeRegion())
+		{
+			LLVector3d home;
+			if (gAgent.getHomePosGlobal(&home) && dist_vec(home, gAgent.getPositionGlobal()) < 10)
+			{
+				// We are at home position or close to it, see if we need to create home screenshot
+				// Notes:
+				// 1. It might be beneficial to also replace home if file is too old
+				// 2. This is far from best way/place to update screenshot since location might be not fully loaded,
+				// but we don't have many options
+				std::string snap_home = gDirUtilp->getLindenUserDir();
+				snap_home += gDirUtilp->getDirDelimiter();
+				snap_home += LLStartUp::getScreenHomeFilename();
+				if (!gDirUtilp->fileExists(snap_home))
+				{
+					// We are at home position yet no home image exist, fix it
+					LLFile::copy(snap_filename, snap_home);
+				}
+			}
+		}
 	}
 }
 
diff --git a/indra/newview/llappviewerwin32.cpp b/indra/newview/llappviewerwin32.cpp
index fff2653c985024d661b6fbd2fcfb6190eb03135f..d208e135bbb69bf2f2d95ca06fae99e830c29d10 100644
--- a/indra/newview/llappviewerwin32.cpp
+++ b/indra/newview/llappviewerwin32.cpp
@@ -312,12 +312,12 @@ void ll_nvapi_init(NvDRSSessionHandle hSession)
 #if DEBUGGING_SEH_FILTER
 #	define WINMAIN DebuggingWinMain
 #else
-#	define WINMAIN WinMain
+#	define WINMAIN wWinMain
 #endif
 
 int APIENTRY WINMAIN(HINSTANCE hInstance,
                      HINSTANCE hPrevInstance,
-                     LPSTR     lpCmdLine,
+                     PWSTR     pCmdLine,
                      int       nCmdShow)
 {
 	const S32 MAX_HEAPS = 255;
@@ -356,8 +356,8 @@ int APIENTRY WINMAIN(HINSTANCE hInstance,
 	// *FIX: global
 	gIconResource = MAKEINTRESOURCE(IDI_LL_ICON);
 
-	LLAppViewerWin32* viewer_app_ptr = new LLAppViewerWin32(lpCmdLine);
-	
+	LLAppViewerWin32* viewer_app_ptr = new LLAppViewerWin32(ll_convert_wide_to_string(pCmdLine).c_str());
+
 	gOldTerminateHandler = std::set_terminate(exceptionTerminateHandler);
 
 	viewer_app_ptr->setErrorHandler(LLAppViewer::handleViewerCrash);
@@ -469,9 +469,9 @@ int APIENTRY WINMAIN(HINSTANCE hInstance,
 // in a method that uses object destructors. Go figure.
 // This winmain just calls the real winmain inside __try.
 // The __except calls our exception filter function. For debugging purposes.
-int APIENTRY WinMain(HINSTANCE hInstance,
+int APIENTRY wWinMain(HINSTANCE hInstance,
                      HINSTANCE hPrevInstance,
-                     LPSTR     lpCmdLine,
+                     PWSTR     lpCmdLine,
                      int       nCmdShow)
 {
     __try
diff --git a/indra/newview/llcofwearables.cpp b/indra/newview/llcofwearables.cpp
index b47e0930a3cea0b56e7d03ea379803750b17c287..1caefd58abb8806e5fdd7d9f2a68d5205da7392b 100644
--- a/indra/newview/llcofwearables.cpp
+++ b/indra/newview/llcofwearables.cpp
@@ -502,13 +502,14 @@ void LLCOFWearables::populateAttachmentsAndBodypartsLists(const LLInventoryModel
 	{
 		mAttachments->sort();
 		mAttachments->notify(REARRANGE); //notifying the parent about the list's size change (cause items were added with rearrange=false)
-		setAttachmentsTitle();
 	}
 	else
 	{
 		mAttachments->setNoItemsCommentText(LLTrans::getString("no_attachments"));
 	}
 
+	setAttachmentsTitle();
+
 	if (mBodyParts->size())
 	{
 		mBodyParts->sort();
diff --git a/indra/newview/llcontrolavatar.cpp b/indra/newview/llcontrolavatar.cpp
index b585b3a4a07cad8de01e44f888bde3c6aac08eda..f1e5f9deec850b7e5260ebda9f2d039cda09c96f 100644
--- a/indra/newview/llcontrolavatar.cpp
+++ b/indra/newview/llcontrolavatar.cpp
@@ -325,10 +325,13 @@ LLControlAvatar *LLControlAvatar::createControlAvatar(LLVOVolume *obj)
 {
 	LLControlAvatar *cav = (LLControlAvatar*)gObjectList.createObjectViewer(LL_PCODE_LEGACY_AVATAR, gAgent.getRegion(), CO_FLAG_CONTROL_AVATAR);
 
-    cav->mRootVolp = obj;
+    if (cav)
+    {
+        cav->mRootVolp = obj;
 
-    // Sync up position/rotation with object
-    cav->matchVolumeTransform();
+        // Sync up position/rotation with object
+        cav->matchVolumeTransform();
+    }
 
     return cav;
 }
diff --git a/indra/newview/llfloatermyscripts.cpp b/indra/newview/llfloatermyscripts.cpp
index fa2de21a8f42de128a5a0bd13f4d2758fbbada55..6f9a6c90669126376d747e354eff32f0de49db4b 100644
--- a/indra/newview/llfloatermyscripts.cpp
+++ b/indra/newview/llfloatermyscripts.cpp
@@ -41,6 +41,7 @@ const S32 SIZE_OF_ONE_KB = 1024;
 LLFloaterMyScripts::LLFloaterMyScripts(const LLSD& seed)
 	: LLFloater(seed), 
 	mGotAttachmentMemoryUsed(false),
+	mAttachmentDetailsRequested(false),
 	mAttachmentMemoryMax(0),
 	mAttachmentMemoryUsed(0),
 	mGotAttachmentURLsUsed(false),
@@ -55,12 +56,24 @@ BOOL LLFloaterMyScripts::postBuild()
 
 	std::string msg_waiting = LLTrans::getString("ScriptLimitsRequestWaiting");
 	getChild<LLUICtrl>("loading_text")->setValue(LLSD(msg_waiting));
-	return requestAttachmentDetails();
+	mAttachmentDetailsRequested = requestAttachmentDetails();
+	return TRUE;
 }
 
-BOOL LLFloaterMyScripts::requestAttachmentDetails()
+// virtual
+void LLFloaterMyScripts::onOpen(const LLSD& key)
 {
-	if (!gAgent.getRegion()) return FALSE;
+    if (!mAttachmentDetailsRequested)
+    {
+        mAttachmentDetailsRequested = requestAttachmentDetails();
+    }
+
+    LLFloater::onOpen(key);
+}
+
+bool LLFloaterMyScripts::requestAttachmentDetails()
+{
+	if (!gAgent.getRegion()) return false;
 
 	LLSD body;
 	std::string url = gAgent.getRegion()->getCapability("AttachmentResources");
@@ -68,11 +81,11 @@ BOOL LLFloaterMyScripts::requestAttachmentDetails()
 	{
 		LLCoros::instance().launch("LLFloaterMyScripts::getAttachmentLimitsCoro",
 			boost::bind(&LLFloaterMyScripts::getAttachmentLimitsCoro, this, url));
-		return TRUE;
+		return true;
 	}
 	else
 	{
-		return FALSE;
+		return false;
 	}
 }
 
@@ -284,7 +297,7 @@ void LLFloaterMyScripts::onClickRefresh(void* userdata)
 			btn->setEnabled(false);
 		}
 		instance->clearList();
-		instance->requestAttachmentDetails();
+		instance->mAttachmentDetailsRequested = instance->requestAttachmentDetails();
 	}
 	else
 	{
diff --git a/indra/newview/llfloatermyscripts.h b/indra/newview/llfloatermyscripts.h
index fe33ab90ae494efe0ac183b9000d822f4fe3a56b..3c053a0223c7210a2a3b7a75843c4704aa900717 100644
--- a/indra/newview/llfloatermyscripts.h
+++ b/indra/newview/llfloatermyscripts.h
@@ -36,15 +36,17 @@ class LLFloaterMyScripts : public LLFloater
 	LLFloaterMyScripts(const LLSD& seed);
 
 	BOOL postBuild();
+	/*virtual*/ void onOpen(const LLSD& key);
 	void setAttachmentDetails(LLSD content);
 	void setAttachmentSummary(LLSD content);
-	BOOL requestAttachmentDetails();
+	bool requestAttachmentDetails();
 	void clearList();
 
 private:
 	void getAttachmentLimitsCoro(std::string url);
 
 	bool mGotAttachmentMemoryUsed;
+	bool mAttachmentDetailsRequested;
 	S32 mAttachmentMemoryMax;
 	S32 mAttachmentMemoryUsed;
 
diff --git a/indra/newview/llfloaterreporter.cpp b/indra/newview/llfloaterreporter.cpp
index d94bf3f651e46bff25eac10113c64d1787f1922b..960fd9620d8a6bf66b9e3e1f8fa559b0d6c12be5 100644
--- a/indra/newview/llfloaterreporter.cpp
+++ b/indra/newview/llfloaterreporter.cpp
@@ -38,7 +38,7 @@
 #include "llcallbacklist.h"
 #include "llcheckboxctrl.h"
 #include "llfontgl.h"
-#include "llimagebmp.h"
+#include "llimagepng.h"
 #include "llimagej2c.h"
 #include "llinventory.h"
 #include "llnotificationsutil.h"
@@ -89,7 +89,7 @@
 #include "llcorehttputil.h"
 #include "llviewerassetupload.h"
 
-const std::string SCREEN_PREV_FILENAME = "screen_report_last.bmp";
+const std::string SCREEN_PREV_FILENAME = "screen_report_last.png";
 
 //=========================================================================
 //-----------------------------------------------------------------------------
@@ -872,10 +872,10 @@ void LLFloaterReporter::takeScreenshot(bool use_prev_screenshot)
 	if(!use_prev_screenshot)
 	{
 		std::string screenshot_filename(gDirUtilp->getLindenUserDir() + gDirUtilp->getDirDelimiter() + SCREEN_PREV_FILENAME);
-		LLPointer<LLImageBMP> bmp_image = new LLImageBMP;
-		if(bmp_image->encode(mImageRaw, 0.0f))
+		LLPointer<LLImagePNG> png_image = new LLImagePNG;
+		if(png_image->encode(mImageRaw, 0.0f))
 		{
-			bmp_image->save(screenshot_filename);
+			png_image->save(screenshot_filename);
 		}
 	}
 	else
@@ -948,10 +948,10 @@ void LLFloaterReporter::takeNewSnapshot()
 	{
 		std::string screenshot_filename(gDirUtilp->getLindenUserDir() + gDirUtilp->getDirDelimiter() + SCREEN_PREV_FILENAME);
 		mPrevImageRaw = new LLImageRaw;
-		LLPointer<LLImageBMP> start_image_bmp = new LLImageBMP;
-		if(start_image_bmp->load(screenshot_filename))
+		LLPointer<LLImagePNG> start_image_png = new LLImagePNG;
+		if(start_image_png->load(screenshot_filename))
 		{
-			if (start_image_bmp->decode(mPrevImageRaw, 0.0f))
+			if (start_image_png->decode(mPrevImageRaw, 0.0f))
 			{
 				LLNotificationsUtil::add("LoadPreviousReportScreenshot", LLSD(), LLSD(), boost::bind(&LLFloaterReporter::onLoadScreenshotDialog,this, _1, _2));
 				return;
diff --git a/indra/newview/llfloatersearch.cpp b/indra/newview/llfloatersearch.cpp
index 66e832111b6132195beb281cbfbc449a5c77e4b7..d1246dae4c8d230513b8793eade97921cf930eac 100644
--- a/indra/newview/llfloatersearch.cpp
+++ b/indra/newview/llfloatersearch.cpp
@@ -120,6 +120,7 @@ void LLFloaterSearch::onOpen(const LLSD& key)
 	p.allow_address_entry = false;
 
 	LLFloaterWebContent::onOpen(p);
+	mWebBrowser->setFocus(TRUE);
 	search(p.search);
 }
 
diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp
index c2c15ee12b59e7b597ae3754ba11ebe4b01b1cee..0429749e11dc0659a124006dfcac81c268ba54f2 100644
--- a/indra/newview/llfloatertools.cpp
+++ b/indra/newview/llfloatertools.cpp
@@ -850,6 +850,18 @@ void LLFloaterTools::onOpen(const LLSD& key)
 	{
 		mTab->selectTabByName(panel);
 	}
+
+	LLTool* tool = LLToolMgr::getInstance()->getCurrentTool();
+	if (tool == LLToolCompInspect::getInstance()
+		|| tool == LLToolDragAndDrop::getInstance())
+	{
+		// Something called floater up while it was supressed (during drag n drop, inspect),
+		// so it won't be getting any layout or visibility updates, update once
+		// further updates will come from updateLayout()
+		LLCoordGL select_center_screen;
+		MASK	mask = gKeyboard->currentMask(TRUE);
+		updatePopup(select_center_screen, mask);
+	}
 	
 	//gMenuBarView->setItemVisible("BuildTools", TRUE);
 }
diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp
index 3260ba3d960c00840d6beae65b4819d1c976f569..36f284b96631ebd02263ccfd1e8d16155dc1fe3b 100644
--- a/indra/newview/llinventorybridge.cpp
+++ b/indra/newview/llinventorybridge.cpp
@@ -111,6 +111,7 @@ bool move_task_inventory_callback(const LLSD& notification, const LLSD& response
 bool confirm_attachment_rez(const LLSD& notification, const LLSD& response);
 void teleport_via_landmark(const LLUUID& asset_id);
 static BOOL can_move_to_outfit(LLInventoryItem* inv_item, BOOL move_is_into_current_outfit);
+static bool can_move_to_my_outfits(LLInventoryModel* model, LLInventoryCategory* inv_cat, U32 wear_limit);
 static BOOL can_move_to_landmarks(LLInventoryItem* inv_item);
 static bool check_category(LLInventoryModel* model,
 						   const LLUUID& cat_id,
@@ -2281,7 +2282,7 @@ class LLIsItemRemovable : public LLFolderViewFunctor
 // Can be destroyed (or moved to trash)
 BOOL LLFolderBridge::isItemRemovable() const
 {
-	if (!get_is_category_removable(getInventoryModel(), mUUID))
+	if (!get_is_category_removable(getInventoryModel(), mUUID) || isMarketplaceListingsFolder())
 	{
 		return FALSE;
 	}
@@ -2297,11 +2298,6 @@ BOOL LLFolderBridge::isItemRemovable() const
 			return FALSE;
 		}
 	}
-    
-    if (isMarketplaceListingsFolder() && LLMarketplaceData::instance().getActivationState(mUUID))
-    {
-        return FALSE;
-    }
 
 	return TRUE;
 }
@@ -2523,9 +2519,28 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
 			is_movable = FALSE;
 			// tooltip?
 		}
+
+		U32 max_items_to_wear = gSavedSettings.getU32("WearFolderLimit");
 		if (is_movable && move_is_into_outfit)
 		{
-			if((mUUID == my_outifts_id) || (getCategory() && getCategory()->getPreferredType() == LLFolderType::FT_NONE))
+			if (mUUID == my_outifts_id)
+			{
+				if (source != LLToolDragAndDrop::SOURCE_AGENT || move_is_from_marketplacelistings)
+				{
+					tooltip_msg = LLTrans::getString("TooltipOutfitNotInInventory");
+					is_movable = false;
+				}
+				else if (can_move_to_my_outfits(model, inv_cat, max_items_to_wear))
+				{
+					is_movable = true;
+				}
+				else
+				{
+					tooltip_msg = LLTrans::getString("TooltipCantCreateOutfit");
+					is_movable = false;
+				}
+			}
+			else if(getCategory() && getCategory()->getPreferredType() == LLFolderType::FT_NONE)
 			{
 				is_movable = ((inv_cat->getPreferredType() == LLFolderType::FT_NONE) || (inv_cat->getPreferredType() == LLFolderType::FT_OUTFIT));
 			}
@@ -2570,7 +2585,6 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
 				}
 			}
 		}
-		U32 max_items_to_wear = gSavedSettings.getU32("WearFolderLimit");
 		if (is_movable
 			&& move_is_into_current_outfit
 			&& descendent_items.size() > max_items_to_wear)
@@ -2725,8 +2739,14 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
 				}
 			}
 
+			if (mUUID == my_outifts_id)
+			{
+				// Category can contains objects,
+				// create a new folder and populate it with links to original objects
+				dropToMyOutfits(inv_cat);
+			}
 			// if target is current outfit folder we use link
-			if (move_is_into_current_outfit &&
+			else if (move_is_into_current_outfit &&
 				(inv_cat->getPreferredType() == LLFolderType::FT_NONE ||
 				inv_cat->getPreferredType() == LLFolderType::FT_OUTFIT))
 			{
@@ -3736,12 +3756,40 @@ void LLFolderBridge::perform_pasteFromClipboard()
 						return;
 					}
 				}
-				if (move_is_into_current_outfit || move_is_into_outfit)
+				if (move_is_into_outfit)
+				{
+					if (!move_is_into_my_outfits && item && can_move_to_outfit(item, move_is_into_current_outfit))
+					{
+						dropToOutfit(item, move_is_into_current_outfit);
+					}
+					else if (move_is_into_my_outfits && LLAssetType::AT_CATEGORY == obj->getType())
+					{
+						LLInventoryCategory* cat = model->getCategory(item_id);
+						U32 max_items_to_wear = gSavedSettings.getU32("WearFolderLimit");
+						if (cat && can_move_to_my_outfits(model, cat, max_items_to_wear))
+						{
+							dropToMyOutfits(cat);
+						}
+						else
+						{
+							LLNotificationsUtil::add("MyOutfitsPasteFailed");
+						}
+					}
+					else
+					{
+						LLNotificationsUtil::add("MyOutfitsPasteFailed");
+					}
+				}
+				else if (move_is_into_current_outfit)
 				{
 					if (item && can_move_to_outfit(item, move_is_into_current_outfit))
 					{
 						dropToOutfit(item, move_is_into_current_outfit);
 					}
+					else
+					{
+						LLNotificationsUtil::add("MyOutfitsPasteFailed");
+					}
 				}
 				else if (move_is_into_favorites)
 				{
@@ -4696,6 +4744,46 @@ static BOOL can_move_to_outfit(LLInventoryItem* inv_item, BOOL move_is_into_curr
 	return TRUE;
 }
 
+// Returns true if folder's content can be moved to Current Outfit or any outfit folder.
+static bool can_move_to_my_outfits(LLInventoryModel* model, LLInventoryCategory* inv_cat, U32 wear_limit)
+{
+    LLInventoryModel::cat_array_t *cats;
+    LLInventoryModel::item_array_t *items;
+    model->getDirectDescendentsOf(inv_cat->getUUID(), cats, items);
+
+    if (items->size() > wear_limit)
+    {
+        return false;
+    }
+
+    if (items->size() == 0)
+    {
+        // Nothing to move(create)
+        return false;
+    }
+
+    if (cats->size() > 0)
+    {
+        // We do not allow subfolders in outfits of "My Outfits" yet
+        return false;
+    }
+
+    LLInventoryModel::item_array_t::iterator iter = items->begin();
+    LLInventoryModel::item_array_t::iterator end = items->end();
+
+    while (iter != end)
+    {
+        LLViewerInventoryItem *item = *iter;
+        if (!can_move_to_outfit(item, false))
+        {
+            return false;
+        }
+        iter++;
+    }
+
+    return true;
+}
+
 // Returns TRUE if item is a landmark or a link to a landmark
 // and can be moved to Favorites or Landmarks folder.
 static BOOL can_move_to_landmarks(LLInventoryItem* inv_item)
@@ -4764,6 +4852,56 @@ void LLFolderBridge::dropToOutfit(LLInventoryItem* inv_item, BOOL move_is_into_c
 	}
 }
 
+void LLFolderBridge::dropToMyOutfits(LLInventoryCategory* inv_cat)
+{
+    // make a folder in the My Outfits directory.
+    const LLUUID dest_id = getInventoryModel()->findCategoryUUIDForType(LLFolderType::FT_MY_OUTFITS);
+
+    // Note: creation will take time, so passing folder id to callback is slightly unreliable,
+    // but so is collecting and passing descendants' ids
+    inventory_func_type func = boost::bind(&LLFolderBridge::outfitFolderCreatedCallback, this, inv_cat->getUUID(), _1);
+    gInventory.createNewCategory(dest_id,
+                                 LLFolderType::FT_OUTFIT,
+                                 inv_cat->getName(),
+                                 func);
+}
+
+void LLFolderBridge::outfitFolderCreatedCallback(LLUUID cat_source_id, LLUUID cat_dest_id)
+{
+    LLInventoryModel::cat_array_t* categories;
+    LLInventoryModel::item_array_t* items;
+    getInventoryModel()->getDirectDescendentsOf(cat_source_id, categories, items);
+
+    LLInventoryObject::const_object_list_t link_array;
+
+
+    LLInventoryModel::item_array_t::iterator iter = items->begin();
+    LLInventoryModel::item_array_t::iterator end = items->end();
+    while (iter!=end)
+    {
+        const LLViewerInventoryItem* item = (*iter);
+        // By this point everything is supposed to be filtered,
+        // but there was a delay to create folder so something could have changed
+        LLInventoryType::EType inv_type = item->getInventoryType();
+        if ((inv_type == LLInventoryType::IT_WEARABLE) ||
+            (inv_type == LLInventoryType::IT_GESTURE) ||
+            (inv_type == LLInventoryType::IT_ATTACHMENT) ||
+            (inv_type == LLInventoryType::IT_OBJECT) ||
+            (inv_type == LLInventoryType::IT_SNAPSHOT) ||
+            (inv_type == LLInventoryType::IT_TEXTURE))
+        {
+            link_array.push_back(LLConstPointer<LLInventoryObject>(item));
+        }
+        iter++;
+    }
+
+    if (!link_array.empty())
+    {
+        LLPointer<LLInventoryCallback> cb = NULL;
+        link_inventory_array(cat_dest_id, link_array, cb);
+    }
+}
+
 // Callback for drop item if DAMA required...
 void LLFolderBridge::callback_dropItemIntoFolder(const LLSD& notification, const LLSD& response, LLInventoryItem* inv_item)
 {
diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h
index c2e3bc9eb2f380c93e2e34f470996154d2a91d38..fce7ade661a8e5776d8c95d4899b5fe05dcd4041 100644
--- a/indra/newview/llinventorybridge.h
+++ b/indra/newview/llinventorybridge.h
@@ -362,6 +362,7 @@ class LLFolderBridge : public LLInvFVBridge
 
 	void dropToFavorites(LLInventoryItem* inv_item);
 	void dropToOutfit(LLInventoryItem* inv_item, BOOL move_is_into_current_outfit);
+	void dropToMyOutfits(LLInventoryCategory* inv_cat);
 
 	//--------------------------------------------------------------------
 	// Messy hacks for handling folder options
@@ -371,6 +372,7 @@ class LLFolderBridge : public LLInvFVBridge
 	static void staticFolderOptionsMenu();
 
 protected:
+    void outfitFolderCreatedCallback(LLUUID cat_source_id, LLUUID cat_dest_id);
     void callback_pasteFromClipboard(const LLSD& notification, const LLSD& response);
     void perform_pasteFromClipboard();
     void gatherMessage(std::string& message, S32 depth, LLError::ELevel log_level);
diff --git a/indra/newview/llmeshrepository.cpp b/indra/newview/llmeshrepository.cpp
index 127d04c34d87ab4513f37327d63635ce9a00b854..fc3f2fefb4fa2cd250a59e65d0258d4208d4cd58 100644
--- a/indra/newview/llmeshrepository.cpp
+++ b/indra/newview/llmeshrepository.cpp
@@ -2277,6 +2277,7 @@ void LLMeshUploadThread::wholeModelToLLSD(LLSD& dest, bool include_textures)
 			instance_entry["material"] = LL_MCODE_WOOD;
 			instance_entry["physics_shape_type"] = data.mModel[LLModel::LOD_PHYSICS].notNull() ? (U8)(LLViewerObject::PHYSICS_SHAPE_PRIM) : (U8)(LLViewerObject::PHYSICS_SHAPE_CONVEX_HULL);
 			instance_entry["mesh"] = mesh_index[data.mBaseModel];
+			instance_entry["mesh_name"] = instance.mLabel;
 
 			instance_entry["face_list"] = LLSD::emptyArray();
 
diff --git a/indra/newview/llsky.cpp b/indra/newview/llsky.cpp
index 71de99b4eca8691f04327af4b1fc89f9199b2e56..ac7dbcacaa114f43406a925b66848d86ae866576 100644
--- a/indra/newview/llsky.cpp
+++ b/indra/newview/llsky.cpp
@@ -114,7 +114,7 @@ void LLSky::restoreGL()
 
 void LLSky::resetVertexBuffers()
 {
-	if (gSky.mVOSkyp.notNull())
+	if (gSky.mVOSkyp.notNull() && gSky.mVOGroundp.notNull())
 	{
 		gPipeline.resetVertexBuffers(gSky.mVOSkyp->mDrawable);
 		gPipeline.resetVertexBuffers(gSky.mVOGroundp->mDrawable);
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index 7e275defeda1c21915ebb6674cf9c3fa604ddac7..1e948e67c99fe7bb3749715e82bd9aa9042dd6ab 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -113,7 +113,7 @@
 #include "llgroupmgr.h"
 #include "llhudeffecttrail.h"
 #include "llhudmanager.h"
-#include "llimagebmp.h"
+#include "llimage.h"
 #include "llinventorybridge.h"
 #include "llinventorymodel.h"
 #include "llinventorymodelbackgroundfetch.h"
@@ -162,6 +162,7 @@
 #include "llviewerparcelmgr.h"
 #include "llviewerregion.h"
 #include "llviewerstats.h"
+#include "llviewerstatsrecorder.h"
 #include "llviewerthrottle.h"
 #include "llviewerwindow.h"
 #include "llvoavatar.h"
@@ -209,8 +210,8 @@
 bool gAgentMovementCompleted = false;
 S32  gMaxAgentGroups;
 
-std::string SCREEN_HOME_FILENAME = "screen_home.bmp";
-std::string SCREEN_LAST_FILENAME = "screen_last.bmp";
+const std::string SCREEN_HOME_FILENAME = "screen_home%s.png";
+const std::string SCREEN_LAST_FILENAME = "screen_last%s.png";
 
 LLPointer<LLViewerTexture> gStartTexture;
 
@@ -347,6 +348,14 @@ bool idle_startup()
 	// to work.
 	gIdleCallbacks.callFunctions();
 	gViewerWindow->updateUI();
+
+	// There is a crash on updateClass, this is an attempt to get more information
+	if (LLMortician::graveyardCount())
+	{
+		std::stringstream log_stream;
+		LLMortician::logClass(log_stream);
+		LL_INFOS() << log_stream.str() << LL_ENDL;
+	}
 	LLMortician::updateClass();
 
 	const std::string delims (" ");
@@ -1204,6 +1213,7 @@ bool idle_startup()
 		//
 		// Initialize classes w/graphics stuff.
 		//
+		LLViewerStatsRecorder::instance(); // Since textures work in threads
 		gTextureList.doPrefetchImages();		
 		display_startup();
 
@@ -2551,6 +2561,34 @@ bool callback_choose_gender(const LLSD& notification, const LLSD& response)
 	return false;
 }
 
+std::string get_screen_filename(const std::string& pattern)
+{
+    if (LLGridManager::getInstance()->isInProductionGrid())
+    {
+        return llformat(pattern.c_str(), "");
+    }
+    else
+    {
+        const std::string& grid_id_str = LLGridManager::getInstance()->getGridId();
+        const std::string& grid_id_lower = utf8str_tolower(grid_id_str);
+        std::string grid = "." + grid_id_lower;
+        return llformat(pattern.c_str(), grid.c_str());
+    }
+}
+
+//static
+std::string LLStartUp::getScreenLastFilename()
+{
+    return get_screen_filename(SCREEN_LAST_FILENAME);
+}
+
+//static
+std::string LLStartUp::getScreenHomeFilename()
+{
+    return get_screen_filename(SCREEN_HOME_FILENAME);
+}
+
+//static
 void LLStartUp::loadInitialOutfit( const std::string& outfit_folder_name,
 								   const std::string& gender_name )
 {
@@ -2644,19 +2682,32 @@ void init_start_screen(S32 location_id)
 
 	LL_DEBUGS("AppInit") << "Loading startup bitmap..." << LL_ENDL;
 
+	U8 image_codec = IMG_CODEC_PNG;
 	std::string temp_str = gDirUtilp->getLindenUserDir() + gDirUtilp->getDirDelimiter();
 
 	if ((S32)START_LOCATION_ID_LAST == location_id)
 	{
-		temp_str += SCREEN_LAST_FILENAME;
+		temp_str += LLStartUp::getScreenLastFilename();
 	}
 	else
 	{
-		temp_str += SCREEN_HOME_FILENAME;
+		std::string path = temp_str + LLStartUp::getScreenHomeFilename();
+		
+		if (!gDirUtilp->fileExists(path) && LLGridManager::getInstance()->isInProductionGrid())
+		{
+			// Fallback to old file, can be removed later
+			// Home image only sets when user changes home, so it will take time for users to switch to pngs
+			temp_str += "screen_home.bmp";
+			image_codec = IMG_CODEC_BMP;
+		}
+		else
+		{
+			temp_str = path;
+		}
 	}
 
-	LLPointer<LLImageBMP> start_image_bmp = new LLImageBMP;
-	
+	LLPointer<LLImageFormatted> start_image_frmted = LLImageFormatted::createFromType(image_codec);
+
 	// Turn off start screen to get around the occasional readback 
 	// driver bug
 	if(!gSavedSettings.getBOOL("UseStartScreen"))
@@ -2664,18 +2715,18 @@ void init_start_screen(S32 location_id)
 		LL_INFOS("AppInit")  << "Bitmap load disabled" << LL_ENDL;
 		return;
 	}
-	else if(!start_image_bmp->load(temp_str) )
+	else if(!start_image_frmted->load(temp_str) )
 	{
 		LL_WARNS("AppInit") << "Bitmap load failed" << LL_ENDL;
 		gStartTexture = NULL;
 	}
 	else
 	{
-		gStartImageWidth = start_image_bmp->getWidth();
-		gStartImageHeight = start_image_bmp->getHeight();
+		gStartImageWidth = start_image_frmted->getWidth();
+		gStartImageHeight = start_image_frmted->getHeight();
 
 		LLPointer<LLImageRaw> raw = new LLImageRaw;
-		if (!start_image_bmp->decode(raw, 0.0f))
+		if (!start_image_frmted->decode(raw, 0.0f))
 		{
 			LL_WARNS("AppInit") << "Bitmap decode failed" << LL_ENDL;
 			gStartTexture = NULL;
diff --git a/indra/newview/llstartup.h b/indra/newview/llstartup.h
index d434e86f827130f4216b906411468063fd1ef84e..db372070228cbf6f1f267449e921a32637038e0e 100644
--- a/indra/newview/llstartup.h
+++ b/indra/newview/llstartup.h
@@ -41,10 +41,6 @@ bool idle_startup();
 void release_start_screen();
 bool login_alert_done(const LLSD& notification, const LLSD& response);
 
-// constants, variables,  & enumerations
-extern std::string SCREEN_HOME_FILENAME;
-extern std::string SCREEN_LAST_FILENAME;
-
 // start location constants
 enum EStartLocation
 {
@@ -95,6 +91,8 @@ class LLStartUp
 	static void setStartupState( EStartupState state );
 	static EStartupState getStartupState() { return gStartupState; };
 	static std::string getStartupStateString() { return startupStateToString(gStartupState); };
+	static std::string getScreenLastFilename(); // screenshot taken on exit
+	static std::string getScreenHomeFilename(); // screenshot taken on setting Home
 
 	static void multimediaInit();
 		// Initialize LLViewerMedia multimedia engine.
diff --git a/indra/newview/llsurfacepatch.cpp b/indra/newview/llsurfacepatch.cpp
index f6cf714db4c8d7b34ab649c5adda311b7cd4c5bf..5e056944e995252bb94dd0b7331cfe92ac4dce06 100644
--- a/indra/newview/llsurfacepatch.cpp
+++ b/indra/newview/llsurfacepatch.cpp
@@ -203,7 +203,7 @@ LLVector2 LLSurfacePatch::getTexCoords(const U32 x, const U32 y) const
 void LLSurfacePatch::eval(const U32 x, const U32 y, const U32 stride, LLVector3 *vertex, LLVector3 *normal,
 						  LLVector2 *tex0, LLVector2 *tex1)
 {
-	if (!mSurfacep || !mSurfacep->getRegion() || !mSurfacep->getGridsPerEdge())
+	if (!mSurfacep || !mSurfacep->getRegion() || !mSurfacep->getGridsPerEdge() || !mVObjp)
 	{
 		return; // failsafe
 	}
diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp
index f6cb787156cdc8e742614c0ae7d29e3f4e1c54b6..fe058024f699d7b8efe4d1aaa9f195e3b98992ea 100644
--- a/indra/newview/lltexturefetch.cpp
+++ b/indra/newview/lltexturefetch.cpp
@@ -2409,7 +2409,11 @@ S32 LLTextureFetchWorker::callbackHttpGet(LLCore::HttpResponse * response,
 	mLoaded = TRUE;
 	setPriority(LLWorkerThread::PRIORITY_HIGH | mWorkPriority);
 
-	LLViewerStatsRecorder::instance().log(0.2f);
+	if (LLViewerStatsRecorder::instanceExists())
+	{
+		// Do not create this instance inside thread
+		LLViewerStatsRecorder::instance().log(0.2f);
+	}
 	return data_size ;
 }
 
diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp
index 95780e95bd8f877702ccf972e72d62b14a87609b..e62c227a3da03a8decaa55c7b53e269383e9ca85 100644
--- a/indra/newview/llviewerdisplay.cpp
+++ b/indra/newview/llviewerdisplay.cpp
@@ -42,7 +42,7 @@
 #include "llfeaturemanager.h"
 //#include "llfirstuse.h"
 #include "llhudmanager.h"
-#include "llimagebmp.h"
+#include "llimagepng.h"
 #include "llmemory.h"
 #include "llselectmgr.h"
 #include "llsky.h"
@@ -1599,17 +1599,17 @@ void render_disconnected_background()
 		LL_INFOS() << "Loading last bitmap..." << LL_ENDL;
 
 		std::string temp_str;
-		temp_str = gDirUtilp->getLindenUserDir() + gDirUtilp->getDirDelimiter() + SCREEN_LAST_FILENAME;
+		temp_str = gDirUtilp->getLindenUserDir() + gDirUtilp->getDirDelimiter() + LLStartUp::getScreenLastFilename();
 
-		LLPointer<LLImageBMP> image_bmp = new LLImageBMP;
-		if( !image_bmp->load(temp_str) )
+		LLPointer<LLImagePNG> image_png = new LLImagePNG;
+		if( !image_png->load(temp_str) )
 		{
 			//LL_INFOS() << "Bitmap load failed" << LL_ENDL;
 			return;
 		}
 		
 		LLPointer<LLImageRaw> raw = new LLImageRaw;
-		if (!image_bmp->decode(raw, 0.0f))
+		if (!image_png->decode(raw, 0.0f))
 		{
 			LL_INFOS() << "Bitmap decode failed" << LL_ENDL;
 			gDisconnectedImagep = NULL;
@@ -1617,7 +1617,7 @@ void render_disconnected_background()
 		}
 
 		U8 *rawp = raw->getData();
-		S32 npixels = (S32)image_bmp->getWidth()*(S32)image_bmp->getHeight();
+		S32 npixels = (S32)image_png->getWidth()*(S32)image_png->getHeight();
 		for (S32 i = 0; i < npixels; i++)
 		{
 			S32 sum = 0;
diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp
index a0935628d792cb38a564815f4f424642a394285f..c1c2248355cb47d7f1ad3666674384907d5f400e 100644
--- a/indra/newview/llviewermessage.cpp
+++ b/indra/newview/llviewermessage.cpp
@@ -5106,8 +5106,8 @@ bool attempt_standard_notification(LLMessageSystem* msgsystem)
 			// save the home location image to disk
 			std::string snap_filename = gDirUtilp->getLindenUserDir();
 			snap_filename += gDirUtilp->getDirDelimiter();
-			snap_filename += SCREEN_HOME_FILENAME;
-			gViewerWindow->saveSnapshot(snap_filename, gViewerWindow->getWindowWidthRaw(), gViewerWindow->getWindowHeightRaw(), FALSE, FALSE);
+			snap_filename += LLStartUp::getScreenHomeFilename();
+			gViewerWindow->saveSnapshot(snap_filename, gViewerWindow->getWindowWidthRaw(), gViewerWindow->getWindowHeightRaw(), FALSE, FALSE, LLSnapshotModel::SNAPSHOT_TYPE_COLOR, LLSnapshotModel::SNAPSHOT_FORMAT_PNG);
 		}
 		
 		if (notificationID == "RegionRestartMinutes" ||
@@ -5189,8 +5189,8 @@ static void process_special_alert_messages(const std::string & message)
 		// save the home location image to disk
 		std::string snap_filename = gDirUtilp->getLindenUserDir();
 		snap_filename += gDirUtilp->getDirDelimiter();
-		snap_filename += SCREEN_HOME_FILENAME;
-		gViewerWindow->saveSnapshot(snap_filename, gViewerWindow->getWindowWidthRaw(), gViewerWindow->getWindowHeightRaw(), FALSE, FALSE);
+		snap_filename += LLStartUp::getScreenHomeFilename();
+		gViewerWindow->saveSnapshot(snap_filename, gViewerWindow->getWindowWidthRaw(), gViewerWindow->getWindowHeightRaw(), FALSE, FALSE, LLSnapshotModel::SNAPSHOT_TYPE_COLOR, LLSnapshotModel::SNAPSHOT_FORMAT_PNG);
 	}
 }
 
diff --git a/indra/newview/llviewerobjectlist.cpp b/indra/newview/llviewerobjectlist.cpp
index 932759c86d3de47466c282f5d078f72c8674ff73..2bf04dc20476e8517f62acd2988f4ee9cca465bf 100644
--- a/indra/newview/llviewerobjectlist.cpp
+++ b/indra/newview/llviewerobjectlist.cpp
@@ -1383,7 +1383,11 @@ BOOL LLViewerObjectList::killObject(LLViewerObject *objectp)
 
 	if (objectp)
 	{
-		objectp->markDead(); // does the right thing if object already dead
+		// We are going to cleanup a lot of smart pointers to this object, they might be last,
+		// and object being NULLed while inside it's own function won't be pretty
+		// so create a pointer to make sure object will stay alive untill markDead() finishes
+		LLPointer<LLViewerObject> sp(objectp);
+		sp->markDead(); // does the right thing if object already dead
 		return TRUE;
 	}
 
diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp
index af18c8ea0391d46dd27cc77c5989ec66b055108f..99dec098a017d19fcbf3dc9604f7052f253ff2e3 100644
--- a/indra/newview/llviewertexture.cpp
+++ b/indra/newview/llviewertexture.cpp
@@ -3680,9 +3680,9 @@ void LLViewerMediaTexture::removeFace(U32 ch, LLFace* facep)
 		}
 	}
 
-	if(te && te->getID().notNull()) //should have a texture
+	if(te && te->getID().notNull()) //should have a texture but none found
 	{
-		LL_ERRS() << "mTextureList texture reference number is corrupted." << LL_ENDL;
+		LL_ERRS() << "mTextureList texture reference number is corrupted. Texture id: " << te->getID() << " List size: " << (U32)mTextureList.size() << LL_ENDL;
 	}
 }
 
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index cc0004d53df38490f83d800aa1b62b27290e8dbf..35209a8a06eb372ab0901552895e444d61cf7048 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -122,7 +122,7 @@
 #include "llhudmanager.h"
 #include "llhudobject.h"
 #include "llhudview.h"
-#include "llimagebmp.h"
+#include "llimage.h"
 #include "llimagej2c.h"
 #include "llimageworker.h"
 #include "llkeyboard.h"
@@ -4503,32 +4503,46 @@ void LLViewerWindow::movieSize(S32 new_width, S32 new_height)
 	}
 }
 
-BOOL LLViewerWindow::saveSnapshot(const std::string& filepath, S32 image_width, S32 image_height, BOOL show_ui, BOOL do_rebuild, LLSnapshotModel::ESnapshotLayerType type)
+BOOL LLViewerWindow::saveSnapshot(const std::string& filepath, S32 image_width, S32 image_height, BOOL show_ui, BOOL do_rebuild, LLSnapshotModel::ESnapshotLayerType type, LLSnapshotModel::ESnapshotFormat format)
 {
-	LL_INFOS() << "Saving snapshot to: " << filepath << LL_ENDL;
+    LL_INFOS() << "Saving snapshot to: " << filepath << LL_ENDL;
 
-	LLPointer<LLImageRaw> raw = new LLImageRaw;
-	BOOL success = rawSnapshot(raw, image_width, image_height, TRUE, FALSE, show_ui, do_rebuild);
+    LLPointer<LLImageRaw> raw = new LLImageRaw;
+    BOOL success = rawSnapshot(raw, image_width, image_height, TRUE, FALSE, show_ui, do_rebuild);
 
-	if (success)
-	{
-		LLPointer<LLImageBMP> bmp_image = new LLImageBMP;
-		success = bmp_image->encode(raw, 0.0f);
-		if( success )
-		{
-			success = bmp_image->save(filepath);
-		}
-		else
-		{
-			LL_WARNS() << "Unable to encode bmp snapshot" << LL_ENDL;
-		}
-	}
-	else
-	{
-		LL_WARNS() << "Unable to capture raw snapshot" << LL_ENDL;
-	}
+    if (success)
+    {
+        U8 image_codec = IMG_CODEC_BMP;
+        switch (format)
+        {
+        case LLSnapshotModel::SNAPSHOT_FORMAT_PNG:
+            image_codec = IMG_CODEC_PNG;
+            break;
+        case LLSnapshotModel::SNAPSHOT_FORMAT_JPEG:
+            image_codec = IMG_CODEC_JPEG;
+            break;
+        default:
+            image_codec = IMG_CODEC_BMP;
+            break;
+        }
 
-	return success;
+        LLPointer<LLImageFormatted> formated_image = LLImageFormatted::createFromType(image_codec);
+        success = formated_image->encode(raw, 0.0f);
+        if (success)
+        {
+            success = formated_image->save(filepath);
+        }
+        else
+        {
+            LL_WARNS() << "Unable to encode snapshot of format " << format << LL_ENDL;
+        }
+    }
+    else
+    {
+        LL_WARNS() << "Unable to capture raw snapshot" << LL_ENDL;
+    }
+
+    return success;
 }
 
 
diff --git a/indra/newview/llviewerwindow.h b/indra/newview/llviewerwindow.h
index d41a606f113172462608accc10e31d25316fc974..071a3632ddb5be7c2c422f486e87ab7891162d0a 100644
--- a/indra/newview/llviewerwindow.h
+++ b/indra/newview/llviewerwindow.h
@@ -347,7 +347,7 @@ class LLViewerWindow : public LLWindowCallbacks
 	// snapshot functionality.
 	// perhaps some of this should move to llfloatershapshot?  -MG
 
-	BOOL			saveSnapshot(const std::string&  filename, S32 image_width, S32 image_height, BOOL show_ui = TRUE, BOOL do_rebuild = FALSE, LLSnapshotModel::ESnapshotLayerType type = LLSnapshotModel::SNAPSHOT_TYPE_COLOR);
+	BOOL			saveSnapshot(const std::string&  filename, S32 image_width, S32 image_height, BOOL show_ui = TRUE, BOOL do_rebuild = FALSE, LLSnapshotModel::ESnapshotLayerType type = LLSnapshotModel::SNAPSHOT_TYPE_COLOR, LLSnapshotModel::ESnapshotFormat format = LLSnapshotModel::SNAPSHOT_FORMAT_BMP);
 	BOOL			rawSnapshot(LLImageRaw *raw, S32 image_width, S32 image_height, BOOL keep_window_aspect = TRUE, BOOL is_texture = FALSE,
 		BOOL show_ui = TRUE, BOOL do_rebuild = FALSE, LLSnapshotModel::ESnapshotLayerType type = LLSnapshotModel::SNAPSHOT_TYPE_COLOR, S32 max_size = MAX_SNAPSHOT_IMAGE_SIZE);
 	BOOL			thumbnailSnapshot(LLImageRaw *raw, S32 preview_width, S32 preview_height, BOOL show_ui, BOOL do_rebuild, LLSnapshotModel::ESnapshotLayerType type);
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index 7a79bd996f43d851f84b8f06c5765cd9fcab5ba7..dac4a450b6d55f385371ba64b52a8572686aefb5 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -10467,6 +10467,11 @@ void LLVOAvatar::calcMutedAVColor()
         new_color = LLColor4::grey4;
         change_msg = " blocked: color is grey4";
     }
+    else if (!isTooComplex())
+    {
+        new_color = LLColor4::white;
+        change_msg = " simple imposter ";
+    }
     else if ( mMutedAVColor == LLColor4::white || mMutedAVColor == LLColor4::grey3 || mMutedAVColor == LLColor4::grey4 )
     {
         // select a color based on the first byte of the agents uuid so any muted agent is always the same color
diff --git a/indra/newview/llworld.cpp b/indra/newview/llworld.cpp
index a519b5a95789ff3b0525edb8400804017668dd24..8989bae96a7fd5ed8329ca5b9ef04c8e99219bc8 100644
--- a/indra/newview/llworld.cpp
+++ b/indra/newview/llworld.cpp
@@ -900,10 +900,10 @@ void LLWorld::precullWaterObjects(LLCamera& camera, LLCullResult* cull, bool inc
 
     if (include_void_water)
     {
-	    for (std::list<LLVOWater*>::iterator iter = mHoleWaterObjects.begin();
-		     iter != mHoleWaterObjects.end(); ++ iter)
-	    {
-		    LLVOWater* waterp = *iter;
+		for (std::list<LLPointer<LLVOWater> >::iterator iter = mHoleWaterObjects.begin();
+			 iter != mHoleWaterObjects.end(); ++ iter)
+		{
+			LLVOWater* waterp = (*iter).get();
 		    if (waterp && waterp->mDrawable)
             {
                 waterp->mDrawable->setVisible(camera);
@@ -967,10 +967,10 @@ void LLWorld::updateWaterObjects()
 		}
 	}
 
-	for (std::list<LLVOWater*>::iterator iter = mHoleWaterObjects.begin();
+	for (std::list<LLPointer<LLVOWater> >::iterator iter = mHoleWaterObjects.begin();
 		 iter != mHoleWaterObjects.end(); ++ iter)
 	{
-		LLVOWater* waterp = *iter;
+		LLVOWater* waterp = (*iter).get();
 		gObjectList.killObject(waterp);
 	}
 	mHoleWaterObjects.clear();
diff --git a/indra/newview/llworld.h b/indra/newview/llworld.h
index 972244874624a1ce01de4aa88e78b36a07326065..98552bc4d120187aad5254ff98830ed47557e45c 100644
--- a/indra/newview/llworld.h
+++ b/indra/newview/llworld.h
@@ -202,7 +202,7 @@ class LLWorld : public LLSingleton<LLWorld>
 	// Data for "Fake" objects
 	//
 
-	std::list<LLVOWater*> mHoleWaterObjects;
+	std::list<LLPointer<LLVOWater> > mHoleWaterObjects;
 	LLPointer<LLVOWater> mEdgeWaterObjects[8];
 
 	LLPointer<LLViewerTexture> mDefaultWaterTexturep;
diff --git a/indra/newview/skins/default/xui/de/floater_about_land.xml b/indra/newview/skins/default/xui/de/floater_about_land.xml
index e8762c71e7e081d08b5515f073e8aa6f45feff44..247685a0f19c55a84a771c29112e03b0ce56cafd 100644
--- a/indra/newview/skins/default/xui/de/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/de/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		[HOURS] Stunden
+	</floater.string>
+	<floater.string name="Hour">
+		Std.
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] Min.
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		Restzeit
 	</floater.string>
+	<floater.string name="Always">
+		Immer
+	</floater.string>
 	<tab_container name="landtab" tab_min_width="40" width="489">
 		<panel label="ALLGEMEIN" name="land_general_panel">
 			<panel.string name="new users only">
@@ -319,18 +328,18 @@ Nur große Parzellen können in der Suche aufgeführt werden.
 			<text name="allow_label2">
 				Bauen:
 			</text>
-			<check_box label="Jeder" name="edit objects check"/>
-			<check_box label="Gruppe" name="edit group objects check"/>
+			<check_box label="Jeder" name="edit objects check" tool_tip="Wenn aktiviert, können Einwohner auf Ihrem Land Objekte erstellen und rezzen."/>
+			<check_box label="Gruppe" name="edit group objects check" tool_tip="Wenn aktiviert, können Parzellengruppen-Mitglieder auf Ihrem Land Objekte erstellen und rezzen."/>
 			<text name="allow_label3">
 				Objekteintritt:
 			</text>
-			<check_box label="Jeder" name="all object entry check"/>
-			<check_box label="Gruppe" name="group object entry check"/>
+			<check_box label="Jeder" name="all object entry check" tool_tip="Wenn aktiviert, können Einwohner bestehende Objekte von anderen Parzellen auf diese Parzelle verschieben."/>
+			<check_box label="Gruppe" name="group object entry check" tool_tip="Wenn aktiviert, können Parzellengruppen-Mitglieder bestehende Objekte von anderen Parzellen auf diese Parzelle verschieben."/>
 			<text name="allow_label4">
 				Skripts ausführen:
 			</text>
-			<check_box label="Jeder" name="check other scripts"/>
-			<check_box label="Gruppe" name="check group scripts"/>
+			<check_box label="Jeder" name="check other scripts" tool_tip="Wenn aktiviert, können Einwohner auf Ihrer Parzelle Skripte inklusive Anhängen ausführen."/>
+			<check_box label="Gruppe" name="check group scripts" tool_tip="Wenn aktiviert, können Parzellengruppen-Mitglieder auf Ihrer Parzelle Skripte inklusive Anhängen ausführen."/>
 			<check_box label="Sicher (kein Schaden)" name="check safe" tool_tip="Falls aktiviert, wird Land auf Option „Sicher“ eingestellt, Kampfschäden sind deaktiviert. Ansonsten sind Kampfschäden aktiviert."/>
 			<check_box label="Kein Stoßen" name="PushRestrictCheck" tool_tip="Verhindert Stoßen durch Skripte. Durch Aktivieren dieser Option verhindern Sie störendes Verhalten auf Ihrem Land."/>
 			<check_box label="Ort in Suche anzeigen (30 L$/Woche)" name="ShowDirectoryCheck" tool_tip="Diese Parzelle in Suchergebnissen anzeigen."/>
@@ -354,8 +363,8 @@ Nur große Parzellen können in der Suche aufgeführt werden.
 				Foto:
 			</text>
 			<texture_picker label="" name="snapshot_ctrl" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/>
-			<text name="allow_label5">
-				Avatare in anderen Parzellen können Avatare in dieser Parzelle sehen und mit ihnen chatten
+			<text name="allow_see_label">
+				Avatare in anderen Parzellen können Avatare in dieser Parzelle sehen und mit ihnen chatten.
 			</text>
 			<check_box label="Avatare sehen" name="SeeAvatarsCheck" tool_tip="Gestattet sowohl Avataren auf anderen Parzellen, Avatare auf dieser Parzelle zu sehen und mit ihnen zu chatten, als auch Ihnen, diese Avatare auf anderen Parzellen zu sehen und mit ihnen zu chatten."/>
 			<text name="landing_point">
@@ -457,9 +466,12 @@ Nur große Parzellen können in der Suche aufgeführt werden.
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="Verbannen" name="BanCheck">
-					Immer verbannt ([COUNT], max. [MAX])
+					Verbannt ([COUNT], max. [MAX])
 				</text>
-				<name_list name="BannedList" tool_tip="([LISTED] aufgeführt, [MAX] max)"/>
+				<name_list name="BannedList" tool_tip="([LISTED] aufgeführt, [MAX] max)">
+					<columns label="Name" name="name"/>
+					<columns label="Dauer" name="duration"/>
+				</name_list>
 				<button label="Hinzufügen" name="add_banned"/>
 				<button label="Entfernen" label_selected="Entfernen" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/de/floater_ban_duration.xml b/indra/newview/skins/default/xui/de/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..19e55f55276fde1921c4a232002a912ea7c4f522
--- /dev/null
+++ b/indra/newview/skins/default/xui/de/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="Verbannungsdauer">
+	<text name="duration_textbox">
+		Verbannungsdauer:
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="Immer" name="always_radio">
+			Immer
+		</radio_item>
+		<radio_item label="Temporär" name="temporary_radio">
+			Temporär
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		Stunden.
+	</text>
+	<button label="OK" name="ok_btn"/>
+	<button label="Abbrechen" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/de/floater_gesture.xml b/indra/newview/skins/default/xui/de/floater_gesture.xml
index 7b35da8d5cd8619d5713af10f669e6c89d431a17..0a82535040a749ee9870611bb975fb18b97a0b7e 100644
--- a/indra/newview/skins/default/xui/de/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/de/floater_gesture.xml
@@ -21,7 +21,7 @@
 		<button name="activate_btn" tool_tip="Ausgewählte Geste aktivieren/deaktivieren"/>
 		<button name="del_btn" tool_tip="Diese Geste löschen"/>
 	</panel>
-	<button label="Bearbeiten" name="edit_btn"/>
-	<button label="Abspielen" name="play_btn"/>
+	<button label="Bearbeiten" name="edit_btn" tool_tip="Fenster zum Bearbeiten der ausgewählten Geste öffnen."/>
+	<button label="Abspielen" name="play_btn" tool_tip="Ausgewählte Geste inworld ausführen."/>
 	<button label="Stopp" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/de/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/de/floater_preferences_graphics_advanced.xml
index 1361366bd5ca9111c23f54ad7540dd649f919705..41e8dc5ef486bf1c6ccf4ddc70e0841a402e4e68 100644
--- a/indra/newview/skins/default/xui/de/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/de/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="Anisotropische Filterung (langsamer, wenn aktiviert)" name="ani"/>
 	<check_box initial_value="true" label="OpenGL Vertex-Buffer-Objekte aktivieren" name="vbo" tool_tip="Wenn Sie über moderne Grafikhardware verfügen, können Sie durch Aktivieren dieser Option die Geschwindigkeit verbessern.  Bei alter Hardware sind die VBO oft schlecht implementiert, was zu Abstürzen führen kann, wenn diese Option aktiviert ist."/>
 	<check_box initial_value="true" label="Texturkomprimierung aktivieren (Neustart erforderlich)" name="texture compression" tool_tip="Komprimiert Texturen im Videospeicher, damit höher auflösende Texturen geladen werden können (leichte Beeinträchtigung der Farbqualität)."/>
+	<check_box initial_value="true" label="Unterstützung für HiDPI-Displays aktivieren (Neustart erforderlich)" name="use HiDPI" tool_tip="OpenGL für hochauflösende Darstellung aktivieren."/>
 	<text name="antialiasing label">
 		Antialiasing:
 	</text>
diff --git a/indra/newview/skins/default/xui/de/floater_preview_notecard.xml b/indra/newview/skins/default/xui/de/floater_preview_notecard.xml
index 14e666fd2256c28b740f82120515261554cc920d..21419d8e10c82e1f4961bff29b8d324cd3c5f364 100644
--- a/indra/newview/skins/default/xui/de/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/de/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		Wird geladen...
 	</text_editor>
+	<button label="Bearbeiten..." label_selected="Bearbeiten" name="Edit"/>
 	<button label="Speichern" label_selected="Speichern" name="Save"/>
 	<button label="Löschen" label_selected="Löschen" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/de/floater_report_abuse.xml b/indra/newview/skins/default/xui/de/floater_report_abuse.xml
index 6999679b3f3ee93aa012e0533b42258f33d82215..154256b53ebaddf7e44fe75c12b69d248701b17e 100644
--- a/indra/newview/skins/default/xui/de/floater_report_abuse.xml
+++ b/indra/newview/skins/default/xui/de/floater_report_abuse.xml
@@ -77,7 +77,7 @@ Objekt:
 		<combo_box.item label="Land &gt; Unbefugte Nutzung &gt; Objekte oder Texturen" name="Land__Encroachment__Objects_textures"/>
 		<combo_box.item label="Land &gt; Unbefugte Nutzung &gt; Partikel" name="Land__Encroachment__Particles"/>
 		<combo_box.item label="Land &gt; Unbefugte Nutzung &gt; Bäume/Pflanzen" name="Land__Encroachment__Trees_plants"/>
-		<combo_box.item label="Verstoß gegen die Spielerichtlinie" name="Wagering_gambling"/>
+		<combo_box.item label="Verstoß gegen die Geschicklichkeits-Spielerichtlinie" name="Wagering_gambling"/>
 		<combo_box.item label="Sonstige" name="Other"/>
 	</combo_box>
 	<text name="abuser_name_title">
diff --git a/indra/newview/skins/default/xui/de/notifications.xml b/indra/newview/skins/default/xui/de/notifications.xml
index 250e7c81f275199a4190967d2ead52eb617bd471..d16815c0f42b2e541435ef33ef05ae794a0b3292 100644
--- a/indra/newview/skins/default/xui/de/notifications.xml
+++ b/indra/newview/skins/default/xui/de/notifications.xml
@@ -1607,7 +1607,7 @@ Ersetzen Sie die Textur [TEXTURE_NUM] mit einer Bilddatei von maximal 512x512 un
 		[AGENT] wurden zur [LIST_TYPE]-Liste von [ESTATE] hinzugefügt.
 	</notification>
 	<notification name="AgentWasRemovedFromList">
-		[AGENT] wurden von der [LIST_TYPE]-Liste von [ESTATE] entfernt.
+		[AGENT] wurde von der [LIST_TYPE]-Liste von [ESTATE] entfernt.
 	</notification>
 	<notification name="AgentsWereRemovedFromList">
 		[AGENT] wurden von der [LIST_TYPE]-Liste von [ESTATE] entfernt.
diff --git a/indra/newview/skins/default/xui/de/panel_group_general.xml b/indra/newview/skins/default/xui/de/panel_group_general.xml
index 9d4301de73feb2e3b6cdcbe7189379ace539dc85..9fec5a242d33760765a3b39c4356138a5b16fd2e 100644
--- a/indra/newview/skins/default/xui/de/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/de/panel_group_general.xml
@@ -46,7 +46,7 @@ Bewegen Sie die Maus über die Optionen, um weitere Informationen anzuzeigen.
 		<check_box label="Jeder kann beitreten" name="open_enrollement" tool_tip="Festlegen, ob der Gruppenbeitritt ohne Einladung zulässig ist."/>
 		<check_box label="Kosten für Beitritt" name="check_enrollment_fee" tool_tip="Festlegen, ob Neumitglieder eine Beitrittsgebühr zahlen müssen"/>
 		<spinner label="L$" name="spin_enrollment_fee" tool_tip="Wenn Beitrittsgebühr aktiviert ist, müssen neue Mitglieder diesen Betrag zahlen."/>
-		<combo_box name="group_mature_check" tool_tip="Legt fest, ob Ihre Gruppeninformation moderate Inhalte enthält">
+		<combo_box name="group_mature_check" tool_tip="Inhaltseinstufungen kennzeichnen die in einer Gruppe zulässigen Inhalte und Verhaltensweisen">
 			<combo_item name="select_mature">
 				- Inhaltseinstufung auswählen -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/de/panel_region_access.xml b/indra/newview/skins/default/xui/de/panel_region_access.xml
index 4ebc4867fb81f72af256f2ab0adcf84ae5c76ecb..d2448bea7effc8f2d384a29e86d4bb0dce7d1fc6 100644
--- a/indra/newview/skins/default/xui/de/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/de/panel_region_access.xml
@@ -14,6 +14,7 @@
 		<panel label="ZULÄSSIG" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="Zulässige Agenten suchen" name="allowed_search_input"/>
+				<button label="Kopieren" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
 				Immer zugelassen:
@@ -26,7 +27,8 @@
 		</panel>
 		<panel label="ZULÄSSIGE GRUPPEN" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
-				<filter_editor label="Zulässige Gruppen Suchen" name="allowed_group_search_input"/>
+				<filter_editor label="Zulässige Gruppen suchen" name="allowed_group_search_input"/>
+				<button label="Kopieren" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
 				Immer zugelassene Gruppen:
@@ -40,6 +42,7 @@
 		<panel label="VERBANNT" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="Verbannte Agenten suchen" name="banned_search_input"/>
+				<button label="Kopieren" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				Immer verbannt:
diff --git a/indra/newview/skins/default/xui/de/panel_region_estate.xml b/indra/newview/skins/default/xui/de/panel_region_estate.xml
index b713dd58d02f1b6c92de8145887dc1cd51baf371..f6a5ed22f9801269a41013b7b6bef3ad12393fea 100644
--- a/indra/newview/skins/default/xui/de/panel_region_estate.xml
+++ b/indra/newview/skins/default/xui/de/panel_region_estate.xml
@@ -16,7 +16,7 @@
 		(unbekannt)
 	</text>
 	<radio_group name="externally_visible_radio">
-		<radio_item label="Nur Einwohner und Gruppen zulassen, die im Reiter &quot;Zugang&quot; aufgelistet sind." name="estate_restricted_access"/>
+		<radio_item label="Nur Einwohner und Gruppen zulassen, die im Reiter &quot;Zugang&quot; aufgelistet sind" name="estate_restricted_access"/>
 		<radio_item label="Alle Besucher zugelassen" name="estate_public_access"/>
 	</radio_group>
 	<check_box label="Muss 18+ sein" name="limit_age_verified" tool_tip="Nur Einwohner, die mindestens 18 Jahre alt sind, können diesen Grundbesitz betreten. Weitere Informationen finden Sie unter [SUPPORT_SITE]."/>
diff --git a/indra/newview/skins/default/xui/de/strings.xml b/indra/newview/skins/default/xui/de/strings.xml
index cdb89d77fc2abc290c5b7326866fa0cd029e181c..7db76ec552ef103e1f69e1fbc5293b83f559a1c6 100644
--- a/indra/newview/skins/default/xui/de/strings.xml
+++ b/indra/newview/skins/default/xui/de/strings.xml
@@ -75,6 +75,9 @@ Erweitertes Beleuchtungsmodell: [GPU_SHADERS]
 Texturspeicher: [TEXTURE_MEMORY] MB
 Erstellungszeit VFS (Cache): [VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		HiDPI-Anzeigemodus: [HIDPI]
+	</string>
 	<string name="AboutLibs">
 		J2C-Decoderversion: [J2C_VERSION]
 Audiotreiberversion: [AUDIO_DRIVER_VERSION]
@@ -1513,6 +1516,15 @@ besuchen Sie bitte http://secondlife.com/support
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		Fenster mit Spieloptionen öffnen.
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		Ausgewählte Geste inworld ausführen.
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		Fenster mit Spieloptionen öffnen.
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		Jeder kann Artikel im Marktplatz verkaufen.
 	</string>
diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml
index 35c51dbc52bdb6b9cf81e74ea3bc185dec807cff..5cb4e8a80becad8e886daead7f9b2fb9465586aa 100644
--- a/indra/newview/skins/default/xui/en/notifications.xml
+++ b/indra/newview/skins/default/xui/en/notifications.xml
@@ -326,6 +326,16 @@ Initialization with the Marketplace failed because of a system or network error.
         name="okbutton"
         yestext="OK"/>
     </notification>
+  
+    <notification
+        icon="OutboxStatus_Error"
+        name="MyOutfitsPasteFailed"
+        type="alertmodal">
+       One or more items can't be used inside "My outfits"
+      <usetemplate
+        name="okbutton"
+        yestext="OK"/>
+    </notification>
     
     <notification
         icon="OutboxStatus_Error"
@@ -1773,13 +1783,6 @@ Visit [_URL] for more information?
   <tag>fail</tag>
   </notification>
 
-  <notification
-   icon="alertmodal.tga"
-   name="RunLauncher"
-   type="alertmodal">
-     Please do not directly run the viewer executable. Update any existing shortcuts to run SL_Launcher instead.
-  </notification>
-
   <notification
    icon="alertmodal.tga"
    name="OldGPUDriver"
@@ -2393,6 +2396,7 @@ Your search terms were too short so no search was performed.
    icon="alertmodal.tga"
    name="CouldNotTeleportReason"
    type="alertmodal">
+    <unique/>
 Teleport failed.
 [REASON]
   <tag>fail</tag>
diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml
index 061caff47d36c43a6323806400002e64a0b97efb..605416524e647d4051e269831989bc9eae09cb68 100644
--- a/indra/newview/skins/default/xui/en/strings.xml
+++ b/indra/newview/skins/default/xui/en/strings.xml
@@ -263,6 +263,8 @@ Please try logging in again in a minute.</string>
 	<string name="TooltipOutboxDragActive">You can't move a listed listing</string>
 	<string name="TooltipOutboxCannotMoveRoot">You can't move the marketplace listings root folder</string>
 	<string name="TooltipOutboxMixedStock">All items in a stock folder must have the same type and permission</string>
+	<string name="TooltipOutfitNotInInventory">You can only put items or outfits from your personal inventory into "My outfits"</string>
+	<string name="TooltipCantCreateOutfit">One or more items can't be used inside "My outfits"</string>
 	
 	<string name="TooltipDragOntoOwnChild">You can't move a folder into its child</string>
 	<string name="TooltipDragOntoSelf">You can't move a folder into itself</string>
diff --git a/indra/newview/skins/default/xui/es/floater_about_land.xml b/indra/newview/skins/default/xui/es/floater_about_land.xml
index 857b39361a3f04a58ba4b73dd912487cd3ef6fa2..5d56305f68170773690305405271a44acc630c33 100644
--- a/indra/newview/skins/default/xui/es/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/es/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		[HOURS] hrs.
+	</floater.string>
+	<floater.string name="Hour">
+		hr.
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] min.
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		restantes
 	</floater.string>
+	<floater.string name="Always">
+		Siempre
+	</floater.string>
 	<tab_container name="landtab">
 		<panel label="GENERAL" name="land_general_panel">
 			<panel.string name="new users only">
@@ -318,18 +327,18 @@ Sólo las parcelas más grandes pueden listarse en la búsqueda.
 			<text name="allow_label2">
 				Crear objetos:
 			</text>
-			<check_box label="Todos los residentes" name="edit objects check"/>
-			<check_box label="El grupo" name="edit group objects check"/>
+			<check_box label="Todos los residentes" name="edit objects check" tool_tip="Si se selecciona, los residentes pueden crear y colocar objetos en tu tierra."/>
+			<check_box label="El grupo" name="edit group objects check" tool_tip="Si se selecciona, los miembros de un grupo con parcelas pueden crear y colocar objetos en tu tierra."/>
 			<text name="allow_label3">
 				Dejar objetos:
 			</text>
-			<check_box label="Todos los residentes" name="all object entry check"/>
-			<check_box label="El grupo" name="group object entry check"/>
+			<check_box label="Todos los residentes" name="all object entry check" tool_tip="Si se selecciona, los Residentes pueden mover objetos existentes de otras parcelas a esta."/>
+			<check_box label="El grupo" name="group object entry check" tool_tip="Si se selecciona, los miembros de un grupo con parcelas pueden mover objetos existentes de otras parcelas a esta."/>
 			<text name="allow_label4">
 				Ejecutar scripts:
 			</text>
-			<check_box label="Todos los residentes" name="check other scripts"/>
-			<check_box label="El grupo" name="check group scripts"/>
+			<check_box label="Todos los residentes" name="check other scripts" tool_tip="Si se selecciona, los Residentes pueden correr scripts en tu parcela, incluidos adjuntos."/>
+			<check_box label="El grupo" name="check group scripts" tool_tip="Si se selecciona, los miembros de un grupo con parcelas pueden correr scripts en tu parcela, incluidos adjuntos."/>
 			<check_box label="Seguro (sin daño)" name="check safe" tool_tip="Si se marca, convierte el terreno en &apos;seguro&apos;, desactivando el daño en combate. Si no, se activa el daño en combate."/>
 			<check_box label="Sin &apos;empujones&apos;" name="PushRestrictCheck" tool_tip="Previene scripts que empujen. Marcando esta opción prevendrá que en su terreno haya comportamientos destructivos."/>
 			<check_box label="Mostrar el sitio en la búsqueda (30 L$/semana)" name="ShowDirectoryCheck" tool_tip="Let people see this parcel in search results"/>
@@ -353,7 +362,7 @@ Sólo las parcelas más grandes pueden listarse en la búsqueda.
 				Foto:
 			</text>
 			<texture_picker label="" name="snapshot_ctrl" tool_tip="Pulse para elegir una imagen"/>
-			<text name="allow_label5" top="170">
+			<text name="allow_see_label">
 				Los avatares de otras parcelas pueden ver a los avatares de esta parcela y chatear con ellos
 			</text>
 			<check_box label="Ver los avatares" name="SeeAvatarsCheck" tool_tip="Permite que los avatares de otras parcelas vean a los avatares de ésta y chateen con ellos, y también que tú puedas verles y chatear con ellos." top="170"/>
@@ -459,9 +468,12 @@ los media:
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="Ban" name="BanCheck">
-					Siempre prohibido ([COUNT], max [MAX])
+					Prohibido ([COUNT], max [MAX])
 				</text>
-				<name_list name="BannedList" tool_tip="([LISTED] listados de un máx. de [MAX])"/>
+				<name_list name="BannedList" tool_tip="([LISTED] listados de un máx. de [MAX])">
+					<columns label="Nombre" name="name"/>
+					<columns label="Duración" name="duration"/>
+				</name_list>
 				<button label="Añadir" name="add_banned"/>
 				<button label="Quitar" label_selected="Quitar" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/es/floater_ban_duration.xml b/indra/newview/skins/default/xui/es/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..02252ede20ccda95cb5523a88130ff392bcc7870
--- /dev/null
+++ b/indra/newview/skins/default/xui/es/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="Duración">
+	<text name="duration_textbox">
+		Duración:
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="Siempre" name="always_radio">
+			Siempre
+		</radio_item>
+		<radio_item label="Temporario" name="temporary_radio">
+			Temporario
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		horas
+	</text>
+	<button label="Aceptar" name="ok_btn"/>
+	<button label="Cancelar" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/es/floater_gesture.xml b/indra/newview/skins/default/xui/es/floater_gesture.xml
index d90de8c9f43399b70cd46f62ce1d68515d5b0f53..45fb7c6773bf8477977cf04eb50b2a31497b8f94 100644
--- a/indra/newview/skins/default/xui/es/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/es/floater_gesture.xml
@@ -20,7 +20,7 @@
 		<button name="activate_btn" tool_tip="Activar/Desactivar el gesto elegido"/>
 		<button name="del_btn" tool_tip="Borrar este gesto"/>
 	</panel>
-	<button label="Editar" name="edit_btn"/>
-	<button label="Reproducir" name="play_btn"/>
+	<button label="Editar" name="edit_btn" tool_tip="Abrir la ventana para editar el gesto seleccionado."/>
+	<button label="Reproducir" name="play_btn" tool_tip="Realizar gesto seleccionado en el mundo."/>
 	<button label="Parar" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/es/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/es/floater_preferences_graphics_advanced.xml
index a0618521ee3996370b661a344b6224adf0b386bc..b8d5824fb79c3ab3f74885ad6a858b3825ebd434 100644
--- a/indra/newview/skins/default/xui/es/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/es/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="Filtrado anisotrópico (enlentece el dibujo)" name="ani"/>
 	<check_box initial_value="true" label="Habilitar objetos de búfer de vértices OpenGL" name="vbo" tool_tip="Su activación en un hardware moderno aumenta el rendimiento. No obstante, la ejecución poco eficiente de los VBO en los equipos antiguos puede hacer que se bloquee la aplicación."/>
 	<check_box initial_value="true" label="Activar la compresión de texturas (requiere reiniciar)" name="texture compression" tool_tip="Comprime las texturas en la memoria de vídeo, lo cual permite cargar texturas de una resolución más alta, pero con una cierta pérdida de calidad del color."/>
+	<check_box initial_value="true" label="Activar soporte para visores HiDPI (requiere reiniciar)" name="use HiDPI" tool_tip="Activar OpenGl para Dibujos de alta resolución."/>
 	<text name="antialiasing label">
 		Antialiasing:
 	</text>
diff --git a/indra/newview/skins/default/xui/es/floater_preview_notecard.xml b/indra/newview/skins/default/xui/es/floater_preview_notecard.xml
index d05a023279c4f1a5e6ce6078a69bb071b0e13adf..d467aa749cb84ec10059a070f22e369107e4d842 100644
--- a/indra/newview/skins/default/xui/es/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/es/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		Cargando...
 	</text_editor>
+	<button label="Editar..." label_selected="Editar" name="Edit"/>
 	<button label="Guardar" label_selected="Guardar" name="Save"/>
 	<button label="Borrar" label_selected="Borrar" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/es/notifications.xml b/indra/newview/skins/default/xui/es/notifications.xml
index af9df87d2515686f6ac6d6de531b16873cd400c7..86e3b5d38b8d38d89d71c93ea13429919b54bed0 100644
--- a/indra/newview/skins/default/xui/es/notifications.xml
+++ b/indra/newview/skins/default/xui/es/notifications.xml
@@ -1589,7 +1589,7 @@ Se superan en [NUM_EXCESS] los [MAX_AGENTS] permitidos en [LIST_TYPE].
 		[AGENT] ya está en tu lista [LIST_TYPE].
 	</notification>
 	<notification name="AgentsAreAlreadyInList">
-		[AGENT] ya está en tu lista [LIST_TYPE].
+		[AGENT] ya están en tu lista [LIST_TYPE].
 	</notification>
 	<notification name="AgentWasAddedToList">
 		[AGENT] fue añadido a la lista [LIST_TYPE] de [ESTATE].
diff --git a/indra/newview/skins/default/xui/es/panel_group_general.xml b/indra/newview/skins/default/xui/es/panel_group_general.xml
index b00c300c85524d398d791d8c48758f104ddbdbc7..a17814d15df78ad2628e3b837125750b71984c2f 100644
--- a/indra/newview/skins/default/xui/es/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/es/panel_group_general.xml
@@ -46,7 +46,7 @@ Deja el cursor sobre las opciones para ver más ayuda.
 		<check_box label="Cualquiera puede entrar" name="open_enrollement" tool_tip="Configura si se permite la entrada de nuevos miembros sin ser invitados."/>
 		<check_box label="Cuota de entrada" name="check_enrollment_fee" tool_tip="Configura si hay que pagar una cuota para entrar al grupo"/>
 		<spinner label="L$" left_delta="130" name="spin_enrollment_fee" tool_tip="Si la opción Cuota de entrada está marcada, los nuevos miembros han de pagar esta cuota para entrar al grupo." width="60"/>
-		<combo_box bottom_delta="-38" name="group_mature_check" tool_tip="Establece si la información de su grupo es moderado." width="150">
+		<combo_box bottom_delta="-38" name="group_mature_check" tool_tip="La calificación de contenido designa el tipo de contenido y conducta que se permiten en un grupo" width="150">
 			<combo_item name="select_mature">
 				- Selecciona el nivel de calificación -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/es/panel_region_access.xml b/indra/newview/skins/default/xui/es/panel_region_access.xml
index 3177aa2ab24f154053c60954b7be2ab030add4c6..a6b0ee68676994c3f49c2d6a344d81a0d8279ee4 100644
--- a/indra/newview/skins/default/xui/es/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/es/panel_region_access.xml
@@ -14,6 +14,7 @@
 		<panel label="PERMITIDO" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="Buscar agentes autorizados" name="allowed_search_input"/>
+				<button label="Copiar" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
 				Siempre autorizado:
@@ -27,6 +28,7 @@
 		<panel label="GRUPOS AUTORIZADOS:" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
 				<filter_editor label="Buscar grupos autorizados" name="allowed_group_search_input"/>
+				<button label="Copiar" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
 				Grupos siempre autorizados:
@@ -40,6 +42,7 @@
 		<panel label="PROHIBIDO" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="Buscar agentes prohibidos" name="banned_search_input"/>
+				<button label="Copiar" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				Siempre prohibido:
diff --git a/indra/newview/skins/default/xui/es/strings.xml b/indra/newview/skins/default/xui/es/strings.xml
index 7f4842df984af4ea9528dfbc18966cbf70d567da..af66907f8d0ee937a0209184c42938885ef25e9f 100644
--- a/indra/newview/skins/default/xui/es/strings.xml
+++ b/indra/newview/skins/default/xui/es/strings.xml
@@ -67,6 +67,9 @@ Modelo de iluminación avanzado: [GPU_SHADERS]
 Memoria de textura: [TEXTURE_MEMORY]MB
 VFS (cache) hora de creación: [VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		Modo de visualización HiDPi: [HIDPI]
+	</string>
 	<string name="AboutLibs">
 		Versión de descodificador J2C: [J2C_VERSION] 
 Versión del controlador audio: [AUDIO_DRIVER_VERSION] 
@@ -1496,6 +1499,15 @@ http://secondlife.com/support para obtener ayuda sobre cómo solucionar este pro
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		Abrir la ventana con las opciones del Juego
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		Realizar gesto seleccionado en el mundo.
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		Abrir la ventana con las opciones del Juego
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		Cualquier usuario puede vender objetos en el mercado.
 	</string>
diff --git a/indra/newview/skins/default/xui/fr/floater_about_land.xml b/indra/newview/skins/default/xui/fr/floater_about_land.xml
index 2c7bfcd282733a7ffd77048499a6636cf430d6f2..7cfbc7f42f0f6acb82c20495ad811170b7d99d0a 100644
--- a/indra/newview/skins/default/xui/fr/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/fr/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		[HEURES] hrs.
+	</floater.string>
+	<floater.string name="Hour">
+		hr.
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] min
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		restantes
 	</floater.string>
+	<floater.string name="Always">
+		Toujours
+	</floater.string>
 	<tab_container name="landtab" tab_min_width="60">
 		<panel label="GÉNÉRAL" name="land_general_panel">
 			<panel.string name="new users only">
@@ -322,18 +331,18 @@ Seules les parcelles de grande taille peuvent apparaître dans la recherche.
 			<text name="allow_label2">
 				Construire :
 			</text>
-			<check_box label="Tous" name="edit objects check"/>
-			<check_box label="Groupe" name="edit group objects check"/>
+			<check_box label="Tous" name="edit objects check" tool_tip="Si la case est cochée, les résidents peuvent créer et rezzer des objets sur votre terrain."/>
+			<check_box label="Groupe" name="edit group objects check" tool_tip="Si la case est cochée, les membres du groupe de la parcelle peuvent créer et rezzer des objets sur votre terrain."/>
 			<text name="allow_label3">
 				Laisser entrer des objets :
 			</text>
-			<check_box label="Tous" name="all object entry check"/>
-			<check_box label="Groupe" name="group object entry check"/>
+			<check_box label="Tous" name="all object entry check" tool_tip="Si la case est cochée, les résidents peuvent déplacer les objets des autres parcelles pour les amener sur cette parcelle."/>
+			<check_box label="Groupe" name="group object entry check" tool_tip="Si la case est cochée, les membres du groupe de la parcelle peuvent déplacer les objets des autres parcelles pour les amener sur cette parcelle."/>
 			<text name="allow_label4">
 				Exécuter des scripts :
 			</text>
-			<check_box label="Tous" name="check other scripts"/>
-			<check_box label="Groupe" name="check group scripts"/>
+			<check_box label="Tous" name="check other scripts" tool_tip="Si la case est cochée, les membres du groupe de la parcelle peuvent exécuter des scripts sur votre parcelle, y compris des pièces jointes."/>
+			<check_box label="Groupe" name="check group scripts" tool_tip="Si la case est cochée, les membres du groupe de la parcelle peuvent exécuter des scripts sur votre parcelle, y compris des pièces jointes."/>
 			<check_box label="Sécurisé (pas de dégâts)" name="check safe" tool_tip="Si cette option est cochée, le terrain est sécurisé et il n&apos;y pas de risques de dommages causés par des combats. Si elle est décochée, des dommages causés par les combats peuvent avoir lieu."/>
 			<check_box label="Pas de bousculades" name="PushRestrictCheck" tool_tip="Empêche l&apos;utilisation de scripts causant des bousculades. Cette option est utile pour empêcher les comportements abusifs sur votre terrain."/>
 			<check_box label="Voir le lieu dans la recherche (30 L$/sem.)" name="ShowDirectoryCheck" tool_tip="Afficher la parcelle dans les résultats de recherche"/>
@@ -357,7 +366,7 @@ Seules les parcelles de grande taille peuvent apparaître dans la recherche.
 				Photo :
 			</text>
 			<texture_picker label="" name="snapshot_ctrl" tool_tip="Cliquez pour sélectionner une image"/>
-			<text name="allow_label5">
+			<text name="allow_see_label">
 				Les avatars sur d&apos;autres parcelles peuvent voir et chatter avec les avatars sur cette parcelle.
 			</text>
 			<check_box label="Voir les avatars" name="SeeAvatarsCheck" tool_tip="Permettre aux avatars présents sur d&apos;autres parcelles de voir et chatter avec les avatars présents sur cette parcelle et à vous de les voir et de chatter avec eux."/>
@@ -464,9 +473,12 @@ musique :
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="Bannir" name="BanCheck">
-					Toujours interdit ([COUNT], max. [MAX])
+					Interdit interdit ([COUNT], max. [MAX])
 				</text>
-				<name_list name="BannedList" tool_tip="([LISTED] dans la liste, [MAX] max.)"/>
+				<name_list name="BannedList" tool_tip="([LISTED] dans la liste, [MAX] max.)">
+					<columns label="Nom" name="name"/>
+					<columns label="Durée" name="duration"/>
+				</name_list>
 				<button label="Ajouter" name="add_banned"/>
 				<button label="Supprimer" label_selected="Supprimer" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/fr/floater_ban_duration.xml b/indra/newview/skins/default/xui/fr/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2c877b81fa6ba5d68baf1d51ae9e024e48fe68d1
--- /dev/null
+++ b/indra/newview/skins/default/xui/fr/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="Durée de l&apos;interdiction">
+	<text name="duration_textbox">
+		Durée de l&apos;interdiction :
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="Toujours" name="always_radio">
+			Toujours
+		</radio_item>
+		<radio_item label="Temporaire" name="temporary_radio">
+			Temporaire
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		heures
+	</text>
+	<button label="OK" name="ok_btn"/>
+	<button label="Annuler" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/fr/floater_gesture.xml b/indra/newview/skins/default/xui/fr/floater_gesture.xml
index 5ead1cae3abb5aae335beecb46e590f1085121a0..9f4822e6269827f16fd4731aa8cbb85946a36c95 100644
--- a/indra/newview/skins/default/xui/fr/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/fr/floater_gesture.xml
@@ -21,7 +21,7 @@
 		<button name="activate_btn" tool_tip="Activer/désactiver le geste sélectionné"/>
 		<button name="del_btn" tool_tip="Supprimer ce geste"/>
 	</panel>
-	<button label="Modifier" name="edit_btn"/>
-	<button label="Lire" name="play_btn"/>
+	<button label="Modifier" name="edit_btn" tool_tip="Ouvrir la fenêtre pour modifier le geste sélectionné"/>
+	<button label="Lire" name="play_btn" tool_tip="Exécuter le geste sélectionné dans le monde virtuel."/>
 	<button label="Stop" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/fr/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/fr/floater_preferences_graphics_advanced.xml
index 23fff3b77054d5479677bb7017e0675726263729..fd47254934a6452814e9e218b33adf76a3a725ad 100644
--- a/indra/newview/skins/default/xui/fr/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/fr/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="Filtre anisotrope (plus lent quand activé)" name="ani"/>
 	<check_box initial_value="true" label="Activer OpenGL Vertex Buffer Objects" name="vbo" tool_tip="L’activation de cette option sur le matériel récent permet un gain de performance.  Cependant, les implémentations VBO pour le matériel plus ancien sont souvent médiocres et votre système risque de se planter quand cette option est activée."/>
 	<check_box initial_value="true" label="Activer la compression des textures (redémarrage requis)" name="texture compression" tool_tip="Comprime les textures en mémoire vidéo afin de permettre de charger des textures de résolution plus élevée au prix d’une certaine qualité de couleur."/>
+	<check_box initial_value="true" label="Activer le support pour l&apos;affichage en HiDPI (redémarrage requis)" name="use HiDPI" tool_tip="Activer OpenFL pour les dessins en haute résolution"/>
 	<text name="antialiasing label">
 		Anti-aliasing :
 	</text>
diff --git a/indra/newview/skins/default/xui/fr/floater_preview_notecard.xml b/indra/newview/skins/default/xui/fr/floater_preview_notecard.xml
index 5646ad45ebd711569ed33e489a81ebd733e2046d..1fc065e6c5a8f27f226f45b741057516be0f1381 100644
--- a/indra/newview/skins/default/xui/fr/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/fr/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		Chargement...
 	</text_editor>
+	<button label="Modifier..." label_selected="Modifier" name="Edit"/>
 	<button label="Enregistrer" label_selected="Enregistrer" name="Save"/>
 	<button label="Supprimer" label_selected="Supprimer" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/fr/notifications.xml b/indra/newview/skins/default/xui/fr/notifications.xml
index 5dda3fb95474ed2cbdf5d2c9194eaab681e8378b..41e4ad13f9b403e4e94db5616694fdf8ff1dc014 100644
--- a/indra/newview/skins/default/xui/fr/notifications.xml
+++ b/indra/newview/skins/default/xui/fr/notifications.xml
@@ -1572,10 +1572,10 @@ Dépasse la limite fixée à [MAX_AGENTS] [LIST_TYPE] de [NUM_EXCESS].
 		Impossible d’ajouter un résident banni à la liste des gérants de domaine.
 	</notification>
 	<notification name="ProblemBanningEstateManager">
-		Impossible d&apos;ajouter le gérant de domaine à la liste interdite.
+		Impossible d&apos;ajouter le gérant de domaine [AGENT] à la liste interdite.
 	</notification>
 	<notification name="GroupIsAlreadyInList">
-		&lt;nolink&gt;[GROUP]&lt;/nolink&gt; est déjà dans la liste des groupes autorisés.
+		&lt;nolink&gt;[GROUP]&lt;/nolink&gt; est déjà dans la liste des Groupes autorisés.
 	</notification>
 	<notification name="AgentIsAlreadyInList">
 		[AGENT] est déjà dans votre liste [LIST_TYPE].
@@ -1587,7 +1587,7 @@ Dépasse la limite fixée à [MAX_AGENTS] [LIST_TYPE] de [NUM_EXCESS].
 		[AGENT] a été ajouté à la liste [LIST_TYPE] de [ESTATE].
 	</notification>
 	<notification name="AgentsWereAddedToList">
-		[AGENT] ont été ajoutéq à la liste [LIST_TYPE] de [ESTATE].
+		[AGENT] ont été ajouté à la liste [LIST_TYPE] de [ESTATE].
 	</notification>
 	<notification name="AgentWasRemovedFromList">
 		[AGENT] a été supprimé de la liste [LIST_TYPE] de [ESTATE].
@@ -3000,7 +3000,7 @@ Si vous restez dans cette région, vous serez déconnecté(e).
 Si vous restez dans cette région, vous serez déconnecté(e).
 	</notification>
 	<notification name="LoadWebPage">
-		Charger la page Web [URL] ?
+		Charger la page Web [URL] ?
 
 [MESSAGE]
 
diff --git a/indra/newview/skins/default/xui/fr/panel_group_general.xml b/indra/newview/skins/default/xui/fr/panel_group_general.xml
index a2655dcd458771818029cef5ad8fa95b5c56cc88..5953e210e5d9bf9394727e3514d83cefac292a4e 100644
--- a/indra/newview/skins/default/xui/fr/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/fr/panel_group_general.xml
@@ -46,7 +46,7 @@ Faites glisser le pointeur de la souris sur les options pour en savoir plus.
 		<check_box label="Inscription ouverte à tous" name="open_enrollement" tool_tip="Indique si ce groupe autorise les nouveaux membres à le rejoindre sans y être invités."/>
 		<check_box label="Inscription payante" name="check_enrollment_fee" tool_tip="Indique s&apos;il faut payer des frais d&apos;inscription pour rejoindre ce groupe"/>
 		<spinner label="L$" name="spin_enrollment_fee" tool_tip="Les nouveaux membres doivent payer ces frais pour rejoindre le groupe quand l&apos;option Frais d&apos;inscription est cochée."/>
-		<combo_box name="group_mature_check" tool_tip="Définit si votre groupe contient des informations de type Modéré" width="195">
+		<combo_box name="group_mature_check" tool_tip="Il s&apos;agit du type de contenu et de comportement autorisé au sein d&apos;un groupe." width="195">
 			<combo_item name="select_mature">
 				- Catégorie de contenu -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/fr/panel_region_access.xml b/indra/newview/skins/default/xui/fr/panel_region_access.xml
index db77f3b8f145ce57e9ba84b91b441c1b9543aba0..ab62d3247f8687ce8e9c6b309df813d2bd46dd6c 100644
--- a/indra/newview/skins/default/xui/fr/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/fr/panel_region_access.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<panel label="ACCÈS" name="Access">
+<panel label="Accès" name="Access">
 	<tab_container name="tabs">
 		<panel label="GÉRANTS DU DOMAINE" name="estate_managers_panel">
 			<text name="estate_manager_label">
@@ -14,6 +14,7 @@
 		<panel label="AUTORISÉ" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="Rechercher des agents autorisés" name="allowed_search_input"/>
+				<button label="Copier" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
 				Toujours autorisé :
@@ -27,6 +28,7 @@
 		<panel label="GROUPES AUTORISÉS" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
 				<filter_editor label="Rechercher des groupes autorisés" name="allowed_group_search_input"/>
+				<button label="Copier" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
 				Groupes toujours autorisés :
@@ -40,6 +42,7 @@
 		<panel label="INTERDIT" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="Rechercher des agents interdits" name="banned_search_input"/>
+				<button label="Copier" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				Toujours interdit :
diff --git a/indra/newview/skins/default/xui/fr/strings.xml b/indra/newview/skins/default/xui/fr/strings.xml
index 686aa240a1b422008df5ec09c2676e066d2e6910..6d40ab4bc999d7e42237066f9eb61869876cf8e5 100644
--- a/indra/newview/skins/default/xui/fr/strings.xml
+++ b/indra/newview/skins/default/xui/fr/strings.xml
@@ -76,6 +76,9 @@ Modèle d’éclairage avancé : [GPU_SHADERS]
 Mémoire textures : [TEXTURE_MEMORY] Mo
 Heure de création VFS (cache) : [VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		Mode d&apos;affichage HiDPI : [HIDPI]
+	</string>
 	<string name="AboutLibs">
 		J2C Decoder Version: [J2C_VERSION] 
 Audio Driver Version: [AUDIO_DRIVER_VERSION] 
@@ -1514,6 +1517,15 @@ http://secondlife.com/support pour vous aider à résoudre ce problème.
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		Ouvrir la fenêtre avec les options Jeu
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		Exécuter le geste sélectionné dans le monde virtuel.
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		Ouvrir la fenêtre avec les options Jeu
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		Tout le monde peut vendre des articles sur la Place du marché.
 	</string>
diff --git a/indra/newview/skins/default/xui/it/floater_about_land.xml b/indra/newview/skins/default/xui/it/floater_about_land.xml
index 8237400786cea20240231479739d010f8f0713a4..f879b796b20a6d7b1aec11e2519a8d1f64a5d30a 100644
--- a/indra/newview/skins/default/xui/it/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/it/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		[HOURS] ore.
+	</floater.string>
+	<floater.string name="Hour">
+		ora.
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] min
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		rimanenti
 	</floater.string>
+	<floater.string name="Always">
+		Sempre
+	</floater.string>
 	<tab_container name="landtab">
 		<panel label="GENERALE" name="land_general_panel">
 			<panel.string name="new users only">
@@ -323,18 +332,18 @@ Solamente terreni più grandi possono essere abilitati nella ricerca.
 			<text name="allow_label2">
 				Creare oggetti:
 			</text>
-			<check_box label="Tutti i residenti" name="edit objects check"/>
-			<check_box label="Gruppo" name="edit group objects check"/>
+			<check_box label="Tutti i residenti" name="edit objects check" tool_tip="Se la casella è spuntata, i Residenti possono creare e rezzare oggetti sul tuo terreno."/>
+			<check_box label="Gruppo" name="edit group objects check" tool_tip="Se la casella è spuntata, i Residenti possono creare e rezzare oggetti sul tuo terreno."/>
 			<text name="allow_label3">
 				Immissione oggetti:
 			</text>
-			<check_box label="Tutti i residenti" name="all object entry check"/>
-			<check_box label="Gruppo" name="group object entry check"/>
+			<check_box label="Tutti i residenti" name="all object entry check" tool_tip="Se la casella è spuntata, i membri del lotto di gruppo possono muovere gli oggetti esistenti da altri lotti a questo."/>
+			<check_box label="Gruppo" name="group object entry check" tool_tip="Se la casella è spuntata, i membri del lotto di gruppo possono muovere gli oggetti esistenti da altri lotti a questo."/>
 			<text name="allow_label4">
 				Avere script attivi:
 			</text>
-			<check_box label="Tutti i residenti" name="check other scripts"/>
-			<check_box label="Gruppo" name="check group scripts"/>
+			<check_box label="Tutti i residenti" name="check other scripts" tool_tip="Se la casella è spuntata, i Residenti possono eseguire script sul tuo lotto, compresi gli allegati."/>
+			<check_box label="Gruppo" name="check group scripts" tool_tip="Se la casella è spuntata, i Residenti possono eseguire script sul tuo lotto, compresi gli allegati."/>
 			<check_box label="Sicuro (senza danno)" name="check safe" tool_tip="Se spuntato, imposta il terreno su &apos;sicuro&apos;, disabilitando i danni da combattimento. Se non spuntato, viene abilitato il combattimento con danni."/>
 			<check_box label="Nessuna spinta" name="PushRestrictCheck" tool_tip="Previeni i colpi. Selezionare questa opzione può essere utile per prevenire comportamenti dannosi sul tuo terreno."/>
 			<check_box label="Mostra luogo nella ricerca (30 L$/settimana)" name="ShowDirectoryCheck" tool_tip="Consenti che il lotto sia visto nei risultati di ricerca"/>
@@ -358,8 +367,8 @@ Solamente terreni più grandi possono essere abilitati nella ricerca.
 				Fotografia:
 			</text>
 			<texture_picker label="" name="snapshot_ctrl" tool_tip="Clicca per scegliere una immagine"/>
-			<text name="allow_label5">
-				Gli avatar su altri lotti possono vedere gli avatar su questo lotto e chattare con loro
+			<text name="allow_see_label">
+				Gli avatar di altri lotti possono vedere gli avatar che si trovano in questo lotto e chattare con loro
 			</text>
 			<check_box label="Vedi avatar" name="SeeAvatarsCheck" tool_tip="Consente ad avatar in altri lotti di vedere e chattare con avatar in questo lotto e viceversa."/>
 			<text name="landing_point">
@@ -464,9 +473,12 @@ Media:
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="Espelli" name="BanCheck">
-					Sempre esclusi ([COUNT], max [MAX])
+					Espulsi ([COUNT], max [MAX])
 				</text>
-				<name_list name="BannedList" tool_tip="([LISTED] in lista, [MAX] max)"/>
+				<name_list name="BannedList" tool_tip="([LISTED] in lista, [MAX] max)">
+					<columns label="Nome" name="name"/>
+					<columns label="Durata" name="duration"/>
+				</name_list>
 				<button label="Aggiungi" name="add_banned"/>
 				<button label="Rimuovi" label_selected="Rimuovi" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/it/floater_ban_duration.xml b/indra/newview/skins/default/xui/it/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..996cb82cd7c2b2a95ee7ca584610b807dd78e7c6
--- /dev/null
+++ b/indra/newview/skins/default/xui/it/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="Durata espulsione">
+	<text name="duration_textbox">
+		Durata espulsione:
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="Sempre" name="always_radio">
+			Sempre
+		</radio_item>
+		<radio_item label="Temporanea" name="temporary_radio">
+			Temporanea
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		ore.
+	</text>
+	<button label="Ok" name="ok_btn"/>
+	<button label="Annulla" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/it/floater_gesture.xml b/indra/newview/skins/default/xui/it/floater_gesture.xml
index b9419ebc220e73afc6f7ecfe7c98d2435fdf5415..0382cf9a901d83636dbd27471b2573d03ffe030d 100644
--- a/indra/newview/skins/default/xui/it/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/it/floater_gesture.xml
@@ -20,7 +20,7 @@
 		<button name="activate_btn" tool_tip="Attiva/Disattiva gesture selezionata"/>
 		<button name="del_btn" tool_tip="Elimina questa gesture"/>
 	</panel>
-	<button label="Modifica" name="edit_btn"/>
-	<button label="Play" name="play_btn"/>
+	<button label="Modifica" name="edit_btn" tool_tip="Apri la finestra per modificare il movimento selezionato."/>
+	<button label="Play" name="play_btn" tool_tip="Esegui il movimento selezionato nel mondo virtuale."/>
 	<button label="Stop" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/it/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/it/floater_preferences_graphics_advanced.xml
index b9fe6d76e7cd60db909e548ee20e557b8a6e1b17..3773ef371163f1c8020190e9a95f15684554b1bb 100644
--- a/indra/newview/skins/default/xui/it/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/it/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="Filtro anisotropico (rallenta quando è attivato)" name="ani"/>
 	<check_box initial_value="true" label="Attiva oggetti buffer vertici OpenGL" name="vbo" tool_tip="Se si attiva questa impostazione su hardware più recente si migliorano le prestazioni. Con la funzione attiva, l&apos;hardware meno recente potrebbe implementare VBO in maniera errata, causando interruzioni."/>
 	<check_box initial_value="true" label="Attiva compressione texture (richiede riavvio)" name="texture compression" tool_tip="Comprime le texture nella memoria video, consentendo il caricamento di texture a risoluzione maggiore al prezzo di una perdita di qualità del colore."/>
+	<check_box initial_value="true" label="Abilita assistenza per display HiDPI (riavvio necessario)" name="use HiDPI" tool_tip="Abilita OpenGL per disegni ad alta risoluzione."/>
 	<text name="antialiasing label">
 		Antialiasing:
 	</text>
diff --git a/indra/newview/skins/default/xui/it/floater_preview_notecard.xml b/indra/newview/skins/default/xui/it/floater_preview_notecard.xml
index 7ec229f9d3088f834345abdcd74303c47080dc40..d08bcb217ba6a5385ca3ab95ac4469bcde44d30b 100644
--- a/indra/newview/skins/default/xui/it/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/it/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		In caricamento...
 	</text_editor>
+	<button label="Modifica..." label_selected="Modifica" name="Edit"/>
 	<button label="Salva" label_selected="Salva" name="Save"/>
 	<button label="Elimina" label_selected="Elimina" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/it/floater_report_abuse.xml b/indra/newview/skins/default/xui/it/floater_report_abuse.xml
index f74d84fb8fe16c5cd4fd0c01d835135da1c2deb9..2fad438a4e6b922781b0077e6af97ebba387e6bd 100644
--- a/indra/newview/skins/default/xui/it/floater_report_abuse.xml
+++ b/indra/newview/skins/default/xui/it/floater_report_abuse.xml
@@ -76,7 +76,7 @@
 		<combo_box.item label="Terreno &gt; Invasione &gt; Oggetti o texture" name="Land__Encroachment__Objects_textures"/>
 		<combo_box.item label="Terreno &gt; Invasione &gt; Particelle" name="Land__Encroachment__Particles"/>
 		<combo_box.item label="Terreno &gt; Invasione &gt; Alberi/piante" name="Land__Encroachment__Trees_plants"/>
-		<combo_box.item label="Violazione regole del gioco" name="Wagering_gambling"/>
+		<combo_box.item label="Skill Violazione regole del gioco" name="Wagering_gambling"/>
 		<combo_box.item label="Altro" name="Other"/>
 	</combo_box>
 	<text name="abuser_name_title">
diff --git a/indra/newview/skins/default/xui/it/notifications.xml b/indra/newview/skins/default/xui/it/notifications.xml
index 70c1e966f77a1d05ee87567f57d8701159d8193e..a63b0273495bd7b71f07aa0e555ec03c8daf1aa1 100644
--- a/indra/newview/skins/default/xui/it/notifications.xml
+++ b/indra/newview/skins/default/xui/it/notifications.xml
@@ -1574,7 +1574,7 @@ Eccede il [MAX_AGENTS] [LIST_TYPE] limite di [NUM_EXCESS].
 		Impossibile aggiungere il residente espulso alla lista dei gestori delle proprietà.
 	</notification>
 	<notification name="ProblemBanningEstateManager">
-		Impossibile aggiunere il gestore della proprietà immobiliare [AGENT] all’elenco degli espulsi.
+		Impossibile aggiungere il gestore della proprietà immobiliare [AGENT] all’elenco degli espulsi.
 	</notification>
 	<notification name="GroupIsAlreadyInList">
 		&lt;nolink&gt;[GROUP]&lt;/nolink&gt; si trova già nell’elenco dei Gruppi ammessi.
@@ -1916,7 +1916,7 @@ Cambierà migliaia di regioni e produrrà seri problemi ai vari server.
 		<usetemplate canceltext="Annulla" name="yesnocancelbuttons" notext="Tutte le proprietà" yestext="Questa proprietà"/>
 	</notification>
 	<notification label="Seleziona la proprietà" name="EstateBannedAgentRemove">
-		Rimuovi questo Residente dall’elenco degli espulsi solo per questa proprietà immobiliare oppure per [ALL_ESTATES]?
+		Vuoi rimuovere questo Residente dall’elenco degli espulsi solo per questa proprietà immobiliare oppure per [ALL_ESTATES]?
 		<usetemplate canceltext="Annulla" name="yesnocancelbuttons" notext="Tutte le proprietà" yestext="Questa proprietà"/>
 	</notification>
 	<notification label="Seleziona la proprietà" name="EstateManagerAdd">
diff --git a/indra/newview/skins/default/xui/it/panel_group_general.xml b/indra/newview/skins/default/xui/it/panel_group_general.xml
index 49baa73811981b2157280c60fc9a023f48675a32..60028e6098da188e01290c70c39a69a787afd322 100644
--- a/indra/newview/skins/default/xui/it/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/it/panel_group_general.xml
@@ -46,7 +46,7 @@ Muovi il tuo mouse sopra le opzioni per maggiore aiuto.
 		<check_box label="Chiunque può aderire" name="open_enrollement" tool_tip="Imposta se questo gruppo permette ai nuovi membri di aderire senza essere invitati."/>
 		<check_box label="Quota di adesione" name="check_enrollment_fee" tool_tip="Imposta se richiedere una tassa d&apos;iscrizione per aderire al gruppo"/>
 		<spinner label="L$" left_delta="136" name="spin_enrollment_fee" tool_tip="I nuovi soci devono pagare questa tassa d&apos;iscrizione quando è selezionata." width="60"/>
-		<combo_box name="group_mature_check" tool_tip="Imposta se le informazioni sul tuo gruppo sono da considerarsi di tipo Moderato.">
+		<combo_box name="group_mature_check" tool_tip="Le categorie di accesso definiscono il tipo di contenuti e di comportamenti ammessi in un gruppo">
 			<combo_item name="select_mature">
 				- Seleziona categoria di accesso -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/it/panel_region_access.xml b/indra/newview/skins/default/xui/it/panel_region_access.xml
index 06ab2b40e79850bbf6d236ea62bc08266bb373d7..7547dbe76f05ebe4b475b2094da23fcbc115dfe0 100644
--- a/indra/newview/skins/default/xui/it/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/it/panel_region_access.xml
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<panel label="ACCESSO" name="Access">
+<panel label="Accesso" name="Access">
 	<tab_container name="tabs">
 		<panel label="GESTORI DELLE PROPRIETÀ IMMOBILIARI" name="estate_managers_panel">
 			<text name="estate_manager_label">
-				Gestori delle proprietà immobiliari
+				Gestori delle proprietà immobiliari:
 			</text>
 			<name_list name="estate_manager_name_list">
 				<columns label="Nome" name="name"/>
@@ -14,9 +14,10 @@
 		<panel label="AMMESSO" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="Cerca agenti ammessi" name="allowed_search_input"/>
+				<button label="Copia" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
-				Sempre ammesso:
+				Sempre ammessi:
 			</text>
 			<name_list name="allowed_avatar_name_list">
 				<columns label="Nome" name="name"/>
@@ -26,10 +27,11 @@
 		</panel>
 		<panel label="GRUPPI AMMESSI" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
-				<filter_editor label="Cerca gruppi consentiti" name="allowed_group_search_input"/>
+				<filter_editor label="Cerca gruppi ammessi" name="allowed_group_search_input"/>
+				<button label="Copia" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
-				Gruppi sempre consentiti:
+				Gruppi sempre ammessi:
 			</text>
 			<name_list name="allowed_group_name_list">
 				<columns label="Nome" name="name"/>
@@ -40,6 +42,7 @@
 		<panel label="ESPULSI" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="Cerca agenti espulsi" name="banned_search_input"/>
+				<button label="Copia" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				Sempre espulsi:
diff --git a/indra/newview/skins/default/xui/it/strings.xml b/indra/newview/skins/default/xui/it/strings.xml
index 625381ca65fd2f284fc7d4513da003499577b8f1..ca486f832e50da75e6b3c3e460db18dd69d1d229 100644
--- a/indra/newview/skins/default/xui/it/strings.xml
+++ b/indra/newview/skins/default/xui/it/strings.xml
@@ -73,6 +73,9 @@ Modello illuminazione avanzato: [GPU_SHADERS]
 Memoria texture: [TEXTURE_MEMORY]MB
 Data/ora creazione VFS (cache): [VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		Modalità display HiDPI: [HIDPI]
+	</string>
 	<string name="AboutLibs">
 		J2C Versione decoder: [J2C_VERSION] 
 Versione del driver audio: [AUDIO_DRIVER_VERSION][LIBCEF_VERSION]
@@ -1504,6 +1507,15 @@ http://secondlife.com/support per risolvere il problema.
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		Apri finestra con opzioni di Gioco.
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		Esegui il movimento selezionato nel mondo virtuale.
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		Apri finestra con opzioni di Gioco.
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		Chiunque può vendere oggetti nel Marketplace.
 	</string>
diff --git a/indra/newview/skins/default/xui/ja/floater_about_land.xml b/indra/newview/skins/default/xui/ja/floater_about_land.xml
index 12201a34758ce741c4112521d4fed6a17a395983..4703dfaa34ad46282e55e2db3477befc780a82b7 100644
--- a/indra/newview/skins/default/xui/ja/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/ja/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		[HOURS] 時間
+	</floater.string>
+	<floater.string name="Hour">
+		時間
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] 分
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		残り
 	</floater.string>
+	<floater.string name="Always">
+		常時
+	</floater.string>
 	<tab_container name="landtab">
 		<panel label="一般" name="land_general_panel">
 			<panel.string name="new users only">
@@ -320,18 +329,18 @@
 			<text name="allow_label2">
 				制作:
 			</text>
-			<check_box label="全員" name="edit objects check"/>
-			<check_box label="グループ" name="edit group objects check"/>
+			<check_box label="全員" name="edit objects check" tool_tip="このオプションを選択すると、住人はあなたの土地でオブジェクトの制作や rez ができます。"/>
+			<check_box label="グループ" name="edit group objects check" tool_tip="このオプションを選択すると、区画のグループメンバーは、あなたの土地でオブジェクトの制作や rez ができます。"/>
 			<text name="allow_label3">
 				オブジェクトの進入:
 			</text>
-			<check_box label="全員" name="all object entry check"/>
-			<check_box label="グループ" name="group object entry check"/>
+			<check_box label="全員" name="all object entry check" tool_tip="このオプションを選択すると、住人は他の区画にあるオブジェクトをこの区画に移動することが可能です。"/>
+			<check_box label="グループ" name="group object entry check" tool_tip="このオプションを選択すると、区画のグループメンバーは他の区画にあるオブジェクトをこの区画に移動することが可能です。"/>
 			<text name="allow_label4">
 				スクリプトの実行:
 			</text>
-			<check_box label="全員" name="check other scripts"/>
-			<check_box label="グループ" name="check group scripts"/>
+			<check_box label="全員" name="check other scripts" tool_tip="このオプションを選択すると、住人はアタッチメントなどのスクリプトをあなたの区画で実行できます。"/>
+			<check_box label="グループ" name="check group scripts" tool_tip="このオプションを選択すると、区画のグループメンバーは、アタッチメントなどのスクリプトをあなたの区画で実行できます。"/>
 			<check_box label="安全(ダメージなし)" name="check safe" tool_tip="チェックを入れるとこの土地でのダメージコンバットが無効になり、「安全」に設定されます。 チェックを外すとダメージコンバットが有効になります。"/>
 			<check_box label="プッシュ禁止" name="PushRestrictCheck" tool_tip="スクリプトによるプッシュを禁止します。 このオプションを選択することにより、あなたの土地での破壊的行動を防ぐことができます。"/>
 			<check_box label="検索に区画を表示(週 L$ 30)" name="ShowDirectoryCheck" tool_tip="この区画を検索結果に表示します"/>
@@ -355,8 +364,8 @@
 				スナップショット:
 			</text>
 			<texture_picker label="" name="snapshot_ctrl" tool_tip="写真をクリックして選択"/>
-			<text name="allow_label5">
-				他の区画にいるアバターがこの区画にいるアバターに会ってチャットできる
+			<text name="allow_see_label">
+				他の区画にいるアバターがこの区画にいるアバターに会ってチャットできます
 			</text>
 			<check_box label="アバターを表示" name="SeeAvatarsCheck" tool_tip="他の区画のアバターが、この区画にいるアバターに会ってチャットすることを許可し、あなたもそれらアバターに会ってチャットできるようにします。"/>
 			<text name="landing_point">
@@ -458,9 +467,12 @@
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="禁止" name="BanCheck">
-					常に禁止する ([COUNT] 人、最大 [MAX] 人)
+					禁止する ([COUNT] 人、最大 [MAX] 人)
 				</text>
-				<name_list name="BannedList" tool_tip="(合計 [LISTED] 人、最大 [MAX] 人)"/>
+				<name_list name="BannedList" tool_tip="(合計 [LISTED] 人、最大 [MAX] 人)">
+					<columns label="名前" name="name"/>
+					<columns label="期間" name="duration"/>
+				</name_list>
 				<button label="追加" name="add_banned"/>
 				<button label="削除" label_selected="削除" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/ja/floater_ban_duration.xml b/indra/newview/skins/default/xui/ja/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a9d00b0116d8ff56430e8cf99ecb039a10873e34
--- /dev/null
+++ b/indra/newview/skins/default/xui/ja/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="禁止期間">
+	<text name="duration_textbox">
+		禁止期間:
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="常時" name="always_radio">
+			常時
+		</radio_item>
+		<radio_item label="一時的" name="temporary_radio">
+			一時的
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		時間
+	</text>
+	<button label="Ok" name="ok_btn"/>
+	<button label="キャンセル" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/ja/floater_gesture.xml b/indra/newview/skins/default/xui/ja/floater_gesture.xml
index 1ed5ad31db2a80b75aa013184242e07c8b193ceb..b5b1efe386dab758634a58f9c265569bacc25ebb 100644
--- a/indra/newview/skins/default/xui/ja/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/ja/floater_gesture.xml
@@ -21,7 +21,7 @@
 		<button name="activate_btn" tool_tip="選択したジェスチャーのアクティベートの有無"/>
 		<button name="del_btn" tool_tip="このジェスチャーを削除"/>
 	</panel>
-	<button label="編集" name="edit_btn"/>
-	<button label="再生" name="play_btn"/>
+	<button label="編集" name="edit_btn" tool_tip="選択済みのジェスチャーを編集するためにウィンドウを開ける。"/>
+	<button label="再生" name="play_btn" tool_tip="インワールドで選択済みのジェスチャーを実行する。"/>
 	<button label="停止" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/ja/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/ja/floater_preferences_graphics_advanced.xml
index ff7814ffb7e57eead486fc9fad80e09fe69fc823..c28afa4c98c99ea66e3e37001f09469c9feb1057 100644
--- a/indra/newview/skins/default/xui/ja/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/ja/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="異方的フィルタリング (有効にすると速度が低下)" name="ani"/>
 	<check_box initial_value="true" label="OpenGL Vertex Buffer Objects を有効化" name="vbo" tool_tip="最新のハードウェアでこのオプションを有効にするとパフォーマンスが向上します。ただし、古いハードウェアでは VBO の実装が貧弱なため、このオプションを有効にするとクラッシュする場合があります。"/>
 	<check_box initial_value="true" label="テクスチャ圧縮の有効化 (再起動後に反映)" name="texture compression" tool_tip="ビデオメモリでテクスチャを圧縮すると、一部のカラー品質を犠牲にして、高解像度のテクスチャをロードできます。"/>
+	<check_box initial_value="true" label="HiDPI 表示のためにサポートを有効にする(再起動が必要)" name="use HiDPI" tool_tip="高画質の描画のために OpenGL を有効にする"/>
 	<text name="antialiasing label">
 		アンチエイリアシング:
 	</text>
diff --git a/indra/newview/skins/default/xui/ja/floater_preview_notecard.xml b/indra/newview/skins/default/xui/ja/floater_preview_notecard.xml
index ae8ae9f7b5960756796e24801e64c4c94af64a15..ef7e90a6bc3fb0c7c8765f51f72e6686eaec362b 100644
--- a/indra/newview/skins/default/xui/ja/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/ja/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		ローディング...
 	</text_editor>
+	<button label="編集..." label_selected="編集" name="Edit"/>
 	<button label="保存" label_selected="保存" name="Save"/>
 	<button label="削除" label_selected="削除" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/ja/floater_report_abuse.xml b/indra/newview/skins/default/xui/ja/floater_report_abuse.xml
index 7631cd7ababbf0235db2fb55b8880ee103dfb26f..4ddd0d2605ae75d4b3d22e215ec2741731fbc996 100644
--- a/indra/newview/skins/default/xui/ja/floater_report_abuse.xml
+++ b/indra/newview/skins/default/xui/ja/floater_report_abuse.xml
@@ -76,7 +76,7 @@
 		<combo_box.item label="土地 &gt; 不法侵入 &gt; オブジェクトまたはテクスチャ" name="Land__Encroachment__Objects_textures"/>
 		<combo_box.item label="土地>不法侵入>パーティクル" name="Land__Encroachment__Particles"/>
 		<combo_box.item label="土地>不法侵入>樹木/植物" name="Land__Encroachment__Trees_plants"/>
-		<combo_box.item label="ゲーミング ポリシー違反" name="Wagering_gambling"/>
+		<combo_box.item label="スキルゲーミング ポリシー違反" name="Wagering_gambling"/>
 		<combo_box.item label="その他" name="Other"/>
 	</combo_box>
 	<text name="abuser_name_title">
diff --git a/indra/newview/skins/default/xui/ja/panel_group_general.xml b/indra/newview/skins/default/xui/ja/panel_group_general.xml
index a1bfb67823125bdb1cf8c177021fac4adccee794..aab536f6538bcf413bacd46e7d6b542a4ba62111 100644
--- a/indra/newview/skins/default/xui/ja/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/ja/panel_group_general.xml
@@ -46,7 +46,7 @@
 		<check_box label="誰でも入会できます" name="open_enrollement" tool_tip="招待されなくても新規メンバーが加入できるかどうかを設定します。"/>
 		<check_box label="入会費がかかります" name="check_enrollment_fee" tool_tip="入会費が必要かどうかを設定します。"/>
 		<spinner label="L$" name="spin_enrollment_fee" tool_tip="「入会費」にチェックが入っている場合、新規メンバーは指定された入会費を支払わなければグループに入れません。"/>
-		<combo_box name="group_mature_check" tool_tip="あなたのグループに「Moderate」にレート設定された情報があるかどうかを設定します">
+		<combo_box name="group_mature_check" tool_tip="レーティング区分は、グループ内でどのようなコンテンツや行動が許されるかを指定するものです">
 			<combo_item name="select_mature">
 				- レーティング区分を指定 -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/ja/panel_region_access.xml b/indra/newview/skins/default/xui/ja/panel_region_access.xml
index c0612dd1506dd609c985c7fb380e5d22abf0fe02..34809688d0c0a26369a27f19d2b028c74088c62b 100644
--- a/indra/newview/skins/default/xui/ja/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/ja/panel_region_access.xml
@@ -14,6 +14,7 @@
 		<panel label="許可" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="許可されたエージェントを検索" name="allowed_search_input"/>
+				<button label="コピー" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
 				常に許可:
@@ -27,6 +28,7 @@
 		<panel label="許可されたグループ" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
 				<filter_editor label="許可されたグループを検索" name="allowed_group_search_input"/>
+				<button label="コピー" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
 				常に許可されたグループ:
@@ -40,6 +42,7 @@
 		<panel label="禁止" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="禁止されたエージェントを検索" name="banned_search_input"/>
+				<button label="コピー" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				常に禁止:
diff --git a/indra/newview/skins/default/xui/ja/strings.xml b/indra/newview/skins/default/xui/ja/strings.xml
index 165c66b52fca7e02f40ebb330474e77a4c4dae4c..3f463765957eafd4ac7b146b0d0b16e89c725016 100644
--- a/indra/newview/skins/default/xui/ja/strings.xml
+++ b/indra/newview/skins/default/xui/ja/strings.xml
@@ -76,6 +76,9 @@ LOD ä¿‚æ•°: [LOD_FACTOR]
 テクスチャメモリ: [TEXTURE_MEMORY]MB
 VFS(キャッシュ)作成時間: [VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		HiDPI 表示モード: [HIDPI]
+	</string>
 	<string name="AboutLibs">
 		J2C デコーダバージョン: [J2C_VERSION] 
 オーディオドライババージョン: [AUDIO_DRIVER_VERSION] 
@@ -1513,6 +1516,15 @@ support@secondlife.com にお問い合わせください。
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		[再生] オプションでウィンドウを開ける。
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		インワールドで選択済みのジェスチャーを実行する。
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		[再生] オプションでウィンドウを開ける。
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		マーケットプレイスでは誰でもアイテムを売ることができます。
 	</string>
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 8807428bd3914ce7345015d809042da73581d710..786b2a3e5f664a7d2e090f6c4f713b7c78972e83 100644
--- a/indra/newview/skins/default/xui/pt/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/pt/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		[HOURS] hrs.
+	</floater.string>
+	<floater.string name="Hour">
+		hr.
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] min.
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		faltam
 	</floater.string>
+	<floater.string name="Always">
+		Sempre
+	</floater.string>
 	<tab_container name="landtab">
 		<panel label="GERAL" name="land_general_panel">
 			<panel.string name="new users only">
@@ -318,18 +327,18 @@ Apenas lotes maiores podem ser listados na busca.
 			<text name="allow_label2">
 				Criar objetos:
 			</text>
-			<check_box label="Residentes" name="edit objects check"/>
-			<check_box label="Grupo" name="edit group objects check"/>
+			<check_box label="Residentes" name="edit objects check" tool_tip="Se verificado, os Residentes podem criar e mover objetos no seu terreno."/>
+			<check_box label="Grupo" name="edit group objects check" tool_tip="Se verificado, o grupo de membros do terreno podem criar e adicionar objetos no seu terreno."/>
 			<text name="allow_label3">
 				Entrada de objetos:
 			</text>
-			<check_box label="Residentes" name="all object entry check"/>
-			<check_box label="Grupo" name="group object entry check"/>
+			<check_box label="Residentes" name="all object entry check" tool_tip="Se verificado, os Residentes podem mover objetos existentes de outros terrenos para esse terreno."/>
+			<check_box label="Grupo" name="group object entry check" tool_tip="Se verificado, o grupo de membros do terreno podem mover os objetos existentes de outros terrenos para esse terreno."/>
 			<text name="allow_label4">
 				Executar scripts:
 			</text>
-			<check_box label="Residentes" name="check other scripts"/>
-			<check_box label="Grupo" name="check group scripts"/>
+			<check_box label="Residentes" name="check other scripts" tool_tip="Se verificado, os Residentes podem rodar scripts no seu terreno, incluindo anexos."/>
+			<check_box label="Grupo" name="check group scripts" tool_tip="Se verificado, o grupo de membros do terreno podem rodar scripts no seu terreno, incluindo anexos."/>
 			<check_box label="Seguro (sem danos)" name="check safe" tool_tip="Se ativado, ajusta o terreno para Seguro, impedindo lutas com danos. Se não ativado, lutas com danos é habilitado."/>
 			<check_box label="Proibido empurrar" name="PushRestrictCheck" tool_tip="Evita scripts que empurram. Ativar essa opção ajuda a prevenir comportamentos desordeiros no seu terreno."/>
 			<check_box label="Mostrar terreno nos resultados de busca (L$30/semana)" name="ShowDirectoryCheck" tool_tip="Permitir que as pessoas vejam este terreno nos resultados de busca"/>
@@ -353,7 +362,7 @@ Apenas lotes maiores podem ser listados na busca.
 				Foto:
 			</text>
 			<texture_picker label="" name="snapshot_ctrl" tool_tip="Clique para escolher uma imagem"/>
-			<text name="allow_label5">
+			<text name="allow_see_label">
 				Avatares em outros lotes podem ver e conversar com avatares neste lote
 			</text>
 			<check_box label="Ver avatares" name="SeeAvatarsCheck" tool_tip="Permite que os avatares em outros lotes vejam e batam papo com avatares neste lote. Você poderá vê-los e conversar com eles."/>
@@ -459,9 +468,12 @@ Mídia:
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="Ban" name="BanCheck">
-					Sempre banido ([COUNT], máx: [MAX])
+					Banido ([COUNT], máx: [MAX])
 				</text>
-				<name_list name="BannedList" tool_tip="(Total [LISTED], máx de [MAX])"/>
+				<name_list name="BannedList" tool_tip="(Total [LISTED], máx de [MAX])">
+					<columns label="Nome" name="name"/>
+					<columns label="Duração" name="duration"/>
+				</name_list>
 				<button label="Adicionar" name="add_banned"/>
 				<button label="Tirar" label_selected="Tirar" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/pt/floater_ban_duration.xml b/indra/newview/skins/default/xui/pt/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1b2bab88c73a1ee7c2d8481a74cbe50787c9859c
--- /dev/null
+++ b/indra/newview/skins/default/xui/pt/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="Duração do banimento">
+	<text name="duration_textbox">
+		Duração do banimento:
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="Sempre" name="always_radio">
+			Sempre
+		</radio_item>
+		<radio_item label="Temporário" name="temporary_radio">
+			Temporário
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		horas.
+	</text>
+	<button label="Ok" name="ok_btn"/>
+	<button label="Cancelar" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/pt/floater_gesture.xml b/indra/newview/skins/default/xui/pt/floater_gesture.xml
index 2e5b92aaf7574004db4c0fa7aa034f48aa27e5f8..308d3e7d88e7c38c5263164a530c7ad2b35182da 100644
--- a/indra/newview/skins/default/xui/pt/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/pt/floater_gesture.xml
@@ -20,7 +20,7 @@
 		<button name="activate_btn" tool_tip="Ativar/Desativar gesto selecionado"/>
 		<button name="del_btn" tool_tip="Excluir este gesto"/>
 	</panel>
-	<button label="Editar" name="edit_btn"/>
-	<button label="Executar" name="play_btn"/>
+	<button label="Editar" name="edit_btn" tool_tip="Abrir janela para edição do gesto selecionado."/>
+	<button label="Executar" name="play_btn" tool_tip="Executar o gesto selecionado no mundo."/>
 	<button label="Parar" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/pt/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/pt/floater_preferences_graphics_advanced.xml
index 89b3781151cf9454fd91d6ec9a45e398b7c7f728..c5039267caf5b81c3a60aa82f0e94e0dab602fd5 100644
--- a/indra/newview/skins/default/xui/pt/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/pt/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="Filtro anisotrópico (mais lento quando ativado)" name="ani"/>
 	<check_box initial_value="true" label="Ativar Vertex Buffer Objects de OpenGL" name="vbo" tool_tip="Ativar isso em hardware moderno melhora o desempenho.  Entretanto, hardwares mais antigos normalmente implantam mal os VBOs. A ativação dessa configuração pode travar sua máquina."/>
 	<check_box initial_value="true" label="Habilitar compressão da textura (requer reinício)" name="texture compression" tool_tip="Comprime as texturas na memória de vídeo, permitindo o carregamento de texturas de maior resolução em detrimento da qualidade da cor."/>
+	<check_box initial_value="true" label="Habilitar suporte para exibição HiDPI (é necessário reiniciar)" name="use HiDPI" tool_tip="Habilitar o OpenGL para Desenho de alta-resolução."/>
 	<text name="antialiasing label">
 		Antialiasing:
 	</text>
diff --git a/indra/newview/skins/default/xui/pt/floater_preview_notecard.xml b/indra/newview/skins/default/xui/pt/floater_preview_notecard.xml
index d094c1b63a02424683485b587bcd84aa48efec10..9885ee2a23ee9f2164930f102e2a76c4f7e06394 100644
--- a/indra/newview/skins/default/xui/pt/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/pt/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		Carregando...
 	</text_editor>
+	<button label="Editar..." label_selected="Editar" name="Edit"/>
 	<button label="Salvar" label_selected="Salvar" name="Save"/>
 	<button label="Excluir" label_selected="Excluir" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/pt/floater_report_abuse.xml b/indra/newview/skins/default/xui/pt/floater_report_abuse.xml
index f30201fc337e9e6a1a775e32566c978ea46854a5..1429fe183cc8e4da5fedacc887441d90d9da82b0 100644
--- a/indra/newview/skins/default/xui/pt/floater_report_abuse.xml
+++ b/indra/newview/skins/default/xui/pt/floater_report_abuse.xml
@@ -76,7 +76,7 @@
 		<combo_box.item label="Terreno &gt; Invasão &gt; Objetos ou texturas" name="Land__Encroachment__Objects_textures"/>
 		<combo_box.item label="Terra &gt; Invasão &gt; Partículas" name="Land__Encroachment__Particles"/>
 		<combo_box.item label="Terra &gt; Violação &gt; Árvores/plantas" name="Land__Encroachment__Trees_plants"/>
-		<combo_box.item label="Violação da política sobre jogos" name="Wagering_gambling"/>
+		<combo_box.item label="Ignorar o jogo de violação da política" name="Wagering_gambling"/>
 		<combo_box.item label="Outro" name="Other"/>
 	</combo_box>
 	<text name="abuser_name_title">
diff --git a/indra/newview/skins/default/xui/pt/notifications.xml b/indra/newview/skins/default/xui/pt/notifications.xml
index 7efb3333bc57896f56858230b653996c0423eee9..35f65a59bc584c697851a2ea726a645d18ded200 100644
--- a/indra/newview/skins/default/xui/pt/notifications.xml
+++ b/indra/newview/skins/default/xui/pt/notifications.xml
@@ -1904,7 +1904,7 @@ Isto mudará milhares de regiões e fará o spaceserver soluçar.
 		<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todas as Propriedades" yestext="Esta Propriedade"/>
 	</notification>
 	<notification label="Selecione a propriedade" name="EstateBannedAgentRemove">
-		Remover este Residente da lista de banimento para acessar este estado somente ou para [ALL_ESTATES]?
+		Remover este Residente da lista de banimento para acessar esta propriedade somente ou para [ALL_ESTATES]?
 		<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todas as Propriedades" yestext="Esta Propriedade"/>
 	</notification>
 	<notification label="Selecione a propriedade" name="EstateManagerAdd">
diff --git a/indra/newview/skins/default/xui/pt/panel_group_general.xml b/indra/newview/skins/default/xui/pt/panel_group_general.xml
index b634ec3f642b2942c085fcb707df901fab7e13ce..64a7d13fdb4fc999b20741ddffa772ddeb1103da 100644
--- a/indra/newview/skins/default/xui/pt/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/pt/panel_group_general.xml
@@ -46,7 +46,7 @@ Para obter mais ajuda, passe o mouse sobre as opções.
 		<check_box label="Qualquer um pode entrar" name="open_enrollement" tool_tip="Controla a entrada de novos membros, com ou sem convite."/>
 		<check_box label="Taxa de inscrição" name="check_enrollment_fee" tool_tip="Controla a cobrança de uma taxa de associação ao grupo."/>
 		<spinner label="L$" left_delta="120" name="spin_enrollment_fee" tool_tip="Se a opção &apos;Taxa de associação&apos; estiver marcada, novos membros precisam pagar o valor definido para entrar no grupo." width="60"/>
-		<combo_box name="group_mature_check" tool_tip="Define se os dados do seu grupo são conteúdo moderado." width="170">
+		<combo_box name="group_mature_check" tool_tip="Os níveis de maturidade determinam o tipo de conteúdo e comportamento permitidos em um grupo" width="170">
 			<combo_item name="select_mature">
 				- Selecione o nível de maturidade -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/pt/panel_region_access.xml b/indra/newview/skins/default/xui/pt/panel_region_access.xml
index cc2136a4598e23bf66f2672f230d50db38436e9e..c6273ea70d0fce6da7cede411860e1fba40b281f 100644
--- a/indra/newview/skins/default/xui/pt/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/pt/panel_region_access.xml
@@ -14,6 +14,7 @@
 		<panel label="PERMITIDO" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="Buscar agentes permitidos" name="allowed_search_input"/>
+				<button label="Copiar" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
 				Sempre permitido:
@@ -27,6 +28,7 @@
 		<panel label="GRUPOS PERMITIDOS" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
 				<filter_editor label="Buscar grupos permitidos" name="allowed_group_search_input"/>
+				<button label="Copiar" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
 				Grupos sempre permitidos:
@@ -40,6 +42,7 @@
 		<panel label="BANIDO" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="Buscar agentes banidos" name="banned_search_input"/>
+				<button label="Copiar" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				Sempre banido:
diff --git a/indra/newview/skins/default/xui/pt/strings.xml b/indra/newview/skins/default/xui/pt/strings.xml
index 810f44709e7070b4ff6db24d9c592341efcdf4d3..6b86c4330c62165fa20165237fc366464d87a923 100644
--- a/indra/newview/skins/default/xui/pt/strings.xml
+++ b/indra/newview/skins/default/xui/pt/strings.xml
@@ -67,6 +67,9 @@ Modelo avançado de luzes: [GPU_SHADERS]
 Memória de textura: [TEXTURE_MEMORY]MB
 VFS (cache) tempo de criação: [VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		HiDPI modo de exibição: [HIDPI]
+	</string>
 	<string name="AboutLibs">
 		Versão do J2C Decoder: [J2C_VERSION] 
 Versão do driver de áudio: [AUDIO_DRIVER_VERSION]
@@ -1464,6 +1467,15 @@ http://secondlife.com/support para ajuda ao resolver este problema.
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		Abrir a janela com as opções do Jogo.
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		Executar o gesto selecionado no mundo.
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		Abrir a janela com as opções do Jogo.
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		Qualquer um pode vender itens no Mercado.
 	</string>
diff --git a/indra/newview/skins/default/xui/ru/floater_about_land.xml b/indra/newview/skins/default/xui/ru/floater_about_land.xml
index d0f278f16e39dbe9798bad624b76129a136c4f7d..e494843b4782f59bd72b8171dd9ef0eac7ac6f63 100644
--- a/indra/newview/skins/default/xui/ru/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/ru/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		\[HOURS] ч
+	</floater.string>
+	<floater.string name="Hour">
+		ч
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] мин
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		осталось
 	</floater.string>
+	<floater.string name="Always">
+		Всегда
+	</floater.string>
 	<tab_container name="landtab">
 		<panel label="ОСНОВНЫЕ" name="land_general_panel">
 			<panel.string name="new users only">
@@ -316,18 +325,18 @@
 			<text name="allow_label2">
 				Строительство:
 			</text>
-			<check_box label="Все" name="edit objects check"/>
-			<check_box label="Группа" name="edit group objects check"/>
+			<check_box label="Все" name="edit objects check" tool_tip="Если установлен флажок, жители могут создавать и выкладывать объекты на вашей земле."/>
+			<check_box label="Группа" name="edit group objects check" tool_tip="Если установлен флажок, то жители могут создавать и выкладывать объекты на вашей земле."/>
 			<text name="allow_label3">
 				Проникновение объектов:
 			</text>
-			<check_box label="Все" name="all object entry check"/>
-			<check_box label="Группа" name="group object entry check"/>
+			<check_box label="Все" name="all object entry check" tool_tip="Если установлен флажок, то жители могут перемещать существующие объекты из других участков на этот участок."/>
+			<check_box label="Группа" name="group object entry check" tool_tip="Если установлен флажок, то члены группы участка могут перемещать существующие объекты из других участков на этот участок."/>
 			<text name="allow_label4">
 				Запускать скрипты:
 			</text>
-			<check_box label="Все" name="check other scripts"/>
-			<check_box label="Группа" name="check group scripts"/>
+			<check_box label="Все" name="check other scripts" tool_tip="Если установлен флажок, то жители могут выполнять скрипты на вашем участке, включая приложения."/>
+			<check_box label="Группа" name="check group scripts" tool_tip="Если установлен флажок, то члены группы могут выполнять скрипты на вашем участке, включая приложения."/>
 			<check_box label="Безопасно (нет повреждений)" name="check safe" tool_tip="Если отмечено, то земля считается безопасной, отключены боевые повреждения. Если не отмечено, то боевые повреждения включены."/>
 			<check_box label="Не толкать" name="PushRestrictCheck" tool_tip="Запрещает скриптам функцию толкания. Этот параметр может оказаться полезным для предотвращения нежелательного поведения на вашей земле."/>
 			<check_box label="Показать место в поиске (L$30/неделя)" name="ShowDirectoryCheck" tool_tip="Позволить людям видеть участок в результатах поиска"/>
@@ -351,7 +360,7 @@
 				Снимок:
 			</text>
 			<texture_picker name="snapshot_ctrl" tool_tip="Щелкните для выбора изображения"/>
-			<text name="allow_label5">
+			<text name="allow_see_label">
 				Аватары с других участков могут видеть аватары на этом участке и общаться с ними
 			</text>
 			<check_box label="Видны аватары" name="SeeAvatarsCheck" tool_tip="Аватары с других участков смогут видеть аватары на этом участке и общаться с ними в чате, а вы также сможете видеть их и общаться с ними."/>
@@ -454,9 +463,12 @@
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="Бан" name="BanCheck">
-					Всегда заблокировано ([COUNT], макс. [MAX])
+					Заблокировано ([COUNT], макс. [MAX])
 				</text>
-				<name_list name="BannedList" tool_tip="([LISTED] в списке, [MAX] максимум)"/>
+				<name_list name="BannedList" tool_tip="([LISTED] в списке, [MAX] максимум)">
+					<columns label="Имя" name="name"/>
+					<columns label="Продолжительность" name="duration"/>
+				</name_list>
 				<button label="Добавить" name="add_banned"/>
 				<button label="Удалить" label_selected="Удалить" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/ru/floater_ban_duration.xml b/indra/newview/skins/default/xui/ru/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c4238cfa771fb216bb4ab0b390ac1ef835e0e491
--- /dev/null
+++ b/indra/newview/skins/default/xui/ru/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="Длительность запрета">
+	<text name="duration_textbox">
+		Длительность запрета:
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="Всегда" name="always_radio">
+			Всегда
+		</radio_item>
+		<radio_item label="Временно" name="temporary_radio">
+			Временно
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		часы
+	</text>
+	<button label="ОК" name="ok_btn"/>
+	<button label="Отмена" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/ru/floater_gesture.xml b/indra/newview/skins/default/xui/ru/floater_gesture.xml
index 759d81b2c6ab49f4c3ebd800471f501eefe9ff0b..c9b85acff826c2f32fd91a8d40fb0c6f3edaf56d 100644
--- a/indra/newview/skins/default/xui/ru/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/ru/floater_gesture.xml
@@ -20,7 +20,7 @@
 		<button name="activate_btn" tool_tip="Активировать/деактивировать выбранный жест"/>
 		<button name="del_btn" tool_tip="Удалить этот жест"/>
 	</panel>
-	<button label="Изменить" name="edit_btn"/>
-	<button label="Проиграть" name="play_btn"/>
+	<button label="Изменить" name="edit_btn" tool_tip="Откройте окно для редактирования выбранного жеста."/>
+	<button label="Проиграть" name="play_btn" tool_tip="Выполните выбранный жест в игровом мире."/>
 	<button label="Стоп" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/ru/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/ru/floater_preferences_graphics_advanced.xml
index efad8678b66f99dbe95ee5321a29ea89a17e665e..fc6b6a173ea6b0018543ce985ff2e9a5b195623f 100644
--- a/indra/newview/skins/default/xui/ru/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/ru/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="Анизотропная фильтрация (медленнее, если включено)" name="ani"/>
 	<check_box initial_value="true" label="Включить объекты вершинных буферов OpenGL" name="vbo" tool_tip="Включение этого параметра на современном оборудовании даст увеличение производительности.  Однако на старом оборудовании это может привести к сбою приложения."/>
 	<check_box initial_value="true" label="Разрешить сжатие текстур (требует перезагрузки)" name="texture compression" tool_tip="Сжатие текстур в видеопамяти, что позволяет загружать текстуры большего размера за счет некоторого падения качества цвета."/>
+	<check_box initial_value="true" label="Активировать поддержку отображения HiDPI (требуется перезапуск)" name="use HiDPI" tool_tip="Активировать OpenGL для рисования с высоким разрешением."/>
 	<text name="antialiasing label">
 		Сглаживание:
 	</text>
diff --git a/indra/newview/skins/default/xui/ru/floater_preview_notecard.xml b/indra/newview/skins/default/xui/ru/floater_preview_notecard.xml
index 2f39d4a4a4e049a24354b33ae6f35d76da52f441..ffff72f17e50ad67b39b8c48e0a4c8e7c88e1ecf 100644
--- a/indra/newview/skins/default/xui/ru/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/ru/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		Загрузка...
 	</text_editor>
+	<button label="Pедактировать..." label_selected="Редактировать" name="Edit"/>
 	<button label="Сохранить" label_selected="Сохранить" name="Save"/>
 	<button label="Удалить" label_selected="Удалить" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/ru/floater_report_abuse.xml b/indra/newview/skins/default/xui/ru/floater_report_abuse.xml
index 67d847aa6b778f6277c0e193eccab87fc6c77f95..3ac8cb74b4e5110f4a7ff464d89f16f0d63f9c92 100644
--- a/indra/newview/skins/default/xui/ru/floater_report_abuse.xml
+++ b/indra/newview/skins/default/xui/ru/floater_report_abuse.xml
@@ -67,7 +67,7 @@
 		<combo_box.item label="Земля &gt; Посягательство &gt; Объекты или текстуры" name="Land__Encroachment__Objects_textures"/>
 		<combo_box.item label="Земля &gt; Посягательство &gt; Частицы" name="Land__Encroachment__Particles"/>
 		<combo_box.item label="Земля &gt; Посягательство &gt; Деревья/растения" name="Land__Encroachment__Trees_plants"/>
-		<combo_box.item label="Нарушение политики игр" name="Wagering_gambling"/>
+		<combo_box.item label="Нарушение правил игр на ловкость" name="Wagering_gambling"/>
 		<combo_box.item label="Другое" name="Other"/>
 	</combo_box>
 	<text name="abuser_name_title">
diff --git a/indra/newview/skins/default/xui/ru/panel_group_general.xml b/indra/newview/skins/default/xui/ru/panel_group_general.xml
index ba38dbf89e743394365a4463487e8461e02e49b3..ee3a74103f62530d39933e320fc7c10c7a6a7146 100644
--- a/indra/newview/skins/default/xui/ru/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/ru/panel_group_general.xml
@@ -44,7 +44,7 @@
 		<check_box label="Открытая регистрация" name="open_enrollement" tool_tip="Устанавливается, если в этой группе можно зарегистрироваться без приглашения."/>
 		<check_box label="Платная регистрация" name="check_enrollment_fee" tool_tip="Устанавливается, если в этой группе требуется оплата за вступление."/>
 		<spinner label="L$" name="spin_enrollment_fee" tool_tip="Новые участники должны будут оплатить взнос, если регистрация платная."/>
-		<combo_box name="group_mature_check" tool_tip="Устанавливает, содержит ли группа информацию категории умеренной дозволенности">
+		<combo_box name="group_mature_check" tool_tip="Рейтинги зрелости определяют тип контента и поведение, разрешенное в группе">
 			<combo_item name="select_mature">
 				- Выберите рейтинг зрелости -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/ru/panel_region_access.xml b/indra/newview/skins/default/xui/ru/panel_region_access.xml
index 48adfbcd95e4e006ab7ff1d6f9c3da78e303b1c9..e2349f4c8308e561da2538b7cad63eb13d2229a9 100644
--- a/indra/newview/skins/default/xui/ru/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/ru/panel_region_access.xml
@@ -14,6 +14,7 @@
 		<panel label="РАЗРЕШЕННЫЕ" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="Поиск допущенных агентов" name="allowed_search_input"/>
+				<button label="Копировать" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
 				Разрешено всегда:
@@ -27,6 +28,7 @@
 		<panel label="ДОПУЩЕННЫЕ ГРУППЫ" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
 				<filter_editor label="Поиск допущенных групп" name="allowed_group_search_input"/>
+				<button label="Копировать" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
 				Допуск групп всегда разрешен:
@@ -40,6 +42,7 @@
 		<panel label="ЗАБЛОКИРОВАНЫ" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="Поиск заблокированных агентов" name="banned_search_input"/>
+				<button label="Копировать" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				Всегда заблокированы:
diff --git a/indra/newview/skins/default/xui/ru/panel_region_estate.xml b/indra/newview/skins/default/xui/ru/panel_region_estate.xml
index 5789058b3b25f5529a152b102e2b18a2a312fe32..feeac0464a7e810e70b52fe3f32da2f7b568c22a 100644
--- a/indra/newview/skins/default/xui/ru/panel_region_estate.xml
+++ b/indra/newview/skins/default/xui/ru/panel_region_estate.xml
@@ -16,7 +16,7 @@
 		(неизвестно)
 	</text>
 	<radio_group name="externally_visible_radio">
-		<radio_item label="Разрешено только жителям и группам, перечисленным на вкладке доступа" name="estate_restricted_access"/>
+		<radio_item label="Разрешено только жителям и группам, перечисленных на вкладке доступа" name="estate_restricted_access"/>
 		<radio_item label="Доступ открыт для всех" name="estate_public_access"/>
 	</radio_group>
 	<check_box label="Должен быть 18 и старше" name="limit_age_verified" tool_tip="Доступ к этому землевладению имеют только жители 18 лет и старше. Более подробная информация находится здесь: [SUPPORT_SITE]."/>
diff --git a/indra/newview/skins/default/xui/ru/strings.xml b/indra/newview/skins/default/xui/ru/strings.xml
index 150f3ca160e76e969d23d44178229f21cb3a6c12..edcf9d3e0061116158a99d1a156a02ffa4c46fe3 100644
--- a/indra/newview/skins/default/xui/ru/strings.xml
+++ b/indra/newview/skins/default/xui/ru/strings.xml
@@ -76,6 +76,9 @@ SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
 Память текстур: [TEXTURE_MEMORY] МБ
 Время создания VFS (кэш): [VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		Режим отображения HiDPI: [HIDPI]
+	</string>
 	<string name="AboutLibs">
 		Версия декодера J2C: [J2C_VERSION] 
 Версия аудиодрайвера: [AUDIO_DRIVER_VERSION] 
@@ -1511,6 +1514,15 @@ support@secondlife.com.
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		Откройте окно с настройками игры.
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		Выполните выбранный жест в игровом мире.
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		Откройте окно с настройками игры.
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		Продавать вещи в торговом центре может кто угодно.
 	</string>
diff --git a/indra/newview/skins/default/xui/tr/floater_about_land.xml b/indra/newview/skins/default/xui/tr/floater_about_land.xml
index f09ea5397b223760aad6d350701f90880c90cec3..05a07ac226adb2cea8562adcc6ec0eea5548a43b 100644
--- a/indra/newview/skins/default/xui/tr/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/tr/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		[HOURS] sa
+	</floater.string>
+	<floater.string name="Hour">
+		sa
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] dak.
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		kaldı
 	</floater.string>
+	<floater.string name="Always">
+		Her zaman
+	</floater.string>
 	<tab_container name="landtab">
 		<panel label="GENEL" name="land_general_panel">
 			<panel.string name="new users only">
@@ -316,18 +325,18 @@ Sadece büyük parseller aramada görünür.
 			<text name="allow_label2">
 				Ä°nÅŸa Et:
 			</text>
-			<check_box label="Herkes" name="edit objects check"/>
-			<check_box label="Grup" name="edit group objects check"/>
+			<check_box label="Herkes" name="edit objects check" tool_tip="İşaretlendiğinde, Sakinler arazinizde nesneler oluşturabilir ve nesneleri canlandırabilir."/>
+			<check_box label="Grup" name="edit group objects check" tool_tip="İşaretlendiğinde, parsel grubu üyeleri arazinizde nesneler oluşturabilir ve nesneleri canlandırabilir."/>
 			<text name="allow_label3">
 				Nesne GiriÅŸi:
 			</text>
-			<check_box label="Herkes" name="all object entry check"/>
-			<check_box label="Grup" name="group object entry check"/>
+			<check_box label="Herkes" name="all object entry check" tool_tip="İşaretlendiğinde, Sakinler mevcut nesneleri diğer parsellerden bu parsele taşıyabilir."/>
+			<check_box label="Grup" name="group object entry check" tool_tip="İşaretlendiğinde, parsel grubu üyeleri mevcut nesneleri diğer parsellerden bu parsele taşıyabilir."/>
 			<text name="allow_label4">
 				Komut Dosyalarını Çalıştır:
 			</text>
-			<check_box label="Herkes" name="check other scripts"/>
-			<check_box label="Grup" name="check group scripts"/>
+			<check_box label="Herkes" name="check other scripts" tool_tip="İşaretlendiğinde, Sakinler parselinizde aksesuarlar dahil olmak üzere komut dosyalarını çalıştırabilir."/>
+			<check_box label="Grup" name="check group scripts" tool_tip="İşaretlendiğinde, parsel grubu üyeleri parselinizde aksesuarlar dahil olmak üzere komut dosyalarını çalıştırabilir."/>
 			<check_box label="Güvenli (hasar yok)" name="check safe" tool_tip="İşaretliyse, araziyi Güvenli moda getirerek hasar çarpışmasını etkinsizleştirir İşaretli değilse hasar çarpışması etkinleşir."/>
 			<check_box label="İtme Yok" name="PushRestrictCheck" tool_tip="Komut dosyalarının itmesini önler Bu seçeneğin işaretlenmesi arazinizdeki bozucu davranışları önlemeye yardımcı olabilir."/>
 			<check_box label="Konumu Arama sonuçlarında göster (L$30/hafta)" name="ShowDirectoryCheck" tool_tip="Arama sonuçlarında bu parsel görünsün"/>
@@ -351,8 +360,8 @@ Sadece büyük parseller aramada görünür.
 				Anlık Görüntü:
 			</text>
 			<texture_picker name="snapshot_ctrl" tool_tip="Bir resim seçmek için tıklayın"/>
-			<text name="allow_label5">
-				Başka parsellerdeki avatarlar bu parseldeki avatarları görebilir ve onlarla sohbet edebilir
+			<text name="allow_see_label">
+				Diğer parsellerdeki avatarlar bu parseldeki avatarları görebilir ve onlarla sohbet edebilir
 			</text>
 			<check_box label="Avatarları Gör" name="SeeAvatarsCheck" tool_tip="Diğer parsellerdeki avatarların bu parseldeki avatarları görmesine ve onlarla sohbet etmesine, sizin de onları görüp, onlarla sohbet etmenize imkan tanır."/>
 			<text name="landing_point">
@@ -454,9 +463,12 @@ Sadece büyük parseller aramada görünür.
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="Yasakla" name="BanCheck">
-					Her zaman engellenen ([COUNT], maks. [MAX])
+					Engellenen ([COUNT], maks. [MAX])
 				</text>
-				<name_list name="BannedList" tool_tip="([LISTED] listeli, [MAX] maksimum)"/>
+				<name_list name="BannedList" tool_tip="([LISTED] listeli, [MAX] maksimum)">
+					<columns label="Ad" name="name"/>
+					<columns label="Süre" name="duration"/>
+				</name_list>
 				<button label="Ekle" name="add_banned"/>
 				<button label="Kaldır" label_selected="Kaldır" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/tr/floater_ban_duration.xml b/indra/newview/skins/default/xui/tr/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..22788a161a2a09a4f60379f06dd769b3898d5603
--- /dev/null
+++ b/indra/newview/skins/default/xui/tr/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="Engelleme süresi">
+	<text name="duration_textbox">
+		Engelleme süresi:
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="Her zaman" name="always_radio">
+			Her zaman
+		</radio_item>
+		<radio_item label="Geçici" name="temporary_radio">
+			Geçici
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		saat
+	</text>
+	<button label="Tamam" name="ok_btn"/>
+	<button label="Ä°ptal Et" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/tr/floater_gesture.xml b/indra/newview/skins/default/xui/tr/floater_gesture.xml
index 5f5d28ad6c9305254246c847893e692c9493d439..c466681fd95e21d705c8f90f1204c83cc2490a59 100644
--- a/indra/newview/skins/default/xui/tr/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/tr/floater_gesture.xml
@@ -20,7 +20,7 @@
 		<button name="activate_btn" tool_tip="Seçilen mimiği Etkinleştir/Devre Dışı Bırak"/>
 		<button name="del_btn" tool_tip="Bu mimiÄŸi sil"/>
 	</panel>
-	<button label="Düzenle" name="edit_btn"/>
-	<button label="Oyna" name="play_btn"/>
+	<button label="Düzenle" name="edit_btn" tool_tip="Seçilen mimiği düzenlemek için pencere açın."/>
+	<button label="Oyna" name="play_btn" tool_tip="Seçilen mimiği SL dünyasında uygulayın."/>
 	<button label="Durdur" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/tr/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/tr/floater_preferences_graphics_advanced.xml
index 734ceec89fb6cc01a604c6af34ecbe884be07af8..01ada1354c5cf7cab3faa302ff12973914c820f8 100644
--- a/indra/newview/skins/default/xui/tr/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/tr/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="Anisotropik Filtreleme (etkinken daha yavaÅŸ)" name="ani"/>
 	<check_box initial_value="true" label="OpenGL Vertex Tampon Nesnelerini Etkinleştir" name="vbo" tool_tip="Modern donanımlarda bunun etkinleştirilmesi performans artışı sağlar.  Ancak, eski donanımlardaki VBO uygulamaları yetersizdir ve etkinleştirildiğinde bilgisayarınız çökebilir."/>
 	<check_box initial_value="true" label="Doku Sıkıştırmasını Etkinleştir (yeniden başlatma gerektirir)" name="texture compression" tool_tip="Video bellekteki dokuları sıkıştırır, renk kalitesinde bazı kayıplar olmasına karşın daha yüksek çözünürlükte dokuların yüklenmesine imkan tanır."/>
+	<check_box initial_value="true" label="HiDPI görüntü desteğini etkinleştir (yeniden başlatma gerekir)" name="use HiDPI" tool_tip="Yüksek Çözünürlüklü Çizim için OpenGL&apos;yi etkinleştirin."/>
 	<text name="antialiasing label">
 		Antialiasing:
 	</text>
diff --git a/indra/newview/skins/default/xui/tr/floater_preview_notecard.xml b/indra/newview/skins/default/xui/tr/floater_preview_notecard.xml
index 23391249d1962c4a05281be770332047ba82a977..996054a8c61db4a60ae34b44bc2663928af6e10b 100644
--- a/indra/newview/skins/default/xui/tr/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/tr/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		Yükleniyor...
 	</text_editor>
+	<button label="Düzenle..." label_selected="Düzenle" name="Edit"/>
 	<button label="Kaydet" label_selected="Kaydet" name="Save"/>
 	<button label="Sil" label_selected="Sil" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/tr/floater_report_abuse.xml b/indra/newview/skins/default/xui/tr/floater_report_abuse.xml
index 28bacca763b29e8b31619c97be4f1268d382d0e6..de386d3bde27e44efa0bceae4d449911c29cef3d 100644
--- a/indra/newview/skins/default/xui/tr/floater_report_abuse.xml
+++ b/indra/newview/skins/default/xui/tr/floater_report_abuse.xml
@@ -67,7 +67,7 @@
 		<combo_box.item label="Arazi &gt; Tecavüz &gt; Nesneler veya dokular" name="Land__Encroachment__Objects_textures"/>
 		<combo_box.item label="Arazi &gt; Tecavvüz &gt; Parçacıklar" name="Land__Encroachment__Particles"/>
 		<combo_box.item label="Arazi &gt; Tecavvüz &gt; Ağaçlar/bitkiler" name="Land__Encroachment__Trees_plants"/>
-		<combo_box.item label="Oyun Politikası İhlali" name="Wagering_gambling"/>
+		<combo_box.item label="Yetenek Oyunu Politikası İhlali" name="Wagering_gambling"/>
 		<combo_box.item label="DiÄŸer" name="Other"/>
 	</combo_box>
 	<text name="abuser_name_title">
diff --git a/indra/newview/skins/default/xui/tr/panel_group_general.xml b/indra/newview/skins/default/xui/tr/panel_group_general.xml
index 04620262496437c5606b3cdf8a10be0a507cc721..c666778c69602c5b8bc7c1e0ed905fcdbebb02b9 100644
--- a/indra/newview/skins/default/xui/tr/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/tr/panel_group_general.xml
@@ -45,7 +45,7 @@ Daha fazla yardım edinmek için farenizi seçeneklerin üzerine getirin.
 		<check_box label="Herkes katılabilir" name="open_enrollement" tool_tip="Bu grubun davet edilmeden yeni üyelerin katılmasına imkan tanıyıp tanımayacağını belirler."/>
 		<check_box label="Katılma ücreti" name="check_enrollment_fee" tool_tip="Bu gruba katılmak için bir kayıt ücretinin gerekip gerekmeyeceğini belirler"/>
 		<spinner label="L$" name="spin_enrollment_fee" tool_tip="Kayıt Ücreti işaretlendiğinde yeni üyeler gruba katılmak için bu ücreti ödemelidir."/>
-		<combo_box name="group_mature_check" tool_tip="Grubunuzun Orta seviyede içeriğe sahip olup olmadığını belirler">
+		<combo_box name="group_mature_check" tool_tip="Erişkinlik dereceleri bir grupta izin verilen içerik ve davranış türlerini belirler">
 			<combo_item name="select_mature">
 				- Erişkinlik seviyesini seçin -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/tr/panel_region_access.xml b/indra/newview/skins/default/xui/tr/panel_region_access.xml
index 57e721bc04e6c08e0b8d4ccf3a71543fb6dfbf33..81653b1e54e7eeda9658bde8e04217d5b6dd0e13 100644
--- a/indra/newview/skins/default/xui/tr/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/tr/panel_region_access.xml
@@ -14,6 +14,7 @@
 		<panel label="Ä°ZÄ°N VERÄ°LEN" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="İzin verilen aracıları ara" name="allowed_search_input"/>
+				<button label="Kopyala" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
 				Her zaman izin verilen:
@@ -27,6 +28,7 @@
 		<panel label="Ä°ZÄ°N VERÄ°LEN GRUPLAR" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
 				<filter_editor label="İzin verilen grupları ara" name="allowed_group_search_input"/>
+				<button label="Kopyala" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
 				Her zaman izin verilen gruplar:
@@ -40,6 +42,7 @@
 		<panel label="ENGELLENEN" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="Engellenen aracıları ara" name="banned_search_input"/>
+				<button label="Kopyala" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				Her zaman engellenen:
diff --git a/indra/newview/skins/default/xui/tr/strings.xml b/indra/newview/skins/default/xui/tr/strings.xml
index 6db9e49c300bff07701bf3bfc81b4c255952fbd6..3fd466d71cd11f486ceac7772727c963b2d2da1c 100644
--- a/indra/newview/skins/default/xui/tr/strings.xml
+++ b/indra/newview/skins/default/xui/tr/strings.xml
@@ -76,6 +76,9 @@ Gelişmiş Aydınlatma Modeli: [GPU_SHADERS]
 Doku belleÄŸi: [TEXTURE_MEMORY]MB
 VFS (önbellek) oluşturma saati: [VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		HiDPI görüntü modu: [HIDPI]
+	</string>
 	<string name="AboutLibs">
 		J2C Kod Çözücü Sürümü: [J2C_VERSION] 
 Ses Sürücüsü Sürümü: [AUDIO_DRIVER_VERSION] 
@@ -1511,6 +1514,15 @@ http://secondlife.com/support adresini ziyaret edin.
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		Pencereyi Oyun seçenekleri ile birlikte açın.
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		Seçilen mimiği SL dünyasında uygulayın.
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		Pencereyi Oyun seçenekleri ile birlikte açın.
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		Pazaryerinde herkes öğe satabilir.
 	</string>
diff --git a/indra/newview/skins/default/xui/zh/floater_about_land.xml b/indra/newview/skins/default/xui/zh/floater_about_land.xml
index cf6dd11b989d798f3bc0e0caab11c778cfbdecca..bb680f822e36b6e649becc61d0720fe7e94e816b 100644
--- a/indra/newview/skins/default/xui/zh/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/zh/floater_about_land.xml
@@ -9,6 +9,12 @@
 	<floater.string name="maturity_icon_adult">
 		&quot;Parcel_R_Dark&quot;
 	</floater.string>
+	<floater.string name="Hours">
+		[HOURS]小時
+	</floater.string>
+	<floater.string name="Hour">
+		小時
+	</floater.string>
 	<floater.string name="Minutes">
 		[MINUTES] 分鐘
 	</floater.string>
@@ -21,6 +27,9 @@
 	<floater.string name="Remaining">
 		剩餘時間
 	</floater.string>
+	<floater.string name="Always">
+		永遠
+	</floater.string>
 	<tab_container name="landtab">
 		<panel label="一般" name="land_general_panel">
 			<panel.string name="new users only">
@@ -316,18 +325,18 @@
 			<text name="allow_label2">
 				建造:
 			</text>
-			<check_box label="任何人" name="edit objects check"/>
-			<check_box label="群組" name="edit group objects check"/>
+			<check_box label="任何人" name="edit objects check" tool_tip="如果勾選,居民可在你土地上創建並產生物件。"/>
+			<check_box label="群組" name="edit group objects check" tool_tip="如果勾選,地段群組成員可以在你土地上創建並產生物件。"/>
 			<text name="allow_label3">
 				物件進入:
 			</text>
-			<check_box label="任何人" name="all object entry check"/>
-			<check_box label="群組" name="group object entry check"/>
+			<check_box label="任何人" name="all object entry check" tool_tip="如果勾選,居民可以從別的地段移動物件到本地段。"/>
+			<check_box label="群組" name="group object entry check" tool_tip="如果勾選,地段群組成員可以從別的地段移動物件到本地段。"/>
 			<text name="allow_label4">
 				執行腳本:
 			</text>
-			<check_box label="任何人" name="check other scripts"/>
-			<check_box label="群組" name="check group scripts"/>
+			<check_box label="任何人" name="check other scripts" tool_tip="如果勾選,居民可以在你的地段執行腳本,包括附件。"/>
+			<check_box label="群組" name="check group scripts" tool_tip="如果勾選,地段群組成員可以在你的地段執行腳本,包括附件。"/>
 			<check_box label="安全(無傷害)" name="check safe" tool_tip="若勾選,將把土地設為安全,禁絕傷害性的戰鬥。 若未勾選,則允許傷害性的戰鬥。"/>
 			<check_box label="禁止推撞" name="PushRestrictCheck" tool_tip="禁止使用腳本推撞。 勾選這選項可有效防止你土地上出現滋事行為。"/>
 			<check_box label="將地點刊登顯示在搜尋中(L$30 / 每週)" name="ShowDirectoryCheck" tool_tip="讓其他人可以在搜尋結果中看到這塊地段"/>
@@ -351,7 +360,7 @@
 				快照:
 			</text>
 			<texture_picker name="snapshot_ctrl" tool_tip="點按以挑選圖片"/>
-			<text name="allow_label5">
+			<text name="allow_see_label">
 				其他地段的化身可以看見本地段裡的化身,並與之交談
 			</text>
 			<check_box label="察看化身" name="SeeAvatarsCheck" tool_tip="允許其他地段的化身看到本地段包括你在內的化身,並可互相交談。"/>
@@ -454,9 +463,12 @@
 			</panel>
 			<panel name="Banned_layout_panel">
 				<text label="禁止" name="BanCheck">
-					永久封鎖([COUNT],最多[MAX])
+					被封鎖([COUNT],最多[MAX])
 				</text>
-				<name_list name="BannedList" tool_tip="(已列入 [LISTED],最多可列 [MAX])"/>
+				<name_list name="BannedList" tool_tip="(已列入 [LISTED],最多可列 [MAX])">
+					<columns label="名稱" name="name"/>
+					<columns label="歷時" name="duration"/>
+				</name_list>
 				<button label="添加" name="add_banned"/>
 				<button label="移除" label_selected="移除" name="remove_banned"/>
 			</panel>
diff --git a/indra/newview/skins/default/xui/zh/floater_ban_duration.xml b/indra/newview/skins/default/xui/zh/floater_ban_duration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d8a3e8c8a037c0ee23f4f2f88a0501ce3d3146d9
--- /dev/null
+++ b/indra/newview/skins/default/xui/zh/floater_ban_duration.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="ban_duration" title="封鎖時間長度">
+	<text name="duration_textbox">
+		封鎖時間長度:
+	</text>
+	<radio_group name="ban_duration_radio">
+		<radio_item label="永遠" name="always_radio">
+			永遠
+		</radio_item>
+		<radio_item label="暫時性" name="temporary_radio">
+			暫時性
+		</radio_item>
+	</radio_group>
+	<text name="hours_textbox">
+		小時
+	</text>
+	<button label="確定" name="ok_btn"/>
+	<button label="取消" name="cancel_btn"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/zh/floater_gesture.xml b/indra/newview/skins/default/xui/zh/floater_gesture.xml
index e7b1ed1de37ef082e5a51f2561088e877309ce57..592b410d1ca207f1316aeb19346d5e902dff771c 100644
--- a/indra/newview/skins/default/xui/zh/floater_gesture.xml
+++ b/indra/newview/skins/default/xui/zh/floater_gesture.xml
@@ -20,7 +20,7 @@
 		<button name="activate_btn" tool_tip="啟動/停止所選姿勢"/>
 		<button name="del_btn" tool_tip="刪除這個姿勢"/>
 	</panel>
-	<button label="編輯" name="edit_btn"/>
-	<button label="播放" name="play_btn"/>
+	<button label="編輯" name="edit_btn" tool_tip="開啓視窗以便編輯所選姿勢。"/>
+	<button label="播放" name="play_btn" tool_tip="在虛擬世界裡執行所選姿勢。"/>
 	<button label="停止" name="stop_btn"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/zh/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/zh/floater_preferences_graphics_advanced.xml
index 7d8160a0f0e202ae8171e2ea5033158ed6284152..7b127acd71d6a4cae1844714806e02d7019ee2f4 100644
--- a/indra/newview/skins/default/xui/zh/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/zh/floater_preferences_graphics_advanced.xml
@@ -43,6 +43,7 @@
 	<check_box label="各向異性過濾(若啟用會變慢)" name="ani"/>
 	<check_box initial_value="true" label="啟用 OpenGL 頂點緩衝物件(VBO)" name="vbo" tool_tip="在較新硬體上啟用,可提升效能。  但是,較舊硬體的 VBO 實作不佳,若啟用可能導致當機。"/>
 	<check_box initial_value="true" label="啟用材質壓縮(須重新啟動)" name="texture compression" tool_tip="在影片記憶體中壓縮材質,讓高解析度材質可以載入,但色彩品質稍差。"/>
+	<check_box initial_value="true" label="啟用HiDPI顯示支援(須重新啟動)" name="use HiDPI" tool_tip="啓用OpenGL高解析度繪圖。"/>
 	<text name="antialiasing label">
 		消除鋸齒:
 	</text>
diff --git a/indra/newview/skins/default/xui/zh/floater_preview_notecard.xml b/indra/newview/skins/default/xui/zh/floater_preview_notecard.xml
index 94479398013b13b946327493a7060dd329743d56..f6b163dcd6e6a7e65540ff09851fe86bab50df6c 100644
--- a/indra/newview/skins/default/xui/zh/floater_preview_notecard.xml
+++ b/indra/newview/skins/default/xui/zh/floater_preview_notecard.xml
@@ -15,6 +15,7 @@
 	<text_editor name="Notecard Editor">
 		載入中...
 	</text_editor>
+	<button label="編輯…" label_selected="編輯" name="Edit"/>
 	<button label="儲存" label_selected="儲存" name="Save"/>
 	<button label="刪除" label_selected="刪除" name="Delete"/>
 </floater>
diff --git a/indra/newview/skins/default/xui/zh/floater_report_abuse.xml b/indra/newview/skins/default/xui/zh/floater_report_abuse.xml
index 347b40e6756f66c76954b0bf5f8027d3cdc35078..2dfcfe616843999ec2ac53d546d08b2c7b349546 100644
--- a/indra/newview/skins/default/xui/zh/floater_report_abuse.xml
+++ b/indra/newview/skins/default/xui/zh/floater_report_abuse.xml
@@ -67,7 +67,7 @@
 		<combo_box.item label="土地 &gt; 侵佔 &gt; 物件或材質" name="Land__Encroachment__Objects_textures"/>
 		<combo_box.item label="土地 &gt; 侵佔 &gt; 粒子" name="Land__Encroachment__Particles"/>
 		<combo_box.item label="土地 &gt; 侵佔 &gt; 樹種 / 植物" name="Land__Encroachment__Trees_plants"/>
-		<combo_box.item label="違反遊戲規則" name="Wagering_gambling"/>
+		<combo_box.item label="違反技術遊戲規則" name="Wagering_gambling"/>
 		<combo_box.item label="其他" name="Other"/>
 	</combo_box>
 	<text name="abuser_name_title">
diff --git a/indra/newview/skins/default/xui/zh/panel_group_general.xml b/indra/newview/skins/default/xui/zh/panel_group_general.xml
index 2b16b61dd12e2a3a53cdde5bd48253360f8b741a..de81a26fed1a38faa89e49388b7b9b60fc96bdb8 100644
--- a/indra/newview/skins/default/xui/zh/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/zh/panel_group_general.xml
@@ -45,7 +45,7 @@
 		<check_box label="任何人都可以加入" name="open_enrollement" tool_tip="設定這個群組是否允許新成員未受邀請自行加入。"/>
 		<check_box label="加入費用" name="check_enrollment_fee" tool_tip="設定是否要徵收群組加入費"/>
 		<spinner label="L$" name="spin_enrollment_fee" tool_tip="若勾選加入費,新成員必須支付這筆費用才能加入群組。"/>
-		<combo_box name="group_mature_check" tool_tip="設定你的群組是否含有被訂為適度成人分級的資訊">
+		<combo_box name="group_mature_check" tool_tip="內容分級設定群組裡允許的內容類型和行爲">
 			<combo_item name="select_mature">
 				- 選擇內容分級 -
 			</combo_item>
diff --git a/indra/newview/skins/default/xui/zh/panel_region_access.xml b/indra/newview/skins/default/xui/zh/panel_region_access.xml
index 7842d26321886101d324ecf2ba8da1ad46bb6279..04c67da333c2cab362c853ffff0c63640e1bb1ed 100644
--- a/indra/newview/skins/default/xui/zh/panel_region_access.xml
+++ b/indra/newview/skins/default/xui/zh/panel_region_access.xml
@@ -14,6 +14,7 @@
 		<panel label="獲准" name="allowed_panel">
 			<panel label="top_panel" name="allowed_search_panel">
 				<filter_editor label="搜尋獲准的用戶" name="allowed_search_input"/>
+				<button label="複製" name="copy_allowed_list_btn"/>
 			</panel>
 			<text name="allow_resident_label">
 				永遠准許:
@@ -27,6 +28,7 @@
 		<panel label="准許的群組" name="allowed_groups_panel">
 			<panel label="top_panel" name="allowed_group_search_panel">
 				<filter_editor label="搜尋獲准的群組" name="allowed_group_search_input"/>
+				<button label="複製" name="copy_allowed_group_list_btn"/>
 			</panel>
 			<text name="allow_group_label">
 				永遠准許的群組:
@@ -40,6 +42,7 @@
 		<panel label="禁入的" name="banned_panel">
 			<panel label="top_panel" name="banned_search_panel">
 				<filter_editor label="搜尋禁入的用戶" name="banned_search_input"/>
+				<button label="複製" name="copy_banned_list_btn"/>
 			</panel>
 			<text name="ban_resident_label">
 				永遠禁入:
diff --git a/indra/newview/skins/default/xui/zh/strings.xml b/indra/newview/skins/default/xui/zh/strings.xml
index bb7e27242bd6296cdc2706cec9a0e63107effa94..e6c61a5d9458911e020893ecc0e42a8e21d770a5 100644
--- a/indra/newview/skins/default/xui/zh/strings.xml
+++ b/indra/newview/skins/default/xui/zh/strings.xml
@@ -76,6 +76,9 @@
 材質記憶體:[TEXTURE_MEMORY]MB
 VFS(快取)建立時間:[VFS_TIME]
 	</string>
+	<string name="AboutOSXHiDPI">
+		HiDPI顯示模式:[HIDPI]
+	</string>
 	<string name="AboutLibs">
 		J2C 解碼器版本: [J2C_VERSION]
 音效驅動程式版本: [AUDIO_DRIVER_VERSION]
@@ -1507,6 +1510,15 @@ http://secondlife.com/support 求助解決問題。
 	<string name="MarketplaceURL_LearnMore">
 		https://marketplace.[MARKETPLACE_DOMAIN_NAME]/learn_more
 	</string>
+	<string name="InventoryPlayAnimationTooltip">
+		開啟「Play選項」視窗。
+	</string>
+	<string name="InventoryPlayGestureTooltip">
+		在虛擬世界裡執行所選姿勢。
+	</string>
+	<string name="InventoryPlaySoundTooltip">
+		開啟「Play選項」視窗。
+	</string>
 	<string name="InventoryOutboxNotMerchantTitle">
 		任何人都可在第二人生購物市集出售物品。
 	</string>