Changeset 220718 in webkit


Ignore:
Timestamp:
Aug 14, 2017 3:03:56 PM (7 years ago)
Author:
aestes@apple.com
Message:

[Apple Pay] Add support for phonetic contact names
https://bugs.webkit.org/show_bug.cgi?id=175537
<rdar://problem/32002644>

Reviewed by Tim Horton.

Source/WebCore:

  • Modules/applepay/ApplePayError.idl: Defined "phoneticName" in ApplePayErrorContactField.
  • Modules/applepay/ApplePayPaymentContact.h: Defined phoneticGivenName and phoneticFamilyName

in ApplePayPaymentContact.

  • Modules/applepay/ApplePayPaymentContact.idl: Ditto.
  • Modules/applepay/ApplePayPaymentRequest.h: Defined PhoneticName in

ApplePayPaymentRequest::ContactField.

  • Modules/applepay/ApplePayPaymentRequest.idl: Defined "phoneticName" in ApplePayContactField.
  • Modules/applepay/ApplePaySession.cpp:

(WebCore::convertAndValidate): Added a version parameter. Added code to convert
ContactField::PhoneticName, throwing an exception if version is less than 3.

  • Modules/applepay/PaymentContact.h: Added a version parameter to fromApplePayPaymentContact().
  • Modules/applepay/PaymentRequest.h: Defined phoneticName in PaymentRequest::ContactFields

and defined PhoneticName in PaymentError::ContactField.

  • Modules/applepay/cocoa/PaymentContactCocoa.mm:

(WebCore::convert): Added a version parameter. Set a phoneticRepresentation on the
PKContact's name if there are non-empty phonetic names and version is 3 or greater.
(WebCore::PaymentContact::fromApplePayPaymentContact): Passed version to convert().

Source/WebKit:

  • UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm: Soft-linked PKContactFieldPhoneticName.

(WebKit::toPKContactFields): Added code to append PKContactFieldPhoneticName to result if
contactFields.phoneticName is true.
(WebKit::toNSError): Specified PKContactFieldPhoneticName as the contact field for
PaymentError::ContactField::PhoneticName.

LayoutTests:

  • http/tests/ssl/applepay/ApplePayError-expected.txt:
  • http/tests/ssl/applepay/ApplePayError.html:
  • http/tests/ssl/applepay/ApplePaySession-expected.txt:
  • http/tests/ssl/applepay/ApplePaySession.html:
  • http/tests/ssl/applepay/ApplePaySessionV3-expected.txt:
  • http/tests/ssl/applepay/ApplePaySessionV3.html:
Location:
trunk
Files:
19 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r220717 r220718  
     12017-08-14  Andy Estes  <aestes@apple.com>
     2
     3        [Apple Pay] Add support for phonetic contact names
     4        https://bugs.webkit.org/show_bug.cgi?id=175537
     5        <rdar://problem/32002644>
     6
     7        Reviewed by Tim Horton.
     8
     9        * http/tests/ssl/applepay/ApplePayError-expected.txt:
     10        * http/tests/ssl/applepay/ApplePayError.html:
     11        * http/tests/ssl/applepay/ApplePaySession-expected.txt:
     12        * http/tests/ssl/applepay/ApplePaySession.html:
     13        * http/tests/ssl/applepay/ApplePaySessionV3-expected.txt:
     14        * http/tests/ssl/applepay/ApplePaySessionV3.html:
     15
    1162017-08-14  Said Abou-Hallawa  <sabouhallawa@apple.com>
    217
  • trunk/LayoutTests/http/tests/ssl/applepay/ApplePayError-expected.txt

    r217086 r220718  
    2828
    2929SETUP:
    30 PASS new ApplePayError('unknown', []) threw exception TypeError: Argument 2 ('contactField') to the ApplePayError constructor must be one of: "phoneNumber", "emailAddress", "name", "postalAddress", "addressLines", "locality", "postalCode", "administrativeArea", "country", "countryCode".
     30PASS new ApplePayError('unknown', []) threw exception TypeError: Argument 2 ('contactField') to the ApplePayError constructor must be one of: "phoneNumber", "emailAddress", "name", "phoneticName", "postalAddress", "addressLines", "locality", "postalCode", "administrativeArea", "country", "countryCode".
    3131
    3232SETUP:
    33 PASS new ApplePayError('unknown', '') threw exception TypeError: Argument 2 ('contactField') to the ApplePayError constructor must be one of: "phoneNumber", "emailAddress", "name", "postalAddress", "addressLines", "locality", "postalCode", "administrativeArea", "country", "countryCode".
     33PASS new ApplePayError('unknown', '') threw exception TypeError: Argument 2 ('contactField') to the ApplePayError constructor must be one of: "phoneNumber", "emailAddress", "name", "phoneticName", "postalAddress", "addressLines", "locality", "postalCode", "administrativeArea", "country", "countryCode".
    3434
    3535SETUP:
     
    4141SETUP:
    4242PASS new ApplePayError('unknown', 'name') did not throw exception.
     43
     44SETUP:
     45PASS new ApplePayError('unknown', 'phoneticName') did not throw exception.
    4346
    4447SETUP:
  • trunk/LayoutTests/http/tests/ssl/applepay/ApplePayError.html

    r217086 r220718  
    4141        logAndShouldNotThrow("", "new ApplePayError('unknown', 'emailAddress')")
    4242        logAndShouldNotThrow("", "new ApplePayError('unknown', 'name')")
     43        logAndShouldNotThrow("", "new ApplePayError('unknown', 'phoneticName')")
    4344        logAndShouldNotThrow("", "new ApplePayError('unknown', 'postalAddress')")
    4445        logAndShouldNotThrow("", "new ApplePayError('unknown', 'addressLines')")
  • trunk/LayoutTests/http/tests/ssl/applepay/ApplePaySession-expected.txt

    r219896 r220718  
    232232PASS new ApplePaySession(2, request) threw exception TypeError: Type error.
    233233
     234SETUP: request = validRequest(); request.requiredBillingContactFields = ['phoneticName'];
     235PASS new ApplePaySession(2, request) threw exception TypeError: "phoneticName" is not a valid contact field..
     236
    234237SETUP: request = validRequest(); request.requiredBillingContactFields = ['email', 'name', 'phone', 'postalAddress'];
    235238PASS new ApplePaySession(2, request) did not throw exception.
     
    289292SETUP: request = validRequest(); request.requiredShippingContactFields = ['invalid'];
    290293PASS new ApplePaySession(2, request) threw exception TypeError: Type error.
     294
     295SETUP: request = validRequest(); request.requiredShippingContactFields = ['phoneticName'];
     296PASS new ApplePaySession(2, request) threw exception TypeError: "phoneticName" is not a valid contact field..
    291297
    292298SETUP: request = validRequest(); request.requiredShippingContactFields = ['email', 'name', 'phone', 'postalAddress'];
  • trunk/LayoutTests/http/tests/ssl/applepay/ApplePaySession.html

    r219896 r220718  
    136136    logAndShouldThrow("request = validRequest(); request.requiredBillingContactFields = [{}];", "new ApplePaySession(2, request)")
    137137    logAndShouldThrow("request = validRequest(); request.requiredBillingContactFields = ['invalid'];", "new ApplePaySession(2, request)")
     138    logAndShouldThrow("request = validRequest(); request.requiredBillingContactFields = ['phoneticName'];", "new ApplePaySession(2, request)")
    138139    logAndShouldNotThrow("request = validRequest(); request.requiredBillingContactFields = ['email', 'name', 'phone', 'postalAddress'];", "new ApplePaySession(2, request)")
    139140    // FIXME: Should duplicate contactFields be allowed?
     
    161162    logAndShouldThrow("request = validRequest(); request.requiredShippingContactFields = [{}];", "new ApplePaySession(2, request)")
    162163    logAndShouldThrow("request = validRequest(); request.requiredShippingContactFields = ['invalid'];", "new ApplePaySession(2, request)")
     164    logAndShouldThrow("request = validRequest(); request.requiredShippingContactFields = ['phoneticName'];", "new ApplePaySession(2, request)")
    163165    logAndShouldNotThrow("request = validRequest(); request.requiredShippingContactFields = ['email', 'name', 'phone', 'postalAddress'];", "new ApplePaySession(2, request)")
    164166    // FIXME: Should duplicate contactFields be allowed?
  • trunk/LayoutTests/http/tests/ssl/applepay/ApplePaySessionV3-expected.txt

    r217723 r220718  
    4444PASS new ApplePaySession(3, request) did not throw exception.
    4545
     46SETUP: request = validRequest(); request.requiredBillingContactFields = ['phoneticName'];
     47PASS new ApplePaySession(3, request) did not throw exception.
     48
     49SETUP: request = validRequest(); request.requiredShippingContactFields = ['phoneticName'];
     50PASS new ApplePaySession(3, request) did not throw exception.
     51
    4652
    4753PASS successfullyParsed is true
  • trunk/LayoutTests/http/tests/ssl/applepay/ApplePaySessionV3.html

    r219896 r220718  
    5757    logAndShouldNotThrow("request = validRequest(); request.supportedCountries = ['US'];", "new ApplePaySession(3, request)");
    5858    logAndShouldNotThrow("request = validRequest(); request.supportedCountries = ['US', 'US'];", "new ApplePaySession(3, request)");
     59    logAndShouldNotThrow("request = validRequest(); request.requiredBillingContactFields = ['phoneticName'];", "new ApplePaySession(3, request)")
     60    logAndShouldNotThrow("request = validRequest(); request.requiredShippingContactFields = ['phoneticName'];", "new ApplePaySession(3, request)")
    5961    debug("");
    6062
  • trunk/Source/WebCore/ChangeLog

    r220717 r220718  
     12017-08-14  Andy Estes  <aestes@apple.com>
     2
     3        [Apple Pay] Add support for phonetic contact names
     4        https://bugs.webkit.org/show_bug.cgi?id=175537
     5        <rdar://problem/32002644>
     6
     7        Reviewed by Tim Horton.
     8
     9        * Modules/applepay/ApplePayError.idl: Defined "phoneticName" in ApplePayErrorContactField.
     10        * Modules/applepay/ApplePayPaymentContact.h: Defined phoneticGivenName and phoneticFamilyName
     11        in ApplePayPaymentContact.
     12        * Modules/applepay/ApplePayPaymentContact.idl: Ditto.
     13        * Modules/applepay/ApplePayPaymentRequest.h: Defined PhoneticName in
     14        ApplePayPaymentRequest::ContactField.
     15        * Modules/applepay/ApplePayPaymentRequest.idl: Defined "phoneticName" in ApplePayContactField.
     16        * Modules/applepay/ApplePaySession.cpp:
     17        (WebCore::convertAndValidate): Added a version parameter. Added code to convert
     18        ContactField::PhoneticName, throwing an exception if version is less than 3.
     19        * Modules/applepay/PaymentContact.h: Added a version parameter to fromApplePayPaymentContact().
     20        * Modules/applepay/PaymentRequest.h: Defined phoneticName in PaymentRequest::ContactFields
     21        and defined PhoneticName in PaymentError::ContactField.
     22        * Modules/applepay/cocoa/PaymentContactCocoa.mm:
     23        (WebCore::convert): Added a version parameter. Set a phoneticRepresentation on the
     24        PKContact's name if there are non-empty phonetic names and version is 3 or greater.
     25        (WebCore::PaymentContact::fromApplePayPaymentContact): Passed version to convert().
     26
    1272017-08-14  Said Abou-Hallawa  <sabouhallawa@apple.com>
    228
  • trunk/Source/WebCore/Modules/applepay/ApplePayError.idl

    r217626 r220718  
    3939    "emailAddress",
    4040    "name",
     41    "phoneticName",
    4142    "postalAddress",
    4243    "addressLines",
  • trunk/Source/WebCore/Modules/applepay/ApplePayPaymentContact.h

    r209927 r220718  
    11/*
    2  * Copyright (C) 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2016-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    3939    String givenName;
    4040    String familyName;
     41    String phoneticGivenName;
     42    String phoneticFamilyName;
    4143    std::optional<Vector<String>> addressLines;
    4244    String locality;
  • trunk/Source/WebCore/Modules/applepay/ApplePayPaymentContact.idl

    r209927 r220718  
    11/*
    2  * Copyright (C) 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2016-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    3232    DOMString givenName;
    3333    DOMString familyName;
     34    [Conditional=APPLE_PAY_SESSION_V3] DOMString phoneticGivenName;
     35    [Conditional=APPLE_PAY_SESSION_V3] DOMString phoneticFamilyName;
    3436    sequence<DOMString> addressLines;
    3537    DOMString locality;
  • trunk/Source/WebCore/Modules/applepay/ApplePayPaymentRequest.h

    r217723 r220718  
    11/*
    2  * Copyright (C) 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2016-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    3737struct ApplePayPaymentRequest {
    3838    enum class MerchantCapability { Supports3DS, SupportsEMV, SupportsCredit, SupportsDebit };
    39     enum class ContactField { Email, Name, Phone, PostalAddress };
     39    enum class ContactField { Email, Name, PhoneticName, Phone, PostalAddress };
    4040
    4141    using ShippingType = PaymentRequest::ShippingType;
  • trunk/Source/WebCore/Modules/applepay/ApplePayPaymentRequest.idl

    r217723 r220718  
    11/*
    2  * Copyright (C) 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2016-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    3838    "email",
    3939    "name",
     40    "phoneticName",
    4041    "phone",
    4142    "postalAddress"
  • trunk/Source/WebCore/Modules/applepay/ApplePaySession.cpp

    r219856 r220718  
    11/*
    2  * Copyright (C) 2015, 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2015-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    258258}
    259259
    260 static ExceptionOr<PaymentRequest::ContactFields> convertAndValidate(Vector<ApplePayPaymentRequest::ContactField>&& contactFields)
     260static ExceptionOr<PaymentRequest::ContactFields> convertAndValidate(unsigned version, Vector<ApplePayPaymentRequest::ContactField>&& contactFields)
    261261{
    262262    PaymentRequest::ContactFields result;
     
    269269        case ApplePayPaymentRequest::ContactField::Name:
    270270            result.name = true;
     271            break;
     272        case ApplePayPaymentRequest::ContactField::PhoneticName:
     273            if (version < 3)
     274                return Exception { TypeError, "\"phoneticName\" is not a valid contact field." };
     275            result.phoneticName = true;
    271276            break;
    272277        case ApplePayPaymentRequest::ContactField::Phone:
     
    340345
    341346    if (paymentRequest.requiredBillingContactFields) {
    342         auto requiredBillingContactFields = convertAndValidate(WTFMove(*paymentRequest.requiredBillingContactFields));
     347        auto requiredBillingContactFields = convertAndValidate(version, WTFMove(*paymentRequest.requiredBillingContactFields));
    343348        if (requiredBillingContactFields.hasException())
    344349            return requiredBillingContactFields.releaseException();
     
    347352
    348353    if (paymentRequest.billingContact)
    349         result.setBillingContact(PaymentContact::fromApplePayPaymentContact(paymentRequest.billingContact.value()));
     354        result.setBillingContact(PaymentContact::fromApplePayPaymentContact(version, paymentRequest.billingContact.value()));
    350355
    351356    if (paymentRequest.requiredShippingContactFields) {
    352         auto requiredShippingContactFields = convertAndValidate(WTFMove(*paymentRequest.requiredShippingContactFields));
     357        auto requiredShippingContactFields = convertAndValidate(version, WTFMove(*paymentRequest.requiredShippingContactFields));
    353358        if (requiredShippingContactFields.hasException())
    354359            return requiredShippingContactFields.releaseException();
     
    357362
    358363    if (paymentRequest.shippingContact)
    359         result.setShippingContact(PaymentContact::fromApplePayPaymentContact(paymentRequest.shippingContact.value()));
     364        result.setShippingContact(PaymentContact::fromApplePayPaymentContact(version, paymentRequest.shippingContact.value()));
    360365
    361366    result.setShippingType(paymentRequest.shippingType);
  • trunk/Source/WebCore/Modules/applepay/PaymentContact.h

    r209927 r220718  
    11/*
    2  * Copyright (C) 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2016-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    4545    }
    4646
    47     static PaymentContact fromApplePayPaymentContact(const ApplePayPaymentContact&);
     47    static PaymentContact fromApplePayPaymentContact(unsigned version, const ApplePayPaymentContact&);
    4848    ApplePayPaymentContact toApplePayPaymentContact() const;
    4949
  • trunk/Source/WebCore/Modules/applepay/PaymentRequest.h

    r217723 r220718  
    11/*
    2  * Copyright (C) 2015, 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2015-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    5454        bool email { false };
    5555        bool name { false };
     56        bool phoneticName { false };
    5657    };
    5758
     
    167168        EmailAddress,
    168169        Name,
     170        PhoneticName,
    169171        PostalAddress,
    170172        AddressLines,
  • trunk/Source/WebCore/Modules/applepay/cocoa/PaymentContactCocoa.mm

    r220506 r220718  
    11/*
    2  * Copyright (C) 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2016-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    4949namespace WebCore {
    5050
    51 static RetainPtr<PKContact> convert(const ApplePayPaymentContact& contact)
     51static RetainPtr<PKContact> convert(unsigned version, const ApplePayPaymentContact& contact)
    5252{
    5353    auto result = adoptNS([allocPKContactInstance() init]);
    5454
    55     if (!contact.familyName.isEmpty() || !contact.givenName.isEmpty()) {
     55    NSString *familyName = nil;
     56    NSString *phoneticFamilyName = nil;
     57    if (!contact.familyName.isEmpty()) {
     58        familyName = contact.familyName;
     59        if (version >= 3 && !contact.phoneticFamilyName.isEmpty())
     60            phoneticFamilyName = contact.phoneticFamilyName;
     61    }
     62
     63    NSString *givenName = nil;
     64    NSString *phoneticGivenName = nil;
     65    if (!contact.givenName.isEmpty()) {
     66        givenName = contact.givenName;
     67        if (version >= 3 && !contact.phoneticGivenName.isEmpty())
     68            phoneticGivenName = contact.phoneticGivenName;
     69    }
     70
     71    if (familyName || givenName) {
    5672        auto name = adoptNS([[NSPersonNameComponents alloc] init]);
    57         [name setFamilyName:contact.familyName];
    58         [name setGivenName:contact.givenName];
     73        [name setFamilyName:familyName];
     74        [name setGivenName:givenName];
     75        if (phoneticFamilyName || phoneticGivenName) {
     76            auto phoneticName = adoptNS([[NSPersonNameComponents alloc] init]);
     77            [phoneticName setFamilyName:phoneticFamilyName];
     78            [phoneticName setGivenName:phoneticGivenName];
     79            [name setPhoneticRepresentation:phoneticName.get()];
     80        }
    5981        [result setName:name.get()];
    6082    }
     
    7597                builder.append('\n');
    7698        }
    77        
     99
    78100        // FIXME: StringBuilder should hava a toNSString() function to avoid the extra String allocation.
    79101        [address setStreet:builder.toString()];
     
    102124    ApplePayPaymentContact result;
    103125
    104     if (contact.phoneNumber)
    105         result.phoneNumber = contact.phoneNumber.stringValue;
    106     if (contact.emailAddress)
    107         result.emailAddress = contact.emailAddress;
    108     if (contact.name.givenName)
    109         result.givenName = contact.name.givenName;
    110     if (contact.name.familyName)
    111         result.familyName = contact.name.familyName;
    112     if (contact.postalAddress.street.length) {
     126    result.phoneNumber = contact.phoneNumber.stringValue;
     127    result.emailAddress = contact.emailAddress;
     128
     129    NSPersonNameComponents *name = contact.name;
     130    result.givenName = name.givenName;
     131    result.familyName = name.familyName;
     132
     133    NSPersonNameComponents *phoneticName = name.phoneticRepresentation;
     134    result.phoneticGivenName = phoneticName.givenName;
     135    result.phoneticFamilyName = phoneticName.familyName;
     136
     137    CNPostalAddress *postalAddress = contact.postalAddress;
     138    if (postalAddress.street.length) {
    113139        Vector<String> addressLines;
    114         String(contact.postalAddress.street).split("\n", addressLines);
     140        String(postalAddress.street).split("\n", addressLines);
    115141        result.addressLines = WTFMove(addressLines);
    116142    }
    117     if (contact.postalAddress.city)
    118         result.locality = contact.postalAddress.city;
    119     if (contact.postalAddress.postalCode)
    120         result.postalCode = contact.postalAddress.postalCode;
    121     if (contact.postalAddress.state)
    122         result.administrativeArea = contact.postalAddress.state;
    123     if (contact.postalAddress.country)
    124         result.country = contact.postalAddress.country;
    125     if (contact.postalAddress.ISOCountryCode)
    126         result.countryCode = contact.postalAddress.ISOCountryCode;
     143    result.locality = postalAddress.city;
     144    result.postalCode = postalAddress.postalCode;
     145    result.administrativeArea = postalAddress.state;
     146    result.country = postalAddress.country;
     147    result.countryCode = postalAddress.ISOCountryCode;
    127148
    128149    return result;
    129150}
    130151
    131 PaymentContact PaymentContact::fromApplePayPaymentContact(const ApplePayPaymentContact& contact)
     152PaymentContact PaymentContact::fromApplePayPaymentContact(unsigned version, const ApplePayPaymentContact& contact)
    132153{
    133     return PaymentContact(convert(contact).get());
     154    return PaymentContact(convert(version, contact).get());
    134155}
    135156
  • trunk/Source/WebKit/ChangeLog

    r220709 r220718  
     12017-08-14  Andy Estes  <aestes@apple.com>
     2
     3        [Apple Pay] Add support for phonetic contact names
     4        https://bugs.webkit.org/show_bug.cgi?id=175537
     5        <rdar://problem/32002644>
     6
     7        Reviewed by Tim Horton.
     8
     9        * UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm: Soft-linked PKContactFieldPhoneticName.
     10        (WebKit::toPKContactFields): Added code to append PKContactFieldPhoneticName to result if
     11        contactFields.phoneticName is true.
     12        (WebKit::toNSError): Specified PKContactFieldPhoneticName as the contact field for
     13        PaymentError::ContactField::PhoneticName.
     14
    1152017-08-14  Tim Horton  <timothy_horton@apple.com>
    216
  • trunk/Source/WebKit/UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm

    r220506 r220718  
    11/*
    2  * Copyright (C) 2016 Apple Inc. All rights reserved.
     2 * Copyright (C) 2016-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    7878SOFT_LINK_CONSTANT(PassKit, PKContactFieldPhoneNumber, NSString *);
    7979SOFT_LINK_CONSTANT(PassKit, PKContactFieldName, NSString *);
     80SOFT_LINK_CONSTANT(PassKit, PKContactFieldPhoneticName, NSString *);
    8081SOFT_LINK_CONSTANT(PassKit, PKPaymentErrorContactFieldUserInfoKey, NSString *);
    8182SOFT_LINK_CONSTANT(PassKit, PKPaymentErrorPostalAddressUserInfoKey, NSString *);
     
    363364    if (contactFields.name)
    364365        result.append(getPKContactFieldName());
     366    if (contactFields.phoneticName)
     367        result.append(getPKContactFieldPhoneticName());
    365368
    366369    return adoptNS([[NSSet alloc] initWithObjects:result.data() count:result.size()]);
     
    639642            break;
    640643
     644        case WebCore::PaymentError::ContactField::PhoneticName:
     645            pkContactField = getPKContactFieldPhoneticName();
     646            break;
     647
    641648        case WebCore::PaymentError::ContactField::PostalAddress:
    642649            pkContactField = getPKContactFieldPostalAddress();
Note: See TracChangeset for help on using the changeset viewer.