Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f2815da5dfcb85552dae87afb57027d79bea0020
      
https://github.com/WebKit/WebKit/commit/f2815da5dfcb85552dae87afb57027d79bea0020
  Author: Luke Warlow <[email protected]>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M LayoutTests/TestExpectations
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n-activate-preventDefault_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n-activate_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n-closerequest-n_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n-destroy-n_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nn-activate-dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nn-dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nnn-CloseWatcher-dialog-popover-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nnn-dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/ny-activate-preventDefault_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/ny_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nyn_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nynn_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nyyn-dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nyyyn-dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/y_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yn-activate_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yn_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/ynn-dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yy_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yyn_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yyy-CloseWatcher-dialog-popover-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yyy-activate-CloseWatcher-dialog-popover-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yyy_dialog-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-events-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-preventDefault-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-canceling-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-closedby-show-stacked-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-popover-closedby-simple-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-synthetic-keydown-expected.txt
    M Source/WebCore/html/HTMLDialogElement.cpp
    M Source/WebCore/html/HTMLDialogElement.h
    M Source/WebCore/html/closewatcher/CloseWatcher.cpp
    M Source/WebCore/html/closewatcher/CloseWatcher.h
    M Source/WebCore/page/EventHandler.cpp

  Log Message:
  -----------
  Implement dialog close watcher integration
https://bugs.webkit.org/show_bug.cgi?id=274717

Reviewed by Anne van Kesteren.

Implement the dialog element's internal close watcher.

Spec: 
https://html.spec.whatwg.org/multipage/interactive-elements.html#dialog-close-watcher

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n-activate-preventDefault_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n-activate_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n-closerequest-n_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n-destroy-n_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/n_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nn-activate-dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nn-dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nnn-CloseWatcher-dialog-popover-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nnn-dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/ny-activate-preventDefault_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/ny_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nyn_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nynn_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nyyn-dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/nyyyn-dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/y_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yn-activate_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yn_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/ynn-dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yy_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yyn_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yyy-CloseWatcher-dialog-popover-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yyy-activate-CloseWatcher-dialog-popover-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/close-watcher/user-activation/yyy_dialog-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-events-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-preventDefault-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-canceling-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-closedby-show-stacked-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-popover-closedby-simple-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-synthetic-keydown-expected.txt:
* Source/WebCore/html/HTMLDialogElement.cpp:
(WebCore::HTMLDialogElement::DialogCloseWatcherEventListener::DialogCloseWatcherEventListener):
(WebCore::HTMLDialogElement::DialogCloseWatcherEventListener::handleEvent):
(WebCore::HTMLDialogElement::showModal):
(WebCore::HTMLDialogElement::insertionSteps):
(WebCore::HTMLDialogElement::postConnectionSteps):
(WebCore::HTMLDialogElement::removingSteps):
(WebCore::HTMLDialogElement::attributeChanged):
(WebCore::HTMLDialogElement::setupSteps):
(WebCore::HTMLDialogElement::cleanupSteps):
(WebCore::HTMLDialogElement::setTheCloseWatcher):
(WebCore::HTMLDialogElement::setCloseWatcherEnabledState):
* Source/WebCore/html/HTMLDialogElement.h:
* Source/WebCore/html/closewatcher/CloseWatcher.cpp:
(WebCore::CloseWatcher::canBeClosed const):
* Source/WebCore/html/closewatcher/CloseWatcher.h:
* Source/WebCore/page/EventHandler.cpp:
(WebCore::EventHandler::defaultKeyboardEventHandler):

Canonical link: https://commits.webkit.org/313910@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to