From 4eeff34c6514160b3abefce35cee5f0e4e8cf1de Mon Sep 17 00:00:00 2001 From: Mnikolenko ProductEngine Date: Tue, 15 Apr 2014 10:54:15 +0300 Subject: MAINT-3931 FIXED Don't display any other check marks if Region Settings is selected. --- indra/newview/llviewermenu.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'indra/newview/llviewermenu.cpp') diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index ab9551ad17..e8759ee4ca 100755 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -8242,9 +8242,9 @@ class LLWorldEnableEnvSettings : public view_listener_t bool result = false; std::string tod = userdata.asString(); - if (tod == "region") + if (LLEnvManagerNew::instance().getUseRegionSettings()) { - return LLEnvManagerNew::instance().getUseRegionSettings(); + return (tod == "region"); } if (LLEnvManagerNew::instance().getUseFixedSky()) -- cgit v1.3 From 16a5c9346d04f20c536e9034947873f1202eb32e Mon Sep 17 00:00:00 2001 From: Mnikolenko ProductEngine Date: Tue, 20 May 2014 11:34:24 +0300 Subject: MAINT-3064 FIXED Select next session in the list if selected session is nearby chat and it's not the only one. --- indra/newview/llviewermenu.cpp | 23 ++++++++++++++++++++++ indra/newview/skins/default/xui/en/menu_viewer.xml | 12 ++++++----- 2 files changed, 30 insertions(+), 5 deletions(-) (limited to 'indra/newview/llviewermenu.cpp') diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 1daa85176a..aef8bc21ec 100755 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -64,6 +64,7 @@ #include "llfloaterinventory.h" #include "llfloaterimcontainer.h" #include "llfloaterland.h" +#include "llfloaterimnearbychat.h" #include "llfloaterpathfindingcharacters.h" #include "llfloaterpathfindinglinksets.h" #include "llfloaterpay.h" @@ -5660,6 +5661,25 @@ void toggle_debug_menus(void*) // gExportDialog = LLUploadDialog::modalUploadDialog("Exporting selected objects..."); // } // + +class LLCommunicateNearbyChat : public view_listener_t +{ + bool handleEvent(const LLSD& userdata) + { + LLFloaterIMContainer* im_box = LLFloaterIMContainer::getInstance(); + bool nearby_visible = LLFloaterReg::getTypedInstance("nearby_chat")->isInVisibleChain(); + if(nearby_visible && im_box->getSelectedSession() == LLUUID() && im_box->getConversationListItemSize() > 1) + { + im_box->selectNextorPreviousConversation(false); + } + else + { + LLFloaterReg::toggleInstanceOrBringToFront("nearby_chat"); + } + return true; + } +}; + class LLWorldSetHomeLocation : public view_listener_t { bool handleEvent(const LLSD& userdata) @@ -8577,6 +8597,9 @@ void initialize_menus() // Me > Movement view_listener_t::addMenu(new LLAdvancedAgentFlyingInfo(), "Agent.getFlying"); + //Communicate Nearby chat + view_listener_t::addMenu(new LLCommunicateNearbyChat(), "Communicate.NearbyChat"); + // Communicate > Voice morphing > Subscribe... commit.add("Communicate.VoiceMorphing.Subscribe", boost::bind(&handle_voice_morphing_subscribe)); LLVivoxVoiceClient * voice_clientp = LLVivoxVoiceClient::getInstance(); diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml index b1c1b236f0..acec017622 100755 --- a/indra/newview/skins/default/xui/en/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en/menu_viewer.xml @@ -259,8 +259,7 @@ function="Floater.Visible" parameter="nearby_chat" /> + function="Communicate.NearbyChat"/> - - + - + Date: Mon, 23 Jun 2014 23:16:36 +0300 Subject: MAINT-4127: New default mode when clicking links: Linden links open in viewer, third-party links open in user's browser --- indra/newview/app_settings/settings.xml | 13 ++++++- indra/newview/llviewermenu.cpp | 4 +- indra/newview/llweb.cpp | 21 ++++++++++- indra/newview/llweb.h | 8 ++++ .../default/xui/en/panel_preferences_setup.xml | 44 +++++++++++++++++++++- 5 files changed, 85 insertions(+), 5 deletions(-) (limited to 'indra/newview/llviewermenu.cpp') diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 2e49357d6f..b92751c448 100755 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -13256,7 +13256,7 @@ Value Default - UseExternalBrowser + UseExternalBrowser Comment Use default browser when opening web pages instead of in-world browser. @@ -13267,6 +13267,17 @@ Value 1 + PreferredBrowserBehavior + + Comment + Use system browser for any links (0), use builtin browser for SL links and system one for others (1) or use builtin browser only (2). + Persist + 1 + Type + U32 + Value + 1 + UseFreezeFrame Comment diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 8b9b9ed172..01e6c8a5d0 100755 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -6196,7 +6196,7 @@ class LLPromptShowURL : public view_listener_t std::string alert = param.substr(0, offset); std::string url = param.substr(offset+1); - if(gSavedSettings.getBOOL("UseExternalBrowser")) + if (LLWeb::useExternalBrowser(url)) { LLSD payload; payload["url"] = url; @@ -7816,7 +7816,7 @@ void handle_web_content_test(const LLSD& param) void handle_show_url(const LLSD& param) { std::string url = param.asString(); - if(gSavedSettings.getBOOL("UseExternalBrowser")) + if (LLWeb::useExternalBrowser(url)) { LLWeb::loadURLExternal(url); } diff --git a/indra/newview/llweb.cpp b/indra/newview/llweb.cpp index 665671a38f..0312972a22 100755 --- a/indra/newview/llweb.cpp +++ b/indra/newview/llweb.cpp @@ -50,6 +50,8 @@ #include "llviewerwindow.h" #include "llnotificationsutil.h" +#include + bool on_load_url_external_response(const LLSD& notification, const LLSD& response, bool async ); @@ -87,7 +89,8 @@ void LLWeb::loadURL(const std::string& url, const std::string& target, const std // Force load in the internal browser, as if with a blank target. loadURLInternal(url, "", uuid); } - else if (gSavedSettings.getBOOL("UseExternalBrowser") || (target == "_external")) + + else if (useExternalBrowser(url) || (target == "_external")) { loadURLExternal(url); } @@ -225,3 +228,19 @@ std::string LLWeb::expandURLSubstitutions(const std::string &url, return LLWeb::escapeURL(expanded_url); } + +//static +bool LLWeb::useExternalBrowser(const std::string &url) +{ + if (gSavedSettings.getU32("PreferredBrowserBehavior") == BROWSER_EXTERNAL_ONLY) + { + return true; + } + else if (gSavedSettings.getU32("PreferredBrowserBehavior") == BROWSER_INT_LL_EXT_OTHERS) + { + boost::regex pattern = boost::regex("\\b(lindenlab.com|secondlife.com)\\b", boost::regex::perl|boost::regex::icase); + boost::match_results matches; + return !(boost::regex_search(url, matches, pattern)); + } + return false; +} diff --git a/indra/newview/llweb.h b/indra/newview/llweb.h index 0b95f664d6..7c90badbfe 100755 --- a/indra/newview/llweb.h +++ b/indra/newview/llweb.h @@ -40,6 +40,13 @@ class LLWeb { public: + enum PreferredBrowser + { + BROWSER_EXTERNAL_ONLY = 0, + BROWSER_INT_LL_EXT_OTHERS = 1, + BROWSER_INTERNAL_ONLY = 2 + }; + static void initClass(); /// Load the given url in the operating system's web browser, async if we want to return immediately @@ -57,6 +64,7 @@ public: /// Expands various strings like [LANG], [VERSION], etc. in a URL static std::string expandURLSubstitutions(const std::string &url, const LLSD &default_subs); + static bool useExternalBrowser(const std::string &url); }; #endif diff --git a/indra/newview/skins/default/xui/en/panel_preferences_setup.xml b/indra/newview/skins/default/xui/en/panel_preferences_setup.xml index dd4533ae74..1e9a1aa27c 100755 --- a/indra/newview/skins/default/xui/en/panel_preferences_setup.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_setup.xml @@ -106,7 +106,7 @@ width="300"> Web: - + --> + + + + + Date: Fri, 4 Jul 2014 15:47:05 +0300 Subject: MAINT-4155 FIXED Scene Loading Monitor does not open from menu --- indra/newview/llscenemonitor.cpp | 8 +++++++- indra/newview/llviewermenu.cpp | 9 +++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) (limited to 'indra/newview/llviewermenu.cpp') diff --git a/indra/newview/llscenemonitor.cpp b/indra/newview/llscenemonitor.cpp index 7f705e44d2..5b37fdf41b 100644 --- a/indra/newview/llscenemonitor.cpp +++ b/indra/newview/llscenemonitor.cpp @@ -711,7 +711,13 @@ void LLSceneMonitorView::onClose(bool app_quitting) void LLSceneMonitorView::onVisibilityChange(BOOL visible) { - visible = visible && LLGLSLShader::sNoFixedFunction; + if (!LLGLSLShader::sNoFixedFunction && visible) + { + visible = false; + // keep Scene monitor and its view in sycn + setVisible(false); + LL_WARNS("SceneMonitor") << "Incompatible graphical settings, Scene Monitor can't be turned on" << LL_ENDL; + } LLSceneMonitor::getInstance()->setDebugViewerVisible(visible); } diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 01e6c8a5d0..38aaff9279 100755 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -93,6 +93,7 @@ #include "llparcel.h" #include "llrootview.h" #include "llsceneview.h" +#include "llscenemonitor.h" #include "llselectmgr.h" #include "llspellcheckmenuhandler.h" #include "llstatusbar.h" @@ -534,6 +535,10 @@ class LLAdvancedToggleConsole : public view_listener_t { toggle_visibility( (void*)gSceneView); } + else if ("scene monitor" == console_type) + { + toggle_visibility( (void*)gSceneMonitorView); + } return true; } @@ -560,6 +565,10 @@ class LLAdvancedCheckConsole : public view_listener_t { new_value = get_visibility( (void*) gSceneView); } + else if ("scene monitor" == console_type) + { + new_value = get_visibility( (void*) gSceneMonitorView); + } return new_value; } -- cgit v1.3