Age | Commit message (Collapse) | Author |
|
--HG--
branch : product-engine
|
|
reviewed by Richard Nelson at https://codereview.productengine.com/secondlife/r/773/
--HG--
branch : product-engine
|
|
when called from 'Add More' panel.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/737/.
--HG--
branch : product-engine
|
|
Reason
======
Each message in an IM/chat session has a header. The header shows an (i) button on hover and hides it when mouse leaves the header.
The button is shown by adding it as a header child and hidden by resetting the button parent.
So, if you close the IM session so that the hovered header doesn't get the MouseLeave message (e.g. by Ctrl+W),
the button gets destroyed. If you then open the IM session again and hover a message header, the destroyed button
is referenced, which leads to crash.
Fix
===
We make sure that when a hovered message header is being destroyed (by closing the IM session),
the button is detached (i.e. its parent gets reset), so that it remains usable.
I also add a couple of checks for the case when the (i) button fails to construct from XML file.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/783/
--HG--
branch : product-engine
|
|
LLPanelStandStopFlying is always valid to prevent crash.
Consequences of root cause:
Static pointer to LLPanelStandStopFlying in LLPanelStandStopFlying::getInstance() becomes invalid when the instance of the LLPanelStandStopFlying is a child of floater while it is destroying.
Next usage of that pointed cause a crash.
Root Cause:
1. LLFloater::closeFloater sets floater invisible and marks floater as "dead" but does not destroy it.
2. But that instance was still in LLFloaterReg map. It is removed in LLFloater's destructor.
3. So it was possible on low fps to get "dead" floater with LLFloaterReg, LLFloaterMove in this case.
4. Then LLMortician deleted floater instance shown on previous step.
Call of setVisible(false) from the LLFloater's destructor does not call overridden LLFloaterMove's method (which is expected behavior.)
So, child panel LLPanelStandStopFlying was not re-parented to Main View and was destroyed with LLFloaterMove.
That leaded to the "Top Reason" described above.
FIX:
1. Ensure that LLPanelStandStopFlying is not a child of LLFloaterMove on its destroying.
2. Synchronized removing of a floater instance from the LLFloaterReg when it is marked as "dead".
Note: both changes fixes this bug independently, but I included both of them into result patch to avoid similar but in the future.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/781/
--HG--
branch : product-engine
|
|
|
|
reviewed by Callum
|
|
|
|
|
|
|
|
|
|
selected in outfit editor) - 'Add More' panel multiple selection behavior
Implemented the following behavior: \"if multiple selection is made in the Add More panel then default marketplace home URL can be used\".
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/769/
--HG--
branch : product-engine
|
|
notifications.xml to make it localizable.
Added "You died and have been teleported to your home location" string. It requires localization efforts.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/776/
--HG--
branch : product-engine
|
|
--HG--
branch : product-engine
|
|
Trivial fix to correct for wrong debug message printed out due to use of wrong timer.
|
|
EXT-8445 Reduce baked texture timeout fro 120sec to 60sec default
Also did some minor infrastructure cleanup, added code comments, etc. There is now separate logic for determining how to handle update (versus upload) requests.
Also made a trivial change to llvoavatar to properly encapsulate mAppearanceAnimating.
Also reduced the baked texture timeout to 60s (in settings.xml)
|
|
|
|
llviewertexture.cpp]
|
|
|
|
"Stand Up" on object.
Made only one of them enabled in the same time, didn't make disabled one invisible because it was decided so in EXT-8094.
- This bug is the result of EXT-8094 fix. Corrected logic of enabling "Sit here" and "Stand up" both in xml and code.
- Removed class LLObjectEnableSitOrStand because it's not needed anymore, and it's handleEvent() method duplicates is_object_sittable() function.
- Renamed Object.EnableSit to Object.EnableGearSit because its name is now used for enabling object menu sit, and this "simple" version is used only from object inspector's gear menu.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/761
--HG--
branch : product-engine
|
|
logic for saveAs case. Some remaining UI issues will be filed separately. Reviewed by Nyx
|
|
--HG--
branch : product-engine
|
|
Details:
Instead of copying shared pointer, raw pointer was used, that cause crash, since notification responder object was accessed after it was destroyed.
Replaced usage copying of raw pointer instead of copying shared pointer of notification responder object, that should live after notification destroyed.
--HG--
branch : product-engine
|
|
"Attach To..." menus (AE and inventory).
There is an on_enable callback set for the menu items. It tries adding a suffix like "(obj_name)" if there is already an attachment on the attachment point.
No matter whether the suffix has been actually added, the callback resets the menu item label to its parameter (cbparams["label"]).
The problem was that we passed the original English attachment point name to the callback, that set it as the menu item name, thus screwing up translation.
The fix is to pass translated attachment point name to the on_enable callback.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/768/
--HG--
branch : product-engine
|
|
character in the name.
It is actually possible to edit a default item name in My Inventory: when
user clicks on the input field, all its text gets selected, so user can just
enter the new name (although editing the old name is disallowed).
This fix implements the same behavior in the Edit Wearable panel by
selecting the name when the input field gets focused.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/763/
--HG--
branch : product-engine
|
|
All device names including "No Device" are get from the Vivox plugin. So, just common names are added to localize table.
* "Default system device"
* "No device"
"Microphone" is a part of device name and can not be localized without a hack.
NOTE: this code will only work on English OS. On other system locales devices will be shown on system language independent on viewer locale.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/767/
--HG--
branch : product-engine
|
|
Animation and Sound Actions.
Also changed hardcoded "until animations are done" value for Wait with label from the appropriate Floater checkbox.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/762/
--HG--
branch : product-engine
|
|
- This issue was a regression caused by EXT-8052. Bug was caused by setting visibility of border to FALSE without respect to boolean argument passed to setNoItemsCommentVisible().
setNoItemsCommentVisible() is called on every rearrange, so border disappeared quite often. Fixed it by setting border's visibility depending on passed argument.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/764/
--HG--
branch : product-engine
|
|
icon, and move to the right of group name)
- Connected callback that closes Group Floater when object selection changes
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/739/
--HG--
branch : product-engine
|
|
--HG--
branch : product-engine
|
|
dictionary.
They are 4 from ticket and 3 more from library->gestures category:
* "New Gesture"
* "Female - Chuckle"
* "Female - Cry"
* "Female - Embarrassed"
* "Female - Hey baby"
* "Female - Looking good"
* "Female - Over here"
* "Female - Please"
Also added missing string to be localized: "InvFolder Initial Outfits"
They should be translated then.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/756/
--HG--
branch : product-engine
|
|
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/758/
--HG--
branch : product-engine
|
|
|
|
with the existing consts
|
|
via a SLapp
Enables the Map button when Place Profiles are opened from SLapps in chat history, search etc.
|
|
|
|
|
|
|
|
|
|
reviewed by Leyla
|
|
|
|
|
|
Since label of the "Touch" object context menu item may be overridden by the object with
something like "Sit" or "Kiss", i.e. the label can be different from the default one,
there is a special code for handling this.
The code uses parameter of the on_enable callback as a label for the menu item.
So, the fix is to pass localized label to on_enable callback of the "Object Touch" menu item.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/759/
--HG--
branch : product-engine
|
|
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/755/
--HG--
branch : product-engine
|
|
|
|
Somewhere between a band-aid and a real fix. Entirely speculative since there is no repro.
|
|
viewer language switch.
Bug reason
==========
New inventory items get names like "New Script", "New Undershirt" etc., but the names are translated on-the-fly (see EXT-5839), so the user actually sees "Nouveau script", "Nouveau débardeur" etc., respectively.
However when the user changes viewer language, the old localized names still exist in the inventory cache, so, for example, if you create an undershirt in French and then switch to Enlgish, the undershirt will be named "Nouveau d bardeur", which is the old cached localized name with non-ASCII characters replaced with spaces.
Fix
===
To get rid of obsolete translations I clear all caches whenever viewer language gets changed.
Other changes
=============
- Added a check for agent region being NULL to LLAgentLanguage::update().
- Removed LLAgentLanguage constructor and base classes because it's never instantiated.
Reviewed by Seraph at https://codereview.productengine.com/secondlife/r/744/
--HG--
branch : product-engine
|
|
|
|
with "long" one for accordions.
* for My Outfits panel
* for Teleport History panel
Unfortunately this is required to enable automatization of translation with VLT.
NOTE: both "long" and "short" forms can be localized properly.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/740/
--HG--
branch : product-engine
|
|
predefined names, updated predefined keys for "Male - Get lost" and "Female - Get lost".
There were two issues:
* "Male - Get lost" and "Female - Get lost" gestures have by 2 spaces before "-" in their names.
* Folders were not processed to be localize. This was not implemented correctly in EXT-7051.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/753/
--HG--
branch : product-engine
|