-
Notifications
You must be signed in to change notification settings - Fork 85
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: set display none on overlay part to fix Safari 17.4 issue #7246
Conversation
Field highlighter test is failing for |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Without some animation on the host, closing is immediate. So this fix is not what we want. We only check the host element for the animation
property and delay the DOM removal until that animation has finished.
The actually visible animation is on the overlay part, not on the host. The "dummy" animation is there only to provide the same animation duration as the animation on the overlay part. If the duration of the dummy animation is shorter than the animation on the overlay part, then the animation will be cut short.
If the dummy animation is longer, then the overlay part might reappear for a brief period after its animation is finished, but that depends on the animation-fill-mode
property value.
6807aea
to
16c94cc
Compare
Updated to set |
Updated failing overlay focus-trap tests to first open the overlay and then get focusable elements. Also fixed a dialog test. |
dcf9140
to
ea71be6
Compare
8213f09
to
71e0a0d
Compare
|
Hi @web-padawan and @web-padawan, when i performed cherry-pick to this commit to 23.4, i have encountered the following issue. Can you take a look and pick it manually? |
#7255) Co-authored-by: Serhii Kulykov <[email protected]>
This ticket/PR has been released with Vaadin 24.4.0.alpha17 and is also targeting the upcoming stable 24.4.0 version. |
Description
Fixes #7245
Type of change
Before
safari-broken.mp4
After
safari-working.mp4
Note
Test changes are due to the fact that previously
getFocusableElements()
was sometimes called with closed overlay.As the helper used internally only checked for the element to be hidden directly, it returned the focusable elements.
Now when the CSS is updated to set
display: none
on the overlay part explicitly, those tests started to fail.Also, some tests have been adjusted to use proper timings (so that the overlay doesn't get detached too early).