Releases: BazAddons/BazMap
Releases · BazAddons/BazMap
v026
BazMap
v026 (2026-05-05)
Full Changelog Previous Releases
- v026: silence ADDON_ACTION_BLOCKED from CheckMouseButtonPassthrough on map close
025
BazMap
025 (2026-05-04)
Full Changelog Previous Releases
- v025: detail-mode layout, BlizzMove fix, drag stability
Three related fixes plus a refactor.- Quest detail view is now a third remembered layout. Clicking a
tracked quest in the objective tracker opens the map with quest
details attached - a hybrid state distinct from pure map mode and
pure quest log mode. The addon's two-mode model collapsed it into
one of the others and applied the wrong size, leaving a big empty
region in the frame. Probing DetailsFrame.questID via the public
QuestMapFrame_GetDetailQuestID helper gives a clean three-mode
answer; new defaults detailScale and detailDraggable; new settings
page section; reset slash command clears detailPosition too. - Hooks on QuestMapFrame_ShowQuestDetails / _CloseQuestDetails /
_ReturnFromQuestDetails plus a HandleModeChange wrapper that only
fires save+apply on a real mode change. Stops the cascade-induced
redundant ApplyAll calls that fired three times per click-tracked-
quest path and could persist intermediate-state saves. - BlizzMove disable rewritten. Old code called BlizzMove:DisableFrame
with the wrong addon namespace ("Blizzard_WorldMap" - silently a
no-op since BlizzMove registers WorldMapFrame under its own self.name)
and no persistence. New code uses BlizzMoveAPI:UnregisterFrame with
permanent=true, fired from file scope + BlizzMove ADDON_LOADED + InitMap
so it wins whichever load-order race happens. Persists across /reload. - isDragging flag set by titleBar OnMouseDown/OnMouseUp; ApplyAll
short-circuits while it's true so Blizzard's SynchronizeDisplayState
refresh, OnSizeChanged, or any stale handler can't teleport the
frame mid-drag. WorldMapFrame doesn't expose IsMovingOrSizing on
its class, hence the manual marker.
User guide rewritten to acknowledge three layouts. Note: cross-mode
position memory is best-effort - Blizzard's WorldMapFrame mixin runs
its own internal layout passes (SetWidth in SetQuestLogPanelShown,
Maximize/Minimize, SynchronizeDisplayState) on every transition that
no addon can fully override. Same wall Leatrix Maps hits.
- Quest detail view is now a third remembered layout. Clicking a
v024
BazMap
v024 (2026-05-03)
Full Changelog Previous Releases
- v024: user guide refresh
Reorganise the in-game User Manual page, drop dev-y internal-mechanics
text in favour of user-focused prose, add coverage for recently shipped
features, match the new player-readable style across the suite. - docs: refresh user guide
- Reorganise pages for clearer top-down flow
- Add coverage for recently-shipped features
- Drop dev-y internal-mechanics text in favour of user-focused prose
- Match the new player-readable style across the suite
023
BazMap
023 (2026-05-03)
Full Changelog Previous Releases
- BazMap v023 - Fix SetPropagateMouseClicks taint on WorldMap toggle. The user reported ADDON_ACTION_BLOCKED for Frame:SetPropagateMouseClicks() blamed on BazMap when opening the WorldMap (TOGGLEWORLDMAP keybind). Trace: ToggleWorldMap > QuestLogOwnerMixin:HandleUserActionToggleSelf > SetDisplayState > ShowUIPanel > Blizzard_MapCanvas:RefreshAllData (called via secureexecuterange across all data providers) > DelveEntranceDataProvider:RefreshAllData > AreaPOIDataProvider > AcquirePin > SharedMapPoiTemplates SuperTrackablePinMixin:OnAcquired > UpdateMousePropagation > self:SetPropagateMouseClicks(...) - blocked. Same root cause as the v014 POI-tooltip taint fix: BazMap calls SetAttribute on WorldMapFrame's UIPanelLayout-area / UIPanelLayout-enabled / UIPanelLayout-allowOtherPanels (required to detach from Blizzard's panel layout system so the map can be freely positioned and scaled - documented as unavoidable in the file's header comment block). The taint propagates through the WorldMap and its child pins; once a pin is tainted, any subsequent secure-restricted call inherits the taint and gets blocked. SetPropagateMouseClicks is one such call. Same fix as v014: wrap the offending mixin method in pcall so the error is swallowed silently. SuperTrackablePinMixin.UpdateMousePropagation is overridden at file-scope with a pcall wrapper around the original. The pin loses the correct mouse-pass-through configuration for the affected frame (a click on the pin may or may not also pass through to the map underneath), which is a minor UX degradation - clicking IS still functional, just the propagation behaviour might not match what Blizzard intended for that specific pin's super-track state. The map and all other pins continue to work normally. The wrap is install at file scope so it's in place before any data provider refresh fires, which can happen as early as PLAYER_ENTERING_WORLD on a /reload. Bump to 023
022
BazMap
022 (2026-05-01)
Full Changelog Previous Releases
- Add SPDX-License-Identifier: GPL-2.0-or-later headers to every .lua and .xml source file in the addon (skipping Libs/ and _legacy/). The repo already declared GPL v2 via the LICENSE file at the root and X-License: GPL v2 in the .toc, but per-file SPDX annotations are the modern best practice (REUSE compliance, machine-readable license scanning, GitHub linguist detection) and bring this repo in line with the suite-wide convention. The line is a single comment at the top of each file - zero functional impact. Existing UTF-8 BOMs and original line endings are preserved. No code changes, header-only sweep, bump to 022
021
BazMap
021 (2026-04-27)
Full Changelog Previous Releases
- Unicode sweep across BazMap.lua + UserGuide.lua, bump to 021
020
BazMap
020 (2026-04-27)
Full Changelog Previous Releases
- README: replace 'pcall wrapper for UIWidget taint' jargon with plain 'taint-safe', bump to 020
019
BazMap
019 (2026-04-27)
Full Changelog Previous Releases
- Docs: add /bmap alias + reset subcommand, bump to 019
018
017
BazMap
017 (2026-04-15)
Full Changelog Previous Releases
- Rename sidebar labels — General Settings / Global Settings
Lines up with BazCore's new sidebar convention (see BazCore 037):
Settings → General Settings