Hi there! Thanks for the GREAT addon, one of my top 3 favourites!
Here's a quick bug I found some time ago (1 year ago or so) and it is still around
Description
When using Plumber's Loot Window module, the loot keybind (default: F) sometimes does nothing while in combat. The loot window opens normally, items are visible, but pressing F has no effect. Even closing the looting frame and opening it again (still while in combat) does not fix this situation.
Once combat ends (last enemy dies), the keybind starts working again immediately.
This does NOT happen with Plumber disabled and the default Blizzard loot UI active. No Lua errors appear in either case.
--- However if clicking on the UI button (LOOT ALL "F") on top of the loot frame it does work and the loot is taken even in combat. ---
Steps to Reproduce
- Enable Plumber's Loot Window module
- Kill a mob while another enemy keeps you in combat
- Approach the dead mob — loot window opens, items are visible
- Press the loot keybind (F) — nothing happens
- Kill the remaining mob (leave combat)
- Press F again — looting works normally
Expected Behavior
The loot keybind should work during combat, just like it does with the default Blizzard loot UI.
Suspected Cause
This looks like a WoW combat lockdown issue. When LOOT_OPENED fires while InCombatLockdown() is true, any call to SetOverrideBindingClick or SetBindingClick on a secure action button is silently blocked by the game engine. The loot window frame itself renders fine (not a protected action), but the keybind→secure-button wiring can't be set up mid-combat.
The default Blizzard UI doesn't have this problem because its loot slot bindings are registered by the C client at startup, not dynamically at the moment LOOT_OPENED fires.
Possible Fix
Defer the keybind setup using a PLAYER_REGEN_ENABLED replay queue — a common pattern for this class of WoW addon issue. Alternatively, registering the override binding once at module load (before any combat) rather than on each LOOT_OPENED event should also solve it.
This is the same category of fix already applied in release 1.8.5e ("Drawer Macros should be able to work in combat and other restricted areas again") and the taint investigation in issue #328.
Environment
- Plumber version: 1.9.2
- WoW version: 12.0.5 Retail
- Other loot addons active: None
- Reproducible with only Plumber enabled: Yes
Hi there! Thanks for the GREAT addon, one of my top 3 favourites!
Here's a quick bug I found some time ago (1 year ago or so) and it is still around
Description
When using Plumber's Loot Window module, the loot keybind (default: F) sometimes does nothing while in combat. The loot window opens normally, items are visible, but pressing F has no effect. Even closing the looting frame and opening it again (still while in combat) does not fix this situation.
Once combat ends (last enemy dies), the keybind starts working again immediately.
This does NOT happen with Plumber disabled and the default Blizzard loot UI active. No Lua errors appear in either case.
--- However if clicking on the UI button (LOOT ALL "F") on top of the loot frame it does work and the loot is taken even in combat. ---
Steps to Reproduce
Expected Behavior
The loot keybind should work during combat, just like it does with the default Blizzard loot UI.
Suspected Cause
This looks like a WoW combat lockdown issue. When
LOOT_OPENEDfires whileInCombatLockdown()is true, any call toSetOverrideBindingClickorSetBindingClickon a secure action button is silently blocked by the game engine. The loot window frame itself renders fine (not a protected action), but the keybind→secure-button wiring can't be set up mid-combat.The default Blizzard UI doesn't have this problem because its loot slot bindings are registered by the C client at startup, not dynamically at the moment LOOT_OPENED fires.
Possible Fix
Defer the keybind setup using a
PLAYER_REGEN_ENABLEDreplay queue — a common pattern for this class of WoW addon issue. Alternatively, registering the override binding once at module load (before any combat) rather than on each LOOT_OPENED event should also solve it.This is the same category of fix already applied in release 1.8.5e ("Drawer Macros should be able to work in combat and other restricted areas again") and the taint investigation in issue #328.
Environment