summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/llui/lltabcontainer.cpp16
-rw-r--r--indra/llui/lltabcontainer.h2
-rw-r--r--indra/newview/app_settings/settings.xml12
-rw-r--r--indra/newview/llappviewer.cpp18
-rw-r--r--indra/newview/llappviewer.h2
-rw-r--r--indra/newview/llfloaterimcontainer.cpp10
-rw-r--r--indra/newview/llfloaterland.cpp7
-rw-r--r--indra/newview/llfloaterworldmap.cpp4
-rw-r--r--indra/newview/llinventoryfilter.cpp11
-rw-r--r--indra/newview/llpanelplaces.cpp4
-rw-r--r--indra/newview/llpanelprimmediacontrols.cpp11
-rw-r--r--indra/newview/llsidepanelappearance.cpp5
-rw-r--r--indra/newview/llstartup.cpp17
-rw-r--r--indra/newview/llviewerparcelmgr.cpp2
-rw-r--r--indra/newview/llvovolume.cpp4
-rw-r--r--indra/newview/llwlanimator.cpp21
-rw-r--r--indra/newview/pipeline.cpp2
-rw-r--r--indra/newview/skins/default/xui/en/floater_about_land.xml4
-rw-r--r--indra/newview/skins/default/xui/en/floater_scene_load_stats.xml1
-rw-r--r--indra/newview/skins/default/xui/en/floater_stats.xml1
-rw-r--r--indra/newview/skins/default/xui/en/menu_gesture_gear.xml3
-rw-r--r--indra/newview/skins/default/xui/en/panel_outfits_inventory.xml3
-rw-r--r--indra/newview/skins/default/xui/en/strings.xml4
-rw-r--r--scripts/content_tools/anim_tool.py18
24 files changed, 113 insertions, 69 deletions
diff --git a/indra/llui/lltabcontainer.cpp b/indra/llui/lltabcontainer.cpp
index 701a06a085..1b2f09cff5 100644
--- a/indra/llui/lltabcontainer.cpp
+++ b/indra/llui/lltabcontainer.cpp
@@ -210,6 +210,7 @@ LLTabContainer::Params::Params()
label_pad_left("label_pad_left"),
tab_position("tab_position"),
hide_tabs("hide_tabs", false),
+ hide_scroll_arrows("hide_scroll_arrows", false),
tab_padding_right("tab_padding_right"),
first_tab("first_tab"),
middle_tab("middle_tab"),
@@ -240,6 +241,7 @@ LLTabContainer::LLTabContainer(const LLTabContainer::Params& p)
mPrevArrowBtn(NULL),
mNextArrowBtn(NULL),
mIsVertical( p.tab_position == LEFT ),
+ mHideScrollArrows(p.hide_scroll_arrows),
// Horizontal Specific
mJumpPrevArrowBtn(NULL),
mJumpNextArrowBtn(NULL),
@@ -409,7 +411,7 @@ void LLTabContainer::draw()
setScrollPosPixels((S32)lerp((F32)getScrollPosPixels(), (F32)target_pixel_scroll, LLSmoothInterpolation::getInterpolant(0.08f)));
- BOOL has_scroll_arrows = !getTabsHidden() && ((mMaxScrollPos > 0) || (mScrollPosPixels > 0));
+ BOOL has_scroll_arrows = !mHideScrollArrows && !getTabsHidden() && ((mMaxScrollPos > 0) || (mScrollPosPixels > 0));
if (!mIsVertical)
{
mJumpPrevArrowBtn->setVisible( has_scroll_arrows );
@@ -517,7 +519,7 @@ BOOL LLTabContainer::handleMouseDown( S32 x, S32 y, MASK mask )
{
static LLUICachedControl<S32> tabcntrv_pad ("UITabCntrvPad", 0);
BOOL handled = FALSE;
- BOOL has_scroll_arrows = (getMaxScrollPos() > 0) && !getTabsHidden();
+ BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0) && !getTabsHidden();
if (has_scroll_arrows)
{
@@ -591,7 +593,7 @@ BOOL LLTabContainer::handleMouseDown( S32 x, S32 y, MASK mask )
BOOL LLTabContainer::handleHover( S32 x, S32 y, MASK mask )
{
BOOL handled = FALSE;
- BOOL has_scroll_arrows = (getMaxScrollPos() > 0) && !getTabsHidden();
+ BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0) && !getTabsHidden();
if (has_scroll_arrows)
{
@@ -633,7 +635,7 @@ BOOL LLTabContainer::handleHover( S32 x, S32 y, MASK mask )
BOOL LLTabContainer::handleMouseUp( S32 x, S32 y, MASK mask )
{
BOOL handled = FALSE;
- BOOL has_scroll_arrows = (getMaxScrollPos() > 0) && !getTabsHidden();
+ BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0) && !getTabsHidden();
S32 local_x = x - getRect().mLeft;
S32 local_y = y - getRect().mBottom;
@@ -701,7 +703,7 @@ BOOL LLTabContainer::handleToolTip( S32 x, S32 y, MASK mask)
{
LLTabTuple* firsttuple = getTab(0);
- BOOL has_scroll_arrows = (getMaxScrollPos() > 0);
+ BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0);
LLRect clip;
if (mIsVertical)
{
@@ -826,7 +828,7 @@ BOOL LLTabContainer::handleKeyHere(KEY key, MASK mask)
// virtual
BOOL LLTabContainer::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, EDragAndDropType type, void* cargo_data, EAcceptance *accept, std::string &tooltip)
{
- BOOL has_scroll_arrows = (getMaxScrollPos() > 0);
+ BOOL has_scroll_arrows = !mHideScrollArrows && (getMaxScrollPos() > 0);
if(mOpenTabsOnDragAndDrop && !getTabsHidden())
{
@@ -1543,7 +1545,7 @@ BOOL LLTabContainer::setTab(S32 which)
is_visible = FALSE;
}
}
- else if (getMaxScrollPos() > 0)
+ else if (!mHideScrollArrows && getMaxScrollPos() > 0)
{
if( i < getScrollPos() )
{
diff --git a/indra/llui/lltabcontainer.h b/indra/llui/lltabcontainer.h
index 057809dc42..4a5f08f5d3 100644
--- a/indra/llui/lltabcontainer.h
+++ b/indra/llui/lltabcontainer.h
@@ -83,6 +83,7 @@ public:
label_pad_left;
Optional<bool> hide_tabs;
+ Optional<bool> hide_scroll_arrows;
Optional<S32> tab_padding_right;
Optional<TabParams> first_tab,
@@ -262,6 +263,7 @@ private:
S32 mCurrentTabIdx;
BOOL mTabsHidden;
+ BOOL mHideScrollArrows;
BOOL mScrolled;
LLFrameTimer mScrollTimer;
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 9f37c3487e..6d8b642d6f 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -1608,18 +1608,6 @@
<real>60.0</real>
</map>
- <key>CameraAspectRatio</key>
- <map>
- <key>Comment</key>
- <string>Camera aspect ratio for DoF effect</string>
- <key>Persist</key>
- <integer>1</integer>
- <key>Type</key>
- <string>F32</string>
- <key>Value</key>
- <real>1.5</real>
- </map>
-
<key>CertStore</key>
<map>
<key>Comment</key>
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index d0c7d0b72e..038a8e3ff3 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -1235,7 +1235,8 @@ bool LLAppViewer::init()
boost::bind(&LLControlGroup::getU32, boost::ref(gSavedSettings), _1),
boost::bind(&LLControlGroup::declareU32, boost::ref(gSavedSettings), _1, _2, _3, LLControlVariable::PERSIST_ALWAYS));
- showReleaseNotesIfRequired();
+ // TODO: consider moving proxy initialization here or LLCopocedureManager after proxy initialization, may be implement
+ // some other protection to make sure we don't use network before initializng proxy
/*----------------------------------------------------------------------*/
// nat 2016-06-29 moved the following here from the former mainLoop().
@@ -5869,21 +5870,6 @@ void LLAppViewer::launchUpdater()
// LLAppViewer::instance()->forceQuit();
}
-/**
-* Check if user is running a new version of the viewer.
-* Display the Release Notes if it's not overriden by the "UpdaterShowReleaseNotes" setting.
-*/
-void LLAppViewer::showReleaseNotesIfRequired()
-{
- if (LLVersionInfo::getChannelAndVersion() != gLastRunVersion
- && gSavedSettings.getBOOL("UpdaterShowReleaseNotes")
- && !gSavedSettings.getBOOL("FirstLoginThisInstall"))
- {
- LLSD info(getViewerInfo());
- LLWeb::loadURLInternal(info["VIEWER_RELEASE_NOTES_URL"]);
- }
-}
-
//virtual
void LLAppViewer::setMasterSystemAudioMute(bool mute)
{
diff --git a/indra/newview/llappviewer.h b/indra/newview/llappviewer.h
index 948d316009..7bb3c32c51 100644
--- a/indra/newview/llappviewer.h
+++ b/indra/newview/llappviewer.h
@@ -255,8 +255,6 @@ private:
void sendLogoutRequest();
void disconnectViewer();
- void showReleaseNotesIfRequired();
-
// *FIX: the app viewer class should be some sort of singleton, no?
// Perhaps its child class is the singleton and this should be an abstract base.
static LLAppViewer* sInstance;
diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp
index 7039e48e74..7007c58b3c 100644
--- a/indra/newview/llfloaterimcontainer.cpp
+++ b/indra/newview/llfloaterimcontainer.cpp
@@ -1505,15 +1505,21 @@ bool LLFloaterIMContainer::checkContextMenuItem(const std::string& item, uuid_ve
bool LLFloaterIMContainer::visibleContextMenuItem(const LLSD& userdata)
{
+ const LLConversationItem *conversation_item = getCurSelectedViewModelItem();
+ if(!conversation_item)
+ {
+ return false;
+ }
+
const std::string& item = userdata.asString();
if ("show_mute" == item)
{
- return !isMuted(getCurSelectedViewModelItem()->getUUID());
+ return !isMuted(conversation_item->getUUID());
}
else if ("show_unmute" == item)
{
- return isMuted(getCurSelectedViewModelItem()->getUUID());
+ return isMuted(conversation_item->getUUID());
}
return true;
diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp
index 7f952d4dd4..a340cd1143 100644
--- a/indra/newview/llfloaterland.cpp
+++ b/indra/newview/llfloaterland.cpp
@@ -2029,7 +2029,6 @@ void LLPanelLandOptions::refresh()
else
{
// something selected, hooray!
- LLViewerRegion* regionp = LLViewerParcelMgr::getInstance()->getSelectionRegion();
// Display options
BOOL can_change_options = LLViewerParcelMgr::isParcelModifiableByAgent(parcel, GP_LAND_OPTIONS);
@@ -2045,9 +2044,8 @@ void LLPanelLandOptions::refresh()
mCheckGroupObjectEntry ->set( parcel->getAllowGroupObjectEntry() || parcel->getAllowAllObjectEntry());
mCheckGroupObjectEntry ->setEnabled( can_change_options && !parcel->getAllowAllObjectEntry() );
- BOOL region_damage = regionp ? regionp->getAllowDamage() : FALSE;
mCheckSafe ->set( !parcel->getAllowDamage() );
- mCheckSafe ->setEnabled( can_change_options && region_damage );
+ mCheckSafe ->setEnabled( can_change_options );
mCheckFly ->set( parcel->getAllowFly() );
mCheckFly ->setEnabled( can_change_options );
@@ -2127,6 +2125,7 @@ void LLPanelLandOptions::refresh()
// they can see the checkbox, but its disposition depends on the
// state of the region
+ LLViewerRegion* regionp = LLViewerParcelMgr::getInstance()->getSelectionRegion();
if (regionp)
{
if (regionp->getSimAccess() == SIM_ACCESS_PG)
@@ -2448,6 +2447,7 @@ void LLPanelLandAccess::refresh()
mListAccess->deleteAllItems();
S32 count = parcel->mAccessList.size();
getChild<LLUICtrl>("AllowedText")->setTextArg("[COUNT]", llformat("%d",count));
+ getChild<LLUICtrl>("AllowedText")->setTextArg("[MAX]", llformat("%d",PARCEL_MAX_ACCESS_LIST));
getChild<LLUICtrl>("AccessList")->setToolTipArg(LLStringExplicit("[LISTED]"), llformat("%d",count));
getChild<LLUICtrl>("AccessList")->setToolTipArg(LLStringExplicit("[MAX]"), llformat("%d",PARCEL_MAX_ACCESS_LIST));
@@ -2495,6 +2495,7 @@ void LLPanelLandAccess::refresh()
mListBanned->deleteAllItems();
S32 count = parcel->mBanList.size();
getChild<LLUICtrl>("BanCheck")->setTextArg("[COUNT]", llformat("%d",count));
+ getChild<LLUICtrl>("BanCheck")->setTextArg("[MAX]", llformat("%d",PARCEL_MAX_ACCESS_LIST));
getChild<LLUICtrl>("BannedList")->setToolTipArg(LLStringExplicit("[LISTED]"), llformat("%d",count));
getChild<LLUICtrl>("BannedList")->setToolTipArg(LLStringExplicit("[MAX]"), llformat("%d",PARCEL_MAX_ACCESS_LIST));
diff --git a/indra/newview/llfloaterworldmap.cpp b/indra/newview/llfloaterworldmap.cpp
index c67feb8158..c0bd9b1c23 100644
--- a/indra/newview/llfloaterworldmap.cpp
+++ b/indra/newview/llfloaterworldmap.cpp
@@ -546,7 +546,7 @@ void LLFloaterWorldMap::trackAvatar( const LLUUID& avatar_id, const std::string&
// convenience.
if(gAgent.isGodlike())
{
- getChild<LLUICtrl>("spin z")->setValue(LLSD(200.f));
+ getChild<LLUICtrl>("teleport_coordinate_z")->setValue(LLSD(200.f));
}
// Don't re-request info if we already have it or we won't have it in time to teleport
if (mTrackedStatus != LLTracker::TRACKING_AVATAR || name != mTrackedAvatarName)
@@ -1375,7 +1375,7 @@ void LLFloaterWorldMap::teleport()
&& av_tracker.haveTrackingInfo() )
{
pos_global = av_tracker.getGlobalPos();
- pos_global.mdV[VZ] = getChild<LLUICtrl>("spin z")->getValue();
+ pos_global.mdV[VZ] = getChild<LLUICtrl>("teleport_coordinate_z")->getValue();
}
else if ( LLTracker::TRACKING_LANDMARK == tracking_status)
{
diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp
index e995c138b4..1433ea36bf 100644
--- a/indra/newview/llinventoryfilter.cpp
+++ b/indra/newview/llinventoryfilter.cpp
@@ -40,6 +40,7 @@
#include "llinventorybridge.h"
#include "llviewerfoldertype.h"
#include "llradiogroup.h"
+#include "llstartup.h"
// linden library includes
#include "llclipboard.h"
@@ -132,8 +133,10 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const
}
// when applying a filter, matching folders get their contents downloaded first
+ // but make sure we are not interfering with pre-download
if (isNotDefault()
- && !gInventory.isCategoryComplete(folder_id))
+ && !gInventory.isCategoryComplete(folder_id)
+ && LLStartUp::getStartupState() > STATE_WEARABLES_WAIT)
{
LLInventoryModelBackgroundFetch::instance().start(folder_id);
}
@@ -307,7 +310,11 @@ bool LLInventoryFilter::checkAgainstFilterType(const LLFolderViewModelItemInvent
if (is_hidden_if_empty)
{
// Force the fetching of those folders so they are hidden if they really are empty...
- gInventory.fetchDescendentsOf(object_id);
+ // But don't interfere with startup download
+ if (LLStartUp::getStartupState() > STATE_WEARABLES_WAIT)
+ {
+ gInventory.fetchDescendentsOf(object_id);
+ }
LLInventoryModel::cat_array_t* cat_array = NULL;
LLInventoryModel::item_array_t* item_array = NULL;
diff --git a/indra/newview/llpanelplaces.cpp b/indra/newview/llpanelplaces.cpp
index 5d43c38612..0507d6db86 100644
--- a/indra/newview/llpanelplaces.cpp
+++ b/indra/newview/llpanelplaces.cpp
@@ -1006,7 +1006,7 @@ void LLPanelPlaces::togglePlaceInfoPanel(BOOL visible)
mPlaceInfoType == LANDMARK_TAB_INFO_TYPE)
{
mLandmarkInfo->setVisible(visible);
-
+ mPlaceProfile->setVisible(FALSE);
if (visible)
{
mLandmarkInfo->resetLocation();
@@ -1014,8 +1014,6 @@ void LLPanelPlaces::togglePlaceInfoPanel(BOOL visible)
LLRect rect = getRect();
LLRect new_rect = LLRect(rect.mLeft, rect.mTop, rect.mRight, mTabContainer->getRect().mBottom);
mLandmarkInfo->reshape(new_rect.getWidth(), new_rect.getHeight());
-
- mPlaceProfile->setVisible(FALSE);
}
else
{
diff --git a/indra/newview/llpanelprimmediacontrols.cpp b/indra/newview/llpanelprimmediacontrols.cpp
index 0bcd8a9e63..5f413fc3c0 100644
--- a/indra/newview/llpanelprimmediacontrols.cpp
+++ b/indra/newview/llpanelprimmediacontrols.cpp
@@ -566,11 +566,16 @@ void LLPanelPrimMediaControls::updateShape()
}
}
- // MAINT-1392 If this is a HUD always set it visible, but hide each control if user has no perms.
- // When setting it invisible it won't receive any mouse messages anymore
+ // Web plugins and HUD may have media controls invisible for user, but still need scroll mouse events.
+ // LLView checks for visibleEnabledAndContains() and won't pass events to invisible panel, so instead
+ // of hiding whole panel hide each control instead (if user has no perms).
+ // Note: It might be beneficial to keep panel visible for all plugins to make behavior consistent, but
+ // for now limiting change to cases that need events.
- if( !is_hud )
+ if (!is_hud && (!media_plugin || media_plugin->pluginSupportsMediaTime()))
+ {
setVisible(enabled);
+ }
else
{
if( !hasPermsControl )
diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp
index a32ed258f8..03fa2e2080 100644
--- a/indra/newview/llsidepanelappearance.cpp
+++ b/indra/newview/llsidepanelappearance.cpp
@@ -394,6 +394,11 @@ void LLSidepanelAppearance::toggleWearableEditPanel(BOOL visible, LLViewerWearab
return;
}
+ if(!visible)
+ {
+ mEditWearable->setWearable(NULL);
+ }
+
// If we're just switching between outfit and wearable editing or updating item,
// don't end customization and don't switch camera
// Don't end customization and don't switch camera without visibility change
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index 1bb3d65e05..bbbc93e5be 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -256,6 +256,7 @@ boost::scoped_ptr<LLViewerStats::PhaseMap> LLStartUp::sPhases(new LLViewerStats:
void login_show();
void login_callback(S32 option, void* userdata);
+void show_release_notes_if_required();
void show_first_run_dialog();
bool first_run_dialog_callback(const LLSD& notification, const LLSD& response);
void set_startup_status(const F32 frac, const std::string& string, const std::string& msg);
@@ -709,6 +710,7 @@ bool idle_startup()
set_startup_status(0.03f, msg.c_str(), gAgent.mMOTD.c_str());
display_startup();
// LLViewerMedia::initBrowser();
+ show_release_notes_if_required();
LLStartUp::setStartupState( STATE_LOGIN_SHOW );
return FALSE;
}
@@ -2247,6 +2249,21 @@ void login_callback(S32 option, void *userdata)
}
}
+/**
+* Check if user is running a new version of the viewer.
+* Display the Release Notes if it's not overriden by the "UpdaterShowReleaseNotes" setting.
+*/
+void show_release_notes_if_required()
+{
+ if (LLVersionInfo::getChannelAndVersion() != gLastRunVersion
+ && gSavedSettings.getBOOL("UpdaterShowReleaseNotes")
+ && !gSavedSettings.getBOOL("FirstLoginThisInstall"))
+ {
+ LLSD info(LLAppViewer::instance()->getViewerInfo());
+ LLWeb::loadURLInternal(info["VIEWER_RELEASE_NOTES_URL"]);
+ }
+}
+
void show_first_run_dialog()
{
LLNotificationsUtil::add("FirstRun", LLSD(), LLSD(), first_run_dialog_callback);
diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp
index dddfb6745e..2a126c9f01 100644
--- a/indra/newview/llviewerparcelmgr.cpp
+++ b/indra/newview/llviewerparcelmgr.cpp
@@ -706,7 +706,7 @@ bool LLViewerParcelMgr::allowAgentScripts(const LLViewerRegion* region, const LL
bool LLViewerParcelMgr::allowAgentDamage(const LLViewerRegion* region, const LLParcel* parcel) const
{
return (region && region->getAllowDamage())
- && (parcel && parcel->getAllowDamage());
+ || (parcel && parcel->getAllowDamage());
}
BOOL LLViewerParcelMgr::isOwnedAt(const LLVector3d& pos_global) const
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp
index 657babd92c..098996147f 100644
--- a/indra/newview/llvovolume.cpp
+++ b/indra/newview/llvovolume.cpp
@@ -81,6 +81,8 @@
const F32 FORCE_SIMPLE_RENDER_AREA = 512.f;
const F32 FORCE_CULL_AREA = 8.f;
+const F32 MIN_RENDER_COMPLEXITY = 0.f;
+const F32 MAX_RENDER_COMPLEXITY = 1.0e6f;
U32 JOINT_COUNT_REQUIRED_FOR_FULLRIG = 1;
BOOL gAnimateTextures = TRUE;
@@ -3615,6 +3617,8 @@ U32 LLVOVolume::getRenderCost(texture_cost_t &textures) const
shame += media_faces * ARC_MEDIA_FACE_COST;
}
+ shame = llclamp(shame, MIN_RENDER_COMPLEXITY, MAX_RENDER_COMPLEXITY);
+
if (shame > mRenderComplexity_current)
{
mRenderComplexity_current = (S32)shame;
diff --git a/indra/newview/llwlanimator.cpp b/indra/newview/llwlanimator.cpp
index 2142885767..c8879e73eb 100644
--- a/indra/newview/llwlanimator.cpp
+++ b/indra/newview/llwlanimator.cpp
@@ -155,17 +155,28 @@ F64 LLWLAnimator::getDayTime()
// we're not solving the non-linear equation that determines sun phase
// we're just linearly interpolating between the major points
- if (phase <= 5.0 / 4.0) {
+
+ if (phase <= 5.0 / 4.0)
+ {
+ // mDayTime from 0.33 to 0.75 (6:00 to 21:00)
mDayTime = (1.0 / 3.0) * phase + (1.0 / 3.0);
}
+ else if (phase > 7.0 / 4.0)
+ {
+ // maximum value for phase is 2
+ // mDayTime from 0.25 to 0.33 (3:00 to 6:00)
+ mDayTime = (1.0 / 3.0) - (1.0 / 3.0) * (2 - phase);
+ }
else
{
+ // phase == 3/2 is where day restarts (24:00)
+ // mDayTime from 0.75 to 0.999 and 0 to 0.25 (21:00 to 03:00)
mDayTime = phase - (1.0 / 2.0);
- }
- if(mDayTime > 1)
- {
- mDayTime--;
+ if(mDayTime > 1)
+ {
+ mDayTime--;
+ }
}
return mDayTime;
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 890839e6e6..19487c3230 100644
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -7773,12 +7773,10 @@ void LLPipeline::renderBloom(BOOL for_snapshot, F32 zoom_factor, int subfield)
F32 fov = LLViewerCamera::getInstance()->getView();
const F32 default_fov = CameraFieldOfView * F_PI/180.f;
- //const F32 default_aspect_ratio = gSavedSettings.getF32("CameraAspectRatio");
//F32 aspect_ratio = (F32) mScreen.getWidth()/(F32)mScreen.getHeight();
F32 dv = 2.f*default_focal_length * tanf(default_fov/2.f);
- //F32 dh = 2.f*default_focal_length * tanf(default_fov*default_aspect_ratio/2.f);
F32 focal_length = dv/(2*tanf(fov/2.f));
diff --git a/indra/newview/skins/default/xui/en/floater_about_land.xml b/indra/newview/skins/default/xui/en/floater_about_land.xml
index 8391bacf51..a137770e26 100644
--- a/indra/newview/skins/default/xui/en/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/en/floater_about_land.xml
@@ -2014,7 +2014,7 @@ Only large parcels can be listed in search.
name="AllowedText"
top="0"
width="230">
- Allowed Residents ([COUNT])
+ Allowed Residents ([COUNT], max [MAX])
</text>
<name_list
column_padding="0"
@@ -2063,7 +2063,7 @@ Only large parcels can be listed in search.
name="BanCheck"
top="0"
width="200">
- Banned Residents ([COUNT])
+ Banned Residents ([COUNT], max [MAX])
</text>
<name_list
column_padding="0"
diff --git a/indra/newview/skins/default/xui/en/floater_scene_load_stats.xml b/indra/newview/skins/default/xui/en/floater_scene_load_stats.xml
index b53698a9f2..62cce3a1e3 100644
--- a/indra/newview/skins/default/xui/en/floater_scene_load_stats.xml
+++ b/indra/newview/skins/default/xui/en/floater_scene_load_stats.xml
@@ -7,6 +7,7 @@
save_rect="true"
save_visibility="true"
title="SCENE LOAD STATISTICS"
+ min_width="250"
width="400">
<scroll_container follows="top|left|bottom|right"
bottom="400"
diff --git a/indra/newview/skins/default/xui/en/floater_stats.xml b/indra/newview/skins/default/xui/en/floater_stats.xml
index be9b93837a..e4f735740b 100644
--- a/indra/newview/skins/default/xui/en/floater_stats.xml
+++ b/indra/newview/skins/default/xui/en/floater_stats.xml
@@ -8,6 +8,7 @@
save_rect="true"
save_visibility="true"
title="STATISTICS"
+ min_width="250"
width="270">
<scroll_container follows="all"
height="380"
diff --git a/indra/newview/skins/default/xui/en/menu_gesture_gear.xml b/indra/newview/skins/default/xui/en/menu_gesture_gear.xml
index b08d21e8f4..c1458977ca 100644
--- a/indra/newview/skins/default/xui/en/menu_gesture_gear.xml
+++ b/indra/newview/skins/default/xui/en/menu_gesture_gear.xml
@@ -5,8 +5,7 @@
name="menu_gesture_gear"
visible="false">
<menu_item_call
- font="SansSerifBold"
- label="Add/Remove from Favorites"
+ label="Activate/Deactivate selected gesture"
layout="topleft"
name="activate">
<on_click
diff --git a/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml
index ff0714adbb..eeb930485e 100644
--- a/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml
+++ b/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml
@@ -26,10 +26,11 @@
layout="topleft"
left="5"
name="appearance_tabs"
- tab_min_width="150"
+ tab_min_width="100"
tab_height="30"
tab_position="top"
halign="center"
+ hide_scroll_arrows="true"
top="8"
width="315">
<panel
diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml
index 88ad8bbf7b..b75f631799 100644
--- a/indra/newview/skins/default/xui/en/strings.xml
+++ b/indra/newview/skins/default/xui/en/strings.xml
@@ -3815,7 +3815,7 @@ Abuse Report</string>
<string name="Male - Laugh">Male - Laugh</string>
<string name="Male - Repulsed">Male - Repulsed</string>
<string name="Male - Shrug">Male - Shrug</string>
- <string name="Male - Stick tougue out">Male - Stick tougue out</string>
+ <string name="Male - Stick tougue out">Male - Stick tongue out</string>
<string name="Male - Wow">Male - Wow</string>
<string name="Female - Chuckle">Female - Chuckle</string>
@@ -3834,7 +3834,7 @@ Abuse Report</string>
<string name="Female - Please">Female - Please</string>
<string name="Female - Repulsed">Female - Repulsed</string>
<string name="Female - Shrug">Female - Shrug</string>
- <string name="Female - Stick tougue out">Female - Stick tougue out</string>
+ <string name="Female - Stick tougue out">Female - Stick tongue out</string>
<string name="Female - Wow">Female - Wow</string>
<string name="/bow">/bow</string>
diff --git a/scripts/content_tools/anim_tool.py b/scripts/content_tools/anim_tool.py
index 9b795f45fd..77bf731ae6 100644
--- a/scripts/content_tools/anim_tool.py
+++ b/scripts/content_tools/anim_tool.py
@@ -406,8 +406,13 @@ class Anim(object):
def delete_joint(self, name):
j = self.find_joint(name)
if j:
+ if args.verbose:
+ print "removing joint", name
anim.joints.remove(j)
anim.num_joints = len(self.joints)
+ else:
+ if args.verbose:
+ print "joint not found to remove", name
def summary(self):
nj = len(self.joints)
@@ -500,9 +505,9 @@ def resolve_joints(names, skel_tree, lad_tree):
for elt in all_elts:
if elt.get("name") is None:
continue
- print elt.get("name"),"hud",elt.get("hud")
+ #print elt.get("name"),"hud",elt.get("hud")
if args.no_hud and elt.get("hud"):
- print "skipping hud joint", elt.get("name")
+ #print "skipping hud joint", elt.get("name")
continue
if elt.get("name") in names or elt.tag in names:
matches.append(elt.get("name"))
@@ -532,6 +537,8 @@ if __name__ == "__main__":
parser.add_argument("--lad", help="name of the avatar_lad file", default= os.path.join(path_to_skel,"avatar_lad.xml"))
parser.add_argument("--set_version", nargs=2, type=int, help="set version and sub-version to specified values")
parser.add_argument("--no_hud", help="omit hud joints from list of attachments", action="store_true")
+ parser.add_argument("--base_priority", help="set base priority", type=int)
+ parser.add_argument("--joint_priority", help="set joint priority for all joints", type=int)
parser.add_argument("infilename", help="name of a .anim file to input")
parser.add_argument("outfilename", nargs="?", help="name of a .anim file to output")
args = parser.parse_args()
@@ -591,6 +598,13 @@ if __name__ == "__main__":
if args.set_version:
anim.version = args.set_version[0]
anim.sub_version = args.set_version[1]
+ if args.base_priority is not None:
+ print "set base priority",args.base_priority
+ anim.base_priority = args.base_priority
+ if args.joint_priority is not None:
+ print "set joint priority",args.joint_priority
+ for joint in anim.joints:
+ joint.joint_priority = args.joint_priority
if args.dump:
anim.dump(args.dump)
if args.summary: