Bug 1772618 [wpt PR 34304] - Make popups animation-friendly, a=testonly
commit8b2f035dae23854b2b17bb9fa555e7f91ce6258f
authorMason Freed <masonf@chromium.org>
Sat, 18 Jun 2022 09:56:15 +0000 (18 09:56 +0000)
committermoz-wptsync-bot <wptsync@mozilla.com>
Mon, 20 Jun 2022 18:35:37 +0000 (20 18:35 +0000)
tree93bc52ef97af539e5bc1f43fc5efec6e38dc699a
parent5a6cab8b2fdedbbab8595359c98f8fc08f6c955a
Bug 1772618 [wpt PR 34304] - Make popups animation-friendly, a=testonly

Automatic update from web-platform-tests
Make popups animation-friendly

Now, popups will follow this process when showing/hiding:

showPopup():
 1. Move the popup to the top layer, and remove the UA display:none
    style.
 2. Update style. (Transition initial style can be specified in this
    state.)
 3. Set the :top-layer pseudo class.
 4. Update style. (Animations/transitions happen here.)

hidePopup():
 1. Capture any already-running animations via getAnimations().
 2. Remove the :top-layer pseudo class.
 3. Update style. (Animations/transitions start here.)
 4. If the hidePopup() call is not due to a "force out" situation,
    getAnimations() again, remove any from step #1, and then wait here
    until all of them finish or are cancelled.
 4. Remove the popup from the top layer, and add the UA display:none
    style.
 5. Update style.

See this issue for more details:
  https://github.com/openui/open-ui/issues/335

Bug: 1307772
Change-Id: Ia20eb6e9533c1a0b1029ca1279d42fe2648300af
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3688871
Reviewed-by: Robert Flack <flackr@chromium.org>
Commit-Queue: Mason Freed <masonf@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1014235}

--

wpt-commits: 297b9403e0ab65348de01169d1a4e3cf078af7b9
wpt-pr: 34304
testing/web-platform/tests/html/semantics/popups/popup-animated-display-ref.tentative.html [new file with mode: 0644]
testing/web-platform/tests/html/semantics/popups/popup-animated-hide-cleanup.tentative.html [new file with mode: 0644]
testing/web-platform/tests/html/semantics/popups/popup-animated-hide-display.tentative.html [new file with mode: 0644]
testing/web-platform/tests/html/semantics/popups/popup-animated-hide-finishes-ref.tentative.html [new file with mode: 0644]
testing/web-platform/tests/html/semantics/popups/popup-animated-hide-finishes.tentative.html [new file with mode: 0644]
testing/web-platform/tests/html/semantics/popups/popup-animated-show-display.tentative.html [new file with mode: 0644]