diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index f6c0304c23..695a7d5e99 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -20731,5 +20731,16 @@ Change of this parameter will affect the layout of buttons in notification toast Value 1 + FSSortFSFoldersToTop + + Comment + Sorts the #FS and #RLV folders to the top like system folders. + Persist + 1 + Type + Boolean + Value + 1 + diff --git a/indra/newview/app_settings/settings_latency.xml b/indra/newview/app_settings/settings_latency.xml index e7575b0294..663ba3daab 100644 --- a/indra/newview/app_settings/settings_latency.xml +++ b/indra/newview/app_settings/settings_latency.xml @@ -662,6 +662,18 @@ 0 + FSSortFSFoldersToTop + + Persist + 1 + Comment + Sorts the #FS and #RLV folders to the top like system folders. + Type + Boolean + Value + 0 + + diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index 916083706e..c79c4fa529 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -4028,6 +4028,22 @@ EInventorySortGroup LLFolderBridge::getSortGroup() const return SG_TRASH_FOLDER; } + // Don't sort #FS folders to top + static LLCachedControl sFSSortFSFoldersToTopPt(gSavedSettings, "FSSortFSFoldersToTop"); + if (!sFSSortFSFoldersToTopPt) + { + LLViewerInventoryCategory* cat = getCategory(); + if(cat) + { + std::string catName(cat->getName()); + if ((catName == ROOT_FIRESTORM_FOLDER) || (catName == RLV_ROOT_FOLDER) || (catName == "#Phoenix")) + { + return SG_NORMAL_FOLDER; + } + } + } + // + if(LLFolderType::lookupIsProtectedType(preferred_type)) { return SG_SYSTEM_FOLDER;