From b03501473a1c9a6e6daf9bf4bb4b8404a8fd8e7a Mon Sep 17 00:00:00 2001 From: Caerdon Date: Fri, 8 Sep 2023 17:41:48 -0600 Subject: [PATCH] Ensure ProfessionFrame is hooked only once it's been loaded --- CaerdonWardrobe.toc | 2 +- features/TradeSkill.lua | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/CaerdonWardrobe.toc b/CaerdonWardrobe.toc index 8559e2e..a8c6b70 100755 --- a/CaerdonWardrobe.toc +++ b/CaerdonWardrobe.toc @@ -5,7 +5,7 @@ ## Title: Caerdon Wardrobe ## Notes: Shows BOE / BOA, openable, and unlearned pets, toys, mounts and wardrobe indicator on bank / bag / auction / merchant / guild bank / loot frame / loot roll / encounter journal slots ## Author: Caerdon -## Version: v3.4.2 +## Version: v3.4.3 ## SavedVariables: CaerdonWardrobeConfig ## OptionalDeps: WagoAnalytics, WoWUnit, AdiBags, AngrierWorldQuests, ArkInventory, Bagnon, BaudBag, cargBags_Nivaya, Combuctor, ElvUI, Inventorian, KkthnxUI, LiteBag, Pawn, Skillet, Sorted, VenturePlan, WorldQuestsList, WorldQuestTracker, ZygorGuidesViewer diff --git a/features/TradeSkill.lua b/features/TradeSkill.lua index f814dfb..b5b55f8 100644 --- a/features/TradeSkill.lua +++ b/features/TradeSkill.lua @@ -8,16 +8,18 @@ function TradeSkillMixin:GetName() end function TradeSkillMixin:Init() - return { "TRADE_SKILL_SHOW" } + return { "ADDON_LOADED", "TRADE_SKILL_SHOW" } end -function TradeSkillMixin:TRADE_SKILL_SHOW(name) - if not self.isHooked then - self.isHooked = true +function TradeSkillMixin:ADDON_LOADED(name) + if name == "Blizzard_Professions" then ScrollUtil.AddInitializedFrameCallback(ProfessionsFrame.CraftingPage.RecipeList.ScrollBox, function (...) self:OnInitializedFrame(...) end, ProfessionsFrame.CraftingPage.RecipeList, false) hooksecurefunc(ProfessionsFrame.CraftingPage.SchematicForm, "Init", function (...) self:OnSchematicFormInit(...) end) -- hooksecurefunc(ProfessionsFrame, "Refresh", function (...) self:Refresh(...) end) - end + end +end + +function TradeSkillMixin:TRADE_SKILL_SHOW(name) end function TradeSkillMixin:OnInitializedFrame(listFrame, frame, elementData)