EXT-7929 FIXED Updated functionality of attaching object: loading indicator gets hidden when attaching is completed.
- Fixed crash when accessing singleton on application exit.
- Updated functionality of attaching object: loading indicator was not hidden.
* Reason: link to attachment was created without next appearance updating.
* Fix: passed "true" into LLAppearanceMgr::addCOFItemLink to call LLAppearanceMgr::updateAppearanceFromCOF when attachments is completed. (Like for clothing).
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/611/
--HG--
branch : product-engine
- Implemented context menu for Mini-Location bar (menu_topinfobar.xml)
- Implemented function show_topinfobar_context_menu() (in llviewermenu.h) which displays context menu for Mini-Location bar.
- Functions toggle_show_navigation_panel() and toggle_show_mini_location_panel() modified so that Navigation Bar and Mini-Location bar are mutually exclusive (when the former is visible the latter is hidden and vice versa).
- Implemented method LLPanelTopInfoBar::onContextMenuItemClicked which handles \"landmark\" and \"copy\" Mini-Location bar context menu actions.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/607/
--HG--
branch : product-engine
- Added bool mItemSelected variable and getter for it to determine if the selection inside outfit exists, and used it when determining whether to enable "Trash" button in My Outfits.
Reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/600/
--HG--
branch : product-engine
- Added method to LLAccordionCtrlTabHeader which allows to change style of its textbox
- Added method to LLOutfitsList which marks accordion header of currently selected otfit and tied it up to BOF callbacks
Reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/609/
--HG--
branch : product-engine
Fix descrition:
Show tooltip, for long-named items (title text size > text box size) when mouse over text box rectangle.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/576/
--HG--
branch : product-engine
Work on "Take Off - Remove from Current Outfit" and "Wear - Add to Current Outfit" menu options:
- The menu items of the outfit context menu and the My Outfits gear menu are now disabled
when inappropriate instead of being hidden.
- The menu items get enabled/disabled depending on whether you can wear (take off) anything from the selected outfit.
(was: depending on whether you're wearing the outfit)
- Changed the way the options work: they now only operate on clothes and attachments.
"Add to COF" now only adds those body parts that are missing in COF;
"Remove from COF" doesn't touch body parts at all.
Without this change both "Add" and "Remove" options would be available simultaneously, because
any valid outfit contains body parts. I think that would be confusing.
And you don't expect you body parts to be replaced when doing "Add to COF'. (that's addition, not replacement)
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/585/
--HG--
branch : product-engine
The SLE code makes any http://<host>/app, http://<host>/region,
or http://<host>/secondlife URL be treated as a SLurl rather than a
normal http URL. This seems to be overly general, and has bitten us
because http://secondlife.com/app is used as a redirect URL for server
release notes.
In the short-term, I've made an exception for hostnames that match
"secondlife.com", so that the server release notes work again.
In the long-term, we should assess whether treating any URL that starts
with a path of "app", "region", or "secondlife" should be treated as a
SLurl. What happens when google adds "http://www.google.com/app"?
* Outfit is loading for the first time
* After user clicks:
** Item Context menu > Add
** Item Context menu > Replace
Known Issues:
1. For multi-wearable indicator will disappear after first item from the batch is worn.
Did not fix this to not affect the stability before 2.1 release.
2. To show loading indicator first time we have to notify subscribers of LLAgentWearables.
For now this is done from the deprecated LLAgentWearables::processAgentInitialWearablesUpdate
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/602/
--HG--
branch : product-engine
Implementation details:
* Added flag to LLAgentWearables to determining that outfit is changing. Synchronizing it with mLoadingStartedSignal and mLoadedSignal signals.
* Check this flag when there is no outfit set to show empty title when outfit is being changed.
* Also updated condition to disable "Wear" button when outfit is being changed.
Additional improvements:
* Removed reference to parent LLSidepanelAppearance from the LLPanelOutfitsInventory.
* Now LLSidepanelAppearance is subscribed to mLoadingStartedSignal and mLoadedSignal to update its loading indicator.
Known Issue:
* When new outfit is being worn its name is shown in title for a short moment (loading indicator is shown at this time). Then it is changed with an empty title and is shown when outfit is already worn.
If necessary it should be investigated and fixed in scope of another issue.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/593/
--HG--
branch : product-engine
Added "no_matched" and "no_visible" text for TeleportHistory.
+ Added "no_visible" text for My Outfit list.
+ Fixed filtering in TeleportHistory.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/591/
--HG--
branch : product-engine
The "Add" item of wearable context menu is now disabled if multiple clothes selected
or when you can't add more wearables of the given type (max number is worn).
Reviewed by Nyx at https://codereview.productengine.com/secondlife/r/595/
--HG--
branch : product-engine
- Increased height of 'Add to Outfit' panel and set animate for layout stack. Animate attrubute was set to true to force proper calculation of layout panels size when one of the layout panels can dynamically change its visibility
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/588/
--HG--
branch : product-engine
- Added method LLAccordionCtrl::getExpandedTab() which search for the first expanded accordion tab. This method is a bit of hacking, but I discussed it with Vadim Savchuk.
- LLAccordionCtrlTab::isExpanded() is made 'const'. This is necessary to call it from getExpandedTab() which is also 'const'.
- Added all provided Marketplace URLs (taken from EXT-7257) to the settings.xml. So URLs can be configured without recompilation.
- Added method LLCOFWearables::getSelectedItems() which can be used to get ALL selected items (not only one).
- Class LLShopURLDispatcher is implemented in the llpaneloutfitedit.cpp.
- Added callback LLPanelOutfitEdit::onShopButtonClicked() which calls LLShopURLDispatcher to send user to the correct URL.
- Added shop button (shop_btn) widget in panel_outfit_edit.xml. It has invalid icon for now. After review I'm going to reassign the ticket to someone who will provide correct icons.
Reviewed by Vadim Savchuk and Mike Antipov at https://codereview.productengine.com/secondlife/r/569/
--HG--
branch : product-engine
This was a race condition. In the repro case, LLViewerMediaImpl::seek() was getting called before the media source got a chance to be loaded (since the load is now delayed at least 1 frame due to the priority calculations), so the seek command was being dropped.
The fix is to save the seek time in mPreviousMediaTime in this case, and rearrange the code in LLViewerMediaImpl::loadURI() so that it gets used whenever it's non-zero. I've also added similar code in LLViewerMediaImpl::pause() and LLViewerMediaImpl::start() to set mPreviousMediaState. (If there are any cases where content wants parcel media to start out paused, they would have had a similar issue.)
Reviewed by Callum and Richard at http://codereview.lindenlab.com/2478002 .
The mTmpWriteBuffer member variable was never actually being allocated
because it was being shadowed by a local variable. This is why the
code never crashed. I've removed the member variable as it was clearly
never used and really confused the code.
Details:
* Added signal "Wearable Loading Started" in AgentWearables (in parallel with "Wearables Loaded")
* Now it is raised from the LLAppearanceMgr::wearInventoryCategory.
Reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/583/
--HG--
branch : product-engine