diff --git a/crates/benilla-app/assets/ui/ActionBar.xml b/crates/benilla-app/assets/ui/ActionBar.xml index 995e30aa..e906ee57 100644 --- a/crates/benilla-app/assets/ui/ActionBar.xml +++ b/crates/benilla-app/assets/ui/ActionBar.xml @@ -443,6 +443,7 @@ button.flash = getglobal(n .. "Flash") button.border = getglobal(n .. "Border") button.cooldown = getglobal(n .. "Cooldown") + button.name = getglobal(n .. "Name") button.flashing = button.flashing or 0 button.flashtime = button.flashtime or 0 -- The grid count, same posture: a foreign button reaching ActionButton_HideGrid with @@ -521,6 +522,7 @@ button.flash = getglobal(button:GetName() .. "Flash") button.border = getglobal(button:GetName() .. "Border") button.cooldown = getglobal(button:GetName() .. "Cooldown") + button.name = getglobal(button:GetName() .. "Name") -- Ref ActionButton_OnLoad:104-106: the flash/range state the OnUpdate loop drives. button.flashing = 0 button.flashtime = 0 @@ -944,6 +946,15 @@ else button.border:Hide() end + -- Ref ActionButton_Update:236-238, "Update Macro Text": the Name line under the icon, + -- written on EVERY update, occupied or not — `GetActionText` answers a MACRO slot's + -- macro name and nil for anything else, and a nil clears the line, so an emptied or + -- re-filled slot loses the old name through this same write. Guarded only because an + -- adopted foreign button may inherit a template that declares no `$parentName`. + -- (B340: the line was declared in the template and never set — decision 1636.) + if button.name then + button.name:SetText(GetActionText(action)) + end end function BenillaActionBar_OnLoad(frame) @@ -1610,7 +1621,9 @@ widget playing the same machine); NormalTexture = the 66x66 UI-Quickslot2 ring centered at (0,-1) (l.74-85); PushedTexture UI-Quickslot-Depress (l.86); HighlightTexture ButtonHilight-Square ADD (l.87); CheckedTexture CheckButtonHilight ADD (l.88 — the - IsCurrentAction/IsAutoRepeatAction ring). Only Name (macros) stays OUT. + IsCurrentAction/IsAutoRepeatAction ring); Name (the macro-name line, l.34-46) on ARTWORK, + set from `GetActionText` at the tail of every update as the ref's `ActionButton_Update` + does (decision 1636). --> + button's bottom edge. `BenillaActionButton_Update` writes it from + `GetActionText` on every update (a MACRO slot's macro name, nil — cleared — + for any other kind); it is also part of the template's published contract, so + an addon indexing `