diff options
| author | Oz Linden <oz@lindenlab.com> | 2011-05-04 09:38:29 -0400 |
|---|---|---|
| committer | Oz Linden <oz@lindenlab.com> | 2011-05-04 09:38:29 -0400 |
| commit | 383fccbd57ef273aa803497ad87cf9badc5db90a (patch) | |
| tree | ab042292d129a92092b35accde69eb57a3565389 /indra/newview/llinventoryfilter.cpp | |
| parent | f5bb046c5d3d393352b5b90424837a3d213dfbb9 (diff) | |
| parent | b9bb792c478d703c6442351ecb563c0a67f77111 (diff) | |
merge changes for viewer-development before mesh merge
Diffstat (limited to 'indra/newview/llinventoryfilter.cpp')
| -rw-r--r-- | indra/newview/llinventoryfilter.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index e22363c2f6..dee15a1efd 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -510,9 +510,15 @@ void LLInventoryFilter::setHoursAgo(U32 hours) { if (mFilterOps.mHoursAgo != hours) { + bool are_date_limits_valid = mFilterOps.mMinDate == time_min() && mFilterOps.mMaxDate == time_max(); + + bool is_increasing = hours > mFilterOps.mHoursAgo; + bool is_increasing_from_zero = is_increasing && !mFilterOps.mHoursAgo; + // *NOTE: need to cache last filter time, in case filter goes stale - BOOL less_restrictive = (mFilterOps.mMinDate == time_min() && mFilterOps.mMaxDate == time_max() && hours > mFilterOps.mHoursAgo); - BOOL more_restrictive = (mFilterOps.mMinDate == time_min() && mFilterOps.mMaxDate == time_max() && hours <= mFilterOps.mHoursAgo); + BOOL less_restrictive = (are_date_limits_valid && ((is_increasing && mFilterOps.mHoursAgo)) || !hours); + BOOL more_restrictive = (are_date_limits_valid && (!is_increasing && hours) || is_increasing_from_zero); + mFilterOps.mHoursAgo = hours; mFilterOps.mMinDate = time_min(); mFilterOps.mMaxDate = time_max(); |
