diff options
| author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2015-10-12 16:24:05 -0400 |
|---|---|---|
| committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2015-10-12 16:24:05 -0400 |
| commit | a16a6034c25c5e78331ef1bd13485df8759456e5 (patch) | |
| tree | c1d1ef6f387daa81039b27a2cdb435a31c25b5d7 /indra/newview/llfolderviewmodelinventory.cpp | |
| parent | 5b58bfb937f7f996c7f1b97f15b1c837aa23a463 (diff) | |
| parent | 4312629e7c5749b86add9d42e6e550602f34dbf5 (diff) | |
merge
Diffstat (limited to 'indra/newview/llfolderviewmodelinventory.cpp')
| -rwxr-xr-x | indra/newview/llfolderviewmodelinventory.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/indra/newview/llfolderviewmodelinventory.cpp b/indra/newview/llfolderviewmodelinventory.cpp index 44eda4d6c0..e9f80b795a 100755 --- a/indra/newview/llfolderviewmodelinventory.cpp +++ b/indra/newview/llfolderviewmodelinventory.cpp @@ -109,6 +109,29 @@ bool LLFolderViewModelInventory::contentsReady() return !LLInventoryModelBackgroundFetch::instance().folderFetchActive(); } +bool LLFolderViewModelInventory::isFolderComplete(LLFolderViewFolder* folder) +{ + LLFolderViewModelItemInventory* modelp = static_cast<LLFolderViewModelItemInventory*>(folder->getViewModelItem()); + LLUUID cat_id = modelp->getUUID(); + if (cat_id.isNull()) + { + return false; + } + LLViewerInventoryCategory* cat = gInventory.getCategory(cat_id); + if (cat) + { + // don't need to check version - descendents_server == -1 if we have no data + S32 descendents_server = cat->getDescendentCount(); + S32 descendents_actual = cat->getViewerDescendentCount(); + if (descendents_server == descendents_actual + || (descendents_actual > 0 && descendents_server == -1)) // content was loaded in previous session + { + return true; + } + } + return false; +} + void LLFolderViewModelItemInventory::requestSort() { LLFolderViewModelItemCommon::requestSort(); |
