diff options
author | Leslie Linden <leslie@lindenlab.com> | 2011-11-15 11:19:57 -0800 |
---|---|---|
committer | Leslie Linden <leslie@lindenlab.com> | 2011-11-15 11:19:57 -0800 |
commit | 52bc69c0bee59631d63680ed19a89d3a116d954b (patch) | |
tree | 6bd34e384eec519eedc40e10aa345d701bc44584 | |
parent | 76caf0238cb98c1abf69d56e122c71a1208b0d72 (diff) | |
parent | a787e1bb7aad25f9488de7d93298b58820c948d5 (diff) |
Merge from viewer-experience
-rw-r--r-- | .hgtags | 9 | ||||
-rw-r--r-- | indra/llcommon/llversionviewer.h | 2 | ||||
-rw-r--r-- | indra/llui/llfloater.cpp | 69 | ||||
-rw-r--r-- | indra/llui/llfloater.h | 1 | ||||
-rwxr-xr-x | indra/newview/app_settings/settings.xml | 2 | ||||
-rw-r--r-- | indra/newview/llurldispatcher.cpp | 4 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/panel_preferences_setup.xml | 2 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/ru/floater_destinations.xml | 2 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/ru/strings.xml | 2 |
9 files changed, 48 insertions, 45 deletions
@@ -213,5 +213,14 @@ e440cd1dfbd128d7d5467019e497f7f803640ad6 3.2.0-beta1 9bcc2b7176634254e501e3fb4c5b56c1f637852e 3.2.0-beta2 2a13d30ee50ccfed50268238e36bb90d738ccc9e DRTVWR-98_3.2.0-beta3 2a13d30ee50ccfed50268238e36bb90d738ccc9e 3.2.0-beta3 +3150219d229d628f0c15e58e8a51511cbd97e58d DRTVWR-94_3.2.0-release +3150219d229d628f0c15e58e8a51511cbd97e58d 3.2.0-release c4911ec8cd81e676dfd2af438b3e065407a94a7a 3.2.1-start 40b46edba007d15d0059c80864b708b99c1da368 3.2.2-start +3150219d229d628f0c15e58e8a51511cbd97e58d DRTVWR-94_3.2.0-release +3150219d229d628f0c15e58e8a51511cbd97e58d 3.2.0-release +9e390d76807fa70d356b8716fb83b8ce42a629ef DRTVWR-100_3.2.1-beta1 +9e390d76807fa70d356b8716fb83b8ce42a629ef 3.2.1-beta1 +523df3e67378541498d516d52af4402176a26bac DRTVWR-102_3.2.2-beta1 +523df3e67378541498d516d52af4402176a26bac 3.2.2-beta1 +80f3e30d8aa4d8f674a48bd742aaa6d8e9eae0b5 3.2.3-start diff --git a/indra/llcommon/llversionviewer.h b/indra/llcommon/llversionviewer.h index b31fd1f8ae..b50405421d 100644 --- a/indra/llcommon/llversionviewer.h +++ b/indra/llcommon/llversionviewer.h @@ -29,7 +29,7 @@ const S32 LL_VERSION_MAJOR = 3; const S32 LL_VERSION_MINOR = 2; -const S32 LL_VERSION_PATCH = 3; +const S32 LL_VERSION_PATCH = 4; const S32 LL_VERSION_BUILD = 0; const char * const LL_CHANNEL = "Second Life Developer"; diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index 432397d3e9..c5d7d1db56 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -58,6 +58,8 @@ #include "llhelp.h" #include "llmultifloater.h" #include "llsdutil.h" +#include <boost/foreach.hpp> + // use this to control "jumping" behavior when Ctrl-Tabbing const S32 TABBED_FLOATER_OFFSET = 0; @@ -2163,8 +2165,15 @@ LLFloaterView::LLFloaterView (const Params& p) // By default, adjust vertical. void LLFloaterView::reshape(S32 width, S32 height, BOOL called_from_parent) { - S32 old_width = getRect().getWidth(); - S32 old_height = getRect().getHeight(); + S32 old_right = mLastSnapRect.mRight; + S32 old_top = mLastSnapRect.mTop; + + LLView::reshape(width, height, called_from_parent); + + S32 new_right = getSnapRect().mRight; + S32 new_top = getSnapRect().mTop; + + mLastSnapRect = getSnapRect(); for ( child_list_const_iter_t child_it = getChildList()->begin(); child_it != getChildList()->end(); ++child_it) { @@ -2176,62 +2185,40 @@ void LLFloaterView::reshape(S32 width, S32 height, BOOL called_from_parent) continue; } - // Make if follow the edge it is closest to - U32 follow_flags = 0x0; - - if (floaterp->isMinimized()) - { - follow_flags |= (FOLLOWS_LEFT | FOLLOWS_TOP); - } - else + if (!floaterp->isMinimized()) { LLRect r = floaterp->getRect(); // Compute absolute distance from each edge of screen S32 left_offset = llabs(r.mLeft - 0); - S32 right_offset = llabs(old_width - r.mRight); + S32 right_offset = llabs(old_right - r.mRight); - S32 top_offset = llabs(old_height - r.mTop); + S32 top_offset = llabs(old_top - r.mTop); S32 bottom_offset = llabs(r.mBottom - 0); + S32 translate_x = 0; + S32 translate_y = 0; - if (left_offset < right_offset) + if (left_offset > right_offset) { - follow_flags |= FOLLOWS_LEFT; - } - else - { - follow_flags |= FOLLOWS_RIGHT; + translate_x = new_right - old_right; } - // "No vertical adjustment" usually means that the bottom of the view - // has been pushed up or down. Hence we want the floaters to follow - // the top. if (top_offset < bottom_offset) { - follow_flags |= FOLLOWS_TOP; + translate_y = new_top - old_top; } - else - { - follow_flags |= FOLLOWS_BOTTOM; - } - } - floaterp->setFollows(follow_flags); - - //RN: all dependent floaters copy follow behavior of "parent" - for(LLFloater::handle_set_iter_t dependent_it = floaterp->mDependents.begin(); - dependent_it != floaterp->mDependents.end(); ++dependent_it) - { - LLFloater* dependent_floaterp = dependent_it->get(); - if (dependent_floaterp) + floaterp->translate(translate_x, translate_y); + BOOST_FOREACH(LLHandle<LLFloater> dependent_floater, floaterp->mDependents) { - dependent_floaterp->setFollows(follow_flags); + if (dependent_floater.get()) + { + dependent_floater.get()->translate(translate_x, translate_y); + } } } } - - LLView::reshape(width, height, called_from_parent); } @@ -2631,6 +2618,12 @@ void LLFloaterView::shiftFloaters(S32 x_offset, S32 y_offset) void LLFloaterView::refresh() { + LLRect snap_rect = getSnapRect(); + if (snap_rect != mLastSnapRect) + { + reshape(getRect().getWidth(), getRect().getHeight(), TRUE); + } + // Constrain children to be entirely on the screen for ( child_list_const_iter_t child_it = getChildList()->begin(); child_it != getChildList()->end(); ++child_it) { diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h index 73e9c9e831..4e8c539144 100644 --- a/indra/llui/llfloater.h +++ b/indra/llui/llfloater.h @@ -537,6 +537,7 @@ public: private: void hiddenFloaterClosed(LLFloater* floater); + LLRect mLastSnapRect; LLHandle<LLView> mSnapView; BOOL mFocusCycleMode; S32 mSnapOffsetBottom; diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index bc6c63985f..a7dabeb563 100755 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -12277,7 +12277,7 @@ <key>Type</key> <string>Boolean</string> <key>Value</key> - <integer>1</integer> + <boolean>1</boolean> </map> <key>UseFreezeFrame</key> <map> diff --git a/indra/newview/llurldispatcher.cpp b/indra/newview/llurldispatcher.cpp index f6d7ceeec3..4240a38326 100644 --- a/indra/newview/llurldispatcher.cpp +++ b/indra/newview/llurldispatcher.cpp @@ -167,9 +167,9 @@ bool LLURLDispatcherImpl::dispatchApp(const LLSLURL& slurl, // static bool LLURLDispatcherImpl::dispatchRegion(const LLSLURL& slurl, const std::string& nav_type, bool right_mouse) { - if(slurl.getType() != LLSLURL::LOCATION) + if(slurl.getType() != LLSLURL::LOCATION) { - return false; + return false; } // Before we're logged in, need to update the startup screen // to tell the user where they are going. 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 a7078ce2e1..4aeea8823e 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_setup.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_setup.xml @@ -122,7 +122,7 @@ layout="topleft" left_delta="0" name="external" - value="1" + value="true" top="0" tool_tip="Use the default system web browser for help, web links, etc. Not recommended if running full screen." width="480" /> diff --git a/indra/newview/skins/default/xui/ru/floater_destinations.xml b/indra/newview/skins/default/xui/ru/floater_destinations.xml index e769812beb..bb068c8125 100644 --- a/indra/newview/skins/default/xui/ru/floater_destinations.xml +++ b/indra/newview/skins/default/xui/ru/floater_destinations.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Destinations" title="МЕСТА"/> +<floater name="Destinations" title="ПУНКТЫ"/> diff --git a/indra/newview/skins/default/xui/ru/strings.xml b/indra/newview/skins/default/xui/ru/strings.xml index df657b39c6..89a2c2543d 100644 --- a/indra/newview/skins/default/xui/ru/strings.xml +++ b/indra/newview/skins/default/xui/ru/strings.xml @@ -4794,7 +4794,7 @@ support@secondlife.com. Компас </string> <string name="Command_Destinations_Label"> - Места + Пункты </string> <string name="Command_Gestures_Label"> Жесты |