diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-02-17 02:31:35 +0200 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-02-17 02:31:35 +0200 |
commit | 375d01e17aae74f7e2d8bc21a976b11964e8ce59 (patch) | |
tree | 44d5a7935fd0c4dde0f69d00e3ab4f103d1962a2 /indra/llui | |
parent | 8032b2d72e9c38f11f8f3c177873b96104d433eb (diff) |
SL-18735 Fix scroll not following item for long enough
Diffstat (limited to 'indra/llui')
-rw-r--r-- | indra/llui/llfolderview.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/indra/llui/llfolderview.cpp b/indra/llui/llfolderview.cpp index 503a18f50d..62c311f522 100644 --- a/indra/llui/llfolderview.cpp +++ b/indra/llui/llfolderview.cpp @@ -1798,14 +1798,14 @@ void LLFolderView::update() LLFolderViewItem* scroll_to_item = mSelectedItems.back(); scrollToShowItem(scroll_to_item, constraint_rect); // continue scrolling until animated layout change is done - bool selected_filter_finished = true; - if (scroll_to_item && scroll_to_item->getViewModelItem()) + bool selected_filter_finished = getRoot()->getViewModelItem()->getLastFilterGeneration() >= filter_object.getFirstSuccessGeneration(); + if (selected_filter_finished && scroll_to_item && scroll_to_item->getViewModelItem()) { selected_filter_finished = scroll_to_item->getViewModelItem()->getLastFilterGeneration() >= filter_object.getFirstSuccessGeneration(); } if (filter_finished && selected_filter_finished) { - bool needs_arrange = needsArrange(); + bool needs_arrange = needsArrange() || getRoot()->needsArrange(); if (mParentFolder) { needs_arrange |= (bool)mParentFolder->needsArrange(); |