[webkit-changes] [WebKit/WebKit] ffc70a: [popover] Avoid conflicting interactions in the to...

Tim Nguyen noreply at github.com
Tue Mar 7 00:55:03 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ffc70a735c9be6f27a14c3e87a169d4b56e97a51
      https://github.com/WebKit/WebKit/commit/ffc70a735c9be6f27a14c3e87a169d4b56e97a51
  Author: Tim Nguyen <ntim at apple.com>
  Date:   2023-03-07 (Tue, 07 Mar 2023)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-focus-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-top-layer-combinations-expected.txt
    A LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-top-layer-interactions-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-top-layer-interactions.html
    A LayoutTests/platform/gtk/imported/w3c/web-platform-tests/html/semantics/popovers/popover-focus-expected.txt
    M LayoutTests/platform/ios/TestExpectations
    M Source/WebCore/dom/FullscreenManager.cpp
    M Source/WebCore/html/HTMLDialogElement.cpp

  Log Message:
  -----------
  [popover] Avoid conflicting interactions in the top layer
https://bugs.webkit.org/show_bug.cgi?id=252297
rdar://105763866

Reviewed by Simon Fraser.

- Run "hide all popovers" algorithm every time something is appended to the top layer (since the auto popovers will be covered by the new element)
- Don't allow something in the popover showing visibility state to be appended in the top layer, since it is already there (this is similar to how dialogs can't go fullscreen).
- Fix test to avoid race conditions by properly waiting for async operations

* LayoutTests/TestExpectations:
* LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-focus-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-top-layer-combinations-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-top-layer-interactions-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-top-layer-interactions.html:
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/gtk/imported/w3c/web-platform-tests/html/semantics/popovers/popover-focus-expected.txt: Added.
* Source/WebCore/dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::requestFullscreenForElement):
(WebCore::FullscreenManager::willEnterFullscreen):
(WebCore::isInPopoverShowingState):
* Source/WebCore/html/HTMLDialogElement.cpp:
(WebCore::HTMLDialogElement::showModal):
(WebCore::HTMLDialogElement::runFocusingSteps):

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




More information about the webkit-changes mailing list