diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml
index 934ff6325e..64f2a4b2ba 100644
--- a/indra/newview/app_settings/commands.xml
+++ b/indra/newview/app_settings/commands.xml
@@ -312,8 +312,7 @@
icon="Command_Grid_Status_Icon"
label_ref="Command_Grid_Status_Label"
tooltip_ref="Command_Grid_Status_Tooltip"
- execute_function="Floater.Toggle"
- execute_parameters="grid_status"
+ execute_function="OpenGridStatus"
is_running_function="Floater.IsOpen"
is_running_parameters="grid_status"
is_enabled_function="GridCheck"
@@ -426,7 +425,7 @@
is_running_function="Agent.getFlying"
is_enabled_function="Agent.enableFlying"
/>
-
+
-
+
-
+
-
+
-
+
-
+
+ />
diff --git a/indra/newview/llfloatergridstatus.cpp b/indra/newview/llfloatergridstatus.cpp
index f2b29575c2..3f53523219 100644
--- a/indra/newview/llfloatergridstatus.cpp
+++ b/indra/newview/llfloatergridstatus.cpp
@@ -39,7 +39,8 @@
#include "llxmltree.h"
std::map LLFloaterGridStatus::sItemsMap;
-const std::string DEFAULT_GRID_STATUS_URL = "http://secondlife-status.statuspage.io/";
+// FIRE-21236 - Help Menu - Check Grid Status doesn't open using External Browser
+//const std::string DEFAULT_GRID_STATUS_URL = "http://secondlife-status.statuspage.io/";
LLFloaterGridStatus::LLFloaterGridStatus(const Params& key) :
LLFloaterWebContent(key),
diff --git a/indra/newview/llfloatergridstatus.h b/indra/newview/llfloatergridstatus.h
index 0c3deb7d4c..0f880dd75d 100644
--- a/indra/newview/llfloatergridstatus.h
+++ b/indra/newview/llfloatergridstatus.h
@@ -34,6 +34,8 @@
class LLMediaCtrl;
+// FIRE-21236 - Help Menu - Check Grid Status doesn't open using External Browser
+const std::string DEFAULT_GRID_STATUS_URL = "http://secondlife-status.statuspage.io/";
class LLFloaterGridStatus :
public LLFloaterWebContent
diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp
index f7042e9b56..c70352e760 100644
--- a/indra/newview/llviewermenu.cpp
+++ b/indra/newview/llviewermenu.cpp
@@ -151,19 +151,20 @@
#include "fslslbridge.h"
#include "fscommon.h"
#include "fsfloaterexport.h"
-#include "fsfloatercontacts.h" // Display group list in contacts floater
-#include "fspose.h" // FIRE-4345: Undeform
+#include "fsfloatercontacts.h"
+#include "fsfloaterplacedetails.h"
+#include "fspose.h"
#include "lfsimfeaturehandler.h"
-#include "llavatarpropertiesprocessor.h" // ## Zi: Texture Refresh
+#include "llavatarpropertiesprocessor.h"
+#include "llcheckboxctrl.h"
+#include "llfloatergridstatus.h"
+#include "llfloaterpreference.h"
+#include "lllogininstance.h"
+#include "llscenemonitor.h"
#include "llsdserialize.h"
-#include "lltexturecache.h" // ## Zi: Texture Refresh
-#include "lllogininstance.h" //
+#include "lltexturecache.h"
#include "llvovolume.h"
#include "particleeditor.h"
-#include "llfloaterpreference.h" // Volume controls prefs
-#include "llcheckboxctrl.h" // Volume controls prefs
-#include "llscenemonitor.h"
-#include "fsfloaterplacedetails.h"
using namespace LLAvatarAppearanceDefines;
@@ -9672,6 +9673,20 @@ bool isGridFeatureEnabled(const LLSD& userdata)
}
//
+// FIRE-21236 - Help Menu - Check Grid Status doesn't open using External Browser
+void openGridStatus()
+{
+ if (LLWeb::useExternalBrowser(DEFAULT_GRID_STATUS_URL))
+ {
+ LLWeb::loadURLExternal(DEFAULT_GRID_STATUS_URL);
+ }
+ else
+ {
+ LLFloaterReg::toggleInstance("grid_status");
+ }
+}
+//
+
class LLToolsSelectOnlyMyObjects : public view_listener_t
{
bool handleEvent(const LLSD& userdata)
@@ -11036,6 +11051,7 @@ void initialize_menus()
enable.add("GridCheck", boost::bind(&checkIsGrid, _2)); // Opensim menu item visibility control
enable.add("GridFeatureCheck", boost::bind(&isGridFeatureEnabled, _2));
+ commit.add("OpenGridStatus", boost::bind(&openGridStatus)); // FIRE-21236 - Help Menu - Check Grid Status doesn't open using External Browser
// Agent
commit.add("Agent.toggleFlying", boost::bind(&LLAgent::toggleFlying));
@@ -11059,9 +11075,9 @@ void initialize_menus()
commit.add("EditShape", boost::bind(&handle_edit_shape));
commit.add("HoverHeight", boost::bind(&handle_hover_height));
commit.add("EditPhysics", boost::bind(&handle_edit_physics));
-//-TT Client LSL Bridge
+ // Client LSL Bridge
commit.add("RecreateLSLBridge", boost::bind(&handle_recreate_lsl_bridge));
-//-TT
+ //
// View menu
view_listener_t::addMenu(new LLViewMouselook(), "View.Mouselook");
diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml
index 4b73a8270c..45a8ae9dbf 100644
--- a/indra/newview/skins/default/xui/en/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/en/menu_viewer.xml
@@ -2132,8 +2132,7 @@
label="Check Grid status"
name="Grid Status">
+ function="OpenGridStatus"/>