File Details
GCDwithPing_23-03-26.zip
- R
- Mar 23, 2026
- 18.91 KB
- 113
- 12.0.5+4
- Classic + 3
File Name
GCDwithPing_23-03-26.zip
Supported Versions
- 12.0.5
- 12.0.1
- 5.5.3
- 2.5.5
- 1.15.8
## [1.6] - 2025-03-23
### Added
- **Cooldown time scaling** — `GetCooldownTimes` values are normalized to seconds using `WOW_PROJECT_ID` (Mainline vs Classic) plus a heuristic when the project is unknown or Classic returns millisecond-scale numbers.
- **Secure action buttons** — lightweight `OnUpdate` on the text container resizes and re-anchors the overlay for protected buttons (no `HookScript` on the secure button itself).
- **Ticker-based refresh** — `C_Timer.NewTicker(0.05)` drives cooldown text updates, periodic bar rescans (every 10s), and ping panel text (every 1s), replacing a heavy `OnUpdate` + repeated `C_Timer.After(0)` pattern.
- **`RefreshCooldownTickers()`** — starts or stops the ticker when the addon is enabled/disabled (options, slash toggle, reset).
### Fixed
- **`CooldownFrame_Set` hook** — only registered when the global exists, avoiding load-time errors on clients without that API.
- **Ping panel labels** — the second line shows the **countdown offset** actually applied (`GetLatency()` in ms), matching the math used on ability timers; localization strings were updated accordingly.
- **Language dropdown** — created only when all `UIDropDownMenu_*` helpers exist and `UIDropDownMenuTemplate` loads successfully (`pcall`).
- **Options slider** — prefers `MinimalSliderTemplate` when available, falls back to `OptionsSliderTemplate`.
### Changed
- **Global cooldown query** — uses spell id `61304` via `GetSpellCooldownCompat` / `C_Spell.GetSpellCooldown` with a loop structure ready for extra ids if needed.
- **In-code documentation** — header comment now reflects multi-client (Retail / Anniversary / Classic) support instead of a single old TBC note.

