diff options
author | Leslie Linden <leslie@lindenlab.com> | 2011-11-03 15:11:29 -0700 |
---|---|---|
committer | Leslie Linden <leslie@lindenlab.com> | 2011-11-03 15:11:29 -0700 |
commit | 5d2d22322527bf303d24c15fde15025c045b7654 (patch) | |
tree | 0358285e19850b12925e98949729962d649d8041 /indra | |
parent | ede74731ab154a5f661cc64d8b47ed97c7863d89 (diff) |
EXP-1538 FIX -- New tags shown for items in subfolders in received items panel which remain after minimizing parent folder
* "new" tag determination for LLInboxFolderViewItem is now done on "addToFolder" rather than at construction time
to avoid computing "new" for items not directly in the top level folder.
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llpanelmarketplaceinboxinventory.cpp | 26 | ||||
-rw-r--r-- | indra/newview/llpanelmarketplaceinboxinventory.h | 5 |
2 files changed, 17 insertions, 14 deletions
diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp index b9fb5b8c55..df89adb8da 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceinboxinventory.cpp @@ -249,12 +249,25 @@ LLInboxFolderViewItem::LLInboxFolderViewItem(const Params& p) , mFresh(false) { #if SUPPORTING_FRESH_ITEM_COUNT - computeFreshness(); - initBadgeParams(p.new_badge()); #endif } +BOOL LLInboxFolderViewItem::addToFolder(LLFolderViewFolder* folder, LLFolderView* root) +{ + BOOL retval = LLFolderViewItem::addToFolder(folder, root); + +#if SUPPORTING_FRESH_ITEM_COUNT + // Compute freshness if our parent is the root folder for the inbox + if (mParentFolder == mRoot) + { + computeFreshness(); + } +#endif + + return retval; +} + BOOL LLInboxFolderViewItem::handleDoubleClick(S32 x, S32 y, MASK mask) { return TRUE; @@ -310,14 +323,5 @@ void LLInboxFolderViewItem::deFreshify() gSavedPerAccountSettings.setU32("LastInventoryInboxActivity", time_corrected()); } -void LLInboxFolderViewItem::setCreationDate(time_t creation_date_utc) -{ - mCreationDate = creation_date_utc; - - if (mParentFolder == mRoot) - { - computeFreshness(); - } -} // eof diff --git a/indra/newview/llpanelmarketplaceinboxinventory.h b/indra/newview/llpanelmarketplaceinboxinventory.h index 09b14ec547..d6b827ee3e 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.h +++ b/indra/newview/llpanelmarketplaceinboxinventory.h @@ -69,7 +69,7 @@ public: }; LLInboxFolderViewFolder(const Params& p); - + void draw(); void selectItem(); @@ -102,6 +102,7 @@ public: LLInboxFolderViewItem(const Params& p); + BOOL addToFolder(LLFolderViewFolder* folder, LLFolderView* root); BOOL handleDoubleClick(S32 x, S32 y, MASK mask); void draw(); @@ -114,8 +115,6 @@ public: bool isFresh() const { return mFresh; } protected: - void setCreationDate(time_t creation_date_utc); - bool mFresh; }; |