diff options
-rw-r--r-- | indra/newview/llfolderview.cpp | 11 | ||||
-rw-r--r-- | indra/newview/llfolderviewitem.cpp | 8 |
2 files changed, 9 insertions, 10 deletions
diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index b9b0f4be1a..28b95e751e 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -209,7 +209,7 @@ LLFolderView::LLFolderView(const Params& p) mStatusTextBox(NULL) { mRoot = this; - + mShowLoadStatus = p.show_load_status(); LLRect rect = p.rect; @@ -323,15 +323,10 @@ void LLFolderView::setSortOrder(U32 order) if (order != mSortOrder) { LLFastTimer t(FTM_SORT); + mSortOrder = order; - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - (*fit)->sortBy(order); - } - + sortBy(order); arrangeAll(); } } diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 02fa77f6ab..87bbe76320 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -1904,8 +1904,12 @@ void LLFolderViewFolder::sortBy(U32 order) (*fit)->sortBy(order); } - mFolders.sort(mSortFunction); - mItems.sort(mSortFunction); + // Don't sort the topmost folders (My Inventory and Library) + if (mListener->getUUID().notNull()) + { + mFolders.sort(mSortFunction); + mItems.sort(mSortFunction); + } if (order & LLInventoryFilter::SO_DATE) { |