The SecureActionButton responded to both key-down AND key-up, causing every Enter press to trigger two actions. Affected all menus: bags, auction house, wishlist.
Technical: SkuZOptions/Core.lua line 2738. "AnyUp, AnyDown" -> "AnyDown". AnyDown provides hardware event context (important for left-click/items). AnyUp alone does not provide hardware context.
Stable Master restored
Stable master functions from version 40.x adopted. The stable master is usable again.
Technical: SkuCore/LocalMenu.lua, Build_PetStableFrame copied 1:1 from template 2.x. Uses tFrame:GetScript("OnDragStart")(...) and OnReceiveDrag — works in the Gossip/LocalMenu system via the click=true path.
Pet Rename fixed
Fix: Menu closed before input field (CloseMenu), EditBoxShow instead of EditBoxPasteShow, with delay (C_Timer.After 0.3s).
Technical: EditBoxPasteShow was for paste input (OnChar, min 10 chars). EditBoxShow is for keyboard input (OnEnterPressed). CloseMenu() clears the Enter override binding so the EditBox can receive Enter.
secureMacro system for protected functions
The SecureActionButton attribute was set with invalid mouse button parameter "ENTER". TBC 2.5.5 does not find type/macrotext attributes for unknown button names (no fallback to default attributes).
Fix: New secureMacro flag on menu entries. When set, additionally sets typeENTER/macrotextENTER attributes. Entries without secureMacro clear these attributes (prevents conflicts with left-click/OnAction).
Technical: SkuZOptions/templates.lua OnEnter handler. SkuMob/Options.lua: secureMacro=true on PetDismiss and PetRename confirmation entry.
Key insight: macrotext does NOT fire in the Gossip/LocalMenu system (tested with /say, /run, /click — no output). macrotext ONLY fires in the SkuMob/SkuGenericMenuItem system (proven by PetRename/PetDismiss).
Pet Dismiss / Pet Release localization
Labels matched to in-game terms.
secureMacro flag for PetDismiss (/petdismiss in hardware event context).