diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt index 8350037c6..6aa14e8d6 100644 --- a/indra/llui/CMakeLists.txt +++ b/indra/llui/CMakeLists.txt @@ -63,7 +63,6 @@ set(llui_SOURCE_FILES llspinctrl.cpp llstyle.cpp lltabcontainer.cpp - lltabcontainervertical.cpp lltextbox.cpp lltexteditor.cpp lltextparser.cpp @@ -127,7 +126,6 @@ set(llui_HEADER_FILES llspinctrl.h llstyle.h lltabcontainer.h - lltabcontainervertical.h lltextbox.h lltexteditor.h lltextparser.h diff --git a/indra/llui/lltabcontainer.cpp b/indra/llui/lltabcontainer.cpp index 24ccd848f..9a4510690 100644 --- a/indra/llui/lltabcontainer.cpp +++ b/indra/llui/lltabcontainer.cpp @@ -42,7 +42,6 @@ #include "lltextbox.h" #include "llcriticaldamp.h" #include "lluictrlfactory.h" -#include "lltabcontainervertical.h" #include "llrender.h" #include "llmultifloater.h" diff --git a/indra/llui/lltabcontainervertical.cpp b/indra/llui/lltabcontainervertical.cpp deleted file mode 100644 index a729c95fd..000000000 --- a/indra/llui/lltabcontainervertical.cpp +++ /dev/null @@ -1,33 +0,0 @@ -/** - * @file lltabcontainervertical.cpp - * @brief LLTabContainerVertical base class - * - * $LicenseInfo:firstyear=2001&license=viewergpl$ - * - * Copyright (c) 2001-2009, Linden Research, Inc. - * - * Second Life Viewer Source Code - * The source code in this file ("Source Code") is provided by Linden Lab - * to you under the terms of the GNU General Public License, version 2.0 - * ("GPL"), unless you have obtained a separate licensing agreement - * ("Other License"), formally executed by you and Linden Lab. Terms of - * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 - * - * There are special exceptions to the terms and conditions of the GPL as - * it is applied to this Source Code. View the full text of the exception - * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at - * http://secondlifegrid.net/programs/open_source/licensing/flossexception - * - * By copying, modifying or distributing this software, you acknowledge - * that you have read and understood your obligations described above, - * and agree to abide by those obligations. - * - * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO - * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, - * COMPLETENESS OR PERFORMANCE. - * $/LicenseInfo$ - */ - -// deprecated: see LLTabContainer diff --git a/indra/llui/lltabcontainervertical.h b/indra/llui/lltabcontainervertical.h deleted file mode 100644 index ce42367f8..000000000 --- a/indra/llui/lltabcontainervertical.h +++ /dev/null @@ -1,33 +0,0 @@ -/** - * @file lltabcontainervertical.h - * @brief LLTabContainerVertical base class - * - * $LicenseInfo:firstyear=2001&license=viewergpl$ - * - * Copyright (c) 2001-2009, Linden Research, Inc. - * - * Second Life Viewer Source Code - * The source code in this file ("Source Code") is provided by Linden Lab - * to you under the terms of the GNU General Public License, version 2.0 - * ("GPL"), unless you have obtained a separate licensing agreement - * ("Other License"), formally executed by you and Linden Lab. Terms of - * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 - * - * There are special exceptions to the terms and conditions of the GPL as - * it is applied to this Source Code. View the full text of the exception - * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at - * http://secondlifegrid.net/programs/open_source/licensing/flossexception - * - * By copying, modifying or distributing this software, you acknowledge - * that you have read and understood your obligations described above, - * and agree to abide by those obligations. - * - * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO - * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, - * COMPLETENESS OR PERFORMANCE. - * $/LicenseInfo$ - */ - -// deprecated: see LLTabContainer diff --git a/indra/llui/lluictrlfactory.cpp b/indra/llui/lluictrlfactory.cpp index 24a13d36e..eb86f1e96 100644 --- a/indra/llui/lluictrlfactory.cpp +++ b/indra/llui/lluictrlfactory.cpp @@ -64,7 +64,6 @@ #include "llmultisliderctrl.h" #include "llspinctrl.h" #include "lltabcontainer.h" -#include "lltabcontainervertical.h" #include "lltextbox.h" #include "lltexteditor.h" #include "llui.h" diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index a4e4ba1a9..c4f0cc038 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -7894,7 +7894,7 @@ This should be as low as possible, but too low may break functionality WebProfileURL Comment - URL for SL Web Profiles + URL for Web Profiles Persist 0 Type @@ -7902,17 +7902,6 @@ This should be as low as possible, but too low may break functionality Value https://my.secondlife.com/[AGENT_NAME] - WebProfileNonProductionURL - - Comment - URL for SL Web Profiles on Non-Production grids - Persist - 0 - Type - String - Value - https://my-demo.secondlife.com/[AGENT_NAME] - HighResSnapshot Comment diff --git a/indra/newview/hippogridmanager.cpp b/indra/newview/hippogridmanager.cpp index 222969450..674206e79 100644 --- a/indra/newview/hippogridmanager.cpp +++ b/indra/newview/hippogridmanager.cpp @@ -73,7 +73,7 @@ HippoGridInfo::Platform HippoGridInfo::getPlatform() bool HippoGridInfo::isOpenSimulator() const { - return (mPlatform == HippoGridInfo::PLATFORM_OPENSIM); + return (mPlatform == HippoGridInfo::PLATFORM_OPENSIM || mPlatform == HippoGridInfo::PLATFORM_AURORA); } bool HippoGridInfo::isAurora() const diff --git a/indra/newview/hippolimits.cpp b/indra/newview/hippolimits.cpp index c5aa2c7b1..2ee9a7344 100644 --- a/indra/newview/hippolimits.cpp +++ b/indra/newview/hippolimits.cpp @@ -52,9 +52,9 @@ void HippoLimits::setAuroraLimits() { mMaxAgentGroups = gHippoGridManager->getConnectedGrid()->getMaxAgentGroups(); if (mMaxAgentGroups < 0) mMaxAgentGroups = 50; - mMaxPrimScale = 256.0f; + mMaxPrimScale = 8192.0f; mMinPrimScale = 0.001f; - mMaxHeight = 8192.0f; + mMaxHeight = 10000.0f; mMinHoleSize = 0.001f; mMaxHollow = 99.0f; } diff --git a/indra/newview/llfloatercustomize.cpp b/indra/newview/llfloatercustomize.cpp index 9a61ff470..f46daa693 100644 --- a/indra/newview/llfloatercustomize.cpp +++ b/indra/newview/llfloatercustomize.cpp @@ -50,7 +50,6 @@ #include "llscrollcontainer.h" #include "llscrollingpanelparam.h" #include "llsliderctrl.h" -#include "lltabcontainervertical.h" #include "llviewerwindow.h" #include "llinventoryfunctions.h" #include "llinventoryobserver.h" diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h index 747a3ffb5..512a9979e 100644 --- a/indra/newview/llfloaterpreference.h +++ b/indra/newview/llfloaterpreference.h @@ -40,7 +40,6 @@ #define LL_LLFLOATERPREFERENCE_H #include "llfloater.h" -#include "lltabcontainervertical.h" class HippoPanelGrids; class LLPanelGeneral; diff --git a/indra/newview/llmaniptranslate.cpp b/indra/newview/llmaniptranslate.cpp index 2394b1ffa..c7e31fd45 100644 --- a/indra/newview/llmaniptranslate.cpp +++ b/indra/newview/llmaniptranslate.cpp @@ -61,6 +61,7 @@ #include "llworld.h" #include "llui.h" #include "pipeline.h" +#include "hippogridmanager.h" // [RLVa:KB] #include "rlvhandler.h" @@ -540,6 +541,9 @@ BOOL LLManipTranslate::handleHover(S32 x, S32 y, MASK mask) { F32 max_drag_distance = gSavedSettings.getF32("MaxDragDistance"); + if (gHippoGridManager->getConnectedGrid()->isAurora()) + max_drag_distance = llmin(10000.f, max_drag_distance); + if (relative_move.magVecSquared() > max_drag_distance * max_drag_distance) { lldebugst(LLERR_USER_INPUT) << "hover handled by LLManipTranslate (too far)" << llendl; diff --git a/indra/newview/llpanelavatar.cpp b/indra/newview/llpanelavatar.cpp index ef3bb65f4..f5792ae86 100644 --- a/indra/newview/llpanelavatar.cpp +++ b/indra/newview/llpanelavatar.cpp @@ -69,7 +69,6 @@ #include "llscrolllistctrl.h" #include "llstatusbar.h" #include "lltabcontainer.h" -#include "lltabcontainervertical.h" #include "llimview.h" #include "lltooldraganddrop.h" #include "lluiconstants.h" diff --git a/indra/newview/llpanelclassified.cpp b/indra/newview/llpanelclassified.cpp index 1d3e50360..2ec1ac0eb 100644 --- a/indra/newview/llpanelclassified.cpp +++ b/indra/newview/llpanelclassified.cpp @@ -56,7 +56,6 @@ #include "lllineeditor.h" #include "llfloateravatarinfo.h" #include "llfloaterclassified.h" -#include "lltabcontainervertical.h" #include "lltextbox.h" #include "llcombobox.h" #include "llviewertexteditor.h" diff --git a/indra/newview/llpanelpick.cpp b/indra/newview/llpanelpick.cpp index 7bcb0eb31..da0b9a546 100644 --- a/indra/newview/llpanelpick.cpp +++ b/indra/newview/llpanelpick.cpp @@ -47,7 +47,6 @@ #include "llcheckboxctrl.h" #include "llviewercontrol.h" #include "lllineeditor.h" -#include "lltabcontainervertical.h" #include "lltextbox.h" #include "llviewertexteditor.h" #include "lltexturectrl.h" diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp index 35368b602..2bf44165e 100644 --- a/indra/newview/llpanelprofile.cpp +++ b/indra/newview/llpanelprofile.cpp @@ -47,16 +47,7 @@ static const std::string PANEL_PICKS = "panel_picks"; std::string getProfileURL(const std::string& agent_name) { - std::string url; - - if (gHippoGridManager->getConnectedGrid()->isInProductionGrid()) - { - url = gSavedSettings.getString("WebProfileURL"); - } - else - { - url = gSavedSettings.getString("WebProfileNonProductionURL"); - } + std::string url = gSavedSettings.getString("WebProfileURL"); LLSD subs; subs["AGENT_NAME"] = agent_name; url = LLWeb::expandURLSubstitutions(url,subs); diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index c8ccdb5bd..521c5e4f0 100644 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -4270,6 +4270,18 @@ bool process_login_success_response(std::string& password) gSavedSettings.setString("MapServerURL", map_server_url); LLWorldMap::gotMapServerURL(true); } + + if(gHippoGridManager->getConnectedGrid()->isOpenSimulator()) + { + std::string web_profile_url = response["web_profile_url"]; + if(!web_profile_url.empty()) + gSavedSettings.setString("WebProfileURL", web_profile_url); + } + else if(!gHippoGridManager->getConnectedGrid()->isInProductionGrid()) + { + gSavedSettings.setString("WebProfileURL", "https://my-demo.secondlife.com/[AGENT_NAME]"); + } + // Initial outfit for the user. LLSD initial_outfit = response["initial-outfit"][0]; if(initial_outfit.size()) diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index ac05dc40f..af189265e 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -858,6 +858,7 @@ void init_menus() menu->setCanTearOff(TRUE); init_client_menu(menu); gMenuBarView->addChild( menu ); + rlvMenuToggleVisible(); menu = new LLMenuGL(SERVER_MENU_NAME); menu->setCanTearOff(TRUE); @@ -1062,15 +1063,13 @@ void init_client_menu(LLMenuGL* menu) // [RLVa:KB] - Checked: 2009-07-08 (RLVa-1.0.0e) | Modified: RLVa-0.2.1b | OK #ifdef RLV_ADVANCED_MENU - if (rlv_handler_t::isEnabled()) - { - sub_menu = new LLMenuGL("RLVa"); - sub_menu->setCanTearOff(TRUE); - init_debug_rlva_menu(sub_menu); - menu->addChild(sub_menu); - sub_menu->setVisible(rlv_handler_t::isEnabled()); - sub_menu->setEnabled(rlv_handler_t::isEnabled()); - } + sub_menu = new LLMenuGL("RLVa Embedded"); + init_debug_rlva_menu(sub_menu); + menu->addChild(sub_menu); + // Top Level Menu as well + sub_menu = new LLMenuGL("RLVa Main"); + init_debug_rlva_menu(sub_menu); + gMenuBarView->addChild(sub_menu); #endif // RLV_ADVANCED_MENU // [/RLVa:KB] @@ -1695,6 +1694,9 @@ void init_debug_avatar_menu(LLMenuGL* menu) // [RLVa:KB] - Checked: 2009-11-17 (RLVa-1.1.0d) | Modified: RLVa-1.1.0d | OK void init_debug_rlva_menu(LLMenuGL* menu) { + menu->setLabel(std::string("RLVa")); // Same menu, same label + menu->setCanTearOff(true); + // Debug options { LLMenuGL* pDbgMenu = new LLMenuGL("Debug"); diff --git a/indra/newview/rlvcommon.cpp b/indra/newview/rlvcommon.cpp index 4a4e1ff81..2f01d4a84 100644 --- a/indra/newview/rlvcommon.cpp +++ b/indra/newview/rlvcommon.cpp @@ -129,6 +129,8 @@ void RlvSettings::initClass() if (gSavedSettings.controlExists(RLV_SETTING_AVATAROFFSET_Z)) gSavedSettings.getControl(RLV_SETTING_AVATAROFFSET_Z)->getSignal()->connect(boost::bind(&onChangedAvatarOffset, _2)); + if (gSavedSettings.controlExists(RLV_SETTING_TOPLEVELMENU)) + gSavedSettings.getControl(RLV_SETTING_TOPLEVELMENU)->getSignal()->connect(boost::bind(&onChangedMenuLevel)); fInitialized = true; } } @@ -155,6 +157,14 @@ bool RlvSettings::onChangedAvatarOffset(const LLSD& sdValue) gAgent.sendAgentSetAppearance(); return true; } +// Checked: 2011-08-16 (RLVa-1.4.0b) | Added: RLVa-1.4.0b +bool RlvSettings::onChangedMenuLevel() +{ + rlvMenuToggleVisible(); + return true; +} + +// Checked: 2010-02-27 (RLVa-1.2.0a) | Added: RLVa-1.1.0i bool RlvSettings::onChangedSettingBOOL(const LLSD& sdValue, bool* pfSetting) { if (pfSetting) @@ -526,6 +536,36 @@ void rlvMenuToggleEnabled(void*) return; } +// Checked: 2011-08-16 (RLVa-1.4.0b) | Added: RLVa-1.4.0b +void rlvMenuToggleVisible() +{ + bool fTopLevel = rlvGetSetting(RLV_SETTING_TOPLEVELMENU, true); + bool fRlvEnabled = rlv_handler_t::isEnabled(); + + //LLMenuGL* pRLVaMenuMain = gMenuBarView->getChildMenuByName("RLVa Main", FALSE); + // RELEASE-RLVa: LL defines CLIENT_MENU_NAME but we can't get to it from here so we need to keep those two in sync manually + LLMenuGL* pAdvancedMenu = gMenuBarView->getChildMenuByName("Advanced", FALSE); + //LLMenuGL* pRLVaMenuEmbed = pAdvancedMenu->getChildMenuByName("RLVa Embedded", FALSE); + + gMenuBarView->setItemVisible("RLVa Main", (fRlvEnabled) && (fTopLevel)); + if (!pAdvancedMenu) return; + pAdvancedMenu->setItemVisible("RLVa Embedded", (fRlvEnabled) && (!fTopLevel)); + + /* Singu Note: In the future when we have advanced menu in xml, we will want to use this to move the menu. + if ( (rlv_handler_t::isEnabled()) && (pRLVaMenuMain) && (pRLVaMenuEmbed) && + ( ((fTopLevel) && (1 == pRLVaMenuMain->getItemCount())) || ((!fTopLevel) && (1 == pRLVaMenuEmbed->getItemCount())) ) ) + { + LLMenuGL* pMenuFrom = (fTopLevel) ? pRLVaMenuEmbed : pRLVaMenuMain; + LLMenuGL* pMenuTo = (fTopLevel) ? pRLVaMenuMain : pRLVaMenuEmbed; + while (LLMenuItemGL* pItem = pMenuFrom->getItem(1)) + { + pMenuFrom->removeChild(pItem); + pMenuTo->addChild(pItem); + pItem->updateBranchParent(pMenuTo); + } + }*/ +} + bool RlvEnableIfNot::handleEvent(LLPointer, const LLSD& userdata) { bool fEnable = true; diff --git a/indra/newview/rlvcommon.h b/indra/newview/rlvcommon.h index e44c06f57..463b6f17d 100644 --- a/indra/newview/rlvcommon.h +++ b/indra/newview/rlvcommon.h @@ -198,7 +198,7 @@ typedef bool (RlvCommandHandler::*rlvCommandHandler)(const RlvCommand& rlvCmd, E BOOL rlvMenuCheckEnabled(void*); void rlvMenuToggleEnabled(void*); -//void rlvMenuToggleVisible(void*); +void rlvMenuToggleVisible(); //bool rlvMenuEnableIfNot(const LLSD& sdParam); class RlvEnableIfNot : public LLMemberListener { diff --git a/indra/newview/rlvhandler.cpp b/indra/newview/rlvhandler.cpp index 9da50b526..71ed40b0a 100644 --- a/indra/newview/rlvhandler.cpp +++ b/indra/newview/rlvhandler.cpp @@ -1054,14 +1054,6 @@ BOOL RlvHandler::setEnabled(BOOL fEnable) RlvUIEnabler::getInstance(); } - // RELEASE-RLVa: LL defines CLIENT_MENU_NAME but we can't get to it from here so we need to keep those two in sync manually - LLMenuGL* pClientMenu = NULL; - if ( (gMenuBarView) && ((pClientMenu = gMenuBarView->getChildMenuByName("Advanced", FALSE)) != NULL) ) - { - pClientMenu->setItemVisible("RLVa", m_fEnabled); - pClientMenu->setItemEnabled("RLVa", m_fEnabled); - } - return m_fEnabled; // Return enabled/disabled state } diff --git a/indra/newview/skins/default/xui/en-us/floater_inventory.xml b/indra/newview/skins/default/xui/en-us/floater_inventory.xml index 28da7d9a7..d06bc23ba 100644 --- a/indra/newview/skins/default/xui/en-us/floater_inventory.xml +++ b/indra/newview/skins/default/xui/en-us/floater_inventory.xml @@ -11,8 +11,10 @@