Skip to content

Update offset of EuiPopover usages with hover behavior#245260

Merged
mgadewoll merged 1 commit intoelastic:mainfrom
mgadewoll:eui/update-hover-popover-offset
Dec 5, 2025
Merged

Update offset of EuiPopover usages with hover behavior#245260
mgadewoll merged 1 commit intoelastic:mainfrom
mgadewoll:eui/update-hover-popover-offset

Conversation

@mgadewoll
Copy link
Copy Markdown
Contributor

@mgadewoll mgadewoll commented Dec 4, 2025

Summary

This PR is a follow-up to changes added in #244032

EUI updated the default offset value for EuiPopover to 4 when hasArrow=false (set as default).
This results in the popover closing unexpectedly when the popover has custom closing behavior on onMouseLeave due to the 4px gap between the trigger and the panel elements.

Note

EuiPopover currently does not support open/close behavior on mouseenter/mouseleave due to general accessibility concerns (docs).
The implementations use custom functionality which is not considered by the default offset value.

Changes

  • updates offset to 0 for EuiPopover usages that apply custom open/close behavior on mouseenter/mouseleave

Checklist

Check the PR satisfies following conditions.

Reviewers should verify this PR satisfies this list as well.

  • Any text added follows EUI's writing guidelines, uses sentence case text and includes i18n support
  • Documentation was added for features that require explanation or tutorials
  • Unit or functional tests were updated or added to match the most common scenarios
  • If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the docker list
  • This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The release_note:breaking label should be applied in these situations.
  • Flaky Test Runner was used on any tests changed
  • The PR description includes the appropriate Release Notes section, and the correct release_note:* label is applied per the guidelines
  • Review the backport guidelines and apply applicable backport:* labels.

Identify risks

Does this PR introduce any risks? For example, consider risks like hard to test bugs, performance regression, potential of data loss.

Describe the risk, its severity, and mitigation for each identified risk. Invite stakeholders and evaluate how to proceed before merging.

- reducing the offset for popovers with hover ensures that the popovers don't close unexpectedly
@mgadewoll mgadewoll self-assigned this Dec 4, 2025
@mgadewoll mgadewoll added release_note:skip Skip the PR/issue when compiling release notes backport:skip This PR does not require backporting EUI labels Dec 4, 2025
@elasticmachine
Copy link
Copy Markdown
Contributor

💚 Build Succeeded

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
securitySolution 11.1MB 11.1MB +9.0B

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
elasticAssistant 307.5KB 307.5KB +9.0B

cc @mgadewoll

@mgadewoll mgadewoll marked this pull request as ready for review December 4, 2025 17:27
@mgadewoll mgadewoll requested review from a team as code owners December 4, 2025 17:27
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/eui-team (EUI)

Copy link
Copy Markdown
Contributor

@PhilippeOberti PhilippeOberti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for fixing this. Just FYI for other reviewers, this is the same fix that I implemented here for the kbn-cell-actions package yesterday

@mgadewoll mgadewoll merged commit 7ce418d into elastic:main Dec 5, 2025
23 checks passed
JordanSh pushed a commit to JordanSh/kibana that referenced this pull request Dec 9, 2025
)

## Summary

This PR is a follow-up to changes added in
elastic#244032

EUI updated the default `offset` value for `EuiPopover` to `4` when
`hasArrow=false` (set as default).
This results in the popover closing unexpectedly when the popover has
custom closing behavior on `onMouseLeave` due to the `4px` gap between
the trigger and the panel elements.

>[!NOTE]
`EuiPopover` currently does not support open/close behavior on
mouseenter/mouseleave due to general accessibility concerns
([docs](https://eui.elastic.co/v109.1.0/docs/components/containers/popover/)).
The implementations use custom functionality which is not considered by
the default `offset` value.

### Changes

- updates `offset` to `0` for `EuiPopover` usages that apply custom
open/close behavior on mouseenter/mouseleave

### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [ ] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
- [ ] Review the [backport
guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)
and apply applicable `backport:*` labels.

### Identify risks

Does this PR introduce any risks? For example, consider risks like hard
to test bugs, performance regression, potential of data loss.

Describe the risk, its severity, and mitigation for each identified
risk. Invite stakeholders and evaluate how to proceed before merging.

- [ ] [See some risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
- [ ] ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:skip This PR does not require backporting EUI release_note:skip Skip the PR/issue when compiling release notes v9.3.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants