Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 69ab3832ce6b7d0e8ebf7a0a3223a1700df4a662
https://github.com/WebKit/WebKit/commit/69ab3832ce6b7d0e8ebf7a0a3223a1700df4a662
Author: David Stockley <[email protected]>
Date: 2026-06-29 (Mon, 29 Jun 2026)
Changed paths:
M Source/WTF/wtf/PlatformHave.h
M Source/WebCore/PAL/pal/spi/cocoa/PassKitSPI.h
M Source/WebKit/Configurations/AllowedSPI-legacy.toml
M Source/WebKit/Configurations/AllowedSPI.toml
M Source/WebKit/Platform/cocoa/PaymentAuthorizationViewController.mm
M Source/WebKit/Platform/ios/PaymentAuthorizationController.mm
Log Message:
-----------
Support returning "delegatedSession" endpoint name for Delegated Requests
https://bugs.webkit.org/show_bug.cgi?id=315855
rdar://172481255
Reviewed by Abrar Rahman Protyasha.
With Delegated Apple Pay, merchant sessions are created via a dedicated
delegatedSession endpoint, rather than the standard paymentSession endpoint.
When a payment request is a delegated request, WebKit was still asking PassKit
for
the non-delegated merchant URL, so the validationURL surfaced to the
onvalidatemerchant event was wrong.
PassKit added +paymentServicesMerchantURLForAPIType:isDelegated:completion:
so that callers can indicate whether the request is delegated and get the
correct
endpoint back. The new selector is only present in newer versions of PassKit,
so its
availability is checked with a new
`HAVE_PASSKIT_PAYMENT_SERVICES_MERCHANT_URL_IS_DELEGATED` macro.
* Source/WTF/wtf/PlatformHave.h:
* Source/WebCore/PAL/pal/spi/cocoa/PassKitSPI.h:
* Source/WebKit/Configurations/AllowedSPI-legacy.toml:
* Source/WebKit/Configurations/AllowedSPI.toml:
* Source/WebKit/Platform/cocoa/PaymentAuthorizationViewController.mm:
(-[WKPaymentAuthorizationViewControllerDelegate
_getPaymentServicesMerchantURL:]):
* Source/WebKit/Platform/ios/PaymentAuthorizationController.mm:
(-[WKPaymentAuthorizationControllerDelegate _getPaymentServicesMerchantURL:]):
Canonical link: https://commits.webkit.org/316010@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications