Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
|
|
consolidated most indra-specific constants in llcommon under indra_constants.h
fixed issues with operations on mixed unit types (implicit and explicit)
made LL_INFOS() style macros variadic in order to subsume other logging methods
such as ll_infos
added optional tag output to error recorders
|
|
|
|
|
|
I've found out that the only case when pressing ESC doesn't transfer focus from side tray to game area is
when a flat list view (people, groups, teleport history, etc) is focused.
So, I fixed LLFlatListView to handle pressing ESC as expected.
Reviewed by Sergey Litovchuk at https://codereview.productengine.com/secondlife/r/862/
--HG--
branch : product-engine
|
|
|
|
"scrollToShowRect" event from the child accordion tab's scroll container.
This problem begins from expanding accordion_tab:
1. adjustToFitScreen - calls adjustContainerPanel with "fit screen" rectangle (calls reshape() and resize()).
Enter adjustContainerPanel("fit screen")
2. reshape calls ensureSelectedVisible -> scrollToShowRect...
scrollToShowRect notifyParent about "scrollToShowRect" (notifiParent is sync call)
Enter LLAccordionCtrl::notifyParent("scrollToShowRect")
4. AccordionCtrl handles "scrollToShowRect" notification and perform adjustContainerPanel with "another" rectangle.
Perform adjustContainerPanel("another") // At least I have not seen 3rd recursive call of adjustContainerPanel
5. Exit LLAccordionCtrl::notifyParent("scrollToShowRect")
6. Exit reshape("fit screen").
7. setRect("fit screen").
8. Exit adjustContainerPanel("fit screen").
...
As result we get AccordionTab that reshaped to "another" rectangle and resized to "fit screen" rectangle.
+ Fixed by handling "scrollToShowRect" message in LLAccordionCtrlTab from "LLScrollContainer".
+ Removed the workaround comment.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/727/
--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
|
|
--HG--
branch : product-engine
|
|
Resolved conflicts in llpaneloutfitedit.cpp
--HG--
branch : product-engine
|
|
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/746/
--HG--
branch : product-engine
|
|
Fixed an issue in LLFlatListView where calling setCommitOnSelectionChange(true) wasn't always causing the commit signal to be sent when the selection changed.
Reviewed by Richard at http://codereview.lindenlab.com/2579010
|
|
|
|
60fps to 18fps for a really long time
EXT-8235 FIX HUGE long delay when reopening and/or closing edit outfit sidepanel if "Add More..." is active
EXT-7695 FIX UI lockup after add wearable, right click av -> Change Outfit
reviewed by Vir
|
|
--HG--
branch : product-engine
|
|
- Hide selection border before showing no items comment
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/681/
--HG--
branch : product-engine
|
|
folder/list view modes
- Created callback called 'SaveSelecton' (which preserves selection while switching between folder/list view modes) for folder/list view modes buttons in LLPanelOutfitEdit.
- Added 'scrollToShowFirstSelectedItem' method in the LLFlatListView which scrools and shows the first selected item in case multiselection.
- It's possible to set selection for flat list view items before list is build. The result is that any items will be selected. To get rid of it:
1. Overrided LLFlatListView::selectItemByValue method in LLInventoryItemsList so that if list is not created yet, items ids are saved to the vector.
2. Added 'LLInventoryItemsList::updateSelection()' method which selects items with ids from that vector when list is created.
- A little refactoring: moved funcionality of updating WearablesPanel's verb buttons to the separate method called LLPanelOutfitEdit::updateWearablesPanelVerbButtons() to made code more readable and self-explanatory
Reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/579/
--HG--
branch : product-engine
|
|
Added additional check to avoid deselcting of items when filter is applied and made a couple of renames according to Mike's comments in review at https://codereview.productengine.com/secondlife/r/648/
--HG--
branch : product-engine
|
|
item(s) inside it match current filter.
- Added availability to force showing unmatched items to LLFlatListViewEx
- Applied it to wearable items lists in LLOutfitsList
- Changed condition for outfit accordion tab showing (because now all items are visible, so checking their number doesn't help).
Used here check for a flag added in this fix, which tells whether last applied filter found any matches in the list.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/648/
--HG--
branch : product-engine
|
|
use it for "edit outfit" flatlist controls.
reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/641/
--HG--
branch : product-engine
|
|
- Moved wearable item name comparator from llcofwearables to llwearableitemslist.
- Added wearable item type comparator.
- Added item type and description getters to wearable item base class LLPanelInventoryListItemBase.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/407/
--HG--
branch : product-engine
|
|
by "Shift" button) - fix improved to keep order of multiple selection and to reset the inconsecutive selection.
Reviewed by Richard Nelson at https://codereview.productengine.com/secondlife/r/238/
--HG--
branch : product-engine
|
|
- changed the LLInventoryItemsList::addNewItem() to add item to the list without immediately rearranging
- implemented LLFlatListViewEx::setFilterSubString(), sets up new filter string and filters the list.
- implemented LLFlatListViewEx::filterItems(), filters the list, rearranges and notifies parent about shape changes. The list items are filtered using the notify() functionality, without need in adding/removing them on each filter call. It sends 'match_filter' request to items and interprets the returned zero as sign of matched filter string, i.e. we don't hide items that don't support 'match_filter' action(separators etc).
- filtring of LLOutfitsList.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/342/
--HG--
branch : product-engine
|
|
provide a message suggesting the user try global search.)
Implemented passing of entered filter substring without head spaces to search URI in help message for null filtered results.
* Updated setting "no item message" to use search term from filter editor for avatar & group lists and for inventory panels.
* Updated appropriate translatable strings to get [SEARCH_TERM] substitution.
* Updated processing of filter substring to pass original string to methods applied new filter.
Additional necessary changes
* Changed place to set "no item message" for group list from refresh to where filter is updated (like in avatar lists)
* Removed converting of filter substring to upper case in Places & My Appearance sidepanels (this conversion has already been implemented in where filter is applied)
* Added a separate message for Landmarks to set search URI to secondlife:///app/search/places for Lanmarks panel;
other inventory related panels have URL to all searched categories (secondlife:///app/search/all)
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/326/
--HG--
branch : product-engine
|
|
Reason:
A) incorrect UP arrow handling in accordion control: invisible accordion tab was selected to handle selection.
B) invalid std::map item (in empty map) was used to make selection in Flat List
Fix: added checks against empty map before use front/back item pair before selecting first/last items.
Also updated processing of the UP key in accordion control to not select invisible accordion tab.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/318/
--HG--
branch : product-engine
|
|
a message suggesting the user try global search.)
Partial implementation of help text in case of empty list when filtered for Nearby and Recent lists of People panel:
* Extracted support implementation of several messages for empty list depend of filtering from LLGroupList to LLFlatListEx
* change inheritence of LLGroupList and LLAvatarList from LLFlatListView to LLFlatListViewEx
* updated panel people to init Nearby & Recent lists with appropriate messages.
--HG--
branch : product-engine
|
|
by "Shift" button) - improved the selection of list items by mouse.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/238/
--HG--
branch : product-engine
|
|
|
|
|
|
|
|
picks) - added check that multiple selection is allowed
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/146/
--HG--
branch : product-engine
|
|
Superficial cleanup to change all typedef std::vector<LLUUID> to use a common typedef uuid_vec_t instead.
|
|
LLFlatListView::selectItemPair, bug reason is unknown
--HG--
branch : product-engine
|
|
tray panels)
- moved "No Items" textbox params to widget (flat_list_view.xml)
- set default vertical/horizontal padding to 10 px
- they can be overridden in panel's xml if necessary.
--HG--
branch : product-engine
|
|
--HG--
branch : product-engine
|
|
being moved by keyboard arrow buttons)
--HG--
branch : product-engine
|
|
--HG--
branch : product-engine
|
|
history)
--HG--
branch : product-engine
|
|
header while navigating with keyboard
there was no autoscroll when scrolled by keyboard to _last_ of _first_ item in LLFlatListView.
--HG--
branch : product-engine
|
|
--HG--
branch : product-engine
|
|
list)
--HG--
branch : product-engine
|
|
add return value to notifyXXX functions, may be usefull
--HG--
branch : product-engine
|
|
--HG--
branch : product-engine
|
|
I made it about a year and a half ago; Zero found it while reading code. I had added a return value to LLSD::insert(), but a) did it wrong, and b) broke the STL-like semantics of insert(). So I've put insert() back to returning void and created LLSD::with(), which does what my earlier insert() did. The compiler then caught all the cases where insert()'s return value were being used, and I changed those to use with() instead.
|
|
--HG--
branch : product-engine
|