[Cata Classic] Cosmetic: Minimize button on tracker + headers not visible
Road-block opened this issue · 9 comments
Describe the bug
The bug is cosmetic.
The minimize button on the headers does not draw (or perhaps it draws at the wrong layer and is simply not vislble)
It still works by clicking in its general area, but there's no visual indication the category is collapsible if you don't know the minimize button should be right about here.
Do you have an error log of what happened?
If you don't see any errors, make sure that error reporting is enabled (/console scriptErrors 1
) or install BugSack.
There are no Lua errors
To Reproduce
Steps to reproduce the behavior:
Track a couple quests.
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
What is the version of SylingTracker you use ?
2.5.3
What are the versions of PLoop and Scorpio you use ?
- PLoop: 'Put the version here'
- Scorpio: 'Put the version here'
Additional context
I'm not playing retail but having an invisible clickable area felt strange (it is not a 2.5.3 problem it was this way from the first Cata Classic version I installed)
The preview on the addon page also suggests the minimize button should be visible
All expanded
Header collapsed
Tracker collapsed
Not too pretty but at least they show. I put some conditionals IsCataclysm()
to use these atlas
"minimal-scrollbar-small-arrow-returntobottom"
"minimal-scrollbar-small-arrow-returntobottom-down"
"minimal-scrollbar-small-arrow-top"
"minimal-scrollbar-small-arrow-top-down"
for the tracker
and
"minimal-scrollbar-small-arrow-top"
"minimal-scrollbar-small-arrow-bottom"
for the header. Was either that or use some eyesores from RedButtons atlas. Couldn't find anything else that kinda matches the tracker aesthetic.
Both the minimize button for the whole tracker is invisible as well as the minimize button of the header which I initially reported.
Additionally while I can find RegisterUISetting("content.header.showMinimizeButton", true)
at \Core\UI\Views\ContentView.lua
I cannot see an option for it in either quest or achievement header section of the options.
Regardless of the option being user facing, the buttons actually exist and are clickable, they're just invisible.
Ok after some more digging I think I found the issue.
/Core/Tracker.lua#L1300 + 1303
None of "common-button-dropdown-closed" "common-button-dropdown-closedpressed" "common-button-dropdown-open"
atlas identifiers exist for the Cataclysm Client (4.4.0 live client at least, maybe things will change in a month for 4.4.1)
Similarly /Core/UI/Views/ContentView.lua#L159 + 162
None of "UI-HUD-Minimap-Zoom-Out" "UI-HUD-Minimap-Zoom-In"
exist either.
I haven't yet looked for alternatives that exist on both clients.
Edit: Live Cataclysm client (4.4.0) entries
https://wago.tools/db2/UiTextureAtlasMember?build=4.4.0.56489
PTR (4.4.1, upcoming client)
https://wago.tools/db2/UiTextureAtlasMember?build=4.4.1.56574
From what I can see neither the live or the upcoming client will have those atlas.
I don't want to open another ticket so I'll tack on another mostly cosmetic issue.
When tracking an achievement, the criteria are shown appropriately (which are completed and which are not)
The same happens after a /reloadui.
However they don't refresh on a cold login. I'm going to guess it's a timing issue. (info not yet returned by the game when the addon asks for it, when it's a fresh login)
In any case it's minor as they will update when something changes.
function FromMinizeButtonAtlas(normal)
return FromUIProperty("Minimized"):Map(function(minimized)
if minimized then
if IsRetail() then
return normal and AtlasType("common-button-dropdown-closed", false) or AtlasType("common-button-dropdown-closedpressed", false)
else
return normal and AtlasType("minimal-scrollbar-small-arrow-returntobottom", false) or AtlasType("minimal-scrollbar-small-arrow-returntobottom-down", false)
end
else
if IsRetail() then
return normal and AtlasType("common-button-dropdown-open", false) or AtlasType("common-button-dropdown-closedpressed", false)
else
return normal and AtlasType("minimal-scrollbar-small-arrow-top", false) or AtlasType("minimal-scrollbar-small-arrow-top-down", false)
end
end
end)
end
I flipped to a IsRetail check as vanilla will probably need the same treatment.
and /Core/UI/Views/ContentView.lua#L157 to
normalTexture = {
setAllPoints = true,
mediaTexture = Wow.FromUIProperty("Expanded"):Map(function(expanded)
if expanded then
if IsRetail() then
return { atlas = AtlasType("UI-HUD-Minimap-Zoom-Out") }
else
return { atlas = AtlasType("minimal-scrollbar-small-arrow-top") }
end
end
if IsRetail() then
return { atlas = AtlasType("UI-HUD-Minimap-Zoom-In") }
else
return { atlas = AtlasType("minimal-scrollbar-small-arrow-bottom") }
end
end)
},
The tracker minimize button looks better at a w:24 h:16 size (the header buttons are already squished) but I didn't know how that makes the retail texture look so I left it alone.
The tracker minimize button looks better at a w:24 h:16 size (the header buttons are already squished) but I didn't know how that makes the retail texture look so I left it alone.
For the size, we could use different values for Retail and Classic:
{
-- ... others props
[TrackerMinimizeButton] = {
size = { width = 24, height = IsRetail() and 24 or 16 },
registerForClicks = { "AnyUp"},
visible = FromUIProperty("Enabled"),
-- ... other props
},
}
In the future, i'll see a solution to unify the textures for Retail and Classic.