Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9b4d7bbfa91643a6a20ef7a3d00abc4d5532683f
      
https://github.com/WebKit/WebKit/commit/9b4d7bbfa91643a6a20ef7a3d00abc4d5532683f
  Author: Basuke Suzuki <[email protected]>
  Date:   2025-08-14 (Thu, 14 Aug 2025)

  Changed paths:
    M LayoutTests/TestExpectations
    A 
LayoutTests/http/wpt/navigation-api/navigation-history-entry/opaque-origin-expected.txt
    A 
LayoutTests/http/wpt/navigation-api/navigation-history-entry/opaque-origin.html
    A 
LayoutTests/http/wpt/navigation-api/navigation-history-entry/resources/opaque-origin-page.html
    A 
LayoutTests/http/wpt/navigation-api/navigation-methods/return-value/back-forward-opaque-origin-expected.txt
    A 
LayoutTests/http/wpt/navigation-api/navigation-methods/return-value/back-forward-opaque-origin.html
    A 
LayoutTests/http/wpt/navigation-api/navigation-methods/return-value/resources/back-forward-opaque-origin-page.html
    M Source/WebCore/loader/FrameLoader.cpp
    M Source/WebCore/loader/FrameLoader.h

  Log Message:
  -----------
  [Navigation API] Not initialized for documents with opaque origins.
https://bugs.webkit.org/show_bug.cgi?id=297371
rdar://158265130

Reviewed by Tim Nguyen.

Navigation API was incorrectly skipping initialization for documents with 
opaque origins
(e.g., sandboxed iframes), causing tests to fail. The spec requires Navigation 
API to be
initialized for all documents, but return appropriate disabled state for opaque 
origins.

Fixed by:
- Removing opaque origin check from FrameLoader initialization condition.
- Navigation API methods already correctly return disabled state via
  hasEntriesAndEventsDisabled() for opaque origins per spec.
- Copied failing test to http/wpt/navigation-api/ with inlined dependencies
  to work around WebKit test server CORS restrictions for null origins
- Extracted complex traversal dispatch conditions into reusable helper methods

* LayoutTests/TestExpectations:
* 
LayoutTests/http/wpt/navigation-api/navigation-history-entry/opaque-origin-expected.txt:
 Added.
* 
LayoutTests/http/wpt/navigation-api/navigation-history-entry/opaque-origin.html:
 Added.
* 
LayoutTests/http/wpt/navigation-api/navigation-history-entry/resources/opaque-origin-page.html:
 Added.
* 
LayoutTests/http/wpt/navigation-api/navigation-methods/return-value/back-forward-opaque-origin-expected.txt:
 Added.
* 
LayoutTests/http/wpt/navigation-api/navigation-methods/return-value/back-forward-opaque-origin.html:
 Added.
* 
LayoutTests/http/wpt/navigation-api/navigation-methods/return-value/resources/back-forward-opaque-origin-page.html:
 Added.
* Source/WebCore/loader/FrameLoader.cpp:
(WebCore::FrameLoader::shouldDispatchNavigateEventForHistoryTraversal):
(WebCore::FrameLoader::loadItem):
* Source/WebCore/loader/FrameLoader.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to