Tooltip "Anchor Point" options are inconsistent
catthou opened this issue ยท 3 comments
Describe the bug
Some of the options in the "Anchor Point" drop down menu provide unexpected positioning results.
To Reproduce
Steps to reproduce the behaviour:
- Open the TRP settings and select Tooltip Settings
- Set "Anchored frame" to GameTooltip
- Change "Anchor point" to Top Left or Top Right and observe that the TRP tooltip and the game tooltip share an edge.
- Change "Anchor point" to Bottom Left, Bottom Right, Left, and Right to observe the unexpected; these options place the TRP tooltip diagonally from the game tooltip, not sharing any edges, which is inconsistent with the other options and seems unintentional.
Expected behaviour
All alignment options should share a side with the anchored frame. The deliberateness of diagonal alignment seems farfetched and its usefulness is obscure at best. There's especially an issue if you set the Anchored frame to UIParent: it's impossible to have the TRP tooltip anchored to the right or left of the screen since those options place it in the top right and top left of the screen respectively.
Bottom Left and Bottom Right should mirror the behavior of Top Left and Top Right. Left and Right should dock the center point of that side to the center point of the anchored side.
Screenshots or error message
These screenshots were taken with a tooltip addon so I could move it away from the edge of my screen, but the issue persists with or without a tooltip addon, as well as with no addons, using GameTooltip and UIParent for the anchored frame.
https://imgur.com/a/LjHq53x
Version of the add-on:
Total RP 3 2.0.2
Did you try having Total RP 3 as the only enabled addon and everything else (especially something like ElvUI) disabled?
Yes
Additional context
The most ideal behavior (but also the most work) would be to have 3 options for each edge of the anchored frame: a centered alignment as well as alignments to the two corners of that edge. This would make the most sense as two drop-down menus: "placement" and "growth direction." So if a user sets placement "top" and growth direction "right" then the TRP tooltip would be aligned above the Anchored frame, anchored to the top left.
Just to quickly intercede with why these are called what they are, it's because the names of the points in the dropdown match the anchor strings defined by Blizzard for their GameTooltip:SetOwner() API.
I agree though that the convention Blizzard used with their point names for this make absolutely no sense, and whoever was responsible for giving them those names should - politely speaking - feel very ashamed about their decision making here.
ANCHOR_LEFT :SetPoint("BOTTOMRIGHT", owner, "TOPLEFT")
What is this???? Why would somebody do this?? This hurts...
ANCHOR_NONE No call to :SetPoint() will be made. You must call it manually.
Is this a hint that these anchors are just shortcuts to calling :SetPoint() and don't perform any behind-the-scenes magic? So there is hope for more (or at least more refined) anchoring options in TRP in the future?? :)
So there is hope for more (or at least more refined) anchoring options in TRP in the future?? :)
That's why I didn't close the ticket ;)
We could consider the option but it won't be anything that happens soon I'd imagine. We've got an aversion to adding yet more options without a really good reason - we'd need to evaluate the difficulty on this one and how useful it really is.