FrameStrata/FrameLevel bug? - WoWInterface
Thread Tools Display Modes
06-21-16, 01:54 PM   #1
A Deviate Faerie Dragon
AddOn Author - Click to view addons
Join Date: Oct 2009
Posts: 18
FrameStrata/FrameLevel bug?

I've troubleshooted this as far as I can, but I believe something is happening with FrameLevel and FrameStrata in certain cases.
My bag addon has the bottom frame and it's background rendering above the bag buttons, however when I do a /framestack it shows pretty clear that they are at a higher frame level than the bag/bg. This happens even when I put the bag buttons at a frame strata of TOOLTIP, and only fixes when I put the bag frame strata at MEDIUM.

This is the framestack when i'm hovering over only the bag frame, and no bag buttons.

When I hover over the bag buttons, this is the framestack

But the bottom bag and bg still renders over the top:

It doesn't matter where I strata/level the bag buttons, they will only render above the bag when the bags framestrata is set to MEDIUM. However at medium it is then falling behind many other UI elements, such as QuestFrame and Actionbars, even if the framelevel is 27. Am I totally missing something or has someone else experienced this? I did a game repair/.exe delete to see if I had corrupted UI data.

Last edited by Blooblahguy : 06-21-16 at 02:06 PM.
06-22-16, 02:03 AM   #2
A Pyroguard Emberseer
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,739
Whenever possible try to create the framestack without using SetFrameLevel or SetFrameStrata. Those should be used for the base frame only. Always try to create your stack via frame parenting and texture sublayers.

|-texture1, sublayer -7
|-texture2, sublayer -6
  |-texture1, sublayer -7
    |-texture1, sublayer -7
Lua Code:
  1. local frame1 = CreateFrame("Frame",nil,UIParent)
  2. --frame1:SetBackdrop(backdrop)
  3. frame1.texture1 = frame1:CreateTexture(nil,"BACKGROUND",nil,-7)
  4. frame1.texture2 = frame1:CreateTexture(nil,"BACKGROUND",nil,-6)
  5. local frame2 = CreateFrame("Frame",nil,frame1)
  6. frame2.texture1 = frame2:CreateTexture(nil,"BACKGROUND",nil,-7)
  7. local frame3 = CreateFrame("Frame",nil,frame2)
  8. frame3.texture1 = frame3:CreateTexture(nil,"BACKGROUND",nil,-7)
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW) | TDMOG

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
06-22-16, 12:21 PM   #3
A Deviate Faerie Dragon
AddOn Author - Click to view addons
Join Date: Oct 2009
Posts: 18
Yeah that's a good point, and I actually ended up changing the bdBags.background to be textures instead of a frame layer after I posted this to see if that would help. Unfortunately I can't change the parent of the Bag Buttons or it breaks all kinds of default bag functionality from the blizzard UI. I'll look into that more though.
06-22-16, 01:53 PM   #4
A Firelord
AddOn Author - Click to view addons
Join Date: Jan 2005
Posts: 492
If your buttons are parented to the default bags (ContainerFrame1 etc), it's possible you're experiencing the toplevel/framestrata bug reported in this thread:

Try ContainerFrame1:SetToplevel(false) and see if they start obeying again.

That said, in my experiments I did not see any issues with frame level. It was just strata misbehaving.
06-23-16, 03:29 AM   #5
A Pyroguard Emberseer
AddOn Author - Click to view addons
Join Date: Mar 2010
Posts: 1,290
I really hoped they would fix all this strata related bugs in Legion, but atm it's seems like they just added more.

WoWInterface » Site Forums » Archived Beta Forums » Legion Beta archived threads » FrameStrata/FrameLevel bug?

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off