Added a new "Quiet" query for folder types, so I don't have to special case all the folders where we don't want UI notifications from inventory offers.
Fixed a bug where a sidepanel was considered active even if the sidetray was closed.
--HG--
branch : avatar-pipeline
EXT-3067 : INFRASTRUCTURE : LLInventoryPanel::modelChanged cleanup
Added REBUILD mask to inventory observer.
Added new logic for rebuilding linked items when an item is purged.
Took out atrocious expensive refresh that was being triggered on most LLInventoryPanel::modelChanged.
--HG--
branch : avatar-pipeline
Changed logic for getActiveInventory so that it considers InventorySP.
Removed getActiveInventory and replaced with getActiveInventoryPanel since that follows its current usage.
This currently contains a bug because the InventorySP always thinks it's open.
--HG--
branch : avatar-pipeline
EXT-2456 : Usability: Inventory > Clothing > context menu not intuitive
RightClickFetchInventoryObserver now works correctly to update menu
FetchInventoryDescendents now triggers notifyObservers properly
Fixed up gInventory.notifyObservers logic
--HG--
branch : avatar-pipeline
Added gInventory.notifyObservers to idle callbacks so it gets triggered without explicit notifyObservers synchronization.
Added more state tracking for attachments, wearables, and links of those types, so that they're marked as changed properly.
Changed FT_CATEGORY -> FT_ROOT_INVENTORY
Removed AT_ROOT_CATEGORY
This parallels llasset cleanup work done on viewer-side for removing the unused AT_ROOT_CATEGORY type, and for making it more clear that a folder of type FT_CATEGORY (now FT_ROOT_INVENTORY) is your "My Inventory" folder.
Removed AT_ROOT_CATEGORY and FT_ROOT_CATEGORY since those types are unused. Changed FT_CATEGORY to FT_ROOT_INVENTORY to make its purpose more clear.
This change assumes that no agent inventories have category type 9 for either inventory type or folder preferred type.
--HG--
branch : avatar-pipeline
EXT-2432 : Diagnose warning spam: "[X] does not exist in either view or model, but notification triggered"
Restructured llinventorypanel's handling of add/remove/structure so it's easier to understand
Removed false positive "notification triggered" warning since objects can now exist outside of various inventory panels' directories.
--HG--
branch : avatar-pipeline
No longer allowing recursive calls to gInventory.notifyObservers. Added debugging tools to catch when this happens.
This fixes the symptom, but we'll also need to remove whatever code is causing the recursive calls.
Added a version field at the beginning of inventory cache files. If version field is not found or does not match expectected value, then the cache is discarded. In 1.23, the version line triggers a warning but is otherwise ignored.
Reviewed by Seraph.
Major fix to guarantee no broken links. If a link comes through from the cache but its baseobj doesn't also exist in the cache, then don't add the link to memory yet, and uncache the folder.
Reviewed by: Nyx, Vir.
For DEV-34223 : AVP Current Outfit Folder
For DEV-37485 : AVP Appearance Side Panel
For DEV-35335 : AVP Automatic Folder Classification
This merges the Appearance Side Panel / Ensemble Typing / Current Outfit Folder work for the AVP team.