fix: Direct frame manipulation for real-time scale/alpha/position updates

This commit is contained in:
Xurkon
2026-04-02 18:57:46 -05:00
parent 4df787419a
commit 75d63da509
@@ -56,8 +56,9 @@ function QuestieOptions.tabs.arrow:Initialize()
get = function() return Questie.db.profile.arrowScale or 1 end, get = function() return Questie.db.profile.arrowScale or 1 end,
set = function(_, value) set = function(_, value)
Questie.db.profile.arrowScale = value Questie.db.profile.arrowScale = value
if QuestieArrow and QuestieArrow.ApplyScale then local frame = _G.QuestieArrowFrame
QuestieArrow:ApplyScale() if frame then
frame:SetScale(value)
end end
end, end,
}, },
@@ -73,8 +74,9 @@ function QuestieOptions.tabs.arrow:Initialize()
get = function() return Questie.db.profile.arrowAlpha or 1.0 end, get = function() return Questie.db.profile.arrowAlpha or 1.0 end,
set = function(_, value) set = function(_, value)
Questie.db.profile.arrowAlpha = value Questie.db.profile.arrowAlpha = value
if QuestieArrow and QuestieArrow.ApplyAlpha then local frame = _G.QuestieArrowFrame
QuestieArrow:ApplyAlpha() if frame then
frame:SetAlpha(value)
end end
end, end,
}, },
@@ -104,8 +106,11 @@ function QuestieOptions.tabs.arrow:Initialize()
name = function() return l10n("Reset Arrow Position") end, name = function() return l10n("Reset Arrow Position") end,
desc = function() return l10n("Reset the arrow position to the center of the screen") end, desc = function() return l10n("Reset the arrow position to the center of the screen") end,
func = function() func = function()
if QuestieArrow and QuestieArrow.ResetPosition then Questie.db.profile.arrowPosition = nil
QuestieArrow:ResetPosition() local frame = _G.QuestieArrowFrame
if frame then
frame:ClearAllPoints()
frame:SetPoint("CENTER", UIParent, "CENTER", 0, -100)
end end
end, end,
}, },