Skip to content

Cooldown Manager: improve multi-row icon layout and growth - #2731

Open
Lunatalli wants to merge 2 commits into
EllesmereGaming:mainfrom
Lunatalli:main
Open

Lunatalli wants to merge 2 commits into
EllesmereGaming:mainfrom
Lunatalli:main

Conversation

@Lunatalli

@Lunatalli Lunatalli commented Oct 16, 2026 •

Copy link
Copy Markdown

What does this PR do?

Improves Cooldown Manager custom panel row layout and growth controls.

  • Adds configurable fill directions for individual rows.
  • Improves alignment of partially filled rows based on their configured fill direction.
  • Makes multi-row growth and anchoring more predictable.
  • Adds an optional Balance Row Counts setting to distribute icons evenly across rows when the icon count divides evenly by the configured row count.
  • Preserves the existing layout behaviour when balancing is disabled or the icon count cannot be distributed evenly.

How was it tested?

Tested in-game on the live World of Warcraft Retail client using EllesmereUI v9.5.5, the latest version available on CurseForge at the time of testing.

Verified that the updated row layout and fill directions behave as expected.

Automated guardrails and Lua compilation have not yet been verified.

Screenshots

Screenshot 2026-10-16 203556 Screenshot 2026-10-16 203613 Screenshot 2026-10-16 203642 Screenshot 2026-10-16 204644 Screenshot 2026-10-16 204725 Screenshot 2026-10-16 204946 Screenshot 2026-10-16 210122 Screenshot 2026-10-16 210135

Checklist

  • New settings default OFF (no behavior change without opt-in)
  • Zero cost while disabled: no events registered, no polling, no hooks doing work, no tickers; nothing built beyond an inert event frame or combat queue
  • Cheap while enabled: event-driven (no polling, no timer-based logic, no per-frame allocations)
  • No writes onto Blizzard-owned frames (weak-table pattern used); HookScript/hooksecurefunc only, never SetScript on Blizzard frames
  • Tested in-game on live; no version gates or pre-Midnight APIs added

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant