[EuiToolTip] Prevent from closing while moving to intial position #4327
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.
Summary
elastic/kibana#84652 highlights a bug in EuiToolTip where if the anchor is near the top-left corner of the screen and the tooltip width is large enough, the tooltip will encroach upon the current cursor position which causes the tooltip to close. The net effect is the appearance of a flickering tooltip as the open and close events fire cyclically.
I've been unable to reproduce in Codesandbox, so see modified docs example inside:
Steps:
Code:
In
src-docs/src/views/header/header_stacked.jsDrop-in replacement:
Solution is to mark the tooltip
visible: hidden;like is done withopacityduring the positioning period. This prevents accidental mouse interaction that results in closing the tooltip. I could also see usingpointer-events: 'none';here, FWIW.Checklist
- [ ] Check against all themes for compatibility in both light and dark modes- [ ] Checked in mobile- [ ] Checked in Chrome, Safari, Edge, and Firefox- [ ] Props have proper autodocs- [ ] Added documentation- [ ] Added or updated jest tests- [ ] Checked for accessibility including keyboard-only and screenreader modes