Closed Bug 1810012 Opened 1 year ago Closed 1 year ago

[wpt-sync] Sync PR 37915 - Add `aftertoggle` event for popover

Categories

(Core :: DOM: Core & HTML, task, P4)

task

Tracking

()

RESOLVED FIXED
111 Branch
Tracking Status
firefox111 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 37915 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/37915
Details from upstream follow.

Mason Freed <masonf@chromium.org> wrote:

Add aftertoggle event for popover

This CL adds an async aftertoggle event to both the show and hide
popover transitions, and renames the event class from BeforeToggle
to PopoverToggle, to be used by both events.

This was resolved by OpenUI here:
https://github.com/openui/open-ui/issues/342#issuecomment-1380882740

Bug: 1307772
Change-Id: I996be74b90f43eee4bf859cecfed051fa6f633d5

Reviewed-on: https://chromium-review.googlesource.com/4160443
WPT-Export-Revision: f0f25883115e5c4193633d96779b255a2d08392d

PR 37915 applied with additional changes from upstream: 70556ebf89f188803730ee83e156259aac41eedc, 7c3aacf158efb050bdb81a1dd97ac324eaee799a, a0ddc451e02afbbe600c679fe1edab0e4f878ecf
Component: web-platform-tests → DOM: Core & HTML
Product: Testing → Core
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → INVALID
Status: RESOLVED → REOPENED
Resolution: INVALID → ---

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 3 tests and 37 subtests

Status Summary

Firefox

OK : 3
PASS: 14
FAIL: 122

Chrome

OK : 3
PASS: 87
FAIL: 49

Safari

OK : 3
PASS: 14
FAIL: 122

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /html/semantics/popovers/idlharness.tentative.html [wpt.fyi]
    • PopoverToggleEvent interface: existence and properties of interface object: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEvent interface object length: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEvent interface object name: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEvent interface: existence and properties of interface prototype object: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEvent interface: existence and properties of interface prototype object's "constructor" property: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEvent interface: existence and properties of interface prototype object's @@unscopables property: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEvent interface: attribute currentState: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEvent interface: attribute newState: FAIL (Chrome: FAIL, Safari: FAIL)
    • HTMLElement interface: operation togglePopover(optional boolean): FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: operation showPopover(): FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: operation hidePopover(): FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: attribute popover: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p1") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("p1") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p1") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p1") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p1") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p2") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("p2") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p2") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p2") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p2") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p3") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("p3") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p3") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p3") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("p3") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: attribute popoverToggleTargetElement: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: attribute popoverHideTargetElement: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: attribute popoverShowTargetElement: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i1") must inherit property "popoverToggleTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i1") must inherit property "popoverHideTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i1") must inherit property "popoverShowTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i1") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("i1") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i1") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i1") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i1") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i2") must inherit property "popoverToggleTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i2") must inherit property "popoverHideTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i2") must inherit property "popoverShowTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i2") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("i2") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i2") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i2") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i2") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i3") must inherit property "popoverToggleTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i3") must inherit property "popoverHideTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLInputElement interface: document.getElementById("i3") must inherit property "popoverShowTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i3") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("i3") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i3") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i3") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("i3") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: attribute popoverToggleTargetElement: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: attribute popoverHideTargetElement: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: attribute popoverShowTargetElement: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b1") must inherit property "popoverToggleTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b1") must inherit property "popoverHideTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b1") must inherit property "popoverShowTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b1") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("b1") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b1") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b1") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b1") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b2") must inherit property "popoverToggleTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b2") must inherit property "popoverHideTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b2") must inherit property "popoverShowTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b2") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("b2") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b2") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b2") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b2") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b3") must inherit property "popoverToggleTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b3") must inherit property "popoverHideTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLButtonElement interface: document.getElementById("b3") must inherit property "popoverShowTargetElement" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b3") must inherit property "togglePopover(optional boolean)" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: calling togglePopover(optional boolean) on document.getElementById("b3") with too few arguments must throw TypeError: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b3") must inherit property "showPopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b3") must inherit property "hidePopover()" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
    • HTMLElement interface: document.getElementById("b3") must inherit property "popover" with the proper type: FAIL (Chrome: PASS, Safari: FAIL)
  • /html/semantics/popovers/popover-events.tentative.html [wpt.fyi]
    • The "beforetoggle" event (listener) get properly dispatched for popovers: FAIL (Chrome: FAIL, Safari: FAIL)
    • The "beforetoggle" event (attribute) get properly dispatched for popovers: FAIL (Chrome: FAIL, Safari: FAIL)
    • The "beforetoggle" event is cancelable for the "opening" transition: FAIL (Chrome: FAIL, Safari: FAIL)
    • The "beforetoggle" event is not fired for element removal: FAIL (Chrome: FAIL, Safari: FAIL)
  • /html/semantics/popovers/toggleevent-interface.tentative.html [wpt.fyi]
    • the event is an instance of PopoverToggleEvent: FAIL (Chrome: FAIL, Safari: FAIL)
    • the event inherts from Event: FAIL (Chrome: FAIL, Safari: FAIL)
    • Missing type argument: FAIL (Chrome: FAIL, Safari: FAIL)
    • type argument is string: FAIL (Chrome: FAIL, Safari: FAIL)
    • type argument is null: FAIL (Chrome: FAIL, Safari: FAIL)
    • event type set to undefined: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState has default value of empty string: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState is readonly: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState has default value of empty string: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState is readonly: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEventInit argument is null: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEventInit argument is undefined: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEventInit argument is empty dictionary: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to 'sample': FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to undefined: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to null: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to false: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to true: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to a number: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to []: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to [1, 2, 3]: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to an object: FAIL (Chrome: FAIL, Safari: FAIL)
    • currentState set to an object with a valueOf function: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEventInit properties set value: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEventInit properties set value 2: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEventInit properties set value 3: FAIL (Chrome: FAIL, Safari: FAIL)
    • PopoverToggleEventInit properties set value 4: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to 'sample': FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to undefined: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to null: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to false: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to true: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to a number: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to []: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to [1, 2, 3]: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to an object: FAIL (Chrome: FAIL, Safari: FAIL)
    • newState set to an object with a valueOf function: FAIL (Chrome: FAIL, Safari: FAIL)
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/3c73c31664ad
[wpt PR 37915] - Add `aftertoggle` event for popover, a=testonly
https://hg.mozilla.org/integration/autoland/rev/c74f04ddbe72
[wpt PR 37915] - Update wpt metadata, a=testonly
Status: REOPENED → RESOLVED
Closed: 1 year ago1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 111 Branch
You need to log in before you can comment on or make changes to this bug.