diff --git a/indra/newview/fsradarmenu.cpp b/indra/newview/fsradarmenu.cpp
index e57edc382b..821b234458 100644
--- a/indra/newview/fsradarmenu.cpp
+++ b/indra/newview/fsradarmenu.cpp
@@ -40,6 +40,7 @@
#include "llavataractions.h"
#include "llcallingcard.h" // for LLAvatarTracker
#include "llviewermenu.h" // for gMenuHolder
+#include "rlvhandler.h"
namespace FSFloaterRadarMenu
{
@@ -203,6 +204,10 @@ bool FSRadarMenu::enableContextMenuItem(const LLSD& userdata)
// return LLAvatarActions::canOfferTeleport(mUUIDs);
//}
//
+ else if (item == std::string("can_open_inventory"))
+ {
+ return (!gRlvHandler.hasBehaviour(RLV_BHVR_SHOWINV));
+ }
return false;
}
diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp
index 2a5d53059b..a6705d3448 100644
--- a/indra/newview/llavataractions.cpp
+++ b/indra/newview/llavataractions.cpp
@@ -558,6 +558,13 @@ void LLAvatarActions::csr(const LLUUID& id, std::string name)
//static
void LLAvatarActions::share(const LLUUID& id)
{
+ // FIRE-8804: Prevent opening inventory from using share in radar context menu
+ if (gRlvHandler.hasBehaviour(RLV_BHVR_SHOWINV))
+ {
+ return;
+ }
+ //
+
LLSD key;
LLFloaterSidePanelContainer::showPanel("inventory", key);
diff --git a/indra/newview/llpanelpeoplemenus.cpp b/indra/newview/llpanelpeoplemenus.cpp
index 0508d41875..a224ace582 100644
--- a/indra/newview/llpanelpeoplemenus.cpp
+++ b/indra/newview/llpanelpeoplemenus.cpp
@@ -38,6 +38,7 @@
#include "llavataractions.h"
#include "llcallingcard.h" // for LLAvatarTracker
#include "llviewermenu.h" // for gMenuHolder
+#include "rlvhandler.h"
namespace LLPanelPeopleMenus
{
@@ -177,6 +178,12 @@ bool NearbyMenu::enableContextMenuItem(const LLSD& userdata)
// return LLAvatarActions::canOfferTeleport(mUUIDs);
//}
//
+ // FIRE-8804: Prevent opening inventory from using share in radar context menu
+ else if (item == std::string("can_open_inventory"))
+ {
+ return (!gRlvHandler.hasBehaviour(RLV_BHVR_SHOWINV));
+ }
+ //
return false;
}
diff --git a/indra/newview/rlvui.cpp b/indra/newview/rlvui.cpp
index 82395d896f..82c7b8c888 100644
--- a/indra/newview/rlvui.cpp
+++ b/indra/newview/rlvui.cpp
@@ -254,10 +254,17 @@ void RlvUIEnabler::onToggleShowInv(bool fQuitting)
//
// Filter (or stop filtering) opening new inventory floaters
//
+ // Modified for FIRE-8804
if (!fEnable)
+ {
addGenericFloaterFilter("inventory");
+ addGenericFloaterFilter("secondary_inventory");
+ }
else
+ {
removeGenericFloaterFilter("inventory");
+ removeGenericFloaterFilter("secondary_inventory");
+ }
}
// Checked: 2010-04-22 (RLVa-1.2.0f) | Modified: RLVa-1.2.0f
diff --git a/indra/newview/skins/default/xui/en/menu_fs_radar.xml b/indra/newview/skins/default/xui/en/menu_fs_radar.xml
index 43669deea0..5241bb8795 100644
--- a/indra/newview/skins/default/xui/en/menu_fs_radar.xml
+++ b/indra/newview/skins/default/xui/en/menu_fs_radar.xml
@@ -69,6 +69,9 @@
name="Share">
+
+