From 757414afb892122a4aca6dd1d694b4fd6083a698 Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Wed, 25 May 2016 17:20:13 +0300 Subject: Updated contributions.txt --- doc/contributions.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 9b31e5032a..b7690e96f7 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -190,6 +190,7 @@ Ansariel Hiller STORM-2094 MAINT-5756 MAINT-4677 + MAINT-6300 Aralara Rajal Arare Chantilly CHUIBUG-191 -- cgit v1.3 From 7d54c62016c1362fc0f5fd69acda58c61aed5b76 Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Wed, 25 May 2016 20:37:52 +0300 Subject: MAINT-6397 cut items should not go to trash --- doc/contributions.txt | 1 + indra/llui/llfolderviewitem.cpp | 23 ++++++++++++++++++++++- indra/llui/llfolderviewitem.h | 8 ++++++-- indra/llui/llfolderviewmodel.h | 1 + indra/newview/llinventorybridge.cpp | 14 +++++++++++--- indra/newview/llinventorybridge.h | 1 + indra/newview/llinventoryfilter.cpp | 17 +++++------------ 7 files changed, 47 insertions(+), 18 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index b7690e96f7..bb4d0b1f6e 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -191,6 +191,7 @@ Ansariel Hiller MAINT-5756 MAINT-4677 MAINT-6300 + MAINT-6397 Aralara Rajal Arare Chantilly CHUIBUG-191 diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index 5eb5ca4f82..14a07d0e90 100644 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -127,6 +127,8 @@ LLFolderViewItem::LLFolderViewItem(const LLFolderViewItem::Params& p) mIsSelected( FALSE ), mIsCurSelection( FALSE ), mSelectPending(FALSE), + mIsItemCut(false), + mCutGeneration(0), mLabelStyle( LLFontGL::NORMAL ), mHasVisibleChildren(FALSE), mIsFolderComplete(true), @@ -694,6 +696,19 @@ void LLFolderViewItem::drawOpenFolderArrow(const Params& default_params, const L return mIsCurSelection; } +/*virtual*/ bool LLFolderViewItem::isFadeItem() +{ + LLClipboard& clipboard = LLClipboard::instance(); + if (mCutGeneration != clipboard.getGeneration()) + { + mCutGeneration = clipboard.getGeneration(); + mIsItemCut = clipboard.isCutMode() + && ((getParentFolder() && getParentFolder()->isFadeItem()) + || getViewModelItem()->isCutToClipboard()); + } + return mIsItemCut; +} + void LLFolderViewItem::drawHighlight(const BOOL showContent, const BOOL hasKeyboardFocus, const LLUIColor &selectColor, const LLUIColor &flashColor, const LLUIColor &focusOutlineColor, const LLUIColor &mouseOverColor) { @@ -875,6 +890,12 @@ void LLFolderViewItem::draw() } LLColor4 color = (mIsSelected && filled) ? mFontHighlightColor : mFontColor; + + if (isFadeItem()) + { + // Fade out item color to indicate it's being cut + color.mV[VALPHA] *= 0.5f; + } drawLabel(font, text_left, y, color, right_x); //--------------------------------------------------------------------------------// @@ -882,7 +903,7 @@ void LLFolderViewItem::draw() // if (!mLabelSuffix.empty()) { - font->renderUTF8( mLabelSuffix, 0, right_x, y, sSuffixColor, + font->renderUTF8( mLabelSuffix, 0, right_x, y, isFadeItem() ? color : sSuffixColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, &right_x, FALSE ); } diff --git a/indra/llui/llfolderviewitem.h b/indra/llui/llfolderviewitem.h index 0322c8836d..61c39e0175 100644 --- a/indra/llui/llfolderviewitem.h +++ b/indra/llui/llfolderviewitem.h @@ -121,8 +121,11 @@ protected: mIsMouseOverTitle, mAllowWear, mAllowDrop, - mSelectPending; - + mSelectPending, + mIsItemCut; + + S32 mCutGeneration; + LLUIColor mFontColor; LLUIColor mFontHighlightColor; @@ -145,6 +148,7 @@ protected: virtual void addFolder(LLFolderViewFolder*) { } virtual bool isHighlightAllowed(); virtual bool isHighlightActive(); + virtual bool isFadeItem(); virtual bool isFlashing() { return false; } virtual void setFlashState(bool) { } diff --git a/indra/llui/llfolderviewmodel.h b/indra/llui/llfolderviewmodel.h index a395af537a..641241a88c 100644 --- a/indra/llui/llfolderviewmodel.h +++ b/indra/llui/llfolderviewmodel.h @@ -173,6 +173,7 @@ public: virtual BOOL isItemCopyable() const = 0; virtual BOOL copyToClipboard() const = 0; virtual BOOL cutToClipboard() = 0; + virtual bool isCutToClipboard() { return false; }; virtual BOOL isClipboardPasteable() const = 0; virtual void pasteFromClipboard() = 0; diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index 26c9b40fb1..f4bf38f65d 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -286,6 +286,16 @@ BOOL LLInvFVBridge::cutToClipboard() return FALSE; } +// virtual +bool LLInvFVBridge::isCutToClipboard() +{ + if (LLClipboard::instance().isCutMode()) + { + return LLClipboard::instance().isOnClipboard(mUUID); + } + return false; +} + // Callback for cutToClipboard if DAMA required... BOOL LLInvFVBridge::callback_cutToClipboard(const LLSD& notification, const LLSD& response) { @@ -307,9 +317,7 @@ BOOL LLInvFVBridge::perform_cutToClipboard() if (obj && isItemMovable() && isItemRemovable()) { LLClipboard::instance().setCutMode(true); - BOOL added_to_clipboard = LLClipboard::instance().addToClipboard(mUUID); - removeObject(&gInventory, mUUID); // Always perform the remove even if the object couldn't make it to the clipboard - return added_to_clipboard; + return LLClipboard::instance().addToClipboard(mUUID); } return FALSE; } diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index 9053c61171..df25e01688 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -116,6 +116,7 @@ public: virtual BOOL isItemCopyable() const { return FALSE; } virtual BOOL copyToClipboard() const; virtual BOOL cutToClipboard(); + virtual bool isCutToClipboard(); virtual BOOL isClipboardPasteable() const; virtual BOOL isClipboardPasteableAsLink() const; virtual void pasteFromClipboard() {} diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 003bbcafed..e995c138b4 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -84,21 +84,18 @@ LLInventoryFilter::LLInventoryFilter(const Params& p) bool LLInventoryFilter::check(const LLFolderViewModelItem* item) { const LLFolderViewModelItemInventory* listener = dynamic_cast(item); - // Clipboard cut items are *always* filtered so we need this value upfront - const BOOL passed_clipboard = (listener ? checkAgainstClipboard(listener->getUUID()) : TRUE); // If it's a folder and we're showing all folders, return automatically. const BOOL is_folder = listener->getInventoryType() == LLInventoryType::IT_CATEGORY; if (is_folder && (mFilterOps.mShowFolderState == LLInventoryFilter::SHOW_ALL_FOLDERS)) { - return passed_clipboard; + return true; } bool passed = (mFilterSubString.size() ? listener->getSearchableName().find(mFilterSubString) != std::string::npos : true); passed = passed && checkAgainstFilterType(listener); passed = passed && checkAgainstPermissions(listener); passed = passed && checkAgainstFilterLinks(listener); - passed = passed && passed_clipboard; return passed; } @@ -108,9 +105,8 @@ bool LLInventoryFilter::check(const LLInventoryItem* item) const bool passed_string = (mFilterSubString.size() ? item->getName().find(mFilterSubString) != std::string::npos : true); const bool passed_filtertype = checkAgainstFilterType(item); const bool passed_permissions = checkAgainstPermissions(item); - const bool passed_clipboard = checkAgainstClipboard(item->getUUID()); - return passed_filtertype && passed_permissions && passed_clipboard && passed_string; + return passed_filtertype && passed_permissions && passed_string; } bool LLInventoryFilter::checkFolder(const LLFolderViewModelItem* item) const @@ -129,13 +125,10 @@ bool LLInventoryFilter::checkFolder(const LLFolderViewModelItem* item) const bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const { - // Always check against the clipboard - const BOOL passed_clipboard = checkAgainstClipboard(folder_id); - // we're showing all folders, overriding filter if (mFilterOps.mShowFolderState == LLInventoryFilter::SHOW_ALL_FOLDERS) { - return passed_clipboard; + return true; } // when applying a filter, matching folders get their contents downloaded first @@ -201,7 +194,7 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const LLViewerInventoryItem* item = gInventory.getItem(folder_id); if (item && item->getActualType() == LLAssetType::AT_LINK_FOLDER) { - return passed_clipboard; + return true; } if (mFilterOps.mFilterTypes & FILTERTYPE_CATEGORY) @@ -216,7 +209,7 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const return false; } - return passed_clipboard; + return true; } bool LLInventoryFilter::checkAgainstFilterType(const LLFolderViewModelItemInventory* listener) const -- cgit v1.3 From 84396f4e279e63d536af37784e50e063185c161d Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Tue, 21 Jun 2016 16:25:18 +0300 Subject: MAINT-6513 Math rounding errors --- doc/contributions.txt | 3 ++- indra/newview/llfloaterpreference.cpp | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 2dbd3783f2..30465d8cfb 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -192,7 +192,8 @@ Ansariel Hiller MAINT-4677 MAINT-6300 MAINT-6397 - MAINT-6432 + MAINT-6432 + MAINT-6513 Aralara Rajal Arare Chantilly CHUIBUG-191 diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 36bdcf4d89..20d8119606 100644 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -1411,7 +1411,7 @@ void LLAvatarComplexityControls::setIndirectMaxArc() else { // This is the inverse of the calculation in updateMaxComplexity - indirect_max_arc = (U32)((log(max_arc) - MIN_ARC_LOG) / ARC_LIMIT_MAP_SCALE) + MIN_INDIRECT_ARC_LIMIT; + indirect_max_arc = (U32)ll_round(((log(F32(max_arc)) - MIN_ARC_LOG) / ARC_LIMIT_MAP_SCALE)) + MIN_INDIRECT_ARC_LIMIT; } gSavedSettings.setU32("IndirectMaxComplexity", indirect_max_arc); } @@ -1930,7 +1930,7 @@ void LLAvatarComplexityControls::updateMax(LLSliderCtrl* slider, LLTextBox* valu { // if this is changed, the inverse calculation in setIndirectMaxArc // must be changed to match - max_arc = (U32)exp(MIN_ARC_LOG + (ARC_LIMIT_MAP_SCALE * (indirect_value - MIN_INDIRECT_ARC_LIMIT))); + max_arc = (U32)ll_round(exp(MIN_ARC_LOG + (ARC_LIMIT_MAP_SCALE * (indirect_value - MIN_INDIRECT_ARC_LIMIT)))); } gSavedSettings.setU32("RenderAvatarMaxComplexity", (U32)max_arc); -- cgit v1.3 From ba36b366dbdb2a0b228bc88c7e03cc93a65f48d4 Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Wed, 22 Jun 2016 12:55:30 +0300 Subject: MAINT-6514 Appearance Mode Body Parts Select shows wrong type --- doc/contributions.txt | 1 + indra/newview/llpaneloutfitedit.cpp | 3 --- indra/newview/llpaneloutfitedit.h | 1 - 3 files changed, 1 insertion(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 30465d8cfb..f1bafba32c 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -194,6 +194,7 @@ Ansariel Hiller MAINT-6397 MAINT-6432 MAINT-6513 + MAINT-6514 Aralara Rajal Arare Chantilly CHUIBUG-191 diff --git a/indra/newview/llpaneloutfitedit.cpp b/indra/newview/llpaneloutfitedit.cpp index 8331c152e2..8b9941c0ca 100644 --- a/indra/newview/llpaneloutfitedit.cpp +++ b/indra/newview/llpaneloutfitedit.cpp @@ -1059,9 +1059,6 @@ void LLPanelOutfitEdit::filterWearablesBySelectedItem(void) case LLAssetType::AT_BODYPART: applyListViewFilter(LVIT_BODYPART); break; - case LLAssetType::AT_GESTURE: - applyListViewFilter(LVIT_GESTURES); - break; case LLAssetType::AT_CLOTHING: default: applyListViewFilter(LVIT_CLOTHING); diff --git a/indra/newview/llpaneloutfitedit.h b/indra/newview/llpaneloutfitedit.h index 841bb4337a..30870daf40 100644 --- a/indra/newview/llpaneloutfitedit.h +++ b/indra/newview/llpaneloutfitedit.h @@ -80,7 +80,6 @@ public: { LVIT_ALL = 0, LVIT_CLOTHING, - LVIT_GESTURES, LVIT_BODYPART, LVIT_ATTACHMENT, LVIT_SHAPE, -- cgit v1.3 From c2320fa0d0c9d006098d0b3830b3f40ae560768d Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Wed, 29 Jun 2016 16:44:25 +0300 Subject: MAINT-2141 Sky Cloud Coverage reverts to 0.27 when toggling view back to region sky --- doc/contributions.txt | 1 + indra/newview/llwlparamset.cpp | 17 ----------------- 2 files changed, 1 insertion(+), 17 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index f1bafba32c..b118439f26 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -1267,6 +1267,7 @@ Sovereign Engineer MAINT-6107 STORM-2107 MAINT-6218 + MAINT-2141 SpacedOut Frye VWR-34 VWR-45 diff --git a/indra/newview/llwlparamset.cpp b/indra/newview/llwlparamset.cpp index 066cb9a0ac..482a2a61e2 100644 --- a/indra/newview/llwlparamset.cpp +++ b/indra/newview/llwlparamset.cpp @@ -288,14 +288,6 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight) { // set up the iterators - // keep cloud positions and coverage the same - /// TODO masking will do this later - F32 cloudPos1X = (F32) mParamValues["cloud_pos_density1"][0].asReal(); - F32 cloudPos1Y = (F32) mParamValues["cloud_pos_density1"][1].asReal(); - F32 cloudPos2X = (F32) mParamValues["cloud_pos_density2"][0].asReal(); - F32 cloudPos2Y = (F32) mParamValues["cloud_pos_density2"][1].asReal(); - F32 cloudCover = (F32) mParamValues["cloud_shadow"][0].asReal(); - LLSD srcVal; LLSD destVal; @@ -379,15 +371,6 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight) setSunAngle((1 - weight) * srcSunAngle + weight * destSunAngle); setEastAngle((1 - weight) * srcEastAngle + weight * destEastAngle); - - // now setup the sun properly - - // reset those cloud positions - mParamValues["cloud_pos_density1"][0] = cloudPos1X; - mParamValues["cloud_pos_density1"][1] = cloudPos1Y; - mParamValues["cloud_pos_density2"][0] = cloudPos2X; - mParamValues["cloud_pos_density2"][1] = cloudPos2Y; - mParamValues["cloud_shadow"][0] = cloudCover; } void LLWLParamSet::updateCloudScrolling(void) -- cgit v1.3 From 69de29d74e2171a032472f54581b4eceff1ad099 Mon Sep 17 00:00:00 2001 From: AndreyL ProductEngine Date: Wed, 6 Jul 2016 10:22:50 +0300 Subject: MAINT-6552 Contribution: Viewer sometimes crashes when opening oversized textures --- doc/contributions.txt | 1 + indra/newview/llviewertexture.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index b118439f26..f1111a2210 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -195,6 +195,7 @@ Ansariel Hiller MAINT-6432 MAINT-6513 MAINT-6514 + MAINT-6552 Aralara Rajal Arare Chantilly CHUIBUG-191 diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index ed719ae418..ac997d7525 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -1200,7 +1200,7 @@ void LLViewerFetchedTexture::loadFromFastCache() { S32 expected_width = mKnownDrawWidth > 0 ? mKnownDrawWidth : DEFAULT_ICON_DIMENTIONS; S32 expected_height = mKnownDrawHeight > 0 ? mKnownDrawHeight : DEFAULT_ICON_DIMENTIONS; - if (mRawImage->getWidth() > expected_width || mRawImage->getHeight() > expected_height) + if (mRawImage && (mRawImage->getWidth() > expected_width || mRawImage->getHeight() > expected_height)) { // scale oversized icon, no need to give more work to gl mRawImage->scale(expected_width, expected_height); -- cgit v1.3 From 936681cb82d0ec70013430a131aa7cdbe163725b Mon Sep 17 00:00:00 2001 From: Mnikolenko Productengine Date: Mon, 25 Jul 2016 11:18:20 +0300 Subject: MAINT-6568 Detached Object Ends up in Root of Inventory --- doc/contributions.txt | 1 + indra/newview/llinventorymodel.cpp | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 71612af544..49c9c2cb1d 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -794,6 +794,7 @@ Kitty Barnett MAINT-6152 MAINT-6153 MAINT-6154 + MAINT-6568 Kolor Fall Komiko Okamoto Korvel Noh diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp index da06cfd311..d328973bae 100644 --- a/indra/newview/llinventorymodel.cpp +++ b/indra/newview/llinventorymodel.cpp @@ -914,8 +914,11 @@ U32 LLInventoryModel::updateItem(const LLViewerInventoryItem* item, U32 mask) item_array_t* item_array = get_ptr_in_map(mParentChildItemTree, category_id); if( item_array ) { + LLInventoryModel::LLCategoryUpdate update(category_id, 1); + gInventory.accountForUpdate(update); + // *FIX: bit of a hack to call update server from here... - new_item->updateServer(TRUE); + new_item->updateParentOnServer(FALSE); item_array->push_back(new_item); } else @@ -956,9 +959,11 @@ U32 LLInventoryModel::updateItem(const LLViewerInventoryItem* item, U32 mask) item_array = get_ptr_in_map(mParentChildItemTree, parent_id); if(item_array) { + LLInventoryModel::LLCategoryUpdate update(parent_id, 1); + gInventory.accountForUpdate(update); // *FIX: bit of a hack to call update server from // here... - new_item->updateServer(TRUE); + new_item->updateParentOnServer(FALSE); item_array->push_back(new_item); } else -- cgit v1.3 From f4f30dae0f173517fa1cd58cead142d60cbcc839 Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Mon, 8 Aug 2016 21:31:11 +0300 Subject: MAINT-6612 Server release notes in Help -> About Second Life never fetch on any region. --- doc/contributions.txt | 1 + indra/newview/llfloaterabout.cpp | 74 +++++++++++++++++++++++++++------------- 2 files changed, 52 insertions(+), 23 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 1daee0f92b..d968e80250 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -198,6 +198,7 @@ Ansariel Hiller MAINT-6552 STORM-2133 MAINT-6511 + MAINT-6612 Aralara Rajal Arare Chantilly CHUIBUG-191 diff --git a/indra/newview/llfloaterabout.cpp b/indra/newview/llfloaterabout.cpp index bababca652..8d17f4c198 100644 --- a/indra/newview/llfloaterabout.cpp +++ b/indra/newview/llfloaterabout.cpp @@ -108,6 +108,7 @@ private: static const std::string sCheckUpdateListenerName; static void startFetchServerReleaseNotes(); + static void fetchServerReleaseNotesCoro(const std::string& cap_url); static void handleServerReleaseNotes(LLSD results); }; @@ -224,35 +225,62 @@ void LLFloaterAbout::startFetchServerReleaseNotes() // an URL suitable for external browsers in the "Location:" HTTP header. std::string cap_url = region->getCapability("ServerReleaseNotes"); - LLCoreHttpUtil::HttpCoroutineAdapter::callbackHttpGet(cap_url, - &LLFloaterAbout::handleServerReleaseNotes, &LLFloaterAbout::handleServerReleaseNotes); + LLCoros::instance().launch("fetchServerReleaseNotesCoro", boost::bind(&LLFloaterAbout::fetchServerReleaseNotesCoro, cap_url)); } +/*static*/ +void LLFloaterAbout::fetchServerReleaseNotesCoro(const std::string& cap_url) +{ + LLCoreHttpUtil::HttpCoroutineAdapter::ptr_t + httpAdapter(new LLCoreHttpUtil::HttpCoroutineAdapter("fetchServerReleaseNotesCoro", LLCore::HttpRequest::DEFAULT_POLICY_ID)); + LLCore::HttpRequest::ptr_t httpRequest(new LLCore::HttpRequest); + LLCore::HttpOptions::ptr_t httpOpts(new LLCore::HttpOptions); + + httpOpts->setWantHeaders(true); + httpOpts->setFollowRedirects(false); + + LLSD result = httpAdapter->getAndSuspend(httpRequest, cap_url, httpOpts); + + LLSD httpResults = result[LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS]; + LLCore::HttpStatus status = LLCoreHttpUtil::HttpCoroutineAdapter::getStatusFromLLSD(httpResults); + + if (!status) + { + handleServerReleaseNotes(httpResults); + } + else + { + handleServerReleaseNotes(result); + } +} + /*static*/ void LLFloaterAbout::handleServerReleaseNotes(LLSD results) { -// LLFloaterAbout* floater_about = LLFloaterReg::getTypedInstance("sl_about"); -// if (floater_about) -// { - LLSD http_headers; - if (results.has(LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS)) - { - LLSD http_results = results[LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS]; - http_headers = http_results[LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS_HEADERS]; - } - else - { - http_headers = results[LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS_HEADERS]; - } - - std::string location = http_headers[HTTP_IN_HEADER_LOCATION].asString(); - if (location.empty()) - { - location = LLTrans::getString("ErrorFetchingServerReleaseNotesURL"); - } - LLAppViewer::instance()->setServerReleaseNotesURL(location); -// } + LLSD http_headers; + if (results.has(LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS)) + { + LLSD http_results = results[LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS]; + http_headers = http_results[LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS_HEADERS]; + } + else + { + http_headers = results[LLCoreHttpUtil::HttpCoroutineAdapter::HTTP_RESULTS_HEADERS]; + } + + std::string location = http_headers[HTTP_IN_HEADER_LOCATION].asString(); + if (location.empty()) + { + location = LLTrans::getString("ErrorFetchingServerReleaseNotesURL"); + } + LLAppViewer::instance()->setServerReleaseNotesURL(location); + + LLFloaterAbout* floater_about = LLFloaterReg::getTypedInstance("sl_about"); + if (floater_about) + { + floater_about->setSupportText(location); + } } class LLFloaterAboutListener: public LLEventAPI -- cgit v1.3 From d85bc7de7f03a4629f0108c076cf3242466a8a3f Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Tue, 16 Aug 2016 17:48:52 +0300 Subject: MAINT-6637 DebugAvatarAppearanceMessage incorrectly reports all avatars received COF version as -1 --- doc/contributions.txt | 1 + indra/newview/llvoavatar.cpp | 17 +++++++---------- 2 files changed, 8 insertions(+), 10 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index d968e80250..b3d1c2432d 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -199,6 +199,7 @@ Ansariel Hiller STORM-2133 MAINT-6511 MAINT-6612 + MAINT-6637 Aralara Rajal Arare Chantilly CHUIBUG-191 diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index aebc066507..f79249d6fa 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -7392,16 +7392,13 @@ void LLVOAvatar::processAvatarAppearance( LLMessageSystem* mesgsys ) // No backsies zone - if we get here, the message should be valid and usable, will be processed. LL_INFOS("Avatar") << "Processing appearance message version " << thisAppearanceVersion << LL_ENDL; - if (isSelf()) - { - // Note: - // locally the COF is maintained via LLInventoryModel::accountForUpdate - // which is called from various places. This should match the simhost's - // idea of what the COF version is. AIS however maintains its own version - // of the COF that should be considered canonical. - mLastUpdateReceivedCOFVersion = thisAppearanceVersion; - } - + // Note: + // locally the COF is maintained via LLInventoryModel::accountForUpdate + // which is called from various places. This should match the simhost's + // idea of what the COF version is. AIS however maintains its own version + // of the COF that should be considered canonical. + mLastUpdateReceivedCOFVersion = thisAppearanceVersion; + if (applyParsedTEMessage(contents.mTEContents) > 0 && isChanged(TEXTURE)) { updateVisualComplexity(); -- cgit v1.3 From c4e9fe9fe5e19e6862909a0bb3c086e210871a21 Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Thu, 25 Aug 2016 15:40:33 +0300 Subject: MAINT-6636 Mesh upload was failing from a folder with a diacritic character in the name --- doc/contributions.txt | 1 + indra/llprimitive/lldaeloader.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index b3d1c2432d..917fcf14f6 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -200,6 +200,7 @@ Ansariel Hiller MAINT-6511 MAINT-6612 MAINT-6637 + MAINT-6636 Aralara Rajal Arare Chantilly CHUIBUG-191 diff --git a/indra/llprimitive/lldaeloader.cpp b/indra/llprimitive/lldaeloader.cpp index 00bde8dbc3..8071d716da 100644 --- a/indra/llprimitive/lldaeloader.cpp +++ b/indra/llprimitive/lldaeloader.cpp @@ -1071,7 +1071,7 @@ bool LLDAELoader::OpenFile(const std::string& filename) std::string LLDAELoader::preprocessDAE(std::string filename) { // Open a DAE file for some preprocessing (like removing space characters in IDs), see MAINT-5678 - std::ifstream inFile; + llifstream inFile; inFile.open(filename.c_str(), std::ios_base::in); std::stringstream strStream; strStream << inFile.rdbuf(); -- cgit v1.3 From d6b0db5118788106087ec2e5743fd10110fdb470 Mon Sep 17 00:00:00 2001 From: Mnikolenko Productengine Date: Fri, 26 Aug 2016 17:02:32 +0300 Subject: MAINT-6665 [Contribution] Viewer crashes when setting a local texture from a path containing non-standard characters --- doc/contributions.txt | 1 + indra/newview/lllocalbitmaps.cpp | 5 +++++ 2 files changed, 6 insertions(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 917fcf14f6..05fb19aaf0 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -1030,6 +1030,7 @@ Nicky Dasmijn OPEN-187 STORM-2010 STORM-2082 + MAINT-6665 Nicky Perian OPEN-1 STORM-1087 diff --git a/indra/newview/lllocalbitmaps.cpp b/indra/newview/lllocalbitmaps.cpp index aa934f95a1..a55938f334 100644 --- a/indra/newview/lllocalbitmaps.cpp +++ b/indra/newview/lllocalbitmaps.cpp @@ -181,7 +181,12 @@ bool LLLocalBitmap::updateSelf(EUpdateType optional_firstupdate) if (gDirUtilp->fileExists(mFilename)) { // verifying that the file has indeed been modified + +#ifndef LL_WINDOWS const std::time_t temp_time = boost::filesystem::last_write_time(boost::filesystem::path(mFilename)); +#else + const std::time_t temp_time = boost::filesystem::last_write_time(boost::filesystem::path(utf8str_to_utf16str(mFilename))); +#endif LLSD new_last_modified = asctime(localtime(&temp_time)); if (mLastModified.asString() != new_last_modified.asString()) -- cgit v1.3 From 741194085a70c3b6b004ad18b5bf9eb59a81b9c0 Mon Sep 17 00:00:00 2001 From: AndreyL ProductEngine Date: Fri, 23 Sep 2016 00:50:16 +0300 Subject: MAINT-6752 Updated contributions.txt --- doc/contributions.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 05fb19aaf0..9f6b701000 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -201,6 +201,7 @@ Ansariel Hiller MAINT-6612 MAINT-6637 MAINT-6636 + MAINT-6752 Aralara Rajal Arare Chantilly CHUIBUG-191 -- cgit v1.3 From 7a7dc795f64c7a8ac6de055db5fcfe83d821810d Mon Sep 17 00:00:00 2001 From: AndreyL ProductEngine Date: Mon, 26 Sep 2016 00:58:25 +0300 Subject: MAINT-6744 'System UI size factor has changed... ' shouldn't appear after installation --- doc/contributions.txt | 1 + indra/newview/llviewerwindow.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 9f6b701000..772d7fe3b5 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -201,6 +201,7 @@ Ansariel Hiller MAINT-6612 MAINT-6637 MAINT-6636 + MAINT-6744 MAINT-6752 Aralara Rajal Arare Chantilly diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 79ddc43a3e..9679f69e2c 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -1755,7 +1755,7 @@ LLViewerWindow::LLViewerWindow(const Params& p) F32 system_scale_factor = mWindow->getSystemUISize(); if (p.first_run || gSavedSettings.getF32("LastSystemUIScaleFactor") != system_scale_factor) { - mSystemUIScaleFactorChanged = true; + mSystemUIScaleFactorChanged = !p.first_run; gSavedSettings.setF32("LastSystemUIScaleFactor", system_scale_factor); gSavedSettings.setF32("UIScaleFactor", system_scale_factor); } -- cgit v1.3 From 3b1e19d23e83f4d24f8697644eeaf33117c22c1c Mon Sep 17 00:00:00 2001 From: AndreyL ProductEngine Date: Wed, 26 Oct 2016 02:31:16 +0300 Subject: Backed out changeset: 5816c800a9c1 Prervious MAINT-2141 fix causes MAINT-6791 so reverted it --- doc/contributions.txt | 1 - indra/newview/llwlparamset.cpp | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 772d7fe3b5..f7d1ece72f 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -1277,7 +1277,6 @@ Sovereign Engineer MAINT-6107 STORM-2107 MAINT-6218 - MAINT-2141 SpacedOut Frye VWR-34 VWR-45 diff --git a/indra/newview/llwlparamset.cpp b/indra/newview/llwlparamset.cpp index 482a2a61e2..066cb9a0ac 100644 --- a/indra/newview/llwlparamset.cpp +++ b/indra/newview/llwlparamset.cpp @@ -288,6 +288,14 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight) { // set up the iterators + // keep cloud positions and coverage the same + /// TODO masking will do this later + F32 cloudPos1X = (F32) mParamValues["cloud_pos_density1"][0].asReal(); + F32 cloudPos1Y = (F32) mParamValues["cloud_pos_density1"][1].asReal(); + F32 cloudPos2X = (F32) mParamValues["cloud_pos_density2"][0].asReal(); + F32 cloudPos2Y = (F32) mParamValues["cloud_pos_density2"][1].asReal(); + F32 cloudCover = (F32) mParamValues["cloud_shadow"][0].asReal(); + LLSD srcVal; LLSD destVal; @@ -371,6 +379,15 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight) setSunAngle((1 - weight) * srcSunAngle + weight * destSunAngle); setEastAngle((1 - weight) * srcEastAngle + weight * destEastAngle); + + // now setup the sun properly + + // reset those cloud positions + mParamValues["cloud_pos_density1"][0] = cloudPos1X; + mParamValues["cloud_pos_density1"][1] = cloudPos1Y; + mParamValues["cloud_pos_density2"][0] = cloudPos2X; + mParamValues["cloud_pos_density2"][1] = cloudPos2Y; + mParamValues["cloud_shadow"][0] = cloudCover; } void LLWLParamSet::updateCloudScrolling(void) -- cgit v1.3