From 3939064d26f1722c2e0f1c7270315e612a6638e5 Mon Sep 17 00:00:00 2001 From: Xurkon Date: Wed, 18 Mar 2026 22:07:46 -0500 Subject: [PATCH] fix: patch LibDBIcon-1.0 SetFromAlpha for older clients --- Libs/LibDBIcon-1.0/LibDBIcon-1.0.lua | 52 +++++++++++++++++++--------- 1 file changed, 36 insertions(+), 16 deletions(-) diff --git a/Libs/LibDBIcon-1.0/LibDBIcon-1.0.lua b/Libs/LibDBIcon-1.0/LibDBIcon-1.0.lua index 94dc315..663fe94 100644 --- a/Libs/LibDBIcon-1.0/LibDBIcon-1.0.lua +++ b/Libs/LibDBIcon-1.0/LibDBIcon-1.0.lua @@ -260,14 +260,24 @@ local function createButton(name, object, db) button:SetScript("OnMouseDown", onMouseDown) button:SetScript("OnMouseUp", onMouseUp) - button.fadeOut = button:CreateAnimationGroup() - local animOut = button.fadeOut:CreateAnimation("Alpha") - animOut:SetOrder(1) - animOut:SetDuration(0.2) - animOut:SetFromAlpha(1) - animOut:SetToAlpha(0) - animOut:SetStartDelay(1) - button.fadeOut:SetToFinalAlpha(true) + if button.CreateAnimationGroup then + button.fadeOut = button:CreateAnimationGroup() + local animOut = button.fadeOut:CreateAnimation("Alpha") + animOut:SetOrder(1) + animOut:SetDuration(0.2) + if animOut.SetFromAlpha then + animOut:SetFromAlpha(1) + animOut:SetToAlpha(0) + elseif animOut.SetChange then + animOut:SetChange(-1) + end + animOut:SetStartDelay(1) + if button.fadeOut.SetToFinalAlpha then + button.fadeOut:SetToFinalAlpha(true) + end + else + button.fadeOut = { Play = function() end, Stop = function() end } + end lib.objects[name] = button @@ -463,14 +473,24 @@ for name, button in next, lib.objects do button:SetScript("OnMouseUp", onMouseUp) if not button.fadeOut then -- Upgrade to 39 - button.fadeOut = button:CreateAnimationGroup() - local animOut = button.fadeOut:CreateAnimation("Alpha") - animOut:SetOrder(1) - animOut:SetDuration(0.2) - animOut:SetFromAlpha(1) - animOut:SetToAlpha(0) - animOut:SetStartDelay(1) - button.fadeOut:SetToFinalAlpha(true) + if button.CreateAnimationGroup then + button.fadeOut = button:CreateAnimationGroup() + local animOut = button.fadeOut:CreateAnimation("Alpha") + animOut:SetOrder(1) + animOut:SetDuration(0.2) + if animOut.SetFromAlpha then + animOut:SetFromAlpha(1) + animOut:SetToAlpha(0) + elseif animOut.SetChange then + animOut:SetChange(-1) + end + animOut:SetStartDelay(1) + if button.fadeOut.SetToFinalAlpha then + button.fadeOut:SetToFinalAlpha(true) + end + else + button.fadeOut = { Play = function() end, Stop = function() end } + end end end lib:SetButtonRadius(lib.radius) -- Upgrade to 40