diff --git a/ShestakUI/Core/API.lua b/ShestakUI/Core/API.lua index ae9cf32a07..616d186b8c 100644 --- a/ShestakUI/Core/API.lua +++ b/ShestakUI/Core/API.lua @@ -176,11 +176,15 @@ end ---------------------------------------------------------------------------------------- -- Kill object function ---------------------------------------------------------------------------------------- +local HiddenFrame = CreateFrame("Frame") +HiddenFrame:Hide() local function Kill(object) if object.UnregisterAllEvents then object:UnregisterAllEvents() + object:SetParent(T.HiddenFrame) + else + object.Show = T.dummy end - object.Show = T.dummy object:Hide() end diff --git a/ShestakUI/Modules/Blizzard/Kill.lua b/ShestakUI/Modules/Blizzard/Kill.lua index 0419f1f311..70676aec1e 100644 --- a/ShestakUI/Modules/Blizzard/Kill.lua +++ b/ShestakUI/Modules/Blizzard/Kill.lua @@ -17,9 +17,7 @@ Kill:SetScript("OnEvent", function(self, event, addon) InterfaceOptionsFrameCategoriesButton11:SetAlpha(0) local function KillRaidFrame() - CompactRaidFrameManager:UnregisterAllEvents() - if not InCombatLockdown() then CompactRaidFrameManager:Hide() end - + CompactRaidFrameManager:Kill() local shown = CompactRaidFrameManager_GetSetting("IsShown") if shown and shown ~= "0" then CompactRaidFrameManager_SetSetting("IsShown", "0") @@ -29,6 +27,8 @@ Kill:SetScript("OnEvent", function(self, event, addon) hooksecurefunc("CompactRaidFrameManager_UpdateShown", function() KillRaidFrame() end) + CompactRaidFrameManager:HookScript("OnShow", KillRaidFrame) + CompactRaidFrameContainer:UnregisterAllEvents() KillRaidFrame() @@ -52,7 +52,7 @@ Kill:SetScript("OnEvent", function(self, event, addon) _G[name.."HealthBar"]:UnregisterAllEvents() _G[name.."ManaBar"]:UnregisterAllEvents() end - + if CompactPartyFrame then KillPartyFrame() elseif CompactPartyFrame_Generate then