Skip to content

Expose visual tab selection override in skin API - #2273

Merged
EllesmereGaming merged 1 commit into
EllesmereGaming:mainfrom
takiguru:fix/third-party-tab-selection
Sep 27, 2026
Merged

EllesmereGaming merged 1 commit into
EllesmereGaming:mainfrom
takiguru:fix/third-party-tab-selection

Conversation

@takiguru

Copy link
Copy Markdown
Contributor

What does this PR do?

Adds SetTabSelection(tab, selected) to the public skin API so addons can keep tab highlighting in sync with their own pages.

Passing true or false overrides the visual selection; nil restores native selection. This fixes cases where an addon tab and a Blizzard tab appear selected at the same time, without changing Blizzard’s tab state.

How was it tested?

In-game.

Screenshots

Discord_o28EXSc7qE

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 frames built
  • 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

Related PR: Adds EllesmereUI skin support to What's Training and uses this API to keep tab highlighting in sync: fusionpit/WhatsTraining#44

@EllesmereGaming
EllesmereGaming merged commit 12cbe99 into EllesmereGaming:main Sep 27, 2026
1 check passed
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.

2 participants