From 3ed8d72ea3e537b46b442e97947e5e3486a2613d Mon Sep 17 00:00:00 2001 From: NoM0Re Date: Wed, 5 Mar 2025 21:57:53 +0100 Subject: [PATCH] fix frame order some more - Closes #29 Reintroduces UI scale issues when playing at 1080p pixel-perfect (0.711 scale). You need to account for this by adjusting the Aura size slightly up or down by a small number, depending on scaling. We have this anyway across the addon, so it is what it is... --- WeakAuras/RegionTypes/AuraBar.lua | 16 ++++++++-------- WeakAuras/SubRegionTypes/Background.lua | 3 +++ 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/WeakAuras/RegionTypes/AuraBar.lua b/WeakAuras/RegionTypes/AuraBar.lua index b63df2e..7cf8031 100644 --- a/WeakAuras/RegionTypes/AuraBar.lua +++ b/WeakAuras/RegionTypes/AuraBar.lua @@ -1153,21 +1153,21 @@ local function create(parent) region:SetResizable(true); region:SetMinResize(1, 1); + local fgMask = CreateFrame("Frame", nil, region) + + -- Create statusbar (inherit prototype) local bar = CreateFrame("Frame", nil, region); WeakAuras.Mixin(bar, Private.SmoothStatusBarMixin); + fgMask:SetAllPoints(bar); - local fgMask = CreateFrame("Frame", nil, bar) - fgMask:SetAllPoints(bar) + -- Now create a bunch of textures + local bg = region:CreateTexture(nil, "BACKGROUND"); + bg:SetAllPoints(bar); local fg = fgMask:CreateTexture(nil, "BORDER"); fg:SetAllPoints(fgMask) - -- Now create a bunch of textures - local bg = region:CreateTexture(nil, "ARTWORK"); - bg:SetAllPoints(bar); - - local spark = bar:CreateTexture(nil, "ARTWORK"); - spark:SetDrawLayer("ARTWORK", 7); + local spark = fgMask:CreateTexture(nil, "ARTWORK"); bar.fg = fg; bar.fgMask = fgMask bar.bg = bg; diff --git a/WeakAuras/SubRegionTypes/Background.lua b/WeakAuras/SubRegionTypes/Background.lua index 214394e..0804069 100644 --- a/WeakAuras/SubRegionTypes/Background.lua +++ b/WeakAuras/SubRegionTypes/Background.lua @@ -37,6 +37,9 @@ do end local function subSetFrameLevel(self, level) + if self.parent.fgFrame then + self.parent.fgFrame:SetFrameLevel(level) + end if self.parent.bar then self.parent.bar:SetFrameLevel(level) end