File Details
v0.4.0-bcc
- R
- May 12, 2026
- 59.03 KB
- 3
- 2.5.5
- Classic TBC
File Name
coinscry-v0.4.0-bcc.zip
Supported Versions
- 2.5.5
Coinscry
v0.4.0 (2026-05-12)
Full Changelog Previous Releases
- v0.4.0: M3-E release (TOC + CHANGELOG)
- M3-E: embed Coinscry view inside MerchantFrame in vanilla mode
- Embed mode: yield to MerchantFrame's Buyback tab and restore on Merchant tab
Clicking Blizzard's Buyback tab now hides our embedded panel so the
buyback view is visible. Clicking back to the Merchant tab restores
the panel if the user had it open.
Implementation: hook MerchantFrame_Update (fires on tab switch).
Reads MerchantFrame.selectedTab; tab=1 (Merchant) re-shows the panel
if embedToggleOn, tab=2 (Buyback) hides it.
To distinguish 'user toggled off via the Coinscry tab' from 'tab
change hid us temporarily,' split the panel show/hide into two
layers:- Panel.Show / Panel.Hide are user-initiated; they update
embedToggleOn so the hook knows the user's intent. - ShowVisible / HideVisible are internal; just toggle the panel
frame + enter/exit embed mode without touching embedToggleOn.
The hook only consults embedToggleOn for the auto-restore path, so
returning to the Merchant tab brings back exactly what the user had
open. Coming from a vendor close (Panel.Hide via ApplyAnchor nil)
clears embedToggleOn so it doesn't leak into the next vendor.
- Panel.Show / Panel.Hide are user-initiated; they update
- Embed mode: also hide BuyBack icon, panel close-X, and resize grip
Three things to suppress in embed mode that don't fit the
'replaces the merchant grid' aesthetic:- MerchantBuyBackItem ('your last sold item' icon) was floating
inside our panel area; add it to HIDDEN_MERCHANT_WIDGETS. - Our panel's UIPanelCloseButton (the X in our top-right): the tab
is already the toggle, so the X is redundant and visually noisy
next to MerchantFrame's own close button. - Our drag-to-resize grip: panel size is dictated by MerchantFrame's
content area, so the grip wouldn't actually do anything useful
(and StartSizing on a both-anchors-locked frame can produce
glitchy positions). Restored in attached mode.
closeBtn and resizeGrip lifted to module-locals so EnterEmbedMode /
ExitEmbedMode can show/hide them.
- MerchantBuyBackItem ('your last sold item' icon) was floating
- M3-E: embed Coinscry view inside MerchantFrame in vanilla mode
When the anchor is Blizzard's MerchantFrame, the panel now embeds
inside MerchantFrame's content area instead of floating beside it.
Tab click toggles between Coinscry view and Blizzard's native item
grid. Default is Blizzard view; enable 'Show Coinscry view on vendor
open' in /coinscry config for auto-show.- Panel.AttachTo accepts a mode parameter: 'embedded' or 'attached'.
Core.ApplyAnchor picks the mode based on anchor identity:
MerchantFrame → embedded; TSM frame → attached (unchanged). - Embed lifecycle: EnterEmbedMode widens MerchantFrame to fit the
panel and hides MerchantItem1..12 + page nav. ExitEmbedMode
restores both. Mode entry/exit is gated by Panel.Show / Panel.Hide
so the tab toggle naturally maps to 'show Coinscry vs show grid'. - When Anchor's chosen frame switches mid-session (e.g., user opens
TSM4 mid-vendor), AttachTo cleans up the old embed state before
switching to attached mode.
Settings clarity: - 'Reset filters when opening a vendor' → 'Clear filters when
opening a vendor', subtitle 'otherwise filters carry over'. - 'Auto-open filter panel' → 'Show Coinscry view on vendor open',
subtitle 'Blizzard / TSM view shows by default'.
- Panel.AttachTo accepts a mode parameter: 'embedded' or 'attached'.

