StrataFix

StrataFix logo

Ever encounter a bug where UI buttons are not clickable or elements are mysteriously missing?

This is usually caused by a bug in the Blizzard frame code, whereby child frames can accidentally be assigned a lower level in the frame strata than their parent, leading to buttons that appear "behind" their container, making them either unclickable or completely hidden.

StrataFix provides a simple workaround for this bug, which affects numerous UI elements, notably including:

  • Encounter Journal
  • Quest Log
  • Glyph Pane
  • AtlasLoot addon
  • many AceGUI addons
  • and more!

Just install as usual and it silently does its job, problem forever fixed!

StrataFix version 3.0 is a major rewrite of the original fixing code. It integrates a new fixing strategy that more directly targets the bugs in the base Blizzard code, and thereby greatly reduces the chance for conflicts with other addons (especially skinning addons). The old fix code is still available via "/stratafix force", but is now deprecated.

Bug reports: please post a ticket with a screenshot and as much information is possible here: http://www.wowace.com/addons/stratafix/tickets/

Mists of Pandaria Update: The bug in Blizzard frames remains in WoW version 5.4, and this addon remains an effective workaround for it.

You must login to post a comment. Don't have an account? Register to get one!

  • 10 comments
  • Avatar of Aisenfaire Aisenfaire Mar 12, 2012 at 11:56 UTC - 0 likes

    @oscarucb

    Works perfectly now! Thanks so much for fixing it, and so fast! <3

  • Avatar of oscarucb oscarucb Mar 11, 2012 at 04:21 UTC - 0 likes

    @Aisenfaire: Go

    Please try the latest version - 3.0 should resolve these issues. I've just verified that it works fine with TSM for me.

  • Avatar of Aisenfaire Aisenfaire Mar 11, 2012 at 02:41 UTC - 0 likes

    Hi,

    It appears to make the TradeSkillMaster addon window buttons unclickable, placing the buttons "behind" the window.

  • Avatar of fateswarm fateswarm Dec 30, 2011 at 20:06 UTC - 0 likes

    Best addon ever. Good job. I'm suggesting it to everyone.

  • Avatar of oscarucb oscarucb Oct 02, 2011 at 06:07 UTC - 0 likes

    v 1.4 adds slash commands to manipulate the blacklist, via /stratafix

  • Avatar of oscarucb oscarucb Sep 19, 2011 at 02:55 UTC - 0 likes

    Currently the blacklist is programmatic, so advanced users can toss this line in a macro or addon:

    StrataFix.blacklist["MyFrameName"] = true

    but I can easily add a slash command to make it a setting. I'll look into that.

  • Avatar of Dridzt Dridzt Sep 19, 2011 at 01:51 UTC - 0 likes

    I had a typo on my first comment I meant to write "work off a whitelist of (not 'or') parent frames" :)
    Meaning walking frame hierarchies but only take action when the parent frame is one of the whitelist (eg. Encounter Journal, Quest Log, Glyph Frame to mention some usual offenders).
    That said I understand what you're saying and blacklist can work just as well.
    I had the idea that advanced users could use /framestack and add frames to the whitelist, maybe this can be done for the blacklist?

    I.e, let me blacklist a frame on the fly until the addon is updated.

  • Avatar of oscarucb oscarucb Sep 19, 2011 at 01:40 UTC - 0 likes

    The memory churn/leak issue is now fixed.

    I've added a blacklist to deal with the fairly-unusual cases where a visible parent frame deliberately sets a visible child frame to a lower frame strata (the opposite of the usual and default arrangement). The blacklist now fixes the issues with all the chat clients (on ChatFrameNEditBox), and I've added entries to deal with the model view on unit frames to handle addons like Adapt.

    Please continue to report incompatibilities with any addons and I will add entries as needed to deal with them. The blacklist is also available for addons to add their own entries if they so desire.

    I don't want to go the whitelist route for several reasons:

    (1) The Blizzard frame code failures can affect almost any addon that creates top-level windows and doesn't explicitly set the level of every single frame. (2) Depending on the UI element, the failure rate can range from very common (as with the Encounter Journal), to exceedingly rare (as I've seen with several adodns using AceGUI-3 UIs).

    The combination of these two would make it very difficult to maintain an accurate whitelist. Since this addon merely enforces the default behavior, the rare addons that violate it are easy to pick out because any artifact should be 100% reproducible, so it's much easier to maintain a blacklist.

  • Avatar of Dridzt Dridzt Sep 18, 2011 at 18:08 UTC - 0 likes

    This is a nice idea, it does fix some obvious problems (dungeon journal, questlog etc) but it also creates artifacts for some ui elements and addons.

    Examples:
    - Adapt unitframe models
    - NeonChat

    Would it be an idea to have it work off a whitelist or parent frames maybe?

  • Avatar of Zidomo Zidomo Sep 17, 2011 at 03:12 UTC - 0 likes

    Great idea. One problem, though. It got a memory leak. It consumes memory continually, whether or not you are mousing over a frame.

    v1.0 in WoW 4.2.2 live, USEnglish client/server. Testing with OptionHouse, it consumes 19-22 kb/second 100% of the time until the next garbage collection happens. It continues to consume at the same rate no matter what you are doing.

  • 10 comments

Facts

Date created
Sep 16, 2011
Category
Last update
Sep 14, 2013
Development stage
Release
License
BSD License
Curse link
StrataFix
Downloads
32,069
Recent files
  • R: 3.4.2 for 5.4.0 Sep 14, 2013
  • A: r55 for 5.4.0 Sep 14, 2013
  • R: 3.4.1 for 5.3.0 May 21, 2013
  • A: r53 for 5.3.0 May 21, 2013
  • R: 3.4.0 for 5.2.0 May 11, 2013

Authors

Relationships

Embedded library
LibStrataFix