Achievement Session State
Overview
This is a fix for some other addon, that seem to be disabling the built in feature to restore session state.
Lightweight World of Warcraft addon that captures the player’s currently viewed achievement category and achievement and restores that selection whenever the Blizzard Achievement UI is reopened during the same client session.
Features
- Restores the last viewed achievement category and achievement on the next open while the client is running.
- Hooks directly into Blizzard UI events without extra dependencies.
- No user configuration or saved variables; the addon is active as soon as the Achievement UI loads.
Installation
- Copy the
AchievementSessionStatefolder into your World of WarcraftInterface/AddOns/directory. - Reload the UI (
/reload) or restart the client.
Implementation Notes
- Primary logic lives in AchievementSessionState/SessionState.lua.
- Hooks installed:
AchievementFrame:HookScript("OnShow", ...)restores cached state when the frame shows.AchievementFrame:HookScript("OnHide", ...)captures the current selection before hiding.hooksecurefunc("AchievementFrameCategories_SelectElementData", ...)maintain lightweight caches of the selected IDs.
- The loader waits for
Blizzard_AchievementUIto load and also callsInstallHooksimmediately if the UI is already active viaC_AddOns.IsAddOnLoaded.
Compatibility
Designed for the default Blizzard Achievement UI; behavior with third-party replacements may vary because the addon relies on specific Blizzard frame names and getters.
License
This project is licensed under the GNU General Public License v3. See LICENSE for full terms.