summaryrefslogtreecommitdiff
path: root/indra/newview/llinventoryitemslist.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llinventoryitemslist.cpp')
-rw-r--r--indra/newview/llinventoryitemslist.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/indra/newview/llinventoryitemslist.cpp b/indra/newview/llinventoryitemslist.cpp
index 2d1d401cd4..9b592e79af 100644
--- a/indra/newview/llinventoryitemslist.cpp
+++ b/indra/newview/llinventoryitemslist.cpp
@@ -322,7 +322,7 @@ LLInventoryItemsList::Params::Params()
LLInventoryItemsList::LLInventoryItemsList(const LLInventoryItemsList::Params& p)
: LLFlatListViewEx(p)
, mNeedsRefresh(false)
-, mPrevVisibility(false)
+, mForceRefresh(false)
{
// TODO: mCommitOnSelectionChange is set to "false" in LLFlatListView
// but reset to true in all derived classes. This settings might need to
@@ -356,14 +356,13 @@ boost::signals2::connection LLInventoryItemsList::setRefreshCompleteCallback(con
void LLInventoryItemsList::doIdle()
{
- bool cur_visibility = getVisible();
- if(cur_visibility != mPrevVisibility || mNeedsRefresh)
+ if (!mNeedsRefresh) return;
+
+ if (isInVisibleChain() || mForceRefresh)
{
refresh();
mRefreshCompleteSignal(this, LLSD());
-
- mPrevVisibility = getVisible();
}
}
@@ -414,6 +413,7 @@ void LLInventoryItemsList::refresh()
bool needs_refresh = add_limit_exceeded;
setNeedsRefresh(needs_refresh);
+ setForceRefresh(needs_refresh);
}
void LLInventoryItemsList::computeDifference(