ENYO-5904: Fix TooltipDecorator to position tooltips within non-root floating layers #2189
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Checklist
I have read and understand the contribution guide
A CHANGELOG entry is included
At least one test case is included for this feature or bug fix
Documentation was added or is not needed
This is an API breaking change
Issue Resolved / Feature Added
When tooltips are rendered within non-root
FloatingLayer
s as is the case inVideoPlayer
, they are positioned incorrectly based on the viewport rather than the layer into which they are rendered.Resolution
node
to theFloatingLayer.onOpen
payload to use as a reference point for positioning elements within the layerAdditional Considerations
Instead of updating
onOpen
, we could "find" the node usingclosest()
DOM API but would require breaking encapsulation since there's no way from TooltipDecorator to "tag" the floating layer. Any props added toFloatingLayerBase
are attached to a child of the node that is establishing the positioning context. Given that, exposing the node seemed like the right API but open to alternatives.