diff --git a/indra/llui/llcommandmanager.cpp b/indra/llui/llcommandmanager.cpp index 9ce7533e1b..1b87f20d12 100644 --- a/indra/llui/llcommandmanager.cpp +++ b/indra/llui/llcommandmanager.cpp @@ -152,7 +152,7 @@ bool LLCommandManager::load() if (!commandsParams.validateBlock()) { - llerrs << "Unable to validate commands param block from file: " << commands_file << llendl; + llerrs << "Invalid commands file: " << commands_file << llendl; return false; } diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index c28bcc2ec9..cc49238a0b 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -840,9 +840,9 @@ void LLFloater::applyRectControl() if (mRectControl.size() > 1) { const LLRect& rect = getControlGroup()->getRect(mRectControl); - if (rect.getWidth() > 0 && rect.getHeight() > 0) + if (rect.notEmpty()) { - translate( rect.mLeft - getRect().mLeft, rect.mBottom - getRect().mBottom); + setOrigin(rect.mLeft, rect.mBottom); if (mResizable) { reshape(llmax(mMinWidth, rect.getWidth()), llmax(mMinHeight, rect.getHeight())); diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml index ae8471aa15..dab57d44bd 100644 --- a/indra/newview/app_settings/commands.xml +++ b/indra/newview/app_settings/commands.xml @@ -37,6 +37,8 @@ tooltip_ref="Command_Build_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="build" + is_enabled_function="Agent.IsActionAllowed" + is_enabled_parameters="build" is_running_function="Floater.IsOpen" is_running_parameters="build" /> @@ -207,6 +209,8 @@ tooltip_ref="Command_Speak_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="speak" + is_enabled_function="Agent.IsActionAllowed" + is_enabled_parameters="speak" is_running_function="Floater.IsOpen" is_running_parameters="speak" /> diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 092e69952c..aa2ff646a8 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -4246,7 +4246,7 @@ Type Boolean Value - 0 + 1 InventoryDisplayOutbox diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp index ba42126985..ed29ac7960 100755 --- a/indra/newview/llagent.cpp +++ b/indra/newview/llagent.cpp @@ -71,6 +71,7 @@ #include "lltoolpie.h" #include "lltoolmgr.h" #include "lltrans.h" +#include "lluictrl.h" #include "llurlentry.h" #include "llviewercontrol.h" #include "llviewerdisplay.h" @@ -152,6 +153,34 @@ bool handleSlowMotionAnimation(const LLSD& newvalue) return true; } +// static +void LLAgent::parcelChangedCallback() +{ + bool can_edit = LLToolMgr::getInstance()->canEdit(); + + gAgent.mCanEditParcel = can_edit; +} + +// static +bool LLAgent::isActionAllowed(const LLSD& sdname) +{ + bool retval = false; + + const std::string& param = sdname.asString(); + + if (param == "build") + { + retval = gAgent.canEditParcel(); + } + else if (param == "speak") + { + retval = true; + } + + return retval; +} + + // ************************************************************ // Enabled this definition to compile a 'hacked' viewer that // locally believes the end user has godlike powers. @@ -183,6 +212,7 @@ LLAgent::LLAgent() : mbTeleportKeepsLookAt(false), mAgentAccess(new LLAgentAccess(gSavedSettings)), + mCanEditParcel(false), mTeleportSourceSLURL(new LLSLURL), mTeleportState( TELEPORT_NONE ), mRegionp(NULL), @@ -246,6 +276,10 @@ LLAgent::LLAgent() : mListener.reset(new LLAgentListener(*this)); mMoveTimer.stop(); + + LLViewerParcelMgr::getInstance()->addAgentParcelChangedCallback(boost::bind(&LLAgent::parcelChangedCallback)); + + LLUICtrl::EnableCallbackRegistry::currentRegistrar().add("Agent.IsActionAllowed", boost::bind(&LLAgent::isActionAllowed, _2)); } // Requires gSavedSettings to be initialized. @@ -3361,7 +3395,14 @@ bool LLAgent::teleportCore(bool is_local) LLFloaterReg::hideInstance("region_info"); // minimize the Search floater (STORM-1474) - LLFloaterReg::getInstance("search")->setMinimized(TRUE); + { + LLFloater* instance = LLFloaterReg::getInstance("search"); + + if (instance && instance->getVisible()) + { + instance->setMinimized(TRUE); + } + } LLViewerParcelMgr::getInstance()->deselectLand(); LLViewerMediaFocus::getInstance()->clearFocus(); diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h index 5e23ced424..1775a0235c 100644 --- a/indra/newview/llagent.h +++ b/indra/newview/llagent.h @@ -575,6 +575,15 @@ private: ** ** *******************************************************************************/ + // Build +public: + bool canEditParcel() const { return mCanEditParcel; } +private: + bool mCanEditParcel; + + static bool isActionAllowed(const LLSD& sdname); + static void parcelChangedCallback(); + /******************************************************************************** ** ** ** ACCESS diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index 13dbc5e386..41b4dc01e8 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -1488,7 +1488,8 @@ void LLViewerMedia::setOpenIDCookie() new LLViewerMediaWebProfileResponder(raw_profile_url.getAuthority()), headers); - doOnetimeEarlyHTTPRequests(); + // FUI: No longer perform the user_status query + //doOnetimeEarlyHTTPRequests(); } } diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml index a98ef58f50..0e4b354e0d 100644 --- a/indra/newview/skins/default/textures/textures.xml +++ b/indra/newview/skins/default/textures/textures.xml @@ -125,29 +125,29 @@ with the same filename but different name - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + diff --git a/indra/newview/skins/default/textures/toolbar_icons/appearance.png b/indra/newview/skins/default/textures/toolbar_icons/appearance.png new file mode 100644 index 0000000000..e6b1365388 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/appearance.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/avatars.png b/indra/newview/skins/default/textures/toolbar_icons/avatars.png new file mode 100644 index 0000000000..8fa0600cee Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/avatars.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/build.png b/indra/newview/skins/default/textures/toolbar_icons/build.png new file mode 100644 index 0000000000..e21ab3f0e4 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/build.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/chat.png b/indra/newview/skins/default/textures/toolbar_icons/chat.png new file mode 100644 index 0000000000..e0dbac495f Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/chat.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/destinations.png b/indra/newview/skins/default/textures/toolbar_icons/destinations.png new file mode 100644 index 0000000000..e2325f083a Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/destinations.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/gestures.png b/indra/newview/skins/default/textures/toolbar_icons/gestures.png new file mode 100644 index 0000000000..2404bb4e25 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/gestures.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/howto.png b/indra/newview/skins/default/textures/toolbar_icons/howto.png new file mode 100644 index 0000000000..8594d71113 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/howto.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/inventory.png b/indra/newview/skins/default/textures/toolbar_icons/inventory.png new file mode 100644 index 0000000000..ab3191255e Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/inventory.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/land.png b/indra/newview/skins/default/textures/toolbar_icons/land.png new file mode 100644 index 0000000000..89ea7604a4 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/land.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/map.png b/indra/newview/skins/default/textures/toolbar_icons/map.png new file mode 100644 index 0000000000..ed1049b7db Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/map.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/marketplace.png b/indra/newview/skins/default/textures/toolbar_icons/marketplace.png new file mode 100644 index 0000000000..62bad20be6 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/marketplace.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/mini_map.png b/indra/newview/skins/default/textures/toolbar_icons/mini_map.png new file mode 100644 index 0000000000..b66af223bb Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/mini_map.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/move.png b/indra/newview/skins/default/textures/toolbar_icons/move.png new file mode 100644 index 0000000000..5854110782 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/move.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/nearbyvoice.png b/indra/newview/skins/default/textures/toolbar_icons/nearbyvoice.png new file mode 100644 index 0000000000..5bdcb22aa5 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/nearbyvoice.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/people.png b/indra/newview/skins/default/textures/toolbar_icons/people.png new file mode 100644 index 0000000000..7228ae8e2f Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/people.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/places.png b/indra/newview/skins/default/textures/toolbar_icons/places.png new file mode 100644 index 0000000000..97d9fa066c Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/places.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/preferences.png b/indra/newview/skins/default/textures/toolbar_icons/preferences.png new file mode 100644 index 0000000000..df80d926b5 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/preferences.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/profile.png b/indra/newview/skins/default/textures/toolbar_icons/profile.png new file mode 100644 index 0000000000..32fe2bf8ac Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/profile.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/search.png b/indra/newview/skins/default/textures/toolbar_icons/search.png new file mode 100644 index 0000000000..bcb11e950d Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/search.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/snapshot.png b/indra/newview/skins/default/textures/toolbar_icons/snapshot.png new file mode 100644 index 0000000000..d26da9b1d2 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/snapshot.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/speak.png b/indra/newview/skins/default/textures/toolbar_icons/speak.png new file mode 100644 index 0000000000..10cd354c5c Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/speak.png differ diff --git a/indra/newview/skins/default/textures/toolbar_icons/view.png b/indra/newview/skins/default/textures/toolbar_icons/view.png new file mode 100644 index 0000000000..5425af87e0 Binary files /dev/null and b/indra/newview/skins/default/textures/toolbar_icons/view.png differ diff --git a/indra/newview/skins/default/xui/en/main_view.xml b/indra/newview/skins/default/xui/en/main_view.xml index cf566d7d23..57baa7cdd3 100644 --- a/indra/newview/skins/default/xui/en/main_view.xml +++ b/indra/newview/skins/default/xui/en/main_view.xml @@ -90,15 +90,6 @@ top="0" visible="false" width="1024"/> -