diff options
Diffstat (limited to 'indra/newview/llpanelmaininventory.cpp')
-rw-r--r-- | indra/newview/llpanelmaininventory.cpp | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index e5c0e4cf9c..4c80adbd46 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -506,9 +506,9 @@ void LLPanelMainInventory::doCreate(const LLSD& userdata) menu_create_inventory_item(getPanel(), bridge, userdata); } } - else if(isGalleryViewMode()) + else { - menu_create_inventory_item(NULL, mInventoryGalleryPanel->getRootFolder(), userdata); + menu_create_inventory_item(NULL, getCurrentSFVRoot(), userdata); } } else @@ -625,6 +625,11 @@ void LLPanelMainInventory::setSearchType(LLInventoryFilter::ESearchType type) { mInventoryGalleryPanel->setSearchType(type); } + if(mSingleFolderMode && isCombinationViewMode()) + { + mCombinationPanelInventory->setSearchType(type); + mCombinationGalleryPanel->setSearchType(type); + } else { getActivePanel()->setSearchType(type); @@ -639,6 +644,10 @@ void LLPanelMainInventory::updateSearchTypeCombo() { search_type = mInventoryGalleryPanel->getSearchType(); } + else if(mSingleFolderMode && isCombinationViewMode()) + { + search_type = mCombinationGalleryPanel->getSearchType(); + } else { search_type = getActivePanel()->getSearchType(); @@ -2280,6 +2289,17 @@ void LLPanelMainInventory::setGallerySelection(const LLUUID& item_id) { mInventoryGalleryPanel->changeItemSelection(item_id); } + else if(mSingleFolderMode && isCombinationViewMode()) + { + if(mCombinationGalleryPanel->getFilter().checkAgainstFilterThumbnails(item_id)) + { + mCombinationGalleryPanel->changeItemSelection(item_id); + } + else + { + mCombinationPanelInventory->setSelection(item_id, false); + } + } } // List Commands // //////////////////////////////////////////////////////////////////////////////// |