Vehicle action bar not displayed
mlangen opened this issue · 18 comments
Levelling my warlock I came to the Shimmering Expanse starting the "Visions of the Past" quest line where you transform into a a "Naz'Jar Battlemaiden" when you use the "Blade of the Naz'Jar Battlemaiden". After the transformation you are used to control this vehicle and are provided some actions.
For some reasons the first action bar is completely cleared, but the actions work with the keybindings assigned to the bar.
I already finished the quest line so there is no way to reconstruct the situation as I cannot transform into the battle maiden anymore :(
I have a death knight @ level 79. When I find the time to level it I might issue the /dom statedump command once I proceeded that far in the quest line.
On Blizzard action bar this button load instantly or some time later?
Similar problem with new cookie daily Pandaria and there is a button loaded later. After 2 second about.
P.S. I do not use Dominos. Just have a similar problem.
If you need any further information or want me to execute some debug code let me know. The character is waiting at the same spot :)
Example delay action button: http://www.youtube.com/watch?v=7w39cf-gdks#t=113
State change immediately, but ability shows after 1-2 second. And with custom action bar like Dominos you not see any abilities, only tooltips like on http://www.youtube.com/watch?feature=player_detailpage&v=nNBZ_IRhSqE#t=4
@mlangen
Can you to test? Try /reload . Action button appear after reload?
P.S. http://www.youtube.com/watch?v=DVQy9jq4MXo
I think that also there is this delay in the appearance of abilities.
I transformed into the battle maiden again, the shortcuts work, the buttons are not visible - also no tooltips are displayed.
Then I type the reload command (/reload . Action button) and voilà, the missing buttons are there...
So it really looks like the delayed signal from the Blizzard interface is causing this trouble.
I'm guessing everything functions normally if you use the Use Blizzard Override Bar option under /dominos too, right?
The other thing to try: Press one of the modifier keys (alt, shift, ctrl/cmd).
@mlangen
Can you try the latest commit here on github?
I installed the master from git and on logging in I got the following error:
Date: 2014-04-09 09:31:17
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\Dominos\frame.lua line 695:
attempt to index global 'FlyPaper' (a nil value)
Debug:
Dominos\frame.lua:695: action()
Dominos\frame.lua:925: ForAll()
Dominos\Dominos.lua:160: Load()
Dominos\Dominos.lua:52:
Dominos\Dominos.lua:49
(tail call): ?
[C]: ?
[string "safecall Dispatcher[1]"]:9:
[string "safecall Dispatcher[1]"]:5
(tail call): ?
...ddOns\GatherMate2\Libs\AceAddon-3.0\AceAddon-3.0.lua:558: EnableAddon()
...ddOns\GatherMate2\Libs\AceAddon-3.0\AceAddon-3.0.lua:651:
...ddOns\GatherMate2\Libs\AceAddon-3.0\AceAddon-3.0.lua:636
[C]: LoadAddOn()
..\FrameXML\UIParent.lua:306: UIParentLoadAddOn()
..\FrameXML\UIParent.lua:380: TimeManager_LoadUI()
..\FrameXML\UIParent.lua:740:
..\FrameXML\UIParent.lua:705
Locals:
None
AddOns:
...
BlizRuntimeLib_deDE v5.4.7.50400 <eu>
(ck=881)
I logged out and back in but the error messages showed up again.
Transforming into the battle maiden initially presented a blank action bar but after a short delay (about 1-2 seconds) the buttons appeared.
Found another problem when I logged on with my hunter. The pet bar was moved away from the other bars it used to be attached:
I tried to move it back and got the following error message:
Date: 2014-04-09 10:12:50
ID: 2
Error occured in: Global
Count: 1
Message: ..\AddOns\Dominos\frame.lua line 675:
attempt to index global 'FlyPaper' (a nil value)
Debug:
Dominos\frame.lua:675: Stick()
Dominos\drag.lua:91:
Dominos\drag.lua:87
Locals:
self = DominosFramepet {
0 = <userdata>
header = <unnamed> {
}
buttons = <table> {
}
id = "pet"
drag = <unnamed> {
}
sets = <table> {
}
}
rTolerance = 16
(for generator) = <function> defined =[C]:-1
(for state) = <table> {
1 = DominosFrame1 {
}
2 = DominosFrame2 {
}
3 = DominosFrame3 {
}
4 = DominosFrame4 {
}
5 = DominosFrame5 {
}
6 = DominosFrame6 {
}
7 = DominosFrame7 {
}
8 = DominosFrame8 {
}
extra = DominosFrameextra {
}
bags = DominosFramebags {
}
xp = DominosFramexp {
}
cast = DominosFramecast {
}
roll = DominosFrameroll {
}
menu = DominosFramemenu {
}
pet = DominosFramepet {
}
vehicle = DominosFramevehicle {
}
class = DominosFrameclass {
}
encounter = DominosFrameencounter {
}
}
(for control) = 1
_ = 1
f = DominosFrame1 {
0 = <userdata>
baseID = 0
header = <unnamed> {
}
buttons = <table> {
}
id = 1
drag = <unnamed> {
}
pages = <table> {
}
sets = <table> {
}
}
(*temporary) = nil
(*temporary) = DominosFrame1 {
0 = <userdata>
baseID = 0
header = <unnamed> {
}
buttons = <table> {
}
id = 1
drag = <unnamed> {
}
pages = <table> {
}
sets = <table> {
}
}
(*temporary) = <table> {
GetRightClickUnit = <function> defined @Interface\AddOns\Dominos\Dominos.lua:728
NumBars = <function> defined @Interface\AddOns\Dominos\Dominos.lua:802
BindableButton = <unnamed> {
}
SetClickThroughForFrames = <function> defined @Interface\AddOns\Dominos\Dominos.lua:698
modules = <table> {
}
SetLinkedOpacity = <function> defined @Interface\AddOns\Dominos\Dominos.lua:871
OnNewProfile = <function> defined @Interface\AddOns\Dominos\Dominos.lua:351
RemoveMasque = <function> defined @Interface\AddOns\Dominos\Dominos.lua:891
DeleteProfile = <function> defined @Interface\AddOns\Dominos\Dominos.lua:294
ListProfiles = <function> defined @Interface\AddOns\Dominos\Dominos.lua:319
SetOpacityForFrames = <function> defined @Interface\AddOns\Dominos\Dominos.lua:619
SetDefaultModulePrototype = <function> defined @Interface\AddOns\GatherMate2\Libs\AceAddon-3.0\AceAddon-3.0.lua:440
OnProfileReset = <function> defined @Interface\AddOns\Dominos\Dominos.lua:368
Unload = <function> defined @Interface\AddOns\Dominos\Dominos.lua:165
IsEnabled = <function> defined @Interface\AddOns\GatherMate2\Libs\AceAddon-3.0\AceAddon-3.0.lua:482
SetRightClickUnit = <function> defined @Interface\AddOns\Dominos\Dominos.lua:723
LIBKEYBOUND_ENABLED = <function> defined @Interface\AddOns\Dominos\Dominos.lua:252
SetFadeForFrames = <function> defined @Interface\AddOns\Dominos\Dominos.lua:631
UnregisterMessage = <function> defined @Interface\AddOns\GatherMate2\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:181
GetOverrideBar = <function> defined @Interface\AddOns\Dominos\Dominos.lua:780
PrintVersion = <function> defined @Interface\AddOns\Dominos\Dominos.lua:503
ShowBindingText = <function> defined @Interface\AddOns\Dominos\Dominos.lua:747
ResetProfile = <function> defined @Interface\AddOns\Dominos\Dominos.lua:312
db = <table> {
}
GetDefaults = <function> defined @Interface\AddOns\Dominos\Dominos.lua:105
SetUseOverrideUI = <function> defined @Interface\AddOns\Dominos\Dominos.lua:226
NewMenu = <function> defined @Interface\AddOns\Dominos\Dominos.lua:402
OnEnable = <function> defined @Interface\AddOns\Dominos\Dominos.lua:49
SetOverrideBar = <function> defined @Interface\AddOns\Dominos\Dominos.lua:771
MatchProfile = <function> defined @Interface\AddOns\Dominos\Dominos.lua:332
BarStates = <table> {
}
OnInitialize = <function> defined @Interface\AddOns\Dominos\Dominos.lua:13
NewModule = <function> defined @Interface\AddOns\GatherMate2\Libs\AceAddon-3.0\AceAddon-3.0.lua:266
ToggleLockedFrames = <function> defined @Interface\AddOns\Dominos\Dominos.lua:597
ShowMacroText = <function> defined @Interface\AddOns\Dominos\Dominos.lua:766
SaveProfile = <function> defined @Interface\AddOns\Dominos\Dominos.lua:271
ToggleFrames = <function> defined @Interface\AddOns\Dominos\Dominos.lua:691
OnProfileChanged = <function> defined @Interface\AddOns\Dominos\Dominos.lua:360
GetName = <function> defined
AddOns:
...
BlizRuntimeLib_deDE v5.4.7.50400 <eu>
(ck=8d5)
And after relogging the pet bar was again at the wrong location.
I should have mentioned: install the most recent version, then install the
contents of the latest commit over it. I forgot that it wouldn't come with
the requisite sub-modules.
So i installed Dominos 5.4.10 and replaced actionBar.lua and overrideController.lua.
The pet bar was still off-place, but after moving it back to the other bars and relogging it was again
where it supposed to be without any warning showing.
As for the vehicle bar it is still displayed after a short delay.
That's actually the expected behavior with the fix :)
As Wetxius pointed out, there's a delay between when the vehicle bar appears and when the information for the abilities is actually loaded. The standard blizzard action buttons, which Dominos reuses, don't watch for the events that load that information, but the override bar action buttons do. So, it was a simple matter of just listening for those events.
Thanks you very much for the fix. IMHO playing WoW would be more cumbersome without this action bar replacement ;) I think this issue can now be closed.
Just an off-topic question: Out-of-the box actions bars can contain max 12 columns. In older versions, there was an option to adjust the number of action bars and so enable fewer action bars with more columns. Is this option gone now? As a workaround I manually edited the saved variables file to have more columns per action bar to match the rows of keys on my keyboard.