Skip to content

fix(raidframes): fix absorb texture tiling - #1802

Open
manaste wants to merge 1 commit into
EllesmereGaming:mainfrom
manaste:raidframes-fix-tiling
Open

fix(raidframes): fix absorb texture tiling#1802
manaste wants to merge 1 commit into
EllesmereGaming:mainfrom
manaste:raidframes-fix-tiling

Conversation

@manaste

@manaste manaste commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

What does this PR do?

This PR fixes a bug where absorb texture tiling does not work as expected. The texture is stretched instead of being repeated.

The easiest way to reproduce this is to replace striped-thick.png with a smaller 32×32 version for testing:

striped-thick

The result is:

tiling_not_working

This apparently happens because StatusBar:SetStatusBarTexture does not set the texture's wrap mode to CLAMP. However, TextureBase:SetHorizTile and TextureBase:SetVertTile require the corresponding dimension's wrap mode to be REPEAT for tiling to work.

This PR introduces a helper function to work around this limitation. The function calls TextureBase:SetTexture with the appropriate wrap mode on the status bar's texture before calling TextureBase:SetHorizTile and TextureBase:SetVertTile.

Interestingly, this issue does not occur on unit frames, and I don't know why. No corresponding fix is required there.

How was it tested?

Tested on the live 12.1 client, build 9.0.7.

  • Checked that tiling works with the replaced striped-thick.png texture.
  • Checked that non-tiling textures continue to work as expected.

Checklist

  • [n/a] New settings default OFF (no behavior change without opt-in)
  • [n/a] Zero cost while disabled: no events registered, no polling, no hooks doing work, no frames built
  • [n/a] Cheap while enabled: event-driven (no polling, no timer-based logic, no per-frame allocations)
  • [n/a] 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