Patterns from brues-code/pfUI:
- Event updates (health, power, auras, range, sight, connection,
resurrection) skip frames whose container or group is hidden; Show
and group Show already run UpdateAll to catch up
- HealPredict's cleanup OnUpdate stops when nothing can expire and
restarts when a cast, HoT, resurrection or cast icon is added
- UNIT_IN_RANGE_UPDATE is only registered without UnitXP SP3 and
SuperWoW, since ClassicAPI checks registered units every frame
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019W3rwwTK1hwTEWHqsan2mV
When ClassicAPI is installed and "Use ClassicAPI" is on (Mods tab, reload):
- Detect ClassicAPI and each feature separately; show it in the Mods tab
- Read auras with C_UnitAuras.GetAuraSlots (fill form) + UnitAuraBySlot,
reusing entries, with ClassicAPI durations, expirations and casters
- UNIT_AURA_DELTA: refresh-only events update stacks and timers in place
without rebuilding the aura icons or the health bar
- Aura timers without SuperWoW; native Cooldown frames with one shared
text driver instead of a Model and OnUpdateModel per icon
- UNIT_IN_RANGE_UPDATE, UNIT_DISTANCE_CHECK_UPDATE, UNIT_CONNECTION and
INCOMING_RESURRECT_CHANGED; UnitHasIncomingResurrection in res checks
- HealPredict learns heals from COMBAT_LOG_EVENT_UNFILTERED when the
GUID formats match SuperWoW's
- Distance and line of sight when UnitXP SP3 and SuperWoW are missing
Without ClassicAPI, or with the option off, behaviour is unchanged.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019W3rwwTK1hwTEWHqsan2mV