Bag Mom

BagMom unifies your bags, bank, Reagent bank, Warband, and Void Storage into a single, high-performance inventory interface. Fully cross-platform, optimized for lag-free performance, featuring smart auto-categorization and multi-language support.

File Details

BagMom_04-07-26.zip

  • R
  • Jul 4, 2026
  • 33.59 KB
  • 25
  • 12.1.0+5
  • Classic + 3

File Name

BagMom_04-07-26.zip

Supported Versions

  • 12.1.0
  • 12.0.7
  • 5.5.4
  • 2.5.6
  • 2.5.5
  • 1.15.8

Changelog

All notable changes to BagMom are documented in this file.

[2.1.0] — 2026-07-04

Added

  • Local item search fallback for Classic Era and TBC/Classic clients without C_Container.SetItemSearch.

  • Retail Reagent Bag (bagID 5) with a dedicated section at the bottom of the bag window.

  • Config:HasReagentBag(), GetReagentBagID(), and safe bag iteration (0–4 on Classic, +5 on Retail when equipped).

  • Compat:MatchesSearch() resolves localized item names via C_Item.GetItemInfo / GetItemInfo with case-insensitive matching.

  • Search:ApplyFilterToButton() dims non-matching slots (SetAlpha(0.2) + desaturate) during incremental updates.

 

Changed

  • Search box on legacy clients stores filter text in Compat.searchText and refreshes via UpdateItems() instead of Blizzard search API.

  • Retail clients continue to use native SetItemSearch and INVENTORY_SEARCH_UPDATE.

 

Fixed

  • Item button pool no longer uses invalid ItemButtonTemplate fallback on Retail.

  • Template detection probes ContainerFrameItemButtonTemplate at first bag open, not at addon load.

  • Item button pool is created lazily when bags/bank are first shown.

  • Bag window layout uses 14 columns and compact category headers.

 

[2.0.0] — 2026-07-04

 

Added

  • Compat.lua compatibility layer for Retail, Classic Era, and Classic (TBC/Wrath/Cata/MoP).

  • Unified container API wrappers (GetContainerItemInfo, slot counts, sorting, item search).

  • Emulated BAG_UPDATE_DELAYED on clients without the native event (Classic Era).

  • Classic settings panel fallback via InterfaceOptions_AddCategory when Settings API is absent.

  • CreateFramePool fallback and classic-safe item button setup/update paths.

 

Changed

  • Multi-version ## Interface manifest: Retail 12.x, Classic Era 1.15.x, TBC/Wrath/Cata/MoP Classic.

  • Bags.lua, Bank.lua, Categories.lua, Search.lua, and Sort.lua now route through BM.Compat.

  • Warband bank and Void Storage tabs gated by Compat:IsWarbandAvailable() / Compat:IsVoidStorageAvailable().

  • Reagent bank hidden on Classic Era via Compat:IsReagentBankAvailable().

 

[1.5.0] — 2026-07-04

 

Added

  • Full UA/EN localization in Config.lua with automatic locale detection (ukUA → Ukrainian, all others → English).

  • Categories.lua with virtual item sections: Equipment, Reagents, Consumables, Other (empty slots follow without a header).

  • Category-aware grid layout in Bags.lua and Bank.lua with incremental relayout when item category changes.

  • Void.lua with custom BagMomVoidFrame styled like bags/bank; hooks VOID_STORAGE_OPEN / VOID_STORAGE_CLOSE in Replace.lua.

  • Void storage updates via VOID_STORAGE_UPDATE and VOID_STORAGE_CONTENTS_UPDATE events.

 

Changed

  • All user-facing strings moved to BM.L (Core, Sort, UI, Theme, Options, Bags, Bank, Void).

  • Window scale now applies to the void frame as well.

  • Final .toc load order: Categories.lua before UI/Bags; Void.lua after Bank.

 

Notes

  • Void Storage was removed from Retail in patch 11.2.0; Void.lua initializes only when Blizzard void APIs/frames are present.

 

[1.4.1] — 2026-07-04

 

Added

  • Bank.lua with custom BagMomBankFrame matching BagMom bag theme.

  • Bank views: Character (-1, bags 5–11), Reagent bank, and Account/Warband tabs via C_Bank.

  • Tab switchers for character, account, and reagent bank modes.

  • Incremental bank updates with pendingBagUpdates and BAG_UPDATE_DELAYED.

  • Bank frame position saved to BagMom_DB.bankPosition.

  • Replace.lua hooks for BANKFRAME_OPENED / BANKFRAME_CLOSED and Blizzard BankFrame suppression.

 

Changed

  • Bank toolbar moved into BagMomBankFrame (removed overlay on default BankFrame).

  • Grid columns read from profile.bankColumns (default 14).

  • Config.lua extended with bank bag helpers and BM.L bank strings.

 

[1.4.0] — 2026-07-04

 

Added

  • Options.lua with Blizzard Settings UI integration via Settings.RegisterVerticalLayoutCategory.

  • Profile storage under BagMom_DB.profile (windowScale, sortOnOpen, sortBankOnOpen, bankColumns, highlightQuality).

  • Localization table BM.L (Ukrainian defaults) for settings strings.

  • Window scale slider (0.75–1.50) applied to BagMom frames at login and on change.

  • Bank column count setting (8–16, default 14) reserved for upcoming Bank.lua.

 

Changed

  • Config.lua expanded with profile helpers, legacy migration, and clamp utilities.

  • Slash commands and highlight logic now sync with BagMom_DB.profile.

  • Addon author updated to Mykola.

 

[1.3.0] — 2026-07-04

 

Added

  • Config.lua module with layout constants, held-bag helpers, and version metadata.

  • Incremental bag updates via BAG_UPDATEpendingBagUpdatesBAG_UPDATE_DELAYED.

  • slotButtons index and bagSizes cache; pool rebuild only when bag slot counts change.

  • Targeted UpdateItems(bagID) and UpdateCooldowns(bagID) paths.

 

Changed

  • Bags:Refresh() now calls EnsureLayout() + UpdateItems() instead of full pool rebuild.

  • UNIT_INVENTORY_CHANGED triggers layout rebuild only when bag equipment changes.

  • Auto-sort and toolbar sort actions refresh item data without releasing the button pool.

  • Addon author set to IceDNicco.

 

Performance

  • Eliminated release/reacquire of the item button pool on every BAG_UPDATE.

 

[1.2.2] — 2026-07-04

 

Fixed

  • Item buttons no longer error on Initialize — content panel now implements IsCombinedBagContainer().

 

[1.2.1] — 2026-07-04

 

Fixed

  • Frame backdrop coloring no longer calls SetColorTexture on BackdropTemplate frames (uses SetBackdropColor instead).

 

[1.2.0] — 2026-07-04

 

Added

  • Custom dark UI theme (Theme.lua) with cyan accent colors.

  • Flat header, custom search field, and minimal close button.

  • Custom item slot backgrounds replacing default Blizzard wing textures.

  • Top-to-bottom item grid layout inside a dedicated content panel.

 

Changed

  • Bag frame no longer uses PortraitFrameTemplate or default Blizzard window chrome.

  • Toolbar buttons restyled as flat icon buttons matching the BagMom theme.

 

[1.1.1] — 2026-07-04

 

Fixed

  • Bag frame creation no longer errors on retail PortraitFrameTemplate (use SetTitle / SetPortraitToAsset instead of missing TitleText).

 

[1.1.0] — 2026-07-04

 

Added

  • Custom bag frame that fully replaces the default Blizzard bag UI.

  • Combined view of backpack, equipped bags, and reagent bag in one window.

  • Built-in search box wired to C_Container.SetItemSearch.

  • Free/total slot counter in the bag footer.

  • Movable bag window with saved position (BagMom_DB.position).

  • Overrides for ToggleBackpack, ToggleBag, OpenBackpack, OpenAllBags, and CloseAllBags.

 

Changed

  • Bag toolbar (sort / reagent sort) is now part of the custom bag frame.

  • Quality glow is applied through the custom bag item update path.

  • Auto-sort on bag open refreshes the custom frame silently.

 

Removed

  • Toolbar overlay on default Blizzard bag frames (replaced by custom UI).

 

[1.0.0] — 2026-07-04

 

Added

  • Toolbar on bag and bank frames with one-click sort buttons.

  • Reagent bank sort button on the bag toolbar.

  • Item quality glow highlighting (uncommon and above).

  • Optional auto-sort on bag open (/bagmom autosort).

  • Optional auto-sort on bank open (/bagmom autobank).

  • Slash commands: /bagmom and /bm (help, sort, bank, reagents, autosort, autobank, quality).

  • Saved settings via BagMom_DB.