diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp
index 24c9fa2eed..faaad8d3b0 100644
--- a/indra/newview/llagent.cpp
+++ b/indra/newview/llagent.cpp
@@ -3784,7 +3784,7 @@ void LLAgent::initOriginGlobal(const LLVector3d &origin_global)
}
BOOL LLAgent::leftButtonGrabbed() const
-{
+{
const BOOL camera_mouse_look = gAgentCamera.cameraMouselook();
return (!camera_mouse_look && mControlsTakenCount[CONTROL_LBUTTON_DOWN_INDEX] > 0)
|| (camera_mouse_look && mControlsTakenCount[CONTROL_ML_LBUTTON_DOWN_INDEX] > 0)
@@ -3792,13 +3792,6 @@ BOOL LLAgent::leftButtonGrabbed() const
|| (camera_mouse_look && mControlsTakenPassedOnCount[CONTROL_ML_LBUTTON_DOWN_INDEX] > 0);
}
-BOOL LLAgent::leftButtonBlocked() const
-{
- const BOOL camera_mouse_look = gAgentCamera.cameraMouselook();
- return (!camera_mouse_look && mControlsTakenCount[CONTROL_LBUTTON_DOWN_INDEX] > 0)
- || (camera_mouse_look && mControlsTakenCount[CONTROL_ML_LBUTTON_DOWN_INDEX] > 0);
-}
-
BOOL LLAgent::rotateGrabbed() const
{
return (mControlsTakenCount[CONTROL_YAW_POS_INDEX] > 0)
@@ -4349,17 +4342,7 @@ BOOL LLAgent::anyControlGrabbed() const
BOOL LLAgent::isControlGrabbed(S32 control_index) const
{
- // FIRE-19357: Re-revert MAINT-4488 again to fix FPS weapons
- //if (gAgent.mControlsTakenCount[control_index] > 0)
- // return TRUE;
- //return gAgent.mControlsTakenPassedOnCount[control_index] > 0;
return mControlsTakenCount[control_index] > 0;
- //
-}
-
-BOOL LLAgent::isControlBlocked(S32 control_index) const
-{
- return mControlsTakenCount[control_index] > 0;
}
void LLAgent::forceReleaseControls()
diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h
index 0cf1c2933a..2848177b9f 100644
--- a/indra/newview/llagent.h
+++ b/indra/newview/llagent.h
@@ -527,8 +527,7 @@ private:
// Grab
//--------------------------------------------------------------------
public:
- BOOL leftButtonGrabbed() const;
- BOOL leftButtonBlocked() const;
+ BOOL leftButtonGrabbed() const;
BOOL rotateGrabbed() const;
BOOL forwardGrabbed() const;
BOOL backwardGrabbed() const;
@@ -545,9 +544,8 @@ public:
BOOL controlFlagsDirty() const;
void enableControlFlagReset();
void resetControlFlags();
- BOOL anyControlGrabbed() const; // True if a script has taken over any control
- BOOL isControlGrabbed(S32 control_index) const; // True if a script has taken over a control
- BOOL isControlBlocked(S32 control_index) const; // Control should be ignored or won't be passed
+ BOOL anyControlGrabbed() const; // True iff a script has taken over a control
+ BOOL isControlGrabbed(S32 control_index) const;
// Send message to simulator to force grabbed controls to be
// released, in case of a poorly written script.
void forceReleaseControls();
diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp
index 211b6da64a..1150d8ac5f 100644
--- a/indra/newview/llappearancemgr.cpp
+++ b/indra/newview/llappearancemgr.cpp
@@ -3828,9 +3828,21 @@ LLSD LLAppearanceMgr::dumpCOF() const
return result;
}
+// static
+void LLAppearanceMgr::onIdle(void *)
+{
+ LLAppearanceMgr* mgr = LLAppearanceMgr::getInstance();
+ if (mgr->mRerequestAppearanceBake)
+ {
+ mgr->requestServerAppearanceUpdate();
+ }
+}
+
void LLAppearanceMgr::requestServerAppearanceUpdate()
{
- if (!mOutstandingAppearanceBakeRequest)
+ // Workaround: we shouldn't request update from server prior to uploading all attachments, but it is
+ // complicated to check for pending attachment uploads, so we are just waiting for uploads to complete
+ if (!mOutstandingAppearanceBakeRequest && gAssetStorage->getNumPendingUploads() == 0)
{
mRerequestAppearanceBake = false;
LLCoprocedureManager::CoProcedure_t proc = boost::bind(&LLAppearanceMgr::serverAppearanceUpdateCoro, this, _1);
@@ -3838,13 +3850,14 @@ void LLAppearanceMgr::requestServerAppearanceUpdate()
}
else
{
+ // Shedule update
mRerequestAppearanceBake = true;
}
}
void LLAppearanceMgr::serverAppearanceUpdateCoro(LLCoreHttpUtil::HttpCoroutineAdapter::ptr_t &httpAdapter)
{
- mRerequestAppearanceBake = false;
+ BoolSetter outstanding(mOutstandingAppearanceBakeRequest);
if (!gAgent.getRegion())
{
LL_WARNS("Avatar") << "Region not set, cannot request server appearance update" << LL_ENDL;
@@ -3876,8 +3889,6 @@ void LLAppearanceMgr::serverAppearanceUpdateCoro(LLCoreHttpUtil::HttpCoroutineAd
bool bRetry;
do
{
- BoolSetter outstanding(mOutstandingAppearanceBakeRequest);
-
// If we have already received an update for this or higher cof version,
// put a warning in the log and cancel the request.
S32 cofVersion = getCOFVersion();
@@ -3989,12 +4000,6 @@ void LLAppearanceMgr::serverAppearanceUpdateCoro(LLCoreHttpUtil::HttpCoroutineAd
}
} while (bRetry);
-
- if (mRerequestAppearanceBake)
- { // A bake request came in while this one was still outstanding.
- // Requeue ourself for a later request.
- requestServerAppearanceUpdate();
- }
}
// [SL:KB] - Patch: Appearance-Misc
@@ -4522,6 +4527,7 @@ LLAppearanceMgr::LLAppearanceMgr():
"OutfitOperationsTimeout")));
gIdleCallbacks.addFunction(&LLAttachmentsMgr::onIdle, NULL);
+ gIdleCallbacks.addFunction(&LLAppearanceMgr::onIdle, NULL); //sheduling appearance update requests
}
LLAppearanceMgr::~LLAppearanceMgr()
diff --git a/indra/newview/llappearancemgr.h b/indra/newview/llappearancemgr.h
index 8b339f11c5..6f34e5b5c8 100644
--- a/indra/newview/llappearancemgr.h
+++ b/indra/newview/llappearancemgr.h
@@ -243,6 +243,7 @@ public:
bool isInUpdateAppearanceFromCOF() { return mIsInUpdateAppearanceFromCOF; }
+ static void onIdle(void *);
void requestServerAppearanceUpdate();
void setAppearanceServiceURL(const std::string& url) { mAppearanceServiceURL = url; }
@@ -256,7 +257,6 @@ public:
void syncCofVersionAndRefresh();
// [/SL:KB]
-
private:
void serverAppearanceUpdateCoro(LLCoreHttpUtil::HttpCoroutineAdapter::ptr_t &httpAdapter);
diff --git a/indra/newview/lltool.cpp b/indra/newview/lltool.cpp
index 194f07ac26..da64fc844d 100644
--- a/indra/newview/lltool.cpp
+++ b/indra/newview/lltool.cpp
@@ -38,7 +38,6 @@
#include "lltoolfocus.h"
#include "llfocusmgr.h"
#include "llagent.h"
-#include "llagentcamera.h"
#include "llviewerjoystick.h"
extern BOOL gDebugClicks;
@@ -85,17 +84,7 @@ BOOL LLTool::handleMouseDown(S32 x, S32 y, MASK mask)
}
// by default, didn't handle it
// LL_INFOS() << "LLTool::handleMouseDown" << LL_ENDL;
- // FIRE-19357: Re-revert MAINT-4488 again to fix FPS weapons
- //if (gAgentCamera.cameraMouselook())
- //{
- // gAgent.setControlFlags(AGENT_CONTROL_ML_LBUTTON_DOWN);
- //}
- //else
- //{
- // gAgent.setControlFlags(AGENT_CONTROL_LBUTTON_DOWN);
- //}
gAgent.setControlFlags(AGENT_CONTROL_LBUTTON_DOWN);
- //
return TRUE;
}
@@ -106,18 +95,8 @@ BOOL LLTool::handleMouseUp(S32 x, S32 y, MASK mask)
LL_INFOS() << "LLTool left mouse up" << LL_ENDL;
}
// by default, didn't handle it
- // LL_INFOS() << "LLTool::handleMouseUp" << LL_ENDL;
- // FIRE-19357: Re-revert MAINT-4488 again to fix FPS weapons
- //if (gAgentCamera.cameraMouselook())
- //{
- // gAgent.setControlFlags(AGENT_CONTROL_ML_LBUTTON_UP);
- //}
- //else
- //{
- // gAgent.setControlFlags(AGENT_CONTROL_LBUTTON_UP);
- //}
+ // LL_INFOS() << "LLTool::handleMouseUp" << LL_ENDL;
gAgent.setControlFlags(AGENT_CONTROL_LBUTTON_UP);
- //
return TRUE;
}
diff --git a/indra/newview/lltoolcomp.cpp b/indra/newview/lltoolcomp.cpp
index a405754914..be6ed767d4 100644
--- a/indra/newview/lltoolcomp.cpp
+++ b/indra/newview/lltoolcomp.cpp
@@ -760,20 +760,12 @@ BOOL LLToolCompGun::handleHover(S32 x, S32 y, MASK mask)
BOOL LLToolCompGun::handleMouseDown(S32 x, S32 y, MASK mask)
{
- // if the left button is blocked, don't put up the pie menu
- // FIRE-19357: Re-revert MAINT-4488 again to fix FPS weapons
- //if (gAgent.leftButtonBlocked())
- //{
- // // in case of "grabbed" control flag will be set later
- // gAgent.setControlFlags(AGENT_CONTROL_ML_LBUTTON_DOWN);
- // return FALSE;
- //}
+ // if the left button is grabbed, don't put up the pie menu
if (gAgent.leftButtonGrabbed())
{
gAgent.setControlFlags(AGENT_CONTROL_ML_LBUTTON_DOWN);
return FALSE;
}
- //
// On mousedown, start grabbing
gGrabTransientTool = this;
@@ -785,20 +777,12 @@ BOOL LLToolCompGun::handleMouseDown(S32 x, S32 y, MASK mask)
BOOL LLToolCompGun::handleDoubleClick(S32 x, S32 y, MASK mask)
{
- // if the left button is blocked, don't put up the pie menu
- // FIRE-19357: Re-revert MAINT-4488 again to fix FPS weapons
- //if (gAgent.leftButtonBlocked())
- //{
- // // in case of "grabbed" control flag will be set later
- // gAgent.setControlFlags(AGENT_CONTROL_ML_LBUTTON_DOWN);
- // return FALSE;
- //}
+ // if the left button is grabbed, don't put up the pie menu
if (gAgent.leftButtonGrabbed())
{
gAgent.setControlFlags(AGENT_CONTROL_ML_LBUTTON_DOWN);
return FALSE;
}
- //
// On mousedown, start grabbing
gGrabTransientTool = this;
diff --git a/indra/newview/lltoolgrab.cpp b/indra/newview/lltoolgrab.cpp
index f13263b417..f41b5d27b7 100644
--- a/indra/newview/lltoolgrab.cpp
+++ b/indra/newview/lltoolgrab.cpp
@@ -146,10 +146,7 @@ BOOL LLToolGrabBase::handleMouseDown(S32 x, S32 y, MASK mask)
// call the base class to propogate info to sim
LLTool::handleMouseDown(x, y, mask);
- // FIRE-19357: Re-revert MAINT-4488 again to fix FPS weapons
- //if (!gAgent.leftButtonBlocked())
if (!gAgent.leftButtonGrabbed())
- //
{
// can grab transparent objects (how touch event propagates, scripters rely on this)
gViewerWindow->pickAsync(x, y, mask, pickCallback, /*BOOL pick_transparent*/ TRUE);
diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp
index b0294829af..90eb986a2c 100644
--- a/indra/newview/llviewermedia.cpp
+++ b/indra/newview/llviewermedia.cpp
@@ -1951,7 +1951,9 @@ LLPluginClassMedia* LLViewerMediaImpl::newSourceFromMediaType(std::string media_
}
else if(LLFile::stat(plugin_name, &s))
{
+#if !LL_LINUX
LL_WARNS_ONCE("Media") << "Couldn't find plugin at " << plugin_name << LL_ENDL;
+#endif
}
else
{
@@ -1993,8 +1995,10 @@ LLPluginClassMedia* LLViewerMediaImpl::newSourceFromMediaType(std::string media_
}
}
}
-
+#if !LL_LINUX
LL_WARNS_ONCE("Plugin") << "plugin initialization failed for mime type: " << media_type << LL_ENDL;
+#endif
+
if(gAgent.isInitialized())
{
if (std::find(sMimeTypesFailed.begin(), sMimeTypesFailed.end(), media_type) == sMimeTypesFailed.end())
diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp
index a937f19bdb..d8920c65b4 100644
--- a/indra/newview/llviewermenufile.cpp
+++ b/indra/newview/llviewermenufile.cpp
@@ -713,7 +713,7 @@ class LLFileUploadBulk : public view_listener_t
// LL_INFOS() << "Couldn't import objects from file" << LL_ENDL;
//}
//
- (new LLGenericLoadMultipleFilePicker(LLFilePicker::FFLOAD_ALL, boost::bind(&upload_bulk_callback, _1)))->getFiles();
+ LLGenericLoadMultipleFilePicker::open(LLFilePicker::FFLOAD_ALL, boost::bind(&upload_bulk_callback, _1));
return true;
}
};
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index 7cf3d482fd..f375211554 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -1862,7 +1862,10 @@ LLViewerWindow::LLViewerWindow(const Params& p)
}
// FIRE-20416: Option for automatic UI scaling
//if (p.first_run || gSavedSettings.getF32("LastSystemUIScaleFactor") != system_scale_factor)
- if (p.first_run || (gSavedSettings.getBOOL("FSEnableAutomaticUIScaling") && gSavedSettings.getF32("LastSystemUIScaleFactor") != system_scale_factor))
+#if !LL_WINDOWS
+ gSavedSettings.setBOOL("FSEnableAutomaticUIScaling", FALSE); // Always disable on non-Windows systems for now
+#endif
+ if (gSavedSettings.getBOOL("FSEnableAutomaticUIScaling") && (p.first_run || gSavedSettings.getF32("LastSystemUIScaleFactor") != system_scale_factor))
//
{
mSystemUIScaleFactorChanged = !p.first_run;
diff --git a/indra/newview/skins/default/xui/tr/strings.xml b/indra/newview/skins/default/xui/tr/strings.xml
index 3f2095c697..efcc225d1c 100644
--- a/indra/newview/skins/default/xui/tr/strings.xml
+++ b/indra/newview/skins/default/xui/tr/strings.xml
@@ -65,7 +65,7 @@ Grafik Kartı: [GRAPHICS_CARD]
Windows Grafik Sürücüsü Sürümü: [GRAPHICS_DRIVER_VERSION]
- OpenGL Sürümü: [OPENGL_VERSION]
+ OpenGL Sürümü [OPENGL_VERSION]
libcurl Sürümü: [LIBCURL_VERSION]
diff --git a/indra/newview/skins/starlightcui/xui/en/panel_stand_stop_flying.xml b/indra/newview/skins/starlightcui/xui/en/panel_stand_stop_flying.xml
new file mode 100644
index 0000000000..ee6b2b9d44
--- /dev/null
+++ b/indra/newview/skins/starlightcui/xui/en/panel_stand_stop_flying.xml
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+