obble / modui_classic

modui: for wow classic
45 stars 20 forks source link

Some things aren't showing properly until... #69

Closed 1sudo closed 4 years ago

1sudo commented 4 years ago

So far my testing involves clearing all cache and installing ONLY modui. I've tried the latest stable version and a zip straight from GitHub, issue is present on both.

The issue is when I login, the UI is changed (it's not default), there's skills where the bags normally are etc., but, the color isn't dark, and my pet's combat bar is tucked behind the combat bar. To temporarily fix this, I can hit escape and go to interface, then close out the interface window, then everything gets painted black like it's supposed to be and the pet bar gets moved above the combat bar where it's supposed to be.

I would show more screenshots but this is all I could grab before the servers started having issues today. This is what it looks like BEFORE doing the interface window trick.

Any ideas?

Screenshot_10

1sudo commented 4 years ago

Servers came back up just as I posted this, here's the "after the interface trick" pic:

Screenshot_11

Xaero252 commented 4 years ago

Confirming this behavior. Also interesting is that this corrects the colors.

The "interface trick" works because MultiActionBar_Update(); is being called by InterFaceOptionsPanels.lua from the BlizzardInterfaceCode. This more or less confirms that the Blizzard frames either aren't ready when the theming code is run, or it isn't being run at all. PLAYER_ENTERING_WORLD should be sufficient for this, though... not sure why its actually happening, need more off time to read through code and test. (Note I am not the maintainer of this addon)

EDIT: Just looked; it looks like things are being themed with ADDON_LOADED; changing this to PLAYER_ENTERING_WORLD should function; note that this also fires when changing map instances (i.e. from Kalimdor to Eastern Kingdoms, or to/from an instance) There are variables provided by the event for checking if it was initial login, or reloadui: PLAYER_ENTERING_WORLD: isInitialLogin, isReloadingUi

I'll test this tonight;