diff options
| author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-06-02 21:24:15 +0300 |
|---|---|---|
| committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-06-02 21:24:15 +0300 |
| commit | 07fc011e209ab24069d06df961a000dc7d6de3cf (patch) | |
| tree | 53c0cb5d27430f28b90e0957a046ffd7ec84e44b /indra/llui | |
| parent | 959829bb7ef737bd5d9748dd27e074d23974e654 (diff) | |
SL-19796 Creating folders in list mode does not scroll to new folder
Diffstat (limited to 'indra/llui')
| -rw-r--r-- | indra/llui/llfolderview.cpp | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/indra/llui/llfolderview.cpp b/indra/llui/llfolderview.cpp index 70c2a79d25..19855c9c76 100644 --- a/indra/llui/llfolderview.cpp +++ b/indra/llui/llfolderview.cpp @@ -695,12 +695,20 @@ void LLFolderView::draw() } } - if (mRenameItem && mRenamer && mRenamer->getVisible() && !getVisibleRect().overlaps(mRenamer->getRect())) + if (mRenameItem + && mRenamer + && mRenamer->getVisible() + ) { - // renamer is not connected to the item we are renaming in any form so manage it manually - // TODO: consider stopping on any scroll action instead of when out of visible area - finishRenamingItem(); - } + LLRect renamer_rect; + localRectToOtherView(mRenamer->getRect(), &renamer_rect, mScrollContainer); + if (!mScrollContainer->getRect().overlaps(renamer_rect)) + { + // renamer is not connected to the item we are renaming in any form so manage it manually + // TODO: consider stopping on any scroll action instead of when out of visible area + finishRenamingItem(); + } + } // skip over LLFolderViewFolder::draw since we don't want the folder icon, label, // and arrow for the root folder |
