1.9.0
What's new
QFXSystemBar
1.9.0 (2026-09-23)
Full Changelog Previous Releases
- EllesmereUI: add a "Match EllesmereUI Skin" info-bar option (on by default) that follows the live EUI theme - panel-colored bar bodies, accent-colored rails, the EUI UI font and a themed volume panel; it updates live when accent/theme change and falls back to the QFX look when EUI is missing or its third-party skinning for this addon is off
- Tooltips: replace the "Left Click / Right Click / Middle Click" wording in micro-menu tooltips with the same inline mouse-button icons the info bars already use; works in all ten locales without touching any dictionary
- Info bars: size the text box from the font size (1.9x plus outline room) so tall UI fonts and CJK fallback glyphs are no longer clipped by SetClipsChildren
- MeetingStone: add a combat fix to the MeetingStone bridge that strips the protected UIPanel layout attributes from MeetingStone's main panel, so it can be opened in combat again without ADDON_ACTION_BLOCKED; it also silences the 12.1 LibShowUIPanel nil-delegate crash
- Performance: stop the clock and colon-blink tickers while the micro menu is faded out and restart them from every reveal path instead of polling a hidden bar forever
- Fixes: stop deleting keys while iterating the cached settings pages, fix the recursive IsAddOnLoaded fallbacks, keep the four shared info-bar defaults from being overwritten by the defaults table literal, add the missing clock-number Y-offset dependency, only watch for EllesmereUI before login, and skip disabled items when EUI looks change
- Cleanup: remove dead code (unused renderers, orphan option-map entries, unreferenced APIs, obsolete migration markers, unreachable branches) and unused locale keys; add the missing "Close" translation
- Localization: keep all ten locales aligned at 494 keys; every addon Lua file passes syntax checks and the unit tests pass
1.8.22 (2026-09-17)
Full Changelog Previous Releases
- Mounts: hide collected mounts restricted to the opposing faction from the info-bar click-action selectors; keep neutral mounts, random favorite and no action available without background polling.
- Settings: sync the embedded QFXWidgets factory to VERSION 51, increase row/control text to 14px and section titles to 15px, and use the complete mipmapped v3 brand watermark with its source colours.
- Performance: cache the available random hearthstones at login and draw from shuffled decks instead of rescanning toys for every selection; avoid high-frequency item-info refreshes and throttle on-demand addon memory/CPU scans.
- Cleanup: remove unused info-bar tooltip implementations, obsolete brand image variants and an outdated bundled README; exclude development tools from release packages.
- Tests: cover both faction mount lists, random hearthstone deck behaviour, factory refresh ownership and deferred startup loads; all addon Lua files pass syntax checks.
1.8.21 (2026-09-16)
Full Changelog Previous Releases
- Info bars: add a mount item with independently configurable left, middle and right-click actions; collected mounts are searchable and Blizzard's native random-favorite mount action is included automatically
- Info bars: display primary professions, secondary professions and configured mount actions as cropped 18px native icons with a fixed 3px gap; mount tooltips identify all three mouse-button assignments
- Talents: left-clicking the specialization item now opens the saved talent-loadout menu, while right-click continues to select the loot specialization
- Settings: add localized mount controls and refresh the embedded QFXWidgets presentation with branded chrome, sharper rounded controls, improved sliders, tabs and section layout
- Assets: move the Game Icons, Lucide and Tabler micro-menu sets to mipmapped BLP artwork and add the new settings/brand textures used by the refreshed interface
- Compatibility: support the current 12.0.5 talent-loadout API with legacy fallbacks; keep all ten translated locales aligned with the expanded 492-key base set
1.8.18 (2026-09-15)
Full Changelog Previous Releases
- Settings: expand the embedded QFXWidgets factory with refreshable notes/status rows, delayed tab-page refresh ownership, standalone control disabled states and consistent per-row refresh hooks
- Dropdowns: keep only one menu open, close menus with their host, match scaled anchors, add deterministic outside-click handling to searchable lists, and show item tooltips reliably
- Fixes: include section headers in header-plus-note layout height, reverse scrollbar thumb drag math to match visual movement, and keep drag-reorder row frames synchronized with their data order
- Fixes: commit text and slider edits once on focus loss/release while preserving Escape cancellation; improve left-click key capture and boolean-or-function disabled flags
- Fixes: preserve color-picker alpha/cancel values, retry LibSharedMedia discovery when it loads late, report failed sound playback correctly, and expose accurate dynamic list counts
1.8.17 (2026-09-15)
Full Changelog Previous Releases
- Localization: complete the Italian (itIT) and Korean (koKR) locales - translated all 83 missing keys and ~110 English placeholder strings each, including the appearance, clock, info-bar and button-badge settings (480-key set)
- Localization: complete German, Spanish (esES/esMX), French, Portuguese and Russian - added the 16 keys missing since 1.8.14 (profession icons, nudge position, clock number offset, confirm, unknown) plus the remaining placeholders (Quests, Score, Mythic+, Credits, Game Icons, Vol); every locale now passes the deDE parity check with zero missing or untranslated entries
- Fixes: settings pages no longer cancel each other's refresh callbacks when switching pages, so position coordinates, info-bar counters and check grids stay live on cached pages
- Fixes: tooltips no longer replace existing hover feedback (button, dropdown and reset-row highlights work again), and the slider's per-frame OnUpdate only runs while dragging (menus and scrollbars too)
- Fixes: sliders commit once on release instead of every drag tick, notes measure their wrapped height before layout, factory menus keep the host refresh hook, and the check-grid limit check is a single pass
- Fixes: a combat-blocked micro-menu re-position is applied on PLAYER_REGEN_ENABLED instead of leaving the bar visually stale, and the position status text uses the already-translated strings
- Tests: add a QFXWidgets refresh-registry regression test (owner scoping with a foreign global owner) and extend the locale parity whitelist
1.8.16 (2026-09-15)
Full Changelog Previous Releases
- Settings: rebuild the popup settings window on the QFXWidgets factory, embedded in this addon so the package stays self-contained; every control is factory-drawn now (blue/navy skin, compact rows, switches with a short slide animation, segmented pills, colour swatches without outlines, checkbox grids with a max-5 limit, factory scroll page with a self-drawn bar, factory tab navigation)
- Settings: replace the native close button, backdrop, scroll frame and page tabs with factory chrome; the window no longer closes together with the Blizzard options panel on the same ESC press (opt in with
QFXSystemBarNS.closeOnEscape = true); remove the legacy UI builders (~970 lines) - Settings: the button list and info-bar content pages use factory check grids (the per-bar 5-item limit is enforced and shown live), position pages collapse into one row (description left, four half-width nudge buttons right) with a live coordinate row and a factory reset row
- Fixes: dragging a slider no longer fights the page refresh (the value is committed once on release, the fill is whole-pixel), dropdown menus close through a click catcher so items always select, borders are sized in physical pixels so they are no longer shaved at fractional UI scales, long labels ellipsize after layout, and long menus scroll
- Localization: add the
Nudge PositionandCurrent Positionkeys (zhCN/zhTW); other locales fall back to English
1.8.15 (2026-09-10)
Full Changelog Previous Releases
- Localization: complete the Brazilian Portuguese (ptBR) locale - translated all placeholder strings, added the 85 keys missing vs deDE/ruRU, player-native short labels (iLvl, M+, Espec., FPS/ping, Dura, Zona, Coords, Fase, ACL, Som), official terms Moradia / ponto de rota (464-key set aligned)
- Fixes: guard the main-menu right-click action against combat so it no longer triggers a crash in MeetingStone's bundled LibShowUIPanel-1.0
1.8.14 (2026-09-03)
Full Changelog Previous Releases
- Settings: add wide, EUI-style drag previews for top micro-menu and info-bar ordering; remove the old item-order arrows and place each info bar's content controls directly below its enable switch
- Professions: add auto-detected primary and secondary profession icons using native game art, with left/right/middle-click shortcuts and compact spacing
- Group finder: show
集合石for MeetingStone and compact addon names for alternatives (PGBfor PremadeGroupBoard); left-click opens the detected addon's UI - Tooltips: automatically open away from the nearest screen edge for both info bars and the top micro menu without adding a background ticker
- Fixes: keep equal-width info-bar cells stable, localize durability slot names correctly, include reagent-bag space, throttle guild roster requests, and improve the outlined blinking clock colon
- Assets: refresh themed icons, include their licenses, and remove unused preview/legacy icon files
1.8.13 (2026-08-31)
Full Changelog Previous Releases
- Publishing: automatically attach this English changelog to each CurseForge file (markdown release notes)
- Packaging: stop shipping dev-only files (localization notes, test scripts) inside the addon package; refresh the packager folder map for the merged locale module
1.8.12 (2026-08-25)
Full Changelog Previous Releases
- Structure: merge the 10
QFXSystemBar_Locale_*sub-addons into a single load-on-demandQFXSystemBar_Localemodule (14 addon folders -> 5); stale split installs keep working via a loader fallback - Memory: free unused locale tables on registration - only the client locale (plus a forced language, if set) stays resident, cutting the locale footprint from ~560 KB to ~90 KB
- Language: switching to a language whose table was freed now asks for a UI reload (confirmation popup, blocked safely during combat)
- Localization: complete Spanish (esES/esMX) - translated all placeholder strings, added the 85 keys missing vs deDE/ruRU, player-native short labels (iLvl, M+, Espec., FPS/ping, Dura, Zona, Coords), official terms Vivienda / punto de ruta
- Localization: zhCN/zhTW complete the last missing key (volume tooltip); finished locales now carry a 464-key set
1.8.11 (2026-08-25)
Full Changelog Previous Releases
- Localization: complete the French (frFR) locale - translated all placeholder strings and added the 85 keys missing vs deDE/ruRU (463-key set aligned)
- Localization: use player-native short labels on French info bars (iLvl, M+, Spé, FPS/ping, Dura, Zone, Coords, Phase, ACL, Son)
- Localization: adopt official French terms - Housing -> Logis, waypoint -> point de repère
1.8.10 (2026-08-17)
Full Changelog Previous Releases
- Add compact English labels for 38 dropdown/row option keys to prevent UI overflow (Class Color modes, Hearthstone choices, native menu/bag bar rows, fade modes, line styles, counter rows)
- Localization notes document added: info bar short-label convention and English key length audit rules
1.8.09 (2026-08-17)
Full Changelog Previous Releases
- Re-release of 1.8.08 with a bumped version after an accidental CurseForge upload
- Localization: complete the Russian (ruRU) locale - translated 217 missing strings and aligned the key set with deDE
- Localization: fix German (deDE) terms (Housing, Dalaran-Ruhestein, Allgemeine Einstellungen, Originalsymbole)
- Localization: use player-native short labels on info bars (iLvl, M+, Spec / Спека, Прочка, Скор) in deDE and ruRU
1.8.08 (2026-08-15)
Full Changelog Previous Releases
- Performance: run locale application and SavedVariables migration once per database instance in the config UI
- Performance: only listen to GET_ITEM_INFO_RECEIVED / TOYS_UPDATED when a random hearthstone action is configured
- Performance: run InfoBar default migrations once per session
- Clean up dead code (unused button fields, no-op fade timer callback, unused options table, unreferenced bridge export)
- Share the equipped-durability scan between the micro menu and info bars
- Localization: complete the Russian (ruRU) locale - translated 217 missing strings and aligned the key set with deDE
- Localization: fix German (deDE) terms (Housing, Dalaran-Ruhestein, Allgemeine Einstellungen, Originalsymbole)
- Localization: use player-native short labels on info bars (iLvl, M+, Spec / Спека, Прочка, Скор) in deDE and ruRU
1.8.07 (2026-08-13)
Full Changelog Previous Releases
- Coalesce InfoBar login refresh requests to reduce startup CPU spikes
- Avoid duplicate InfoBar initialization refreshes
1.8.06 (2026-08-10)
Full Changelog Previous Releases
- Release 1.8.06 with WoW 12.1.0 support
- Release 1.8.05: drag unlocked menu directly
- Release 1.8.04: allow edge-aligned dragging
- Release 1.8.03
- Release 1.8.01: fix pinned-clock icon hover visibility
Merge PR #1 into main. - Bump version to 1.8.01
- Fix pinned-clock icon hover visibility
- Release version 1.8.00
- Add top-center zone information positioning
- Sync QFXSystemBar 1.7.99 source
- Add contribution guidelines
- Initial QFXSystemBar source release
This mod has no additional files

