Comments: EXT-7158 ADDITIONAL FIX Slight changes to fix according to review
Added additional check to avoid deselcting of items when filter is applied and made a couple of renames according to Mike's comments in review at https://codereview.productengine.com/secondlife/r/648/ --HG-- branch : product-enginemaster
parent
f5f43b5d3a
commit
cb801fafb2
|
|
@ -1227,7 +1227,7 @@ LLFlatListViewEx::LLFlatListViewEx(const Params& p)
|
|||
, mNoFilteredItemsMsg(p.no_filtered_items_msg)
|
||||
, mNoItemsMsg(p.no_items_msg)
|
||||
, mForceShowingUnmatchedItems(false)
|
||||
, mLastFilterSucceded(false)
|
||||
, mHasMatchedItems(false)
|
||||
{
|
||||
|
||||
}
|
||||
|
|
@ -1285,7 +1285,7 @@ void LLFlatListViewEx::filterItems()
|
|||
item_panel_list_t items;
|
||||
getItems(items);
|
||||
|
||||
mLastFilterSucceded = false;
|
||||
mHasMatchedItems = false;
|
||||
for (item_panel_list_t::iterator
|
||||
iter = items.begin(),
|
||||
iter_end = items.end();
|
||||
|
|
@ -1296,13 +1296,16 @@ void LLFlatListViewEx::filterItems()
|
|||
// i.e. we don't hide items that don't support 'match_filter' action, separators etc.
|
||||
if (0 == pItem->notify(action))
|
||||
{
|
||||
mLastFilterSucceded = true;
|
||||
mHasMatchedItems = true;
|
||||
pItem->setVisible(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
// TODO: implement (re)storing of current selection.
|
||||
selectItem(pItem, false);
|
||||
if(!mForceShowingUnmatchedItems)
|
||||
{
|
||||
selectItem(pItem, false);
|
||||
}
|
||||
pItem->setVisible(mForceShowingUnmatchedItems);
|
||||
}
|
||||
}
|
||||
|
|
@ -1311,9 +1314,9 @@ void LLFlatListViewEx::filterItems()
|
|||
notifyParentItemsRectChanged();
|
||||
}
|
||||
|
||||
bool LLFlatListViewEx::wasLasFilterSuccessfull()
|
||||
bool LLFlatListViewEx::hasMatchedItems()
|
||||
{
|
||||
return mLastFilterSucceded;
|
||||
return mHasMatchedItems;
|
||||
}
|
||||
|
||||
//EOF
|
||||
|
|
|
|||
|
|
@ -488,7 +488,7 @@ public:
|
|||
/**
|
||||
* Returns true if last call of filterItems() found at least one matching item
|
||||
*/
|
||||
bool wasLasFilterSuccessfull();
|
||||
bool hasMatchedItems();
|
||||
|
||||
protected:
|
||||
LLFlatListViewEx(const Params& p);
|
||||
|
|
@ -512,7 +512,7 @@ private:
|
|||
/**
|
||||
* True if last call of filterItems() found at least one matching item
|
||||
*/
|
||||
bool mLastFilterSucceded;
|
||||
bool mHasMatchedItems;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -914,7 +914,7 @@ void LLOutfitsList::applyFilterToTab(
|
|||
{
|
||||
// hide tab if its title doesn't pass filter
|
||||
// and it has no visible items
|
||||
tab->setVisible(list->wasLasFilterSuccessfull());
|
||||
tab->setVisible(list->hasMatchedItems());
|
||||
|
||||
// remove title highlighting because it might
|
||||
// have been previously highlighted by less restrictive filter
|
||||
|
|
|
|||
Loading…
Reference in New Issue