diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 45d2941acf..b28681798a 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -25423,6 +25423,17 @@ Change of this parameter will affect the layout of buttons in notification toast
Value
1
+ FSStatusBarShowFPSColors
+
+ Comment
+ If enabled, display FPS number in a color based on the current status.
+ Persist
+ 1
+ Type
+ Boolean
+ Value
+ 1
+
FSExperimentalLostAttachmentsFix
Comment
diff --git a/indra/newview/llagentbenefits.cpp b/indra/newview/llagentbenefits.cpp
index f176b14f00..5b737e35f3 100644
--- a/indra/newview/llagentbenefits.cpp
+++ b/indra/newview/llagentbenefits.cpp
@@ -37,6 +37,7 @@
#include "llviewerregion.h"
//
+
LLAgentBenefits::LLAgentBenefits():
m_initalized(false),
m_animated_object_limit(-1),
@@ -213,7 +214,27 @@ S32 LLAgentBenefits::getPicksLimit() const
{
// OpenSim legacy economy
//return m_picks_limit;
- return LLGridManager::instance().isInSecondLife() ? m_picks_limit : LLAgentPicksInfo::instance().getMaxNumberOfPicks();
+ if (LLGridManager::instance().isInSecondLife())
+ {
+ return m_picks_limit;
+ }
+ else
+ {
+ constexpr S32 MAX_OPENSIM_PICKS_FALLBACK = 20; // [FIRE-35276] Freeze on OpenSim (default agreed with Ubit Umarov) (originally by Haklezz)
+
+ S32 max_profile_picks = MAX_OPENSIM_PICKS_FALLBACK;
+
+ if (gAgent.getRegion())
+ {
+ LLSD features;
+ gAgent.getRegion()->getSimulatorFeatures(features);
+ if (features.has("MaxProfilePicks"))
+ {
+ max_profile_picks = features["MaxProfilePicks"].asInteger();
+ }
+ }
+ return max_profile_picks;
+ }
//
}
diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp
index 5ffcc1a059..50409190eb 100644
--- a/indra/newview/llface.cpp
+++ b/indra/newview/llface.cpp
@@ -386,11 +386,6 @@ void LLFace::switchTexture(U32 ch, LLViewerTexture* new_texture)
return;
}
- // [FIRE-35081] Blurry prims not changing with graphics settings, not happening with SL Viewer
- // Need to update the new textures to the old textures boost and max virtual size, so they won't
- new_texture->setBoostLevel(mTexture[ch]->getBoostLevel());
- new_texture->addTextureStats(mTexture[ch]->getMaxVirtualSize());
- // [FIRE-35081]
if (ch == LLRender::DIFFUSE_MAP)
{
if (getViewerObject())
diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp
index f6e682dd5e..070c56c828 100644
--- a/indra/newview/llstatusbar.cpp
+++ b/indra/newview/llstatusbar.cpp
@@ -604,44 +604,48 @@ void LLStatusBar::refresh()
static LLCachedControl fsStatusBarShowFPS(gSavedSettings, "FSStatusBarShowFPS");
if (fsStatusBarShowFPS && mFPSUpdateTimer.getElapsedTimeF32() > 1.f)
{
+ static LLCachedControl fsStatusBarShowFPSColors(gSavedSettings, "FSStatusBarShowFPSColors");
static LLCachedControl max_fps(gSavedSettings, "FramePerSecondLimit");
static LLCachedControl limit_fps_enabled(gSavedSettings, "FSLimitFramerate");
static LLCachedControl vsync_enabled(gSavedSettings, "RenderVSyncEnable");
- static const auto fps_below_limit_color = LLUIColorTable::instance().getColor("Yellow");
- static const auto fps_limit_reached_color = LLUIColorTable::instance().getColor("Green");
- static const auto vsync_limit_reached_color = LLUIColorTable::instance().getColor("Green");
- static const auto fps_uncapped_color = LLUIColorTable::instance().getColor("White");
- static const auto fps_unfocussed_color = LLUIColorTable::instance().getColor("Gray");
+ static const auto fps_below_limit_color = LLUIColorTable::instance().getColor("FpsDisplayBelowLimitColor");
+ static const auto fps_limit_reached_color = LLUIColorTable::instance().getColor("FpsDisplayFpsLimitReachedColor");
+ static const auto vsync_limit_reached_color = LLUIColorTable::instance().getColor("FpsDisplayVSyncLimitReachedColor");
+ static const auto fps_uncapped_color = LLUIColorTable::instance().getColor("FpsDisplayUncappedColor");
+ static const auto fps_unfocussed_color = LLUIColorTable::instance().getColor("FpsDisplayUnfocussedColor");
static auto current_fps_color = fps_uncapped_color;
mFPSUpdateTimer.reset();
const auto fps = LLTrace::get_frame_recording().getPeriodMedianPerSec(LLStatViewer::FPS);
mFPSText->setText(llformat("%.1f", fps));
- // if background, go grey, else go white unless we have a cap (checked next)
auto fps_color{ fps_uncapped_color };
- auto window = gViewerWindow ? gViewerWindow->getWindow() : nullptr;
- if ((window && !window->getVisible()) || !gFocusMgr.getAppHasFocus())
+ if (fsStatusBarShowFPSColors)
{
- fps_color = fps_unfocussed_color;
- }
- else
- {
- S32 vsync_freq{ -1 };
- if (window)
+ // if background, go grey, else go white unless we have a cap (checked next)
+ auto window = gViewerWindow ? gViewerWindow->getWindow() : nullptr;
+ if ((window && !window->getVisible()) || !gFocusMgr.getAppHasFocus())
{
- vsync_freq = window->getRefreshRate();
+ fps_color = fps_unfocussed_color;
}
+ else
+ {
+ S32 vsync_freq{ -1 };
+ if (window)
+ {
+ vsync_freq = window->getRefreshRate();
+ }
- if (limit_fps_enabled && max_fps > 0)
- {
- fps_color = (fps >= max_fps - 1) ? fps_limit_reached_color : fps_below_limit_color;
- }
- // use vsync if enabled and the freq is lower than the max_fps
- if (vsync_enabled && vsync_freq > 0 && (!limit_fps_enabled || vsync_freq < (S32)max_fps))
- {
- fps_color = (fps >= vsync_freq - 1) ? vsync_limit_reached_color : fps_below_limit_color;
+ if (limit_fps_enabled && max_fps > 0)
+ {
+ fps_color = (fps >= max_fps - 1) ? fps_limit_reached_color : fps_below_limit_color;
+ }
+ // use vsync if enabled and the freq is lower than the max_fps
+ if (vsync_enabled && vsync_freq > 0 && (!limit_fps_enabled || vsync_freq < (S32)max_fps))
+ {
+ fps_color = (fps >= vsync_freq - 1) ? vsync_limit_reached_color : fps_below_limit_color;
+ }
}
}
diff --git a/indra/newview/llurllineeditorctrl.cpp b/indra/newview/llurllineeditorctrl.cpp
index de0ed645eb..a4d9945783 100644
--- a/indra/newview/llurllineeditorctrl.cpp
+++ b/indra/newview/llurllineeditorctrl.cpp
@@ -86,6 +86,10 @@ void LLURLLineEditor::copyEscapedURLToClipboard()
// *HACK: Because LLSLURL is currently broken we cannot use it to check if unescaped_text is a valid SLURL (see EXT-8335).
if (LLStringUtil::startsWith(unescaped_text, "http://") || LLStringUtil::startsWith(unescaped_text, "secondlife://")) // SLURL
text_to_copy = utf8str_to_wstring(LLWeb::escapeURL(unescaped_text));
+ // [FIRE-34020] Copy of address bar contents does not URL encode space in region name for OpenSim only
+ else if (LLStringUtil::startsWith(unescaped_text, "hop://"))
+ text_to_copy = utf8str_to_wstring(LLWeb::escapeURL(unescaped_text));
+ //
else // human-readable location
text_to_copy = utf8str_to_wstring(unescaped_text);
diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp
index 6903e1ec6a..04522d9b65 100644
--- a/indra/newview/llviewertexturelist.cpp
+++ b/indra/newview/llviewertexturelist.cpp
@@ -1401,11 +1401,7 @@ F32 LLViewerTextureList::updateImagesFetchTextures(F32 max_time)
iter = mUUIDMap.begin();
}
- // [FIRE-35081] Blurry prims not changing with graphics settings, not happening with SL Viewer
- //if (iter->second->getGLTexture())
- // Can skip processing TEX_LIST_SCALED as they are UI elements and should not be discarded
- if (iter->second->getGLTexture() && get_element_type(iter->second->getBoostLevel()) == TEX_LIST_STANDARD)
- // [FIRE-35081]
+ if (iter->second->getGLTexture())
{
entries.push_back(iter->second);
}
diff --git a/indra/newview/skins/ansastorm/colors.xml b/indra/newview/skins/ansastorm/colors.xml
index 70634c08d7..bcaba9ba01 100644
--- a/indra/newview/skins/ansastorm/colors.xml
+++ b/indra/newview/skins/ansastorm/colors.xml
@@ -1410,4 +1410,19 @@
+
+
+
+
+
diff --git a/indra/newview/skins/ansastorm/themes/classic_brown/colors.xml b/indra/newview/skins/ansastorm/themes/classic_brown/colors.xml
index e35d792e45..8b269290fe 100644
--- a/indra/newview/skins/ansastorm/themes/classic_brown/colors.xml
+++ b/indra/newview/skins/ansastorm/themes/classic_brown/colors.xml
@@ -1403,4 +1403,19 @@
+
+
+
+
+
diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml
index d7bbd28619..ac8aae67e8 100644
--- a/indra/newview/skins/default/colors.xml
+++ b/indra/newview/skins/default/colors.xml
@@ -1378,4 +1378,19 @@
+
+
+
+
+
diff --git a/indra/newview/skins/default/xui/de/menu_hide_navbar.xml b/indra/newview/skins/default/xui/de/menu_hide_navbar.xml
index f1a396ccc0..47d5ddd525 100644
--- a/indra/newview/skins/default/xui/de/menu_hide_navbar.xml
+++ b/indra/newview/skins/default/xui/de/menu_hide_navbar.xml
@@ -10,6 +10,7 @@
+
diff --git a/indra/newview/skins/default/xui/de/panel_status_bar.xml b/indra/newview/skins/default/xui/de/panel_status_bar.xml
index 8f57418564..c365729f9c 100644
--- a/indra/newview/skins/default/xui/de/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/de/panel_status_bar.xml
@@ -33,7 +33,7 @@
-
+
200.0
diff --git a/indra/newview/skins/default/xui/en/floater_about.xml b/indra/newview/skins/default/xui/en/floater_about.xml
index 3774f25ca7..b01a41ab79 100644
--- a/indra/newview/skins/default/xui/en/floater_about.xml
+++ b/indra/newview/skins/default/xui/en/floater_about.xml
@@ -165,7 +165,7 @@ Additional code generously contributed to Firestorm by:
top_pad="4"
width="450"
wrap="true">
-Aira Yumi, Albatroz Hird, Alexie Birman, Andromeda Rage, Angus Boyd, Animats, Armin Weatherwax, Ayane Lyla, Casper Warden, Chalice Yao, Chaser Zaks, Chorazin Allen, Cron Stardust, Damian Zhaoying, Dan Threebeards, Dawa Gurbux, Dax Dupont, Denver Maksim, Dragonborn Forzane, Drake Arconis, Felyza Wishbringer, f0rbidden, Fractured Crystal, Geenz Spad, Gibson Firehawk, Hitomi Tiponi, humbletim, Inusaito Sayori, Jean Severine, Katharine Berry, Kittin Ninetails, Kool Koolhoven, Lance Corrimal, Lassie, Latif Khalifa, Laurent Bechir, Magne Metaverse LLC, Magus Freston, Makidoll, Manami Hokkigai, MartinRJ Fayray, McCabe Maxstead, Melancholy Lemon, Melysmile, Mimika Oh, minerjr, Mister Acacia, MorganMegan, Morgan Pennent, Mysty Saunders, Nagi Michinaga, Name Short, nhede Core, NiranV Dean, Nogardrevlis Lectar, Oren Hurvitz, paperwork, Penny Patton, Peyton Menges, programmtest, Qwerty Venom, rafak360, Rebecca Ashbourne, Revolution Smythe, Romka Swallowtail, Sahkolihaa Contepomi, sal Kaligawa, Samm Florian, Satomi Ahn, Sei Lisa, Sempervirens Oddfellow, Shin Wasp, Shyotl Kuhr, Sione Lomu, Skills Hak, StarlightShining, Sunset Faulkes, Tapple Gao, Testicular Slingshot, Thickbrick Sleaford, Ubit Umarov, Vaalith Jinn, Vincent Sylvester, Whirly Fizzle, Xenhat Liamano, 小滢 Zi Ying, Zwagoth Klaar and others.
+Aira Yumi, Albatroz Hird, Alexie Birman, Andromeda Rage, Angus Boyd, Animats, Armin Weatherwax, Ayane Lyla, Casper Warden, Chalice Yao, Chaser Zaks, Chorazin Allen, Cron Stardust, Damian Zhaoying, Dan Threebeards, Dawa Gurbux, Dax Dupont, Denver Maksim, Dragonborn Forzane, Drake Arconis, Felyza Wishbringer, f0rbidden, Fractured Crystal, Geenz Spad, Gibson Firehawk, Hecklezz, Hitomi Tiponi, humbletim, Inusaito Sayori, Jean Severine, Katharine Berry, Kittin Ninetails, Kool Koolhoven, Lance Corrimal, Lassie, Latif Khalifa, Laurent Bechir, Magne Metaverse LLC, Magus Freston, Makidoll, Manami Hokkigai, MartinRJ Fayray, McCabe Maxstead, Melancholy Lemon, Melysmile, Mimika Oh, minerjr, Mister Acacia, MorganMegan, Morgan Pennent, Mysty Saunders, Nagi Michinaga, Name Short, nhede Core, NiranV Dean, Nogardrevlis Lectar, Oren Hurvitz, paperwork, Penny Patton, Peyton Menges, programmtest, Qwerty Venom, rafak360, Rebecca Ashbourne, Revolution Smythe, Romka Swallowtail, Sahkolihaa Contepomi, sal Kaligawa, Samm Florian, Satomi Ahn, Sei Lisa, Sempervirens Oddfellow, Shin Wasp, Shyotl Kuhr, Sione Lomu, Skills Hak, StarlightShining, Sunset Faulkes, Tapple Gao, Testicular Slingshot, Thickbrick Sleaford, Ubit Umarov, Vaalith Jinn, Vincent Sylvester, Whirly Fizzle, Xenhat Liamano, 小滢 Zi Ying, Zwagoth Klaar and others.
+
+
+
+
+