Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ee54eb308acdc9e465fa040679c2938bf6fdb05c
      
https://github.com/WebKit/WebKit/commit/ee54eb308acdc9e465fa040679c2938bf6fdb05c
  Author: Adrian Taylor <[email protected]>
  Date:   2025-08-27 (Wed, 27 Aug 2025)

  Changed paths:
    M Source/WebCore/platform/LegacySchemeRegistry.cpp
    M Source/WebKit/Configurations/WebKit.xcconfig
    M Source/WebKit/Modules/Internal/WebKitInternalCxx.h
    A Source/WebKit/Scripts/generate-plain-cpp-swift-interop-header.sh
    A Source/WebKit/UIProcess/SwiftDemoLogo.swift
    A Source/WebKit/UIProcess/SwiftDemoLogoConfirmation.h
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp
    M Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm
    M Source/cmake/WebKitFeatures.cmake
    M Tools/Scripts/webkitperl/FeatureList.pm

  Log Message:
  -----------
  Swift/C++ interop toolchain test feature.
https://bugs.webkit.org/show_bug.cgi?id=294029
rdar://153087725

Reviewed by Elliott Williams.

This is a change which introduces a very simple Swift/C++ interop feature
into the core WebKit project. Specifically it intercepts a URI x-swift-demo://
which displays a Swift logo.

This is enabled by setting
  ENABLE_SWIFT_DEMO_URI_SCHEME = ENABLE_SWIFT_DEMO_URI_SCHEME
in LocalOverrides.xcconfig.

The purpose is to provide a simple test case to prove that Swift, and
specifically Swift/C++ interop, is working in a given toolchain. We want to
do this in advance of landing more meaningful Swift features in the core
of WebKit in future.

This feature will be removed in future once Swift is a well established
part of core WebKit.

This PR does not contain any cmake support: that will follow.

* Source/WebCore/platform/LegacySchemeRegistry.cpp:
(WebCore::builtinSecureSchemes):
* Source/WebKit/Configurations/WebKit.xcconfig:
* Source/WebKit/Modules/Internal/WebKitInternalCxx.h:
* Source/WebKit/Scripts/generate-plain-cpp-swift-interop-header.sh: Added.
* Source/WebKit/UIProcess/SwiftDemoLogo.swift: Added.
(Data.bytes):
(getSwiftLogoData):
* Source/WebKit/UIProcess/SwiftDemoLogoConfirmation.h: Copied from 
Source/WebKit/Modules/Internal/WebKitInternalCxx.h.
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::shouldShowSwiftDemoLogo):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::scheduleLoad):
* Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::platformCanHandleRequest):
* Source/cmake/WebKitFeatures.cmake:
* Tools/Scripts/webkitperl/FeatureList.pm:

Canonical link: https://commits.webkit.org/299192@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