Commit Graph

59 Commits (bd9c0a2e658e183bb8a321cdce546f10b6d76afe)

Author SHA1 Message Date
Alexander Gavriliuk 61a04f5ee1 SL-20288 Lags in Appearance floater (code format in LLAccordionCtrl) 2023-10-11 01:40:05 +02:00
Rye Mutt 2745465c73 Fix leak of item pairs during LLFlatListView destruction 2022-10-19 22:15:17 -04:00
andreykproductengine 183cc7cdfd MAINT-6860 Appearance floater crash due to missnamed variable 2016-10-21 16:59:02 +03:00
andreykproductengine b7b98918eb MAINT-4950 Appearance panel performance improvements. 2016-09-26 21:29:20 +03:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
Richard Linden e340009fc5 second phase summer cleaning
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
2013-08-09 17:11:19 -07:00
Richard Linden a2e22732f1 Summer cleaning - removed a lot of llcommon dependencies to speed up build times
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
2013-07-30 19:13:45 -07:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Oz Linden a5619d16f7 correct licenses (fix problem with license change merge) 2010-10-13 07:24:37 -04:00
Vadim Savchuk b27c892bc5 EXT-8357 FIXED ESC key sometimes failing to de-focus the sidebar.
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
2010-08-17 22:34:50 +03:00
Tofu Linden b459f95551 merge from viewer-release 2010-07-28 10:37:06 +01:00
Mike Antipov 6110cb6a36 EXT-8285 FIXED prevented wrong handling in accordion of the "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
2010-07-28 10:59:53 +03:00
Richard Linden c96caed698 Merge from dessie/viewer-release 2010-07-27 14:44:17 -07:00
Richard Nelson 572e72d8a1 merge 2010-07-20 11:31:23 -07:00
Andrew Dyukov 5a56c79fd4 EXT-7511 FIXED Fixed disappearance of selected item's border in flatlistviews.
- 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
2010-07-15 15:06:35 +03:00
Vadim Savchuk 56af80a2c9 merge
--HG--
branch : product-engine
2010-07-13 18:55:35 +03:00
Vadim Savchuk b5ab9c0703 Manual merge from default branch
Resolved conflicts in llpaneloutfitedit.cpp

--HG--
branch : product-engine
2010-07-13 18:54:16 +03:00
Igor Borovkov 8aec2ce354 EXT-7668 FIXED prohibited deselecting a single selected item w/o using CTRL
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/746/

--HG--
branch : product-engine
2010-07-13 18:43:30 +03:00
Monroe Linden b80ee71bed Fix for reopened EXT-8025
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
2010-07-12 11:28:48 -07:00
Richard Linden 5b1386e5b6 merge 2010-07-09 14:30:49 -07:00
Richard Linden 1f79bee86e EXT-8237 FIX Opening up Edit Outfit- Add More->Shirt causes FPS to drop from 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
2010-07-09 14:26:56 -07:00
Vadim Savchuk 75f8563e0a Merge from default branch
--HG--
branch : product-engine
2010-07-08 14:32:45 +03:00
Paul Guslisty 907918c2de EXT-8052 FIXED (Unnecessary selection border remains on 'People->Nearby' tab)
- Hide selection border before showing no items comment

Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/681/

--HG--
branch : product-engine
2010-07-06 14:34:12 +03:00
Paul Guslisty d5bed7df35 EXT-7565 FIXED Would be nice to preserve selection while switching between 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
2010-07-01 20:00:00 +03:00
Andrew Dyukov cb801fafb2 Comments: EXT-7158 ADDITIONAL FIX Slight changes to fix according to review
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
2010-06-24 16:51:15 +03:00
Andrew Dyukov 9aad53a437 EXT-7158 FIXED Implemented showing of full outfit content if its name or any 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
2010-06-24 01:52:26 +03:00
Yuri Chebotarev ce9ac65014 EXT-7963 FIX introduce new variable "keep_selection_visible_on_reshape" and use it for "edit outfit" flatlist controls.
reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/641/

--HG--
branch : product-engine
2010-06-23 17:43:43 +03:00
Sergei Litovchuk eb3716fab9 EXT-7157 FIXED Implemented outfit items sorting in "My Outfits" tab.
- 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
2010-05-19 17:55:58 +03:00
Eugene Mutavchi 582f6502ff Related to low EXT-6823 (Implement a possibility to select several residents 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
2010-05-05 14:23:22 +03:00
Eugene Mutavchi d6edc4cd12 Implemented normal EXT-7002 (Inventory flat list needs optimization.):
- 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
2010-04-30 18:27:24 +03:00
Mike Antipov 872b4d7ed0 Fixed critical bug EXT-4837 ( [NUX] When filter results in null state, 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
2010-04-28 11:00:53 +03:00
Mike Antipov a00712e951 Fixed major bug EXT-6092 [crashhunters] Crash in LLFlatListView::selectItemPair
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
2010-04-26 17:19:43 +03:00
Mike Antipov 4395d8e9f1 WIP: critical bug EXT-4837 ([NUX] When filter results in null state, provide 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
2010-04-21 10:17:09 +03:00
Eugene Mutavchi 4e4dd52753 Fixed low bug EXT-6823 (Implement a possibility to select several residents 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
2010-04-16 13:18:11 +03:00
Richard Linden a9b806071a fix for bad merge 2010-04-01 16:41:45 -07:00
Richard Nelson 6cc65f9e5f merge 2010-04-01 12:52:04 -07:00
Richard Nelson 7b4046df83 EXT-3531 - Ctrl-P does not work reliably on login 2010-04-01 11:47:21 -07:00
Eugene Mutavchi 7f38ea1474 Fixed normal bug EXT-6659("Ctrl+A" combination allows selecting of several picks) - added check that multiple selection is allowed
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/146/

--HG--
branch : product-engine
2010-04-01 11:32:51 +03:00
Loren Shih 114e5ca083 EXT-5940 : Typedef all vector<LLUUID>'s
Superficial cleanup to change all typedef std::vector<LLUUID> to use a common typedef uuid_vec_t instead.
2010-03-29 16:33:35 -04:00
Igor Borovkov a4ebe8b9d5 possible defensive fix for EXT-6092 [crashhunters] Crash in LLFlatListView::selectItemPair, bug reason is unknown
--HG--
branch : product-engine
2010-03-09 15:34:09 +02:00
Mike Antipov 667ae0b9a3 Fixed critical bug EXT-4845 (Create padding around text messages in the side 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
2010-02-04 15:54:56 +02:00
Eugene Mutavchi 3b34147cea Fixed low bug EXT-4721(Green border around multi-selected people)
--HG--
branch : product-engine
2010-01-29 19:55:41 +02:00
Eugene Mutavchi e8cbd586a9 Fixed normal bug EXT-4379 (Scroller doesn't follow the cursor if cursor is being moved by keyboard arrow buttons)
--HG--
branch : product-engine
2010-01-18 17:10:11 +02:00
Vadim Savchuk 21d5410d1a Fixed potential crash if LLFlatListView is created as a dummy widget.
--HG--
branch : product-engine
2010-01-05 19:32:25 +02:00
Eugene Mutavchi 170719096a Fixed low bug EXT-3007 (Viewer stalls while resetting filter in teleport history)
--HG--
branch : product-engine
2009-12-23 17:01:02 +02:00
Yuri Chebotarev aa56836ab7 additional fix for (EXT-3601) Accordion Ctrl didn't autoscroll to accordion header while navigating with keyboard
there was no autoscroll when scrolled by keyboard to _last_ of _first_ item in LLFlatListView.

--HG--
branch : product-engine
2009-12-21 18:15:44 +02:00
Yuri Chebotarev 3bf89afebe fix Task EXT-1190 Accordion should support keyboard accessability
--HG--
branch : product-engine
2009-12-18 14:36:22 +02:00
Paul Guslisty 2b4fc69b1f Fixed low bug EXT - 3244 ('No people' is visible partly in the empty Recent list)
--HG--
branch : product-engine
2009-12-09 13:32:18 +02:00
Yuri Chebotarev c6177836ec no ticket, minor refactoring.
add return value to notifyXXX functions, may be usefull

--HG--
branch : product-engine
2009-12-07 12:04:27 +02:00
Yuri Chebotarev 6061c0fb5d fix for EXT-1190 Accordion should support keyboard accessability
--HG--
branch : product-engine
2009-12-03 13:47:52 +02:00