diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index adf7f08702ecbc28c09a9bbe87fb4e5a42f1e444..db6998b2678be9d054f5ad4a80ef20906529396c 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -330,6 +330,7 @@ BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) else { mFolders.insert(mFolders.begin(), folder); + folder->setShowLoadStatus(true); } folder->setOrigin(0, 0); folder->reshape(getRect().getWidth(), 0); diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 135821f662db00b9acfcc115425097a360d80f9c..8a139647082f10955fcc40656314d7c843a2569a 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -136,7 +136,8 @@ LLFolderViewItem::LLFolderViewItem(LLFolderViewItem::Params p) mListener(p.listener), mArrowImage(p.folder_arrow_image), mBoxImage(p.selection_image), - mDontShowInHierarchy(false) + mDontShowInHierarchy(false), + mShowLoadStatus(false) { refresh(); } @@ -966,10 +967,11 @@ void LLFolderViewItem::draw() } - if ( mIsLoading - && mTimeSinceRequestStart.getElapsedTimeF32() >= gSavedSettings.getF32("FolderLoadingMessageWaitTime") ) + if ( (mIsLoading && mTimeSinceRequestStart.getElapsedTimeF32() >= gSavedSettings.getF32("FolderLoadingMessageWaitTime")) + || (LLInventoryModel::backgroundFetchActive() && mShowLoadStatus) ) { - font->renderUTF8(LLTrans::getString("LoadingData"), 0, text_left, y, sSearchStatusColor, + std::string load_string = LLTrans::getString("LoadingData") + " "; + font->renderUTF8(load_string, 0, text_left, y, sSearchStatusColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, &right_x, FALSE); text_left = right_x; } diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index 620aa070b99a6aa775af10d69798a375ac4aeca7..a43096dcb2efc09269a23ec73dab8876cd0c308a 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -163,6 +163,7 @@ class LLFolderViewItem : public LLView BOOL mIsLoading; LLTimer mTimeSinceRequestStart; bool mDontShowInHierarchy; + bool mShowLoadStatus; // helper function to change the selection from the root. void changeSelectionFromRoot(LLFolderViewItem* selection, BOOL selected); @@ -254,6 +255,8 @@ class LLFolderViewItem : public LLView BOOL getIsCurSelection() { return mIsCurSelection; } BOOL hasVisibleChildren() { return mHasVisibleChildren; } + + void setShowLoadStatus(bool status) { mShowLoadStatus = status; } // Call through to the viewed object and return true if it can be // removed. Returns true if it's removed. diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml index b6995d2122da6c60aecedd60a829db731589ad9c..91402acc0a61f2d3ff1caa1c1f08fb4679ae743e 100644 --- a/indra/newview/skins/default/colors.xml +++ b/indra/newview/skins/default/colors.xml @@ -378,7 +378,7 @@ reference="White_25" /> <color name="InventorySearchStatusColor" - reference="Black" /> + reference="EmphasisColor" /> <color name="LabelDisabledColor" reference="White_25" />