WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Added a API test for WebArchive
bug-124391-20171015183751.patch (text/plain), 529.41 KB, created by
Ryosuke Niwa
on 2017-10-15 18:37:55 PDT
(
hide
)
Description:
Added a API test for WebArchive
Filename:
MIME Type:
Creator:
Ryosuke Niwa
Created:
2017-10-15 18:37:55 PDT
Size:
529.41 KB
patch
obsolete
>Subversion Revision: 223330 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index fabd670e8451001cfb3d4861bdd3479a979467df..ea14ce8062f25d3284eacc69e707a6ee558d2911 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,100 @@ >+2017-10-13 Ryosuke Niwa <rniwa@webkit.org> >+ >+ Cannot access images included in the content pasted from Microsoft Word >+ https://bugs.webkit.org/show_bug.cgi?id=124391 >+ <rdar://problem/26862741> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ The bug is caused by the fact Microsoft Word generates HTML content which references an image using file URL. >+ Because the websites don't have access to arbtirary file URLs, this prevents editors such as TinyMCE to save >+ those images. >+ >+ This patch fixes the problem by converting file URLs for images and all other subresources in the web archive >+ generated by Microsoft Word by blob URLs like r222839 for RTF/RTFD and r222119 for images. >+ >+ To avoid revealing privacy sensitive information such as the absolute local file path to the user's home directory >+ Microsoft Word and other applications in the system includes in the web archive placed in the system pasteboard, >+ this patch also introduces the mechanism to sanitize when the HTML content is read by DataTransfer's getData. >+ >+ This patch also introduces the sanitization for when writing HTML into the pasteboard since other applications >+ in the syste which is capable to processing web archives are not necessarily equipped to pretect itself and the >+ rest of the system from potentially dangerous JavaScript included in the web archive placed in the system pasteboard. >+ >+ Finally, this patch expands the list of clipboard types that are exposed as "text/html" to the Web platform by >+ adding the capability to convert RTF, RTFD, and web archive into HTML markup by introducing WebContentMarkupReader, >+ a new subclass of PasteboardWebContentReader which creates a HTML markup instead of a document fragment. Most of >+ the sanitization process happens in this new class, and will be expanded to WebContentReader to make pasting safer. >+ >+ Tests: editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url.html >+ editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin.html >+ editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying.html >+ editing/pasteboard/data-transfer-set-data-sanitlize-html-when-dragging-in-null-origin.html >+ http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html.html >+ CopyHTML.Sanitizes >+ DataInteractionTests.DataTransferSanitizeHTML >+ PasteRTF.ExposesHTMLTypeInDataTransfer >+ PasteRTFD.ExposesHTMLTypeInDataTransfer >+ PasteRTFD.ImageElementUsesBlobURLInHTML >+ PasteWebArchive.ExposesHTMLTypeInDataTransfer >+ >+ * dom/DataTransfer.cpp: >+ (WebCore::originIdentifierForDocument): Moved to Document::originIdentifierForPasteboard. >+ (WebCore::DataTransfer::createForCopyAndPaste): >+ (WebCore::DataTransfer::getDataForItem const): Use WebContentMarkupReader read HTMl content so that we can read >+ web arhive, RTF, and RTFD as text/html. >+ (WebCore::DataTransfer::getData const): >+ (WebCore::DataTransfer::setData): >+ (WebCore::DataTransfer::setDataFromItemList): Sanitize the HTML before placing into the system pasteboard. >+ (WebCore::DataTransfer::createForDragStartEvent): >+ (WebCore::DataTransfer::createForDrop): >+ (WebCore::DataTransfer::createForUpdatingDropTarget): >+ * dom/DataTransfer.h: >+ * dom/DataTransfer.idl: >+ * dom/DataTransferItem.cpp: >+ (WebCore::DataTransferItem::getAsString const): >+ * dom/Document.cpp: >+ (WebCore::Document::originIdentifierForPasteboard): Renamed from uniqueIdentifier. Moved the code to use the origin >+ string and then falling back to the UUID here from originIdentifierForDocument in DataTransfer.cpp. >+ * dom/Document.h: >+ * editing/WebContentReader.cpp: >+ (WebCore::WebContentMarkupReader::shouldSanitize const): Added. >+ * editing/WebContentReader.h: >+ (WebCore::WebContentMarkupReader): Added. >+ (WebCore::WebContentMarkupReader::WebContentMarkupReader): >+ * editing/cocoa/WebContentReaderCocoa.mm: >+ (WebCore::createFragmentFromWebArchive): Extracted out of WebContentReader::readWebArchive to share code. >+ (WebCore::WebContentReader::readWebArchive): >+ (WebCore::WebContentMarkupReader::readWebArchive): Added. Reads the web archive, replace all subresource URLs by >+ blob URLs, and re-generate the markup using our copy & paste code. The last step is requied to strip away any privacy >+ sensitive information as well as potentially dangerous JavaScript code. >+ (WebCore::stripMicrosoftPrefix): Extracted out of WebContentReader::readHTML to share code. >+ (WebCore::WebContentReader::readHTML): >+ (WebCore::WebContentMarkupReader::readHTML): Added. Only sanitize the markup when it comes from a different origin. >+ (WebCore::WebContentReader::readRTFD): Added a nullity check for frame.document(). >+ (WebCore::WebContentMarkupReader::readRTFD): Added. >+ (WebCore::WebContentMarkupReader::readRTF): Added. >+ * editing/markup.h: >+ * editing/markup.cpp: >+ (WebCore::createPageForSanitizingWebContent): Added. >+ (WebCore::sanitizeMarkup): Added. This function "pastes" the markup into a new isolated document then reserializes >+ using our serialization code for copy. It strips away all invisible information such as comments, and strips away >+ event handlers and script elements to remove potentially dangerous scripts. >+ * platform/Pasteboard.h: >+ * platform/ios/PasteboardIOS.mm: >+ (WebCore::Pasteboard::readPasteboardWebContentDataForType): Now that this code can be called by DataTransfer, added >+ the checks for the change count to make sure we stop letting web content read if the pasteboard had been changed by >+ some other applications. To do this, turned this function into a member of Pasteboard. Also changed the return type >+ to an enum with tri-state to exist the loop early in the call sites. >+ (WebCore::Pasteboard::read): >+ (WebCore::Pasteboard::readRespectingUTIFidelities): >+ * platform/ios/PlatformPasteboardIOS.mm: >+ (WebCore::safeTypeForDOMToReadAndWriteForPlatformType): Treat RTF, RTFD, and web archive as HTML. >+ * platform/mac/PasteboardMac.mm: >+ (WebCore::Pasteboard::read): Add the change count checks now that this code can be called by DataTransfer. >+ * platform/mac/PlatformPasteboardMac.mm: >+ (WebCore::safeTypeForDOMToReadAndWriteForPlatformType): Treat RTF, RTFD, and web archive as HTML. >+ > 2017-10-15 Chris Dumez <cdumez@apple.com> > > DOMTokenList shouldn't add empty attributes >diff --git a/Source/WebCore/dom/DataTransfer.cpp b/Source/WebCore/dom/DataTransfer.cpp >index 4dd7e9bcf95a10b50493288570f89663d30cc73e..41269c4d0fba6c338b7dc963e68cc18f0547b7f4 100644 >--- a/Source/WebCore/dom/DataTransfer.cpp >+++ b/Source/WebCore/dom/DataTransfer.cpp >@@ -30,6 +30,7 @@ > #include "CachedImageClient.h" > #include "DataTransferItem.h" > #include "DataTransferItemList.h" >+#include "DocumentFragment.h" > #include "DragData.h" > #include "Editor.h" > #include "FileList.h" >@@ -42,7 +43,9 @@ > #include "Settings.h" > #include "StaticPasteboard.h" > #include "URLParser.h" >+#include "WebContentReader.h" > #include "WebCorePasteboardFileReader.h" >+#include "markup.h" > > namespace WebCore { > >@@ -78,18 +81,10 @@ DataTransfer::DataTransfer(StoreMode mode, std::unique_ptr<Pasteboard> pasteboar > #endif > } > >-static String originIdentifierForDocument(Document& document) >-{ >- auto origin = document.securityOrigin().toString(); >- if (origin == "null") >- return document.uniqueIdentifier(); >- return origin; >-} >- > Ref<DataTransfer> DataTransfer::createForCopyAndPaste(Document& document, StoreMode storeMode, std::unique_ptr<Pasteboard>&& pasteboard) > { > auto dataTransfer = adoptRef(*new DataTransfer(storeMode, WTFMove(pasteboard))); >- dataTransfer->m_originIdentifier = originIdentifierForDocument(document); >+ dataTransfer->m_originIdentifier = document.originIdentifierForPasteboard(); > return dataTransfer; > } > >@@ -146,10 +141,10 @@ void DataTransfer::clearData(const String& type) > m_itemList->didClearStringData(normalizedType); > } > >-String DataTransfer::getDataForItem(const String& type) const >+String DataTransfer::getDataForItem(Document& document, const String& type) const > { > if (!canReadData()) >- return String(); >+ return { }; > > if ((forFileDrag() || Settings::customPasteboardDataEnabled()) && m_pasteboard->containsFiles()) > return { }; >@@ -158,30 +153,30 @@ String DataTransfer::getDataForItem(const String& type) const > if (!Settings::customPasteboardDataEnabled()) > return m_pasteboard->readString(lowercaseType); > >- bool isSameOrigin = false; >- if (is<StaticPasteboard>(*m_pasteboard)) { >- // StaticPasteboard is only used to stage data written by websites before being committed to the system pasteboard. >- isSameOrigin = true; >- } else if (!m_originIdentifier.isNull()) { >- String originOfPasteboard = m_pasteboard->readOrigin(); >- isSameOrigin = m_originIdentifier == originOfPasteboard; >+ // StaticPasteboard is only used to stage data written by websites before being committed to the system pasteboard. >+ bool isSameOrigin = is<StaticPasteboard>(*m_pasteboard) || (!m_originIdentifier.isNull() && m_originIdentifier == m_pasteboard->readOrigin()); >+ if (isSameOrigin) { >+ String value = m_pasteboard->readStringInCustomData(lowercaseType); >+ if (!value.isNull()) >+ return value; > } >+ if (!Pasteboard::isSafeTypeForDOMToReadAndWrite(lowercaseType)) >+ return { }; > >- if (!isSameOrigin) { >- if (!Pasteboard::isSafeTypeForDOMToReadAndWrite(lowercaseType)) >+ if (!is<StaticPasteboard>(*m_pasteboard) && type == "text/html") { >+ if (!document.frame()) > return { }; >- return m_pasteboard->readString(lowercaseType); >+ WebContentMarkupReader reader { *document.frame() }; >+ m_pasteboard->read(reader); >+ return reader.markup; > } > >- String value = m_pasteboard->readStringInCustomData(lowercaseType); >- if (value.isNull() && Pasteboard::isSafeTypeForDOMToReadAndWrite(lowercaseType)) >- value = m_pasteboard->readString(lowercaseType); >- return value; >+ return m_pasteboard->readString(type); > } > >-String DataTransfer::getData(const String& type) const >+String DataTransfer::getData(Document& document, const String& type) const > { >- return getDataForItem(normalizeType(type)); >+ return getDataForItem(document, normalizeType(type)); > } > > void DataTransfer::setData(const String& type, const String& data) >@@ -209,11 +204,13 @@ void DataTransfer::setDataFromItemList(const String& type, const String& data) > } > > String sanitizedData; >- if (type == "text/uri-list") { >+ if (type == "text/html") >+ sanitizedData = sanitizeMarkup(data); >+ else if (type == "text/uri-list") { > auto url = URLParser(data).result(); > if (url.isValid()) > sanitizedData = url.string(); >- } else if (type == "text/plain" || type == "text/html") >+ } else if (type == "text/plain") > sanitizedData = data; // Nothing to sanitize. > > if (sanitizedData != data) >@@ -411,7 +408,7 @@ Ref<DataTransfer> DataTransfer::createForDrag() > Ref<DataTransfer> DataTransfer::createForDragStartEvent(Document& document) > { > auto dataTransfer = adoptRef(*new DataTransfer(StoreMode::ReadWrite, std::make_unique<StaticPasteboard>(), Type::DragAndDropData)); >- dataTransfer->m_originIdentifier = originIdentifierForDocument(document); >+ dataTransfer->m_originIdentifier = document.originIdentifierForPasteboard(); > return dataTransfer; > } > >@@ -419,7 +416,7 @@ Ref<DataTransfer> DataTransfer::createForDrop(Document& document, std::unique_pt > { > auto dataTransfer = adoptRef(*new DataTransfer(DataTransfer::StoreMode::Readonly, WTFMove(pasteboard), draggingFiles ? Type::DragAndDropFiles : Type::DragAndDropData)); > dataTransfer->setSourceOperation(sourceOperation); >- dataTransfer->m_originIdentifier = originIdentifierForDocument(document); >+ dataTransfer->m_originIdentifier = document.originIdentifierForPasteboard(); > return dataTransfer; > } > >@@ -434,7 +431,7 @@ Ref<DataTransfer> DataTransfer::createForUpdatingDropTarget(Document& document, > #endif > auto dataTransfer = adoptRef(*new DataTransfer(mode, WTFMove(pasteboard), draggingFiles ? Type::DragAndDropFiles : Type::DragAndDropData)); > dataTransfer->setSourceOperation(sourceOperation); >- dataTransfer->m_originIdentifier = originIdentifierForDocument(document); >+ dataTransfer->m_originIdentifier = document.originIdentifierForPasteboard(); > return dataTransfer; > } > >diff --git a/Source/WebCore/dom/DataTransfer.h b/Source/WebCore/dom/DataTransfer.h >index 0f3f2094187ea67f0224cc8c8df7a4f34625c16c..605e05c866ae4c674b19b22664c6dff2c45ac868 100644 >--- a/Source/WebCore/dom/DataTransfer.h >+++ b/Source/WebCore/dom/DataTransfer.h >@@ -64,8 +64,8 @@ public: > > void clearData(const String& type = String()); > >- String getData(const String& type) const; >- String getDataForItem(const String& type) const; >+ String getData(Document&, const String& type) const; >+ String getDataForItem(Document&, const String& type) const; > > void setData(const String& type, const String& data); > void setDataFromItemList(const String& type, const String& data); >diff --git a/Source/WebCore/dom/DataTransfer.idl b/Source/WebCore/dom/DataTransfer.idl >index c7057eae11ce5da03987ac884b2c43b6f743dcd1..0c677c1e55ec94486d3de48229a148f177214b2b 100644 >--- a/Source/WebCore/dom/DataTransfer.idl >+++ b/Source/WebCore/dom/DataTransfer.idl >@@ -38,7 +38,7 @@ > void setDragImage(Element? image, long x, long y); // FIXME: Element argument is not nullable in the HTML standard. > > readonly attribute FrozenArray<DOMString> types; >- DOMString getData(DOMString format); >+ [CallWith=Document] DOMString getData(DOMString format); > void setData(DOMString format, DOMString data); > void clearData(optional DOMString format); > // FIXME: files should use [SameObject] once that is supported. >diff --git a/Source/WebCore/dom/DataTransferItem.cpp b/Source/WebCore/dom/DataTransferItem.cpp >index 7c8cd52b78dacb18112d9446f1cbacfbd07e6075..67834861bde8a5b43e73d6d737e704b81986de88 100644 >--- a/Source/WebCore/dom/DataTransferItem.cpp >+++ b/Source/WebCore/dom/DataTransferItem.cpp >@@ -34,6 +34,7 @@ > > #include "DOMFileSystem.h" > #include "DataTransferItemList.h" >+#include "Document.h" > #include "File.h" > #include "FileSystem.h" > #include "FileSystemDirectoryEntry.h" >@@ -85,7 +86,7 @@ String DataTransferItem::type() const > return isInDisabledMode() ? String() : m_type; > } > >-void DataTransferItem::getAsString(ScriptExecutionContext& context, RefPtr<StringCallback>&& callback) const >+void DataTransferItem::getAsString(Document& document, RefPtr<StringCallback>&& callback) const > { > if (!callback || !m_list || m_file) > return; >@@ -95,7 +96,7 @@ void DataTransferItem::getAsString(ScriptExecutionContext& context, RefPtr<Strin > return; > > // FIXME: Make this async. >- callback->scheduleCallback(context, dataTransfer.getDataForItem(m_type)); >+ callback->scheduleCallback(document, dataTransfer.getDataForItem(document, m_type)); > } > > RefPtr<File> DataTransferItem::getAsFile() const >diff --git a/Source/WebCore/dom/DataTransferItem.h b/Source/WebCore/dom/DataTransferItem.h >index 1f2809ff6b1eb9a2dae2f4cfddb62fc4e8f3b91f..91ebda1a4e6f752707e5f78b249926c38113725f 100644 >--- a/Source/WebCore/dom/DataTransferItem.h >+++ b/Source/WebCore/dom/DataTransferItem.h >@@ -60,7 +60,7 @@ public: > bool isFile() const { return m_file; } > String kind() const; > String type() const; >- void getAsString(ScriptExecutionContext&, RefPtr<StringCallback>&&) const; >+ void getAsString(Document&, RefPtr<StringCallback>&&) const; > RefPtr<File> getAsFile() const; > RefPtr<FileSystemEntry> getAsEntry(ScriptExecutionContext&) const; > >diff --git a/Source/WebCore/dom/DataTransferItem.idl b/Source/WebCore/dom/DataTransferItem.idl >index e7d1e03cb10fb39c5bd29ffc5a1e64d81e30c78d..539358147e3090383eb51ea46660b448576f8370 100644 >--- a/Source/WebCore/dom/DataTransferItem.idl >+++ b/Source/WebCore/dom/DataTransferItem.idl >@@ -36,7 +36,7 @@ > readonly attribute DOMString kind; > readonly attribute DOMString type; > >- [CallWith=ScriptExecutionContext] void getAsString(StringCallback? callback); >+ [CallWith=Document] void getAsString(StringCallback? callback); > File getAsFile(); > > // https://wicg.github.io/entries-api/#html-data >diff --git a/Source/WebCore/dom/Document.cpp b/Source/WebCore/dom/Document.cpp >index a3d8c31011f47cd66205ecd29313e99b5aaf30ab..ea30d5c85f05ded12668620d58d521a3c47a95a0 100644 >--- a/Source/WebCore/dom/Document.cpp >+++ b/Source/WebCore/dom/Document.cpp >@@ -5300,8 +5300,11 @@ bool Document::isTelephoneNumberParsingAllowed() const > > #endif > >-String Document::uniqueIdentifier() >+String Document::originIdentifierForPasteboard() > { >+ auto origin = securityOrigin().toString(); >+ if (origin != "null") >+ return origin; > if (!m_uniqueIdentifier) > m_uniqueIdentifier = "null:" + createCanonicalUUIDString(); > return m_uniqueIdentifier; >diff --git a/Source/WebCore/dom/Document.h b/Source/WebCore/dom/Document.h >index 4cc694799e31ef7e36183507e56c711296f59075..dc8a598c022997ce5401c7782664bb23fd710c6b 100644 >--- a/Source/WebCore/dom/Document.h >+++ b/Source/WebCore/dom/Document.h >@@ -957,7 +957,7 @@ public: > void incDOMTreeVersion() { m_domTreeVersion = ++s_globalTreeVersion; } > uint64_t domTreeVersion() const { return m_domTreeVersion; } > >- String uniqueIdentifier(); >+ String originIdentifierForPasteboard(); > > // XPathEvaluator methods > WEBCORE_EXPORT ExceptionOr<Ref<XPathExpression>> createExpression(const String& expression, RefPtr<XPathNSResolver>&&); >diff --git a/Source/WebCore/editing/WebContentReader.cpp b/Source/WebCore/editing/WebContentReader.cpp >index 72c679a52acc3e37553dd5d3525851358d5f5551..e6bc262daa89a21821fac5f05db45be2e63168a7 100644 >--- a/Source/WebCore/editing/WebContentReader.cpp >+++ b/Source/WebCore/editing/WebContentReader.cpp >@@ -26,6 +26,7 @@ > #include "config.h" > #include "WebContentReader.h" > >+#include "Document.h" > #include "DocumentFragment.h" > > namespace WebCore { >@@ -38,5 +39,10 @@ void WebContentReader::addFragment(Ref<DocumentFragment>&& newFragment) > fragment->appendChild(newFragment.get()); > } > >+bool WebContentMarkupReader::shouldSanitize() const >+{ >+ return frame.document() && frame.document()->originIdentifierForPasteboard() != contentOrigin; >+} >+ > } > >diff --git a/Source/WebCore/editing/WebContentReader.h b/Source/WebCore/editing/WebContentReader.h >index d0cecfac38d5b084b184f974fee39a0f7d81b393..843ac2028687898abea85357bc6faec4bab9c14f 100644 >--- a/Source/WebCore/editing/WebContentReader.h >+++ b/Source/WebCore/editing/WebContentReader.h >@@ -65,6 +65,31 @@ private: > bool readPlainText(const String&) override; > }; > >+class WebContentMarkupReader final : public PasteboardWebContentReader { >+public: >+ Frame& frame; >+ String markup; >+ >+ explicit WebContentMarkupReader(Frame& frame) >+ : frame(frame) >+ { >+ } >+ >+private: >+ bool shouldSanitize() const; >+ >+#if PLATFORM(COCOA) >+ bool readWebArchive(SharedBuffer&) override; >+ bool readFilenames(const Vector<String>&) override { return false; } >+ bool readHTML(const String&) override; >+ bool readRTFD(SharedBuffer&) override; >+ bool readRTF(SharedBuffer&) override; >+ bool readImage(Ref<SharedBuffer>&&, const String&) override { return false; } >+ bool readURL(const URL&, const String&) override { return false; } >+#endif >+ bool readPlainText(const String&) override { return false; } >+}; >+ > #if PLATFORM(COCOA) && defined(__OBJC__) > struct FragmentAndResources { > RefPtr<DocumentFragment> fragment; >diff --git a/Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm b/Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm >index f256556f1d1251dee0ca3ebd1ab4578e3e8e93ba..ff63eb32cfb6900646cb60b91cc73d8a3d4f0f47 100644 >--- a/Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm >+++ b/Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm >@@ -39,8 +39,10 @@ > #import "HTMLBodyElement.h" > #import "HTMLImageElement.h" > #import "LegacyWebArchive.h" >+#import "MainFrame.h" > #import "Page.h" > #import "Settings.h" >+#import "SocketProvider.h" > #import "WebArchiveResourceFromNSAttributedString.h" > #import "WebArchiveResourceWebResourceHandler.h" > #import "WebNSAttributedStringExtras.h" >@@ -179,37 +181,84 @@ RefPtr<DocumentFragment> createFragmentAndAddResources(Frame& frame, NSAttribute > return WTFMove(fragmentAndResources.fragment); > } > >-bool WebContentReader::readWebArchive(SharedBuffer& buffer) >-{ >- if (frame.settings().preferMIMETypeForImages() || !frame.document()) >- return false; >+struct FragmentAndArchive { >+ Ref<DocumentFragment> fragment; >+ Ref<Archive> archive; >+}; > >+static std::optional<FragmentAndArchive> createFragmentFromWebArchive(Document& document, SharedBuffer& buffer, const std::function<bool(const String)>& canShowMIMETypeAsHTML) >+{ > auto archive = LegacyWebArchive::create(URL(), buffer); > if (!archive) >- return false; >+ return std::nullopt; > > RefPtr<ArchiveResource> mainResource = archive->mainResource(); > if (!mainResource) >- return false; >+ return std::nullopt; > > auto type = mainResource->mimeType(); >- if (!frame.loader().client().canShowMIMETypeAsHTML(type)) >+ if (!canShowMIMETypeAsHTML(type)) >+ return std::nullopt; >+ >+ auto markupString = String::fromUTF8(mainResource->data().data(), mainResource->data().size()); >+ auto fragment = createFragmentFromMarkup(document, markupString, mainResource->url(), DisallowScriptingAndPluginContent); >+ >+ return FragmentAndArchive { WTFMove(fragment), archive.releaseNonNull() }; >+} >+ >+bool WebContentReader::readWebArchive(SharedBuffer& buffer) >+{ >+ if (frame.settings().preferMIMETypeForImages() || !frame.document()) > return false; > > DeferredLoadingScope scope(frame); >- auto markupString = String::fromUTF8(mainResource->data().data(), mainResource->data().size()); >- addFragment(createFragmentFromMarkup(*frame.document(), markupString, mainResource->url(), DisallowScriptingAndPluginContent)); >+ auto result = createFragmentFromWebArchive(*frame.document(), buffer, [&] (const String& type) { >+ return frame.loader().client().canShowMIMETypeAsHTML(type); >+ }); >+ if (!result) >+ return false; > >+ fragment = WTFMove(result->fragment); > if (DocumentLoader* loader = frame.loader().documentLoader()) >- loader->addAllArchiveResources(*archive); >+ loader->addAllArchiveResources(result->archive.get()); > > return true; > } > >-bool WebContentReader::readHTML(const String& string) >+bool WebContentMarkupReader::readWebArchive(SharedBuffer& buffer) >+{ >+ auto page = createPageForSanitizingWebContent(); >+ Document* stagingDocument = page->mainFrame().document(); >+ ASSERT(stagingDocument); >+ >+ DeferredLoadingScope scope(frame); >+ auto result = createFragmentFromWebArchive(*stagingDocument, buffer, [&] (const String& type) { >+ return frame.loader().client().canShowMIMETypeAsHTML(type); >+ }); >+ if (!result) >+ return false; >+ >+ HashMap<AtomicString, AtomicString> blobURLMap; >+ for (const Ref<ArchiveResource>& subresource : result->archive->subresources()) { >+ auto blob = Blob::create(subresource->data(), subresource->mimeType()); >+ String blobURL = DOMURL::createObjectURL(*frame.document(), blob); >+ blobURLMap.set(subresource->url().string(), blobURL); >+ } >+ replaceSubresourceURLs(result->fragment.get(), WTFMove(blobURLMap)); >+ >+ auto* bodyElement = stagingDocument->body(); >+ ASSERT(bodyElement); >+ bodyElement->appendChild(result->fragment); >+ >+ auto range = Range::create(*stagingDocument); >+ range->selectNodeContents(*bodyElement); >+ markup = createMarkup(range.get(), nullptr, AnnotateForInterchange, false, ResolveNonLocalURLs); >+ >+ return true; >+} >+ >+static String stripMicrosoftPrefix(const String& string) > { >- String stringOmittingMicrosoftPrefix = string; >- > #if PLATFORM(MAC) > // This code was added to make HTML paste from Microsoft Word on Mac work, back in 2004. > // It's a simple-minded way to ignore the CF_HTML clipboard format, just skipping over the >@@ -217,24 +266,43 @@ bool WebContentReader::readHTML(const String& string) > if (string.startsWith("Version:")) { > size_t location = string.findIgnoringCase("<html"); > if (location != notFound) >- stringOmittingMicrosoftPrefix = string.substring(location); >+ return string.substring(location); > } > #endif >+ return string; >+} > >- if (stringOmittingMicrosoftPrefix.isEmpty()) >+bool WebContentReader::readHTML(const String& string) >+{ >+ if (frame.settings().preferMIMETypeForImages() || !frame.document()) > return false; >+ Document& document = *frame.document(); > >- if (!frame.document()) >+ String stringOmittingMicrosoftPrefix = stripMicrosoftPrefix(string); >+ if (stringOmittingMicrosoftPrefix.isEmpty()) > return false; >- Document& document = *frame.document(); > > addFragment(createFragmentFromMarkup(document, stringOmittingMicrosoftPrefix, emptyString(), DisallowScriptingAndPluginContent)); > return true; > } > >+bool WebContentMarkupReader::readHTML(const String& string) >+{ >+ if (!frame.document()) >+ return false; >+ >+ String rawHTML = stripMicrosoftPrefix(string); >+ if (shouldSanitize()) >+ markup = sanitizeMarkup(rawHTML); >+ else >+ markup = rawHTML; >+ >+ return !markup.isEmpty(); >+} >+ > bool WebContentReader::readRTFD(SharedBuffer& buffer) > { >- if (frame.settings().preferMIMETypeForImages()) >+ if (frame.settings().preferMIMETypeForImages() || !frame.document()) > return false; > > auto fragment = createFragmentAndAddResources(frame, adoptNS([[NSAttributedString alloc] initWithRTFD:buffer.createNSData().get() documentAttributes:nullptr]).get()); >@@ -245,6 +313,15 @@ bool WebContentReader::readRTFD(SharedBuffer& buffer) > return true; > } > >+bool WebContentMarkupReader::readRTFD(SharedBuffer& buffer) >+{ >+ if (!frame.document()) >+ return false; >+ auto fragment = createFragmentAndAddResources(frame, adoptNS([[NSAttributedString alloc] initWithRTFD:buffer.createNSData().get() documentAttributes:nullptr]).get()); >+ markup = createMarkup(*fragment); >+ return true; >+} >+ > bool WebContentReader::readRTF(SharedBuffer& buffer) > { > if (frame.settings().preferMIMETypeForImages()) >@@ -258,6 +335,17 @@ bool WebContentReader::readRTF(SharedBuffer& buffer) > return true; > } > >+bool WebContentMarkupReader::readRTF(SharedBuffer& buffer) >+{ >+ if (!frame.document()) >+ return false; >+ auto fragment = createFragmentAndAddResources(frame, adoptNS([[NSAttributedString alloc] initWithRTF:buffer.createNSData().get() documentAttributes:nullptr]).get()); >+ if (!fragment) >+ return false; >+ markup = createMarkup(*fragment); >+ return true; >+} >+ > bool WebContentReader::readPlainText(const String& text) > { > if (!allowPlainText) >diff --git a/Source/WebCore/editing/markup.cpp b/Source/WebCore/editing/markup.cpp >index e738656a3af3aeca855a7594293cab36187c273b..a86c3e5a8c670569d873ffe60a1113cf03e67e6b 100644 >--- a/Source/WebCore/editing/markup.cpp >+++ b/Source/WebCore/editing/markup.cpp >@@ -34,13 +34,16 @@ > #include "CSSPropertyNames.h" > #include "CSSValue.h" > #include "CSSValueKeywords.h" >+#include "CacheStorageProvider.h" > #include "ChildListMutationScope.h" > #include "DocumentFragment.h" > #include "DocumentLoader.h" > #include "DocumentType.h" > #include "Editing.h" > #include "Editor.h" >+#include "EditorClient.h" > #include "ElementIterator.h" >+#include "EmptyClients.h" > #include "File.h" > #include "Frame.h" > #include "FrameLoader.h" >@@ -55,15 +58,20 @@ > #include "HTMLTableElement.h" > #include "HTMLTextAreaElement.h" > #include "HTMLTextFormControlElement.h" >-#include "URL.h" >+#include "LibWebRTCProvider.h" >+#include "MainFrame.h" > #include "MarkupAccumulator.h" > #include "NodeList.h" >+#include "Page.h" >+#include "PageConfiguration.h" > #include "Range.h" > #include "RenderBlock.h" > #include "Settings.h" >+#include "SocketProvider.h" > #include "StyleProperties.h" > #include "TextIterator.h" > #include "TypedElementDescendantIterator.h" >+#include "URL.h" > #include "VisibleSelection.h" > #include "VisibleUnits.h" > #include <wtf/StdLibExtras.h> >@@ -135,6 +143,51 @@ void replaceSubresourceURLs(Ref<DocumentFragment>&& fragment, HashMap<AtomicStri > for (auto& change : changes) > change.apply(); > } >+ >+std::unique_ptr<Page> createPageForSanitizingWebContent() >+{ >+ PageConfiguration pageConfiguration(createEmptyEditorClient(), SocketProvider::create(), LibWebRTCProvider::create(), CacheStorageProvider::create()); >+ >+ fillWithEmptyClients(pageConfiguration); >+ >+ auto page = std::make_unique<Page>(WTFMove(pageConfiguration)); >+ page->settings().setMediaEnabled(false); >+ page->settings().setScriptEnabled(false); >+ page->settings().setPluginsEnabled(false); >+ page->settings().setAcceleratedCompositingEnabled(false); >+ >+ Frame& frame = page->mainFrame(); >+ frame.setView(FrameView::create(frame)); >+ frame.init(); >+ >+ FrameLoader& loader = frame.loader(); >+ static char markup[] = "<!DOCTYPE html><html><body></body></html>"; >+ ASSERT(loader.activeDocumentLoader()); >+ loader.activeDocumentLoader()->writer().setMIMEType("text/html"); >+ loader.activeDocumentLoader()->writer().begin(); >+ loader.activeDocumentLoader()->writer().addData(markup, sizeof(markup)); >+ loader.activeDocumentLoader()->writer().end(); >+ >+ return page; >+} >+ >+ >+String sanitizeMarkup(const String& rawHTML) >+{ >+ auto page = createPageForSanitizingWebContent(); >+ Document* stagingDocument = page->mainFrame().document(); >+ ASSERT(stagingDocument); >+ auto* bodyElement = stagingDocument->body(); >+ ASSERT(bodyElement); >+ >+ auto fragment = createFragmentFromMarkup(*stagingDocument, rawHTML, emptyString(), DisallowScriptingAndPluginContent); >+ bodyElement->appendChild(fragment.get()); >+ >+ auto range = Range::create(*stagingDocument); >+ range->selectNodeContents(*bodyElement); >+ return createMarkup(range.get(), nullptr, AnnotateForInterchange, false, ResolveNonLocalURLs); >+} >+ > > class StyledMarkupAccumulator final : public MarkupAccumulator { > public: >diff --git a/Source/WebCore/editing/markup.h b/Source/WebCore/editing/markup.h >index 2c7b303351a3a3f7cf08ac2152026e407fe0fb7c..6a7f6fff2bee45ffe89b544b9c08dbe1de9f68ed 100644 >--- a/Source/WebCore/editing/markup.h >+++ b/Source/WebCore/editing/markup.h >@@ -42,10 +42,13 @@ class Frame; > class HTMLElement; > class URL; > class Node; >+class Page; > class QualifiedName; > class Range; > > void replaceSubresourceURLs(Ref<DocumentFragment>&&, HashMap<AtomicString, AtomicString>&&); >+std::unique_ptr<Page> createPageForSanitizingWebContent(); >+String sanitizeMarkup(const String&); > > enum EChildrenOnly { IncludeNode, ChildrenOnly }; > enum EAbsoluteURLs { DoNotResolveURLs, ResolveAllURLs, ResolveNonLocalURLs }; >diff --git a/Source/WebCore/platform/Pasteboard.h b/Source/WebCore/platform/Pasteboard.h >index 620a504c24a18977e18f0b55f38c1659e57d29b7..0e39cb0ecd5b8c0540114000961a376bc11adcfd 100644 >--- a/Source/WebCore/platform/Pasteboard.h >+++ b/Source/WebCore/platform/Pasteboard.h >@@ -127,9 +127,11 @@ struct PasteboardImage { > > class PasteboardWebContentReader { > public: >+ String contentOrigin; >+ > virtual ~PasteboardWebContentReader() { } > >-#if !(PLATFORM(GTK) || PLATFORM(WIN)) >+#if PLATFORM(COCOA) > virtual bool readWebArchive(SharedBuffer&) = 0; > virtual bool readFilenames(const Vector<String>&) = 0; > virtual bool readHTML(const String&) = 0; >@@ -269,6 +271,13 @@ private: > #if PLATFORM(IOS) > bool respectsUTIFidelities() const; > void readRespectingUTIFidelities(PasteboardWebContentReader&); >+ >+ enum class ReaderResult { >+ Read, >+ DidNotRead, >+ ContentChanged >+ }; >+ ReaderResult readPasteboardWebContentDataForType(PasteboardWebContentReader&, PasteboardStrategy&, NSString *type, int itemIndex); > #endif > > #if PLATFORM(WIN) >diff --git a/Source/WebCore/platform/ios/PasteboardIOS.mm b/Source/WebCore/platform/ios/PasteboardIOS.mm >index 18c0b509b7c385dc090018bfc800398e13c2b58d..750c361cda89b14fac9bcb866b529610e4108df7 100644 >--- a/Source/WebCore/platform/ios/PasteboardIOS.mm >+++ b/Source/WebCore/platform/ios/PasteboardIOS.mm >@@ -162,50 +162,66 @@ static NSArray* supportedImageTypes() > return @[(id)kUTTypePNG, (id)kUTTypeTIFF, (id)kUTTypeJPEG, (id)kUTTypeGIF]; > } > >-static bool readPasteboardWebContentDataForType(PasteboardWebContentReader& reader, PasteboardStrategy& strategy, NSString *type, int itemIndex, const String& pasteboardName) >+Pasteboard::ReaderResult Pasteboard::readPasteboardWebContentDataForType(PasteboardWebContentReader& reader, PasteboardStrategy& strategy, NSString *type, int itemIndex) > { > if ([type isEqualToString:WebArchivePboardType]) { >- auto buffer = strategy.readBufferFromPasteboard(itemIndex, WebArchivePboardType, pasteboardName); >- return buffer && reader.readWebArchive(*buffer); >+ auto buffer = strategy.readBufferFromPasteboard(itemIndex, WebArchivePboardType, m_pasteboardName); >+ if (m_changeCount != changeCount()) >+ return ReaderResult::ContentChanged; >+ return buffer && reader.readWebArchive(*buffer) ? ReaderResult::Read : ReaderResult::DidNotRead; > } > > if ([type isEqualToString:(NSString *)kUTTypeHTML]) { >- String htmlString = strategy.readStringFromPasteboard(itemIndex, kUTTypeHTML, pasteboardName); >- return !htmlString.isNull() && reader.readHTML(htmlString); >+ String htmlString = strategy.readStringFromPasteboard(itemIndex, kUTTypeHTML, m_pasteboardName); >+ if (m_changeCount != changeCount()) >+ return ReaderResult::ContentChanged; >+ return !htmlString.isNull() && reader.readHTML(htmlString) ? ReaderResult::Read : ReaderResult::DidNotRead; > } > > if ([type isEqualToString:(NSString *)kUTTypeFlatRTFD]) { >- RefPtr<SharedBuffer> buffer = strategy.readBufferFromPasteboard(itemIndex, kUTTypeFlatRTFD, pasteboardName); >- return buffer && reader.readRTFD(*buffer); >+ RefPtr<SharedBuffer> buffer = strategy.readBufferFromPasteboard(itemIndex, kUTTypeFlatRTFD, m_pasteboardName); >+ if (m_changeCount != changeCount()) >+ return ReaderResult::ContentChanged; >+ return buffer && reader.readRTFD(*buffer) ? ReaderResult::Read : ReaderResult::DidNotRead; > } > > if ([type isEqualToString:(NSString *)kUTTypeRTF]) { >- RefPtr<SharedBuffer> buffer = strategy.readBufferFromPasteboard(itemIndex, kUTTypeRTF, pasteboardName); >- return buffer && reader.readRTF(*buffer); >+ RefPtr<SharedBuffer> buffer = strategy.readBufferFromPasteboard(itemIndex, kUTTypeRTF, m_pasteboardName); >+ if (m_changeCount != changeCount()) >+ return ReaderResult::ContentChanged; >+ return buffer && reader.readRTF(*buffer) ? ReaderResult::Read : ReaderResult::DidNotRead; > } > > if ([supportedImageTypes() containsObject:type]) { >- RefPtr<SharedBuffer> buffer = strategy.readBufferFromPasteboard(itemIndex, type, pasteboardName); >- return buffer && reader.readImage(buffer.releaseNonNull(), type); >+ RefPtr<SharedBuffer> buffer = strategy.readBufferFromPasteboard(itemIndex, type, m_pasteboardName); >+ if (m_changeCount != changeCount()) >+ return ReaderResult::ContentChanged; >+ return buffer && reader.readImage(buffer.releaseNonNull(), type) ? ReaderResult::Read : ReaderResult::DidNotRead; > } > > if ([type isEqualToString:(NSString *)kUTTypeURL]) { > String title; >- URL url = strategy.readURLFromPasteboard(itemIndex, kUTTypeURL, pasteboardName, title); >- return !url.isNull() && reader.readURL(url, title); >+ URL url = strategy.readURLFromPasteboard(itemIndex, kUTTypeURL, m_pasteboardName, title); >+ if (m_changeCount != changeCount()) >+ return ReaderResult::ContentChanged; >+ return !url.isNull() && reader.readURL(url, title) ? ReaderResult::Read : ReaderResult::DidNotRead; > } > > if (UTTypeConformsTo((CFStringRef)type, kUTTypePlainText)) { >- String string = strategy.readStringFromPasteboard(itemIndex, kUTTypePlainText, pasteboardName); >- return !string.isNull() && reader.readPlainText(string); >+ String string = strategy.readStringFromPasteboard(itemIndex, kUTTypePlainText, m_pasteboardName); >+ if (m_changeCount != changeCount()) >+ return ReaderResult::ContentChanged; >+ return !string.isNull() && reader.readPlainText(string) ? ReaderResult::Read : ReaderResult::DidNotRead; > } > > if (UTTypeConformsTo((CFStringRef)type, kUTTypeText)) { >- String string = strategy.readStringFromPasteboard(itemIndex, kUTTypeText, pasteboardName); >- return !string.isNull() && reader.readPlainText(string); >+ String string = strategy.readStringFromPasteboard(itemIndex, kUTTypeText, m_pasteboardName); >+ if (m_changeCount != changeCount()) >+ return ReaderResult::ContentChanged; >+ return !string.isNull() && reader.readPlainText(string) ? ReaderResult::Read : ReaderResult::DidNotRead; > } > >- return false; >+ return ReaderResult::DidNotRead; > } > > void Pasteboard::read(PasteboardWebContentReader& reader) >@@ -222,12 +238,17 @@ void Pasteboard::read(PasteboardWebContentReader& reader) > if (!numberOfItems) > return; > >+ reader.contentOrigin = readOrigin(); >+ > NSArray *types = supportedWebContentPasteboardTypes(); > int numberOfTypes = [types count]; > > for (int i = 0; i < numberOfItems; i++) { > for (int typeIndex = 0; typeIndex < numberOfTypes; typeIndex++) { >- if (readPasteboardWebContentDataForType(reader, strategy, [types objectAtIndex:typeIndex], i, m_pasteboardName)) >+ auto result = readPasteboardWebContentDataForType(reader, strategy, [types objectAtIndex:typeIndex], i); >+ if (result == ReaderResult::ContentChanged) >+ return; >+ if (result == ReaderResult::Read) > break; > } > } >@@ -251,7 +272,10 @@ void Pasteboard::readRespectingUTIFidelities(PasteboardWebContentReader& reader) > Vector<String> typesForItemInOrderOfFidelity; > strategy.getTypesByFidelityForItemAtIndex(typesForItemInOrderOfFidelity, index, m_pasteboardName); > for (auto& type : typesForItemInOrderOfFidelity) { >- if (readPasteboardWebContentDataForType(reader, strategy, type, index, m_pasteboardName)) >+ auto result = readPasteboardWebContentDataForType(reader, strategy, type, index); >+ if (result == ReaderResult::ContentChanged) >+ return; >+ if (result == ReaderResult::Read) > break; > } > } >diff --git a/Source/WebCore/platform/ios/PlatformPasteboardIOS.mm b/Source/WebCore/platform/ios/PlatformPasteboardIOS.mm >index 895f8c199f3a04fa45eefdb921cfe0d766de761b..6be7adb3c1fe56799b1321428bcf313d6ffa237c 100644 >--- a/Source/WebCore/platform/ios/PlatformPasteboardIOS.mm >+++ b/Source/WebCore/platform/ios/PlatformPasteboardIOS.mm >@@ -334,7 +334,8 @@ static const char *safeTypeForDOMToReadAndWriteForPlatformType(const String& pla > if (UTTypeConformsTo(cfType.get(), kUTTypePlainText)) > return ASCIILiteral("text/plain"); > >- if (UTTypeConformsTo(cfType.get(), kUTTypeHTML)) >+ if (UTTypeConformsTo(cfType.get(), kUTTypeHTML) || UTTypeConformsTo(cfType.get(), (CFStringRef)WebArchivePboardType) >+ || UTTypeConformsTo(cfType.get(), kUTTypeRTF) || UTTypeConformsTo(cfType.get(), kUTTypeFlatRTFD)) > return ASCIILiteral("text/html"); > > if (UTTypeConformsTo(cfType.get(), kUTTypeURL)) >diff --git a/Source/WebCore/platform/mac/PasteboardMac.mm b/Source/WebCore/platform/mac/PasteboardMac.mm >index 2d30c6c7dd34fe62cc74c98f88be047be6360651..5a5d54e58fa60b82dfc0c788f943668a9bef38b7 100644 >--- a/Source/WebCore/platform/mac/PasteboardMac.mm >+++ b/Source/WebCore/platform/mac/PasteboardMac.mm >@@ -332,9 +332,11 @@ void Pasteboard::read(PasteboardWebContentReader& reader) > Vector<String> types; > strategy.getTypes(types, m_pasteboardName); > >+ reader.contentOrigin = readOrigin(); >+ > if (types.contains(WebArchivePboardType)) { > if (auto buffer = strategy.bufferForType(WebArchivePboardType, m_pasteboardName)) { >- if (reader.readWebArchive(*buffer)) >+ if (m_changeCount != changeCount() || reader.readWebArchive(*buffer)) > return; > } > } >@@ -342,54 +344,54 @@ void Pasteboard::read(PasteboardWebContentReader& reader) > if (types.contains(String(NSFilenamesPboardType))) { > Vector<String> paths; > strategy.getPathnamesForType(paths, NSFilenamesPboardType, m_pasteboardName); >- if (reader.readFilenames(paths)) >+ if (m_changeCount != changeCount() || reader.readFilenames(paths)) > return; > } > > if (types.contains(String(NSHTMLPboardType))) { > String string = strategy.stringForType(NSHTMLPboardType, m_pasteboardName); >- if (!string.isNull() && reader.readHTML(string)) >+ if (m_changeCount != changeCount() || (!string.isNull() && reader.readHTML(string))) > return; > } > > if (types.contains(String(NSRTFDPboardType))) { > if (RefPtr<SharedBuffer> buffer = strategy.bufferForType(NSRTFDPboardType, m_pasteboardName)) { >- if (reader.readRTFD(*buffer)) >+ if (m_changeCount != changeCount() || reader.readRTFD(*buffer)) > return; > } > } > > if (types.contains(String(NSRTFPboardType))) { > if (RefPtr<SharedBuffer> buffer = strategy.bufferForType(NSRTFPboardType, m_pasteboardName)) { >- if (reader.readRTF(*buffer)) >+ if (m_changeCount != changeCount() || reader.readRTF(*buffer)) > return; > } > } > > if (types.contains(String(NSTIFFPboardType))) { > if (RefPtr<SharedBuffer> buffer = strategy.bufferForType(NSTIFFPboardType, m_pasteboardName)) { >- if (reader.readImage(buffer.releaseNonNull(), ASCIILiteral("image/tiff"))) >+ if (m_changeCount != changeCount() || reader.readImage(buffer.releaseNonNull(), ASCIILiteral("image/tiff"))) > return; > } > } > > if (types.contains(String(NSPDFPboardType))) { > if (RefPtr<SharedBuffer> buffer = strategy.bufferForType(NSPDFPboardType, m_pasteboardName)) { >- if (reader.readImage(buffer.releaseNonNull(), ASCIILiteral("application/pdf"))) >+ if (m_changeCount != changeCount() || reader.readImage(buffer.releaseNonNull(), ASCIILiteral("application/pdf"))) > return; > } > } > > if (types.contains(String(kUTTypePNG))) { > if (RefPtr<SharedBuffer> buffer = strategy.bufferForType(kUTTypePNG, m_pasteboardName)) { >- if (reader.readImage(buffer.releaseNonNull(), ASCIILiteral("image/png"))) >+ if (m_changeCount != changeCount() || reader.readImage(buffer.releaseNonNull(), ASCIILiteral("image/png"))) > return; > } > } > > if (types.contains(String(kUTTypeJPEG))) { > if (RefPtr<SharedBuffer> buffer = strategy.bufferForType(kUTTypeJPEG, m_pasteboardName)) { >- if (reader.readImage(buffer.releaseNonNull(), ASCIILiteral("image/jpeg"))) >+ if (m_changeCount != changeCount() || reader.readImage(buffer.releaseNonNull(), ASCIILiteral("image/jpeg"))) > return; > } > } >@@ -397,19 +399,19 @@ void Pasteboard::read(PasteboardWebContentReader& reader) > if (types.contains(String(NSURLPboardType))) { > URL url = strategy.url(m_pasteboardName); > String title = strategy.stringForType(WebURLNamePboardType, m_pasteboardName); >- if (!url.isNull() && reader.readURL(url, title)) >+ if (m_changeCount != changeCount() || (!url.isNull() && reader.readURL(url, title))) > return; > } > > if (types.contains(String(NSStringPboardType))) { > String string = strategy.stringForType(NSStringPboardType, m_pasteboardName); >- if (!string.isNull() && reader.readPlainText(string)) >+ if (m_changeCount != changeCount() || (!string.isNull() && reader.readPlainText(string))) > return; > } > > if (types.contains(String(kUTTypeUTF8PlainText))) { > String string = strategy.stringForType(kUTTypeUTF8PlainText, m_pasteboardName); >- if (!string.isNull() && reader.readPlainText(string)) >+ if (m_changeCount != changeCount() || (!string.isNull() && reader.readPlainText(string))) > return; > } > } >diff --git a/Source/WebCore/platform/mac/PlatformPasteboardMac.mm b/Source/WebCore/platform/mac/PlatformPasteboardMac.mm >index c293ea2b82574367526492754708cc4031313aa2..a5c73be0a9cafe2be8801d7fe647bd4af0521d49 100644 >--- a/Source/WebCore/platform/mac/PlatformPasteboardMac.mm >+++ b/Source/WebCore/platform/mac/PlatformPasteboardMac.mm >@@ -101,7 +101,8 @@ static const char* safeTypeForDOMToReadAndWriteForPlatformType(const String& pla > if (platformType == String(NSURLPboardType)) > return ASCIILiteral("text/uri-list"); > >- if (platformType == String(NSHTMLPboardType)) >+ if (platformType == String(NSHTMLPboardType) || platformType == String(WebArchivePboardType) >+ || platformType == String(NSRTFDPboardType) || platformType == String(NSRTFPboardType)) > return ASCIILiteral("text/html"); > > return nullptr; >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 2ec4f47de6aa6847f82b0dc12ba1b11908386fa4..94a4de48c83cbcf09fc67f5d5e4621c32ec1a07c 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,37 @@ >+2017-10-13 Ryosuke Niwa <rniwa@webkit.org> >+ >+ Cannot access images included in the content pasted from Microsoft Word >+ https://bugs.webkit.org/show_bug.cgi?id=124391 >+ <rdar://problem/26862741> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Added tests for sanitizing HTML contents for copy & paste and drag & drop. >+ >+ * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: >+ * TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm: Added. >+ (readHTMLFromPasteboard): Added. >+ (createWebViewWithCustomPasteboardDataEnabled): Added. >+ (CopyHTML.Sanitizes): Added. >+ >+ * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm: >+ (createWebViewWithCustomPasteboardDataEnabled): Added to enable more tests on bots. >+ >+ * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm: >+ (writeRTFToPasteboard): Added. >+ (createWebViewWithCustomPasteboardDataEnabled): Added. >+ (createHelloWorldString): Added. >+ (PasteRTF.ExposesHTMLTypeInDataTransfer): Added. >+ (PasteRTFD.ExposesHTMLTypeInDataTransfer): Added. >+ (PasteRTFD.ImageElementUsesBlobURLInHTML): Added. >+ >+ * TestWebKitAPI/Tests/WebKitCocoa/copy-html.html: Added. >+ * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html: Store the clipboardData contents for >+ PasteRTF.ExposesHTMLTypeInDataTransfer and PasteRTFD.ExposesHTMLTypeInDataTransfer. >+ >+ * TestWebKitAPI/Tests/ios/DataInteractionTests.mm: >+ (DataInteractionTests.DataTransferSanitizeHTML): >+ > 2017-10-15 Darin Adler <darin@apple.com> > > UTF-8 decoding produces one replacement character per byte; Encoding standard requires one replacement character per illegal sequence instead >diff --git a/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj b/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj >index 7a97797ae4c78f41ede39910b66bef32c9489993..0d1c505b9a69c4329e9326af8c779f665ca8f305 100644 >--- a/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj >+++ b/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj >@@ -542,6 +542,9 @@ > 9999108B1F393C96008AD455 /* Copying.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9999108A1F393C8B008AD455 /* Copying.mm */; }; > 9B0786A51C5885C300D159E3 /* InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9B0786A41C5885C300D159E3 /* InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp */; }; > 9B19CDA01F06DFE3000548DD /* NetworkProcessCrashWithPendingConnection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B19CD9E1F06DFE3000548DD /* NetworkProcessCrashWithPendingConnection.mm */; }; >+ 9B1F6F781F90558400B55744 /* CopyHTML.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B1056411F9045C700D5583F /* CopyHTML.mm */; }; >+ 9B1F6F791F90559E00B55744 /* copy-html.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B1056421F9047CC00D5583F /* copy-html.html */; }; >+ 9B2346421F943E2700DB1D23 /* PasteWebArchive.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B2346411F943A2400DB1D23 /* PasteWebArchive.mm */; }; > 9B26FCCA159D16DE00CC3765 /* HTMLFormCollectionNamedItem.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B26FCB4159D15E700CC3765 /* HTMLFormCollectionNamedItem.html */; }; > 9B270FEE1DDC2C0B002D53F3 /* closed-shadow-tree-test.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B270FED1DDC25FD002D53F3 /* closed-shadow-tree-test.html */; }; > 9B4F8FA7159D52DD002D9F94 /* HTMLCollectionNamedItem.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B4F8FA6159D52CA002D9F94 /* HTMLCollectionNamedItem.html */; }; >@@ -843,6 +846,7 @@ > 5142B2731517C8C800C32B19 /* ContextMenuCanCopyURL.html in Copy Resources */, > CD0BD0A81F79982D001AB2CF /* ContextMenuImgWithVideo.html in Copy Resources */, > 5C2936961D5C00ED00DEAB1E /* CookieMessage.html in Copy Resources */, >+ 9B1F6F791F90559E00B55744 /* copy-html.html in Copy Resources */, > 9B62630C1F8C25C8007EE29B /* copy-url.html in Copy Resources */, > 7AEAD4811E20122700416EFE /* CrossPartitionFileSchemeAccess.html in Copy Resources */, > F4AB578A1F65165400DB0DA1 /* custom-draggable-div.html in Copy Resources */, >@@ -1507,7 +1511,10 @@ > 9999108A1F393C8B008AD455 /* Copying.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Copying.mm; sourceTree = "<group>"; }; > 9B0786A21C58830F00D159E3 /* InjectedBundleMakeAllShadowRootsOpen.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleMakeAllShadowRootsOpen.cpp; sourceTree = "<group>"; }; > 9B0786A41C5885C300D159E3 /* InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp; sourceTree = "<group>"; }; >+ 9B1056411F9045C700D5583F /* CopyHTML.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = CopyHTML.mm; sourceTree = "<group>"; }; >+ 9B1056421F9047CC00D5583F /* copy-html.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "copy-html.html"; sourceTree = "<group>"; }; > 9B19CD9E1F06DFE3000548DD /* NetworkProcessCrashWithPendingConnection.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = NetworkProcessCrashWithPendingConnection.mm; path = WebKit/NetworkProcessCrashWithPendingConnection.mm; sourceTree = "<group>"; }; >+ 9B2346411F943A2400DB1D23 /* PasteWebArchive.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = PasteWebArchive.mm; sourceTree = "<group>"; }; > 9B26FC6B159D061000CC3765 /* HTMLFormCollectionNamedItem.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = HTMLFormCollectionNamedItem.mm; sourceTree = "<group>"; }; > 9B26FCB4159D15E700CC3765 /* HTMLFormCollectionNamedItem.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = HTMLFormCollectionNamedItem.html; sourceTree = "<group>"; }; > 9B270FED1DDC25FD002D53F3 /* closed-shadow-tree-test.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "closed-shadow-tree-test.html"; sourceTree = "<group>"; }; >@@ -1986,6 +1993,7 @@ > A14FC5891B89927100D107EB /* ContentFilteringPlugIn.mm */, > 5CA1DED81F74A87100E71BD3 /* ContentRuleListNotification.mm */, > 5C2936911D5BF63E00DEAB1E /* CookieAcceptPolicy.mm */, >+ 9B1056411F9045C700D5583F /* CopyHTML.mm */, > 9999108A1F393C8B008AD455 /* Copying.mm */, > 9B7A37C21F8AEBA5004AA228 /* CopyURL.mm */, > 2DC4CF761D2D9DD800ECCC94 /* DataDetection.mm */, >@@ -2026,6 +2034,7 @@ > CEBCA12E1E3A660100C73293 /* OverrideContentSecurityPolicy.mm */, > 9BDCCD851F7D0B0700009A18 /* PasteImage.mm */, > 9BDD95561F83683600D20C60 /* PasteRTFD.mm */, >+ 9B2346411F943A2400DB1D23 /* PasteWebArchive.mm */, > 3FCC4FE41EC4E8520076E37C /* PictureInPictureDelegate.mm */, > 83BAEE8C1EF4625500DDE894 /* PluginLoadClientPolicies.mm */, > C95501BE19AD2FAF0049BE3E /* Preferences.mm */, >@@ -2237,6 +2246,7 @@ > F4A32ECA1F0642F40047C544 /* contenteditable-in-iframe.html */, > A16F66B91C40EA2000BD4D24 /* ContentFiltering.html */, > 5C2936941D5BFD1900DEAB1E /* CookieMessage.html */, >+ 9B1056421F9047CC00D5583F /* copy-html.html */, > 9B62630B1F8C2510007EE29B /* copy-url.html */, > F4AB57891F65164B00DB0DA1 /* custom-draggable-div.html */, > F486B1CF1F6794FF00F34BDD /* DataTransfer-setDragImage.html */, >@@ -3229,6 +3239,7 @@ > CD0BD0A61F79924D001AB2CF /* ContextMenuImgWithVideo.mm in Sources */, > 5C2936931D5BF70D00DEAB1E /* CookieAcceptPolicy.mm in Sources */, > 51D1249B1E785425002B2820 /* CookieManager.cpp in Sources */, >+ 9B1F6F781F90558400B55744 /* CopyHTML.mm in Sources */, > 9999108B1F393C96008AD455 /* Copying.mm in Sources */, > 9B7A37C41F8AEBA5004AA228 /* CopyURL.mm in Sources */, > 7CCE7EAC1A411A3400447C4C /* Counters.cpp in Sources */, >@@ -3285,6 +3296,7 @@ > C9E6DD351EA97D0800DD78AA /* FirstResponderSuppression.mm in Sources */, > 7C83E0BC1D0A650700FEBCF3 /* FixedLayoutSize.mm in Sources */, > 7A909A7E1D877480007E10F8 /* FloatPoint.cpp in Sources */, >+ 9B2346421F943E2700DB1D23 /* PasteWebArchive.mm in Sources */, > 7A909A7F1D877480007E10F8 /* FloatRect.cpp in Sources */, > 7A909A801D877480007E10F8 /* FloatSize.cpp in Sources */, > 1CAD1F861E5CE7DA00AF2C2C /* FontCache.cpp in Sources */, >diff --git a/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj.orig b/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj.orig >new file mode 100644 >index 0000000000000000000000000000000000000000..d5f05715b241ea8facee003ee63d2c75968b3923 >--- /dev/null >+++ b/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj.orig >@@ -0,0 +1,3849 @@ >+// !$*UTF8*$! >+{ >+ archiveVersion = 1; >+ classes = { >+ }; >+ objectVersion = 46; >+ objects = { >+ >+/* Begin PBXAggregateTarget section */ >+ 7C83E02B1D0A5E1000FEBCF3 /* All */ = { >+ isa = PBXAggregateTarget; >+ buildConfigurationList = 7C83E02C1D0A5E1000FEBCF3 /* Build configuration list for PBXAggregateTarget "All" */; >+ buildPhases = ( >+ ); >+ dependencies = ( >+ 7C83E0301D0A5E1B00FEBCF3 /* PBXTargetDependency */, >+ 7C83E0321D0A5E1D00FEBCF3 /* PBXTargetDependency */, >+ ); >+ name = All; >+ productName = All; >+ }; >+/* End PBXAggregateTarget section */ >+ >+/* Begin PBXBuildFile section */ >+ 07492B3B1DF8B14C00633DE1 /* EnumerateMediaDevices.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07492B3A1DF8AE2D00633DE1 /* EnumerateMediaDevices.cpp */; }; >+ 07492B3C1DF8B86600633DE1 /* enumerateMediaDevices.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 07492B391DF8ADA400633DE1 /* enumerateMediaDevices.html */; }; >+ 074994421EA5034B000DA44E /* getUserMedia.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 4A410F4D19AF7BEF002EBAB5 /* getUserMedia.html */; }; >+ 076E507F1F4513D6006E9F5A /* Logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 076E507E1F45031E006E9F5A /* Logging.cpp */; }; >+ 0799C3491EBA2D7B003B7532 /* UserMediaDisabled.mm in Sources */ = {isa = PBXBuildFile; fileRef = 07EDEFAC1EB9400C00D43292 /* UserMediaDisabled.mm */; }; >+ 0799C34B1EBA3301003B7532 /* disableGetUserMedia.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 0799C34A1EBA32F4003B7532 /* disableGetUserMedia.html */; }; >+ 07C046CA1E4262A8007201E7 /* CARingBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 07C046C91E42573E007201E7 /* CARingBuffer.cpp */; }; >+ 07CE1CF31F06A7E000BF89F5 /* GetUserMediaNavigation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 07CE1CF21F06A7E000BF89F5 /* GetUserMediaNavigation.mm */; }; >+ 0F139E771A423A5B00F590F5 /* WeakObjCPtr.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F139E751A423A5300F590F5 /* WeakObjCPtr.mm */; }; >+ 0F139E781A423A6B00F590F5 /* PlatformUtilitiesCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F139E721A423A2B00F590F5 /* PlatformUtilitiesCocoa.mm */; }; >+ 0F139E791A42457000F590F5 /* PlatformUtilitiesCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F139E721A423A2B00F590F5 /* PlatformUtilitiesCocoa.mm */; }; >+ 0F2C20B81DCD545000542D9E /* Time.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F2C20B71DCD544800542D9E /* Time.cpp */; }; >+ 0F3B94A71A77267400DE3272 /* WKWebViewEvaluateJavaScript.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F3B94A51A77266C00DE3272 /* WKWebViewEvaluateJavaScript.mm */; }; >+ 0F4FFA9E1ED3AA8500F7111F /* SnapshotViaRenderInContext.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F4FFA9D1ED3AA8500F7111F /* SnapshotViaRenderInContext.mm */; }; >+ 115EB3431EE0BA03003C2C0A /* ViewportSizeForViewportUnits.mm in Sources */ = {isa = PBXBuildFile; fileRef = 115EB3421EE0B720003C2C0A /* ViewportSizeForViewportUnits.mm */; }; >+ 1A02C870125D4CFD00E3F4BD /* find.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 1A02C84B125D4A5E00E3F4BD /* find.html */; }; >+ 1A3524AE1D63A4FB0031729B /* Scope.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A3524AC1D63A4FB0031729B /* Scope.cpp */; }; >+ 1A4F81CF1BDFFD53004E672E /* RemoteObjectRegistryPlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1A4F81CD1BDFFD53004E672E /* RemoteObjectRegistryPlugIn.mm */; }; >+ 1A50AA201A2A51FC00F4C345 /* close-from-within-create-page.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 1A50AA1F1A2A4EA500F4C345 /* close-from-within-create-page.html */; }; >+ 1A63479F183D72A4005B1707 /* all-content-in-one-iframe.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 93D3D19B17B1A7B000C7C415 /* all-content-in-one-iframe.html */; }; >+ 1A77BAA31D9AFFFC005FC568 /* OptionSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE50D8C81C8665CE0072EA5A /* OptionSet.cpp */; }; >+ 1A7E8B3618120B2F00AEB74A /* FragmentNavigation.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 1A7E8B351812093600AEB74A /* FragmentNavigation.html */; }; >+ 1A9E52C913E65EF4006917F5 /* 18-characters.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C045F9461385C2F800C0F3CD /* 18-characters.html */; }; >+ 1ADAD1501D77A9F600212586 /* BlockPtr.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1ADAD14E1D77A9F600212586 /* BlockPtr.mm */; }; >+ 1ADBEFE3130C6AA100D61D19 /* simple-accelerated-compositing.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 1ADBEFBC130C6A0100D61D19 /* simple-accelerated-compositing.html */; }; >+ 1AEDE22613E5E7E700E62FE8 /* InjectedBundleControllerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1AEDE22413E5E7A000E62FE8 /* InjectedBundleControllerMac.mm */; }; >+ 1AF7B21F1D6CD14D008C126C /* EnumTraits.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AF7B21D1D6CD12E008C126C /* EnumTraits.cpp */; }; >+ 1C2B81801C891E7C00A5529F /* CancelFontSubresource.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1C2B817E1C891E4200A5529F /* CancelFontSubresource.mm */; }; >+ 1C2B81831C891F0900A5529F /* CancelFontSubresourcePlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1C2B81811C891EFA00A5529F /* CancelFontSubresourcePlugIn.mm */; }; >+ 1C2B81861C89259D00A5529F /* webfont.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 1C2B81841C8924A200A5529F /* webfont.html */; }; >+ 1C2B81871C8925A000A5529F /* Ahem.ttf in Copy Resources */ = {isa = PBXBuildFile; fileRef = 1C2B81851C89252300A5529F /* Ahem.ttf */; }; >+ 1C9EB8411E380DA1005C6442 /* ComplexTextController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1C9EB8401E380DA1005C6442 /* ComplexTextController.cpp */; }; >+ 1CAD1F861E5CE7DA00AF2C2C /* FontCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1CAD1F851E5CE7DA00AF2C2C /* FontCache.cpp */; }; >+ 1F83571B1D3FFB2300E3967B /* WKBackForwardList.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1F83571A1D3FFB0E00E3967B /* WKBackForwardList.mm */; }; >+ 26DF5A6315A2A27E003689C2 /* CancelLoadFromResourceLoadDelegate.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 26DF5A6115A2A22B003689C2 /* CancelLoadFromResourceLoadDelegate.html */; }; >+ 26F52EAD1828827B0023D412 /* geolocationGetCurrentPosition.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 26F52EAC1828820E0023D412 /* geolocationGetCurrentPosition.html */; }; >+ 26F52EAF18288C230023D412 /* geolocationGetCurrentPositionWithHighAccuracy.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 26F52EAE18288C040023D412 /* geolocationGetCurrentPositionWithHighAccuracy.html */; }; >+ 26F52EB218288F240023D412 /* geolocationWatchPosition.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 26F52EB018288F0F0023D412 /* geolocationWatchPosition.html */; }; >+ 26F52EB318288F240023D412 /* geolocationWatchPositionWithHighAccuracy.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 26F52EB118288F0F0023D412 /* geolocationWatchPositionWithHighAccuracy.html */; }; >+ 290A9BB91735F63800D71BBC /* OpenNewWindow.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 290A9BB81735F42300D71BBC /* OpenNewWindow.html */; }; >+ 290F4275172A221C00939FF0 /* custom-protocol-sync-xhr.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 290F4274172A1FDE00939FF0 /* custom-protocol-sync-xhr.html */; }; >+ 297234B7173AFAC700983601 /* CustomProtocolsInvalidScheme_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 297234B5173AFAC700983601 /* CustomProtocolsInvalidScheme_Bundle.cpp */; }; >+ 2D00065F1C1F589A0088E6A7 /* WKPDFViewResizeCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D00065D1C1F58940088E6A7 /* WKPDFViewResizeCrash.mm */; }; >+ 2D1646E21D1862CD00015A1A /* DeferredViewInWindowStateChange.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D1646E11D1862CD00015A1A /* DeferredViewInWindowStateChange.mm */; }; >+ 2D1C04A71D76298B000A6816 /* TestNavigationDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D1C04A61D76298B000A6816 /* TestNavigationDelegate.mm */; }; >+ 2D21FE591F04642900B58E7D /* WKPDFViewStablePresentationUpdateCallback.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D21FE581F04642800B58E7D /* WKPDFViewStablePresentationUpdateCallback.mm */; }; >+ 2D4CF8BD1D8360CC0001CE8D /* WKThumbnailView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D4CF8BC1D8360CC0001CE8D /* WKThumbnailView.mm */; }; >+ 2D51A0C71C8BF00C00765C45 /* DOMHTMLVideoElementWrapper.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D51A0C51C8BF00400765C45 /* DOMHTMLVideoElementWrapper.mm */; }; >+ 2D838B1F1EEF3A5C009B980E /* WKContentViewEditingActions.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D838B1E1EEF3A5B009B980E /* WKContentViewEditingActions.mm */; }; >+ 2DB0232F1E4E871800707123 /* InteractionDeadlockAfterCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DB0232E1E4E871800707123 /* InteractionDeadlockAfterCrash.mm */; }; >+ 2DB647881F4163D60051A89E /* WKWebViewDoesNotLogDuringInitialization.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DB647871F4161F70051A89E /* WKWebViewDoesNotLogDuringInitialization.mm */; }; >+ 2DC4CF771D2D9DD800ECCC94 /* DataDetection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DC4CF761D2D9DD800ECCC94 /* DataDetection.mm */; }; >+ 2DC60E231E79F88C00FA6C7D /* DoAfterNextPresentationUpdateAfterCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DC60E221E79F88C00FA6C7D /* DoAfterNextPresentationUpdateAfterCrash.mm */; }; >+ 2DD7D3AF178227B30026E1E3 /* lots-of-text-vertical-lr.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2DD7D3AE178227AC0026E1E3 /* lots-of-text-vertical-lr.html */; }; >+ 2DE71AFE1D49C0BD00904094 /* AnimatedResize.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DE71AFD1D49C0BD00904094 /* AnimatedResize.mm */; }; >+ 2DE71B001D49C3ED00904094 /* blinking-div.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2DE71AFF1D49C2F000904094 /* blinking-div.html */; }; >+ 2DFF7B6D1DA487AF00814614 /* SnapshotStore.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DFF7B6C1DA487AF00814614 /* SnapshotStore.mm */; }; >+ 2E131C181D83A98A001BA36C /* wide-autoplaying-video-with-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E131C171D83A97E001BA36C /* wide-autoplaying-video-with-audio.html */; }; >+ 2E14A5291D3FE96B0010F35B /* autoplaying-video-with-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E14A5281D3FE8B80010F35B /* autoplaying-video-with-audio.html */; }; >+ 2E1B7B001D41ABA7007558B4 /* large-video-seek-after-ending.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E1B7AFF1D41A95F007558B4 /* large-video-seek-after-ending.html */; }; >+ 2E1B7B021D41B1B9007558B4 /* large-video-hides-controls-after-seek-to-end.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E1B7B011D41B1B3007558B4 /* large-video-hides-controls-after-seek-to-end.html */; }; >+ 2E1DFDED1D42A51100714A00 /* large-videos-with-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E1DFDEC1D42A41C00714A00 /* large-videos-with-audio.html */; }; >+ 2E1DFDEF1D42A6F200714A00 /* large-videos-with-audio-autoplay.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E1DFDEE1D42A6EB00714A00 /* large-videos-with-audio-autoplay.html */; }; >+ 2E1DFDF11D42E1E400714A00 /* large-video-seek-to-beginning-and-play-after-ending.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E1DFDF01D42E14400714A00 /* large-video-seek-to-beginning-and-play-after-ending.html */; }; >+ 2E205BA41F527746005952DD /* AccessibilityTestsIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E205BA31F527746005952DD /* AccessibilityTestsIOS.mm */; }; >+ 2E54F40D1D7BC84200921ADF /* large-video-mutes-onplaying.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E54F40C1D7BC83900921ADF /* large-video-mutes-onplaying.html */; }; >+ 2E691AEA1D78B53600129407 /* large-videos-paused-video-hides-controls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E691AE81D78B52B00129407 /* large-videos-paused-video-hides-controls.html */; }; >+ 2E691AEB1D78B53600129407 /* large-videos-playing-video-keeps-controls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E691AE91D78B52B00129407 /* large-videos-playing-video-keeps-controls.html */; }; >+ 2E691AED1D78B91000129407 /* large-videos-playing-muted-video-hides-controls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E691AEC1D78B90200129407 /* large-videos-playing-muted-video-hides-controls.html */; }; >+ 2E691AEF1D79DE8400129407 /* large-videos-autoplaying-click-to-pause.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E691AEE1D79DE6F00129407 /* large-videos-autoplaying-click-to-pause.html */; }; >+ 2E691AF11D79E51A00129407 /* large-videos-autoplaying-scroll-to-video.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E691AF01D79E51400129407 /* large-videos-autoplaying-scroll-to-video.html */; }; >+ 2E691AF31D79E75E00129407 /* large-video-playing-scroll-away.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E691AF21D79E75400129407 /* large-video-playing-scroll-away.html */; }; >+ 2E7765CD16C4D80A00BA2BB1 /* mainIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E7765CC16C4D80A00BA2BB1 /* mainIOS.mm */; }; >+ 2E7765CF16C4D81100BA2BB1 /* mainMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E7765CE16C4D81100BA2BB1 /* mainMac.mm */; }; >+ 2E9896151D8F093800739892 /* text-and-password-inputs.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2E9896141D8F092B00739892 /* text-and-password-inputs.html */; }; >+ 2EB29D5E1F762DB90023A5F1 /* dump-datatransfer-types.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2EB29D5D1F762DA50023A5F1 /* dump-datatransfer-types.html */; }; >+ 2ECFF5551D9B12F800B55394 /* NowPlayingControlsTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2ECFF5541D9B12F800B55394 /* NowPlayingControlsTests.mm */; }; >+ 2EFF06C31D88621E0004BB30 /* large-video-offscreen.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2EFF06C21D8862120004BB30 /* large-video-offscreen.html */; }; >+ 2EFF06C51D8867760004BB30 /* change-video-source-on-click.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2EFF06C41D8867700004BB30 /* change-video-source-on-click.html */; }; >+ 2EFF06C71D886A580004BB30 /* change-video-source-on-end.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2EFF06C61D886A560004BB30 /* change-video-source-on-end.html */; }; >+ 2EFF06CD1D8A429A0004BB30 /* input-field-in-scrollable-document.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2EFF06CC1D8A42910004BB30 /* input-field-in-scrollable-document.html */; }; >+ 2EFF06D41D8AEDBB0004BB30 /* TestWKWebView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2EFF06D31D8AEDBB0004BB30 /* TestWKWebView.mm */; }; >+ 2EFF06D71D8AF34A0004BB30 /* WKWebViewCandidateTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2EFF06D61D8AF34A0004BB30 /* WKWebViewCandidateTests.mm */; }; >+ 315118101DB1AE4000176304 /* ExtendedColor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3151180F1DB1ADD500176304 /* ExtendedColor.cpp */; }; >+ 315231CA1EB3B3C700A22A16 /* GPUCommandQueue.mm in Sources */ = {isa = PBXBuildFile; fileRef = 315231C91EB3B3C700A22A16 /* GPUCommandQueue.mm */; }; >+ 3162AE9C1E6F2FF5000E4DBC /* GPUDevice.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3162AE9B1E6F2FCE000E4DBC /* GPUDevice.mm */; }; >+ 316BDBA11E70D71B00DE0D5A /* GPULibrary.mm in Sources */ = {isa = PBXBuildFile; fileRef = 316BDBA01E70D6D800DE0D5A /* GPULibrary.mm */; }; >+ 316BDBA41E70EF6800DE0D5A /* GPUFunction.mm in Sources */ = {isa = PBXBuildFile; fileRef = 316BDBA31E70EF5D00DE0D5A /* GPUFunction.mm */; }; >+ 316BDBAC1E7207F100DE0D5A /* GPUBuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 316BDBAB1E7207F100DE0D5A /* GPUBuffer.mm */; }; >+ 33BE5AF9137B5AAE00705813 /* MouseMoveAfterCrash_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33BE5AF8137B5AAE00705813 /* MouseMoveAfterCrash_Bundle.cpp */; }; >+ 33DC8912141955FE00747EF7 /* simple-iframe.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 33DC890E1419539300747EF7 /* simple-iframe.html */; }; >+ 33DC89141419579F00747EF7 /* LoadCanceledNoServerRedirectCallback_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33DC89131419579F00747EF7 /* LoadCanceledNoServerRedirectCallback_Bundle.cpp */; }; >+ 33E79E06137B5FD900E32D99 /* mouse-move-listener.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 33E79E05137B5FCE00E32D99 /* mouse-move-listener.html */; }; >+ 370CE22A1F57343400E7410B /* WKContentViewTargetForAction.mm in Sources */ = {isa = PBXBuildFile; fileRef = 370CE2291F57343400E7410B /* WKContentViewTargetForAction.mm */; }; >+ 374B7A601DF36EEE00ACCB6C /* BundleEditingDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 374B7A5E1DF36EEE00ACCB6C /* BundleEditingDelegate.mm */; }; >+ 374B7A611DF371CF00ACCB6C /* BundleEditingDelegatePlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = 374B7A5F1DF36EEE00ACCB6C /* BundleEditingDelegatePlugIn.mm */; }; >+ 375E0E171D66674400EFEC2C /* WKNSNumber.mm in Sources */ = {isa = PBXBuildFile; fileRef = 375E0E151D66674400EFEC2C /* WKNSNumber.mm */; }; >+ 376C8C061D6E197C007D2BB9 /* FrameHandle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 376C8C041D6E197C007D2BB9 /* FrameHandle.cpp */; }; >+ 378E64771632655E00B6C676 /* InjectedBundleFrameHitTest_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 378E64751632655D00B6C676 /* InjectedBundleFrameHitTest_Bundle.cpp */; }; >+ 378E64791632707400B6C676 /* link-with-title.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 378E647816326FDF00B6C676 /* link-with-title.html */; }; >+ 379028B914FAC24C007E6B43 /* acceptsFirstMouse.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 379028B814FABE49007E6B43 /* acceptsFirstMouse.html */; }; >+ 37A22AA71DCAA27200AFBFC4 /* ObservedRenderingProgressEventsAfterCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37A22AA51DCAA27200AFBFC4 /* ObservedRenderingProgressEventsAfterCrash.mm */; }; >+ 37A709AE1E3EA8B000CA5969 /* BundleRangeHandle.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37A709AD1E3EA8B000CA5969 /* BundleRangeHandle.mm */; }; >+ 37A709AF1E3EA97E00CA5969 /* BundleRangeHandlePlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37A709AA1E3EA79000CA5969 /* BundleRangeHandlePlugIn.mm */; }; >+ 37B47E301D64E7CA005F4EFF /* WKObject.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37B47E2E1D64E7CA005F4EFF /* WKObject.mm */; }; >+ 37BCA61C1B596BA9002012CA /* ShouldOpenExternalURLsInNewWindowActions.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37BCA61B1B596BA9002012CA /* ShouldOpenExternalURLsInNewWindowActions.mm */; }; >+ 37C7CC2D1EA4146B007BD956 /* WeakLinking.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37C7CC2B1EA4146B007BD956 /* WeakLinking.cpp */; }; >+ 37D36ED71AF42ECD00BAF5D9 /* LoadAlternateHTMLString.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37D36ED61AF42ECD00BAF5D9 /* LoadAlternateHTMLString.mm */; }; >+ 37DC6791140D7D7600ABCCDB /* DOMRangeOfString.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 37DC678F140D7D3A00ABCCDB /* DOMRangeOfString.html */; }; >+ 37E1064C1697681800B78BD0 /* DOMHTMLTableCellElementCellAbove.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 37E1064B169767F700B78BD0 /* DOMHTMLTableCellElementCellAbove.html */; }; >+ 37E7DD641EA06FF2009B396D /* AdditionalReadAccessAllowedURLs.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37E7DD631EA06FF2009B396D /* AdditionalReadAccessAllowedURLs.mm */; }; >+ 37E7DD671EA071F3009B396D /* AdditionalReadAccessAllowedURLsPlugin.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37E7DD661EA071F3009B396D /* AdditionalReadAccessAllowedURLsPlugin.mm */; }; >+ 37FB72971DB2E82F00E41BE4 /* ContextMenuDefaultItemsHaveTags.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37FB72951DB2E82F00E41BE4 /* ContextMenuDefaultItemsHaveTags.mm */; }; >+ 3FBD1B4A1D3D66AB00E6D6FA /* FullscreenLayoutConstraints.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 3FBD1B491D39D1DB00E6D6FA /* FullscreenLayoutConstraints.html */; }; >+ 3FCC4FE51EC4E8520076E37C /* PictureInPictureDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3FCC4FE41EC4E8520076E37C /* PictureInPictureDelegate.mm */; }; >+ 3FCC4FE81EC4E8CA0076E37C /* PictureInPictureDelegate.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 3FCC4FE61EC4E87E0076E37C /* PictureInPictureDelegate.html */; }; >+ 44817A2F1F0486BF00003810 /* WKRequestActivatedElementInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44817A2E1F0486BF00003810 /* WKRequestActivatedElementInfo.mm */; }; >+ 448D7E471EA6C55500ECC756 /* EnvironmentUtilitiesTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 448D7E451EA6C55500ECC756 /* EnvironmentUtilitiesTest.cpp */; }; >+ 46397B951DC2C850009A78AE /* DOMNode.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46397B941DC2C850009A78AE /* DOMNode.mm */; }; >+ 4647B1261EBA3B850041D7EF /* ProcessDidTerminate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4647B1251EBA3B730041D7EF /* ProcessDidTerminate.cpp */; }; >+ 46C519DA1D355AB200DAA51A /* LocalStorageNullEntries.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46C519D81D355A7300DAA51A /* LocalStorageNullEntries.mm */; }; >+ 46C519E61D3563FD00DAA51A /* LocalStorageNullEntries.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 46C519E21D35629600DAA51A /* LocalStorageNullEntries.html */; }; >+ 46C519E71D3563FD00DAA51A /* LocalStorageNullEntries.localstorage in Copy Resources */ = {isa = PBXBuildFile; fileRef = 46C519E31D35629600DAA51A /* LocalStorageNullEntries.localstorage */; }; >+ 46C519E81D3563FD00DAA51A /* LocalStorageNullEntries.localstorage-shm in Copy Resources */ = {isa = PBXBuildFile; fileRef = 46C519E41D35629600DAA51A /* LocalStorageNullEntries.localstorage-shm */; }; >+ 46E66A901F0D75590026D83C /* WKWebViewDiagnosticLogging.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46E66A8F1F0D75590026D83C /* WKWebViewDiagnosticLogging.mm */; }; >+ 46E816F81E79E29C00375ADC /* RestoreStateAfterTermination.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46E816F71E79E29100375ADC /* RestoreStateAfterTermination.mm */; }; >+ 4BFDFFA71314776C0061F24B /* HitTestResultNodeHandle_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4BFDFFA61314776C0061F24B /* HitTestResultNodeHandle_Bundle.cpp */; }; >+ 510477721D298DDD009747EB /* IDBDeleteRecovery.sqlite3 in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5104776F1D298D85009747EB /* IDBDeleteRecovery.sqlite3 */; }; >+ 510477731D298DDD009747EB /* IDBDeleteRecovery.sqlite3-shm in Copy Resources */ = {isa = PBXBuildFile; fileRef = 510477701D298D85009747EB /* IDBDeleteRecovery.sqlite3-shm */; }; >+ 510477741D298DDD009747EB /* IDBDeleteRecovery.sqlite3-wal in Copy Resources */ = {isa = PBXBuildFile; fileRef = 510477711D298D85009747EB /* IDBDeleteRecovery.sqlite3-wal */; }; >+ 510477771D298E72009747EB /* IDBDeleteRecovery.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 510477761D298E57009747EB /* IDBDeleteRecovery.html */; }; >+ 510477781D29923B009747EB /* IDBDeleteRecovery.mm in Sources */ = {isa = PBXBuildFile; fileRef = 510477751D298E03009747EB /* IDBDeleteRecovery.mm */; }; >+ 5110FCF11E01CD64006F8D0B /* IDBIndexUpgradeToV2.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5110FCF01E01CD53006F8D0B /* IDBIndexUpgradeToV2.html */; }; >+ 5110FCF61E01CD83006F8D0B /* IndexUpgrade.sqlite3 in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5110FCF31E01CD77006F8D0B /* IndexUpgrade.sqlite3 */; }; >+ 5110FCF91E01CD8A006F8D0B /* IndexUpgrade.blob in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5110FCF21E01CD77006F8D0B /* IndexUpgrade.blob */; }; >+ 5110FCFA1E01CDB8006F8D0B /* IDBIndexUpgradeToV2.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5110FCEF1E01CBAA006F8D0B /* IDBIndexUpgradeToV2.mm */; }; >+ 5120C83D1E6751290025B250 /* WebsiteDataStoreCustomPaths.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5120C83C1E6750790025B250 /* WebsiteDataStoreCustomPaths.mm */; }; >+ 5120C83E1E67678F0025B250 /* WebsiteDataStoreCustomPaths.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5120C83B1E674E350025B250 /* WebsiteDataStoreCustomPaths.html */; }; >+ 51393E221523952D005F39C5 /* DOMWindowExtensionBasic_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51393E1D1523944A005F39C5 /* DOMWindowExtensionBasic_Bundle.cpp */; }; >+ 5142B2731517C8C800C32B19 /* ContextMenuCanCopyURL.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5142B2721517C89100C32B19 /* ContextMenuCanCopyURL.html */; }; >+ 514958BE1F7427AC00E87BAD /* WKWebViewAutofillTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 514958BD1F7427AC00E87BAD /* WKWebViewAutofillTests.mm */; }; >+ 515BE16F1D428BB100DD7C68 /* StoreBlobToBeDeleted.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 515BE16E1D4288FF00DD7C68 /* StoreBlobToBeDeleted.html */; }; >+ 515BE1711D428E4B00DD7C68 /* StoreBlobThenDelete.mm in Sources */ = {isa = PBXBuildFile; fileRef = 515BE1701D428BD100DD7C68 /* StoreBlobThenDelete.mm */; }; >+ 51714EB41CF8C78C004723C4 /* WebProcessKillIDBCleanup-1.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51714EB21CF8C761004723C4 /* WebProcessKillIDBCleanup-1.html */; }; >+ 51714EB51CF8C78C004723C4 /* WebProcessKillIDBCleanup-2.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51714EB31CF8C761004723C4 /* WebProcessKillIDBCleanup-2.html */; }; >+ 51714EB81CF8CA17004723C4 /* WebProcessKillIDBCleanup.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51714EB61CF8C7A4004723C4 /* WebProcessKillIDBCleanup.mm */; }; >+ 517E7E04151119C100D0B008 /* MemoryCachePruneWithinResourceLoadDelegate.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 517E7E031511187500D0B008 /* MemoryCachePruneWithinResourceLoadDelegate.html */; }; >+ 5182C22E1F2BCE540059BA7C /* WKURLSchemeHandler-leaks.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5182C22D1F2BCB410059BA7C /* WKURLSchemeHandler-leaks.mm */; }; >+ 5198A2401EA7E59F008910B7 /* InitialWarmedProcessUsed.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5198A23F1EA7E595008910B7 /* InitialWarmedProcessUsed.mm */; }; >+ 51A5877D1D1B49CD004BA9AF /* IndexedDBMultiProcess-3.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51A5877C1D1B3D8D004BA9AF /* IndexedDBMultiProcess-3.html */; }; >+ 51A587851D2739E3004BA9AF /* IndexedDBDatabaseProcessKill-1.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51A587821D272EB5004BA9AF /* IndexedDBDatabaseProcessKill-1.html */; }; >+ 51A587861D273AA9004BA9AF /* IndexedDBDatabaseProcessKill.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51A587841D272EF3004BA9AF /* IndexedDBDatabaseProcessKill.mm */; }; >+ 51AF23DF1EF1A3730072F281 /* IconLoadingDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51AF23DE1EF1A3720072F281 /* IconLoadingDelegate.mm */; }; >+ 51B1EE961C80FAEF0064FB98 /* IndexedDBPersistence-1.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51B1EE941C80FADD0064FB98 /* IndexedDBPersistence-1.html */; }; >+ 51B1EE971C80FAEF0064FB98 /* IndexedDBPersistence-2.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51B1EE951C80FADD0064FB98 /* IndexedDBPersistence-2.html */; }; >+ 51BCEE4E1C84F53B0042C82E /* IndexedDBMultiProcess-1.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51BCEE4C1C84F52C0042C82E /* IndexedDBMultiProcess-1.html */; }; >+ 51BCEE4F1C84F53B0042C82E /* IndexedDBMultiProcess-2.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51BCEE4D1C84F52C0042C82E /* IndexedDBMultiProcess-2.html */; }; >+ 51C683DE1EA134E800650183 /* WKURLSchemeHandler-1.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51C683DD1EA134DB00650183 /* WKURLSchemeHandler-1.mm */; }; >+ 51C8E1A51F26AF4C00BF731B /* ResourceLoadStatistics.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51C8E1A41F26AC5400BF731B /* ResourceLoadStatistics.mm */; }; >+ 51C8E1A91F27F49600BF731B /* EmptyGrandfatheredResourceLoadStatistics.plist in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51C8E1A81F27F47300BF731B /* EmptyGrandfatheredResourceLoadStatistics.plist */; }; >+ 51CD1C6C1B38CE4300142CA5 /* ModalAlerts.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51CD1C6A1B38CE3600142CA5 /* ModalAlerts.mm */; }; >+ 51CD1C721B38D48400142CA5 /* modal-alerts-in-new-about-blank-window.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51CD1C711B38D48400142CA5 /* modal-alerts-in-new-about-blank-window.html */; }; >+ 51D124981E763B02002B2820 /* WKHTTPCookieStore.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51D124971E763AF8002B2820 /* WKHTTPCookieStore.mm */; }; >+ 51D1249B1E785425002B2820 /* CookieManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6F3F29013342FEB00A6BF19 /* CookieManager.cpp */; }; >+ 51DB16CE1F085137001FA4C5 /* WebViewIconLoading.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51DB16CD1F085047001FA4C5 /* WebViewIconLoading.mm */; }; >+ 51E5C7021919C3B200D8B3E1 /* simple2.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51E780361919AFF8001829A2 /* simple2.html */; }; >+ 51E5C7031919C3B200D8B3E1 /* simple3.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51E780371919AFF8001829A2 /* simple3.html */; }; >+ 51E6A8941D2F1C0A00C004B6 /* LocalStorageClear.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51E6A8921D2F1BEC00C004B6 /* LocalStorageClear.mm */; }; >+ 51E6A8961D2F1CA700C004B6 /* LocalStorageClear.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 51E6A8951D2F1C7700C004B6 /* LocalStorageClear.html */; }; >+ 51FCF7A11534B2A000104491 /* ShouldGoToBackForwardListItem_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51FCF7971534AC6D00104491 /* ShouldGoToBackForwardListItem_Bundle.cpp */; }; >+ 520BCF4C141EB09E00937EA8 /* WebArchive_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 520BCF4A141EB09E00937EA8 /* WebArchive_Bundle.cpp */; }; >+ 524BBC9E19DF72C0002F1AF1 /* file-with-video.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 524BBC9B19DF3714002F1AF1 /* file-with-video.html */; }; >+ 524BBCA119E30C77002F1AF1 /* test.mp4 in Copy Resources */ = {isa = PBXBuildFile; fileRef = 524BBCA019E30C63002F1AF1 /* test.mp4 */; }; >+ 52B8CF9815868D9100281053 /* SetDocumentURI.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 52B8CF9415868CF000281053 /* SetDocumentURI.html */; }; >+ 52D673EE1AFB127300FA19FE /* WKPageCopySessionStateWithFiltering.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 52D673EC1AFB126800FA19FE /* WKPageCopySessionStateWithFiltering.cpp */; }; >+ 52E5CE4914D21EAB003B2BD8 /* ParentFrame_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 52E5CE4814D21EAB003B2BD8 /* ParentFrame_Bundle.cpp */; }; >+ 5311BD5E1EA9490E00525281 /* ThreadMessages.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5311BD5D1EA9490D00525281 /* ThreadMessages.cpp */; }; >+ 531C1D8E1DF8EF72006E979F /* LEBDecoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 531C1D8D1DF8EF72006E979F /* LEBDecoder.cpp */; }; >+ 536770341CC8022800D425B1 /* WebScriptObjectDescription.mm in Sources */ = {isa = PBXBuildFile; fileRef = 536770331CC8022800D425B1 /* WebScriptObjectDescription.mm */; }; >+ 536770361CC81B6100D425B1 /* WebScriptObjectDescription.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 536770351CC812F900D425B1 /* WebScriptObjectDescription.html */; }; >+ 53EC25411E96FD87000831B9 /* PriorityQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 53EC253F1E96BC80000831B9 /* PriorityQueue.cpp */; }; >+ 55226A2F1EBA44B900C36AD0 /* large-red-square-image.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 55226A2E1EB969B600C36AD0 /* large-red-square-image.html */; }; >+ 5597F8361D9596C80066BC21 /* SynchronizedFixedQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5597F8341D9596C80066BC21 /* SynchronizedFixedQueue.cpp */; }; >+ 5714ECB91CA8B5B000051AC8 /* DownloadRequestOriginalURL.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5714ECB81CA8B58800051AC8 /* DownloadRequestOriginalURL.html */; }; >+ 5714ECBB1CA8BFE400051AC8 /* DownloadRequestOriginalURLFrame.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5714ECBA1CA8BFD100051AC8 /* DownloadRequestOriginalURLFrame.html */; }; >+ 5714ECBD1CA8C22A00051AC8 /* DownloadRequestOriginalURL2.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5714ECBC1CA8C21800051AC8 /* DownloadRequestOriginalURL2.html */; }; >+ 571F7FD01F2961FB00946648 /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal in Copy Resources */ = {isa = PBXBuildFile; fileRef = 571F7FCF1F2961E100946648 /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal */; }; >+ 57599E211F07191900A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57599E201F07191700A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.mm */; }; >+ 57599E271F071AA000A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3 in Copy Resources */ = {isa = PBXBuildFile; fileRef = 57599E241F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3 */; }; >+ 57599E281F071AA000A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm in Copy Resources */ = {isa = PBXBuildFile; fileRef = 57599E261F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm */; }; >+ 57599E2A1F071AA000A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityRead.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 57599E251F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityRead.html */; }; >+ 57599E2B1F071AA000A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityWrite.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 57599E231F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityWrite.html */; }; >+ 5769C50B1D9B0002000847FB /* SerializedCryptoKeyWrap.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5769C50A1D9B0001000847FB /* SerializedCryptoKeyWrap.mm */; }; >+ 57901FB11CAF142D00ED64F9 /* LoadInvalidURLRequest.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 57901FB01CAF141C00ED64F9 /* LoadInvalidURLRequest.html */; }; >+ 5797FE311EB15A6800B2F4A0 /* NavigationClientDefaultCrypto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5797FE2F1EB15A5F00B2F4A0 /* NavigationClientDefaultCrypto.cpp */; }; >+ 5797FE331EB15AB100B2F4A0 /* navigation-client-default-crypto.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5797FE321EB15A8900B2F4A0 /* navigation-client-default-crypto.html */; }; >+ 57C3FA661F7C248F009D4B80 /* WeakPtr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1CB9BC371A67482300FE5678 /* WeakPtr.cpp */; }; >+ 57F56A5C1C7F8CC100F31D7E /* IsNavigationActionTrusted.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 57F56A5B1C7F8A4000F31D7E /* IsNavigationActionTrusted.html */; }; >+ 5C0BF88D1DD5964D00B00328 /* MemoryPressureHandler.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C0BF88C1DD5957400B00328 /* MemoryPressureHandler.mm */; }; >+ 5C0BF8911DD599A900B00328 /* WebViewCanPasteZeroPng.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C0BF88F1DD5999B00B00328 /* WebViewCanPasteZeroPng.mm */; }; >+ 5C0BF8921DD599B600B00328 /* EarlyKVOCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1A9FB6CC1CA34BE500966124 /* EarlyKVOCrash.mm */; }; >+ 5C0BF8931DD599BD00B00328 /* IsNavigationActionTrusted.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57F10D921C7E7B3800ECDF30 /* IsNavigationActionTrusted.mm */; }; >+ 5C0BF8941DD599C900B00328 /* MenuTypesForMouseEvents.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7A99D9931AD4A29D00373141 /* MenuTypesForMouseEvents.mm */; }; >+ 5C0BF8951DD599CD00B00328 /* NavigatorLanguage.mm in Sources */ = {isa = PBXBuildFile; fileRef = E19DB9781B32137C00DB38D4 /* NavigatorLanguage.mm */; }; >+ 5C2936931D5BF70D00DEAB1E /* CookieAcceptPolicy.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C2936911D5BF63E00DEAB1E /* CookieAcceptPolicy.mm */; }; >+ 5C2936961D5C00ED00DEAB1E /* CookieMessage.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5C2936941D5BFD1900DEAB1E /* CookieMessage.html */; }; >+ 5C4A84951F7EEFFC00ACFC54 /* Configuration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C4A84941F7EEFD400ACFC54 /* Configuration.mm */; }; >+ 5C69BDD51F82A7EF000F4F4B /* JavaScriptDuringNavigation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C69BDD41F82A7EB000F4F4B /* JavaScriptDuringNavigation.mm */; }; >+ 5C6E65441D5CEFD400F7862E /* URLParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C6E65411D5CEF8500F7862E /* URLParser.cpp */; }; >+ 5C726D6F1D3EE06E00C5E1A1 /* InstanceMethodSwizzler.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C726D6E1D3EE06800C5E1A1 /* InstanceMethodSwizzler.mm */; }; >+ 5C7964101EB0278D0075D74C /* EventModifiers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C79640F1EB0269B0075D74C /* EventModifiers.cpp */; }; >+ 5C838F7F1DB04F900082858F /* LoadInvalidURLRequest.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57901FAE1CAF137100ED64F9 /* LoadInvalidURLRequest.mm */; }; >+ 5C973F5C1F58EF8B00359C27 /* WebGLPolicy.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C973F5B1F58EF0A00359C27 /* WebGLPolicy.mm */; }; >+ 5C9E56851DF9145400C9EE33 /* WebsitePolicies.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C9E56841DF9143D00C9EE33 /* WebsitePolicies.mm */; }; >+ 5C9E56871DF914AE00C9EE33 /* contentBlockerCheck.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5C9E56861DF9148E00C9EE33 /* contentBlockerCheck.html */; }; >+ 5C9E59411D3EB5AC00E3C62E /* ApplicationCache.db in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5C9E593E1D3EB1DE00E3C62E /* ApplicationCache.db */; }; >+ 5C9E59421D3EB5AC00E3C62E /* ApplicationCache.db-shm in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5C9E593F1D3EB1DE00E3C62E /* ApplicationCache.db-shm */; }; >+ 5C9E59431D3EB5AC00E3C62E /* ApplicationCache.db-wal in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5C9E59401D3EB1DE00E3C62E /* ApplicationCache.db-wal */; }; >+ 5CA1DEC81F71F70100E71BD3 /* HTTPHeaderField.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CA1DEC71F71F40700E71BD3 /* HTTPHeaderField.cpp */; }; >+ 5CA1DED91F74A91A00E71BD3 /* ContentRuleListNotification.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5CA1DED81F74A87100E71BD3 /* ContentRuleListNotification.mm */; }; >+ 5CB18BA81F5645E300EE23C4 /* ClickAutoFillButton.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5CB18BA71F5645B200EE23C4 /* ClickAutoFillButton.mm */; }; >+ 5CB40B4E1F4B98D3007DC7B9 /* UIDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5CB40B4D1F4B98BE007DC7B9 /* UIDelegate.mm */; }; >+ 5CE354D91E70DA5C00BEFE3B /* WKContentExtensionStore.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5CE354D81E70D9C300BEFE3B /* WKContentExtensionStore.mm */; }; >+ 5E4B1D2E1D404C6100053621 /* WKScrollViewDelegateCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5E4B1D2C1D404C6100053621 /* WKScrollViewDelegateCrash.mm */; }; >+ 631EFFF61E7B5E8D00D2EBB8 /* Geolocation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 631EFFF51E7B5E8D00D2EBB8 /* Geolocation.mm */; }; >+ 634910E01E9D3FF300880309 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 634910DF1E9D3FF300880309 /* CoreLocation.framework */; }; >+ 6356FB221EC4E0BA0044BF18 /* VisibleContentRect.mm in Sources */ = {isa = PBXBuildFile; fileRef = 6356FB211EC4E0BA0044BF18 /* VisibleContentRect.mm */; }; >+ 636353A71E98665D0009F8AF /* GeolocationGetCurrentPositionResult.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 636353A61E9861940009F8AF /* GeolocationGetCurrentPositionResult.html */; }; >+ 6BFD294C1D5E6C1D008EC968 /* HashCountedSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A38D7E51C752D5F004F157D /* HashCountedSet.cpp */; }; >+ 754CEC811F6722F200D0039A /* AutoFillAvailable.mm in Sources */ = {isa = PBXBuildFile; fileRef = 754CEC801F6722DC00D0039A /* AutoFillAvailable.mm */; }; >+ 755A20AF1E6E38630093C69F /* DatabaseTrackerTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 755A20AE1E6E38630093C69F /* DatabaseTrackerTest.cpp */; }; >+ 764322D71B61CCC30024F801 /* WordBoundaryTypingAttributes.mm in Sources */ = {isa = PBXBuildFile; fileRef = 764322D51B61CCA40024F801 /* WordBoundaryTypingAttributes.mm */; }; >+ 7673499D1930C5BB00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad_bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7673499A1930182E00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad_bundle.cpp */; }; >+ 76E182DD1547569100F1FADD /* WillSendSubmitEvent_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 76E182DC1547569100F1FADD /* WillSendSubmitEvent_Bundle.cpp */; }; >+ 76E182DF154767E600F1FADD /* auto-submitting-form.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 76E182DE15475A8300F1FADD /* auto-submitting-form.html */; }; >+ 7A010BCB1D877C0500EDE72A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7A010BCA1D877C0500EDE72A /* CoreGraphics.framework */; }; >+ 7A010BCD1D877C0D00EDE72A /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7A010BCC1D877C0D00EDE72A /* QuartzCore.framework */; }; >+ 7A1458FC1AD5C07000E06772 /* mouse-button-listener.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7A1458FB1AD5C03500E06772 /* mouse-button-listener.html */; }; >+ 7A32D74A1F02151500162C44 /* FileMonitor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A32D7491F02151500162C44 /* FileMonitor.cpp */; }; >+ 7A66BDB61EAF14EF00CCC924 /* LimitTitleSize.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A66BDB51EAF14D000CCC924 /* LimitTitleSize.cpp */; }; >+ 7A66BDB81EAF18D500CCC924 /* set-long-title.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7A66BDB71EAF150100CCC924 /* set-long-title.html */; }; >+ 7A6A2C701DCCFA8C00C0D085 /* LocalStorageQuirkTest.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7A6A2C6F1DCCF87B00C0D085 /* LocalStorageQuirkTest.mm */; }; >+ 7A6A2C721DCCFB5200C0D085 /* LocalStorageQuirkEnabled.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7A6A2C711DCCFB0200C0D085 /* LocalStorageQuirkEnabled.html */; }; >+ 7A7B0E7F1EAFE4C3006AB8AE /* LimitTitleSize.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7A7B0E7E1EAFE454006AB8AE /* LimitTitleSize.mm */; }; >+ 7A909A7D1D877480007E10F8 /* AffineTransform.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A909A6F1D877475007E10F8 /* AffineTransform.cpp */; }; >+ 7A909A7E1D877480007E10F8 /* FloatPoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A909A701D877475007E10F8 /* FloatPoint.cpp */; }; >+ 7A909A7F1D877480007E10F8 /* FloatRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A909A711D877475007E10F8 /* FloatRect.cpp */; }; >+ 7A909A801D877480007E10F8 /* FloatSize.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A909A721D877475007E10F8 /* FloatSize.cpp */; }; >+ 7A909A811D877480007E10F8 /* IntPoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A909A731D877475007E10F8 /* IntPoint.cpp */; }; >+ 7A909A821D877480007E10F8 /* IntRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A909A741D877475007E10F8 /* IntRect.cpp */; }; >+ 7A909A831D877480007E10F8 /* IntSize.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A909A751D877475007E10F8 /* IntSize.cpp */; }; >+ 7A95BDE11E9BEC5F00865498 /* InjectedBundleAppleEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A95BDE01E9BEC4000865498 /* InjectedBundleAppleEvent.cpp */; }; >+ 7A95BDE21E9BEC7400865498 /* InjectedBundleAppleEvent_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A95BDDF1E9BEC4000865498 /* InjectedBundleAppleEvent_Bundle.cpp */; }; >+ 7AD3FE8E1D76131200B169A4 /* TransformationMatrix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7AD3FE8D1D75FB8D00B169A4 /* TransformationMatrix.cpp */; }; >+ 7AE9E5091AE5AE8B00CF874B /* test.pdf in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7AE9E5081AE5AE8B00CF874B /* test.pdf */; }; >+ 7AEAD47F1E20116C00416EFE /* CrossPartitionFileSchemeAccess.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7AEAD47C1E20113800416EFE /* CrossPartitionFileSchemeAccess.mm */; }; >+ 7AEAD4811E20122700416EFE /* CrossPartitionFileSchemeAccess.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7AEAD47D1E20114E00416EFE /* CrossPartitionFileSchemeAccess.html */; }; >+ 7C1AF7951E8DCBAB002645B9 /* PrepareForMoveToWindow.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C1AF7931E8DCBAB002645B9 /* PrepareForMoveToWindow.mm */; }; >+ 7C3965061CDD74F90094DBB8 /* Color.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C3965051CDD74F90094DBB8 /* Color.cpp */; }; >+ 7C3DB8E41D12129B00AE8CC3 /* CommandBackForward.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C3DB8E21D12129B00AE8CC3 /* CommandBackForward.mm */; }; >+ 7C417F331D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C417F311D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm */; }; >+ 7C486BA11AA12567003F6F9B /* bundle-file.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7C486BA01AA1254B003F6F9B /* bundle-file.html */; }; >+ 7C54A4BE1AA11CCA00380F78 /* WKBundleFileHandle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C54A4BC1AA11CCA00380F78 /* WKBundleFileHandle.cpp */; }; >+ 7C54A4C11AA11CE400380F78 /* WKBundleFileHandle_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C54A4BF1AA11CE400380F78 /* WKBundleFileHandle_Bundle.cpp */; }; >+ 7C83DE991D0A590C00FEBCF3 /* AtomicString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F1B44215CA434F00D1E4BF /* AtomicString.cpp */; }; >+ 7C83DE9C1D0A590C00FEBCF3 /* BloomFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E40019301ACE9B5C001B0A2A /* BloomFilter.cpp */; }; >+ 7C83DEA01D0A590C00FEBCF3 /* CheckedArithmeticOperations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7A966DA140ECCC8005EF9B4 /* CheckedArithmeticOperations.cpp */; }; >+ 7C83DEA61D0A590C00FEBCF3 /* Counters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C6BBD8B19CEA63000C1F5E0 /* Counters.cpp */; }; >+ 7C83DEA91D0A590C00FEBCF3 /* CString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26A2C72E15E2E73C005B1A14 /* CString.cpp */; }; >+ 7C83DEAD1D0A590C00FEBCF3 /* Deque.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4A757D3178AEA5B00B5D7A4 /* Deque.cpp */; }; >+ 7C83DEC31D0A590C00FEBCF3 /* Condition.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FEAE3671B7D19CB00CE17F2 /* Condition.cpp */; }; >+ 7C83DED21D0A590C00FEBCF3 /* HashMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0BCD833414857CE400EA2003 /* HashMap.cpp */; }; >+ 7C83DED41D0A590C00FEBCF3 /* HashSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26B2DFF815BDE599004F691D /* HashSet.cpp */; }; >+ 7C83DED71D0A590C00FEBCF3 /* RefLogger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 442BBF681C91CAD90017087F /* RefLogger.cpp */; }; >+ 7C83DEE01D0A590C00FEBCF3 /* IntegerToStringConversion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 266FAFD215E5775200F61D5B /* IntegerToStringConversion.cpp */; }; >+ 7C83DEE81D0A590C00FEBCF3 /* ListHashSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26300B1716755CD90066886D /* ListHashSet.cpp */; }; >+ 7C83DEED1D0A590C00FEBCF3 /* MathExtras.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4039F9C15E6D8B3007255D6 /* MathExtras.cpp */; }; >+ 7C83DEEF1D0A590C00FEBCF3 /* MD5.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD5393C71757BA9700C07123 /* MD5.cpp */; }; >+ 7C83DEF11D0A590C00FEBCF3 /* MediaTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD5497B315857F0C00B5BC30 /* MediaTime.cpp */; }; >+ 7C83DEF61D0A590C00FEBCF3 /* MetaAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FC6C4CE141034AD005B7F0C /* MetaAllocator.cpp */; }; >+ 7C83DEFE1D0A590C00FEBCF3 /* NakedPtr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FEB6F74E1B2BA44E009E4922 /* NakedPtr.cpp */; }; >+ 7C83DF011D0A590C00FEBCF3 /* Optional.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AFDE6541953B2C000C48FFA /* Optional.cpp */; }; >+ 7C83DF021D0A590C00FEBCF3 /* OSObjectPtr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CBBA07619BB8A9100BBF025 /* OSObjectPtr.cpp */; }; >+ 7C83DF051D0A590C00FEBCF3 /* RunLoop.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4C9ABC71B3DB1710040A987 /* RunLoop.cpp */; }; >+ 7C83DF121D0A590C00FEBCF3 /* ScopedLambda.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC69AA621CF77C6500C6272F /* ScopedLambda.cpp */; settings = {COMPILER_FLAGS = "-fno-elide-constructors"; }; }; >+ 7C83DF131D0A590C00FEBCF3 /* RedBlackTree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FC6C4CB141027E0005B7F0C /* RedBlackTree.cpp */; }; >+ 7C83DF141D0A590C00FEBCF3 /* Ref.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93A427AA180DA26400CD24D7 /* Ref.cpp */; }; >+ 7C83DF151D0A590C00FEBCF3 /* RefCounter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 86BD19971A2DB05B006DCF0A /* RefCounter.cpp */; }; >+ 7C83DF161D0A590C00FEBCF3 /* RefPtr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93A427A8180D9B0700CD24D7 /* RefPtr.cpp */; }; >+ 7C83DF1D1D0A590C00FEBCF3 /* Lock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FFC45A41B73EBE20085BD62 /* Lock.cpp */; }; >+ 7C83DF241D0A590C00FEBCF3 /* RetainPtr.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC029B1B1486B25900817DA9 /* RetainPtr.mm */; }; >+ 7C83DF261D0A590C00FEBCF3 /* SaturatedArithmeticOperations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14F3B11215E45EAB00210069 /* SaturatedArithmeticOperations.cpp */; }; >+ 7C83DF2A1D0A590C00FEBCF3 /* SHA1.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD5393C91757BAC400C07123 /* SHA1.cpp */; }; >+ 7C83DF321D0A590C00FEBCF3 /* StringBuilder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 81B50192140F232300D9EB58 /* StringBuilder.cpp */; }; >+ 7C83DF361D0A590C00FEBCF3 /* StringHasher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93ABA80816DDAB91002DB2FA /* StringHasher.cpp */; }; >+ 7C83DF371D0A590C00FEBCF3 /* StringImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F1B44315CA434F00D1E4BF /* StringImpl.cpp */; }; >+ 7C83DF381D0A590C00FEBCF3 /* StringOperators.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C01363C713C3997300EF3964 /* StringOperators.cpp */; }; >+ 7C83DF3A1D0A590C00FEBCF3 /* StringView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C74D42D188228F300E5ED57 /* StringView.cpp */; }; >+ 7C83DF3D1D0A590C00FEBCF3 /* SetForScope.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0BCD85691485C98B00EA2003 /* SetForScope.cpp */; }; >+ 7C83DF401D0A590C00FEBCF3 /* TestsController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC131AA8117131FC00B69727 /* TestsController.cpp */; }; >+ 7C83DF4C1D0A590C00FEBCF3 /* Vector.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC55F5F814AD78EE00484BE1 /* Vector.cpp */; }; >+ 7C83DF591D0A590C00FEBCF3 /* ParkingLot.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FE447971B76F1E3009498EB /* ParkingLot.cpp */; }; >+ 7C83DF631D0A590C00FEBCF3 /* WTFString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 265AF54F15D1E48A00B0CB4A /* WTFString.cpp */; }; >+ 7C83DFA21D0A5AE400FEBCF3 /* mainIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E7765CC16C4D80A00BA2BB1 /* mainIOS.mm */; }; >+ 7C83DFAD1D0A5AE400FEBCF3 /* mainMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E7765CE16C4D81100BA2BB1 /* mainMac.mm */; }; >+ 7C83E02A1D0A5CDF00FEBCF3 /* libWTF.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7C83E0291D0A5CDF00FEBCF3 /* libWTF.a */; }; >+ 7C83E03A1D0A602700FEBCF3 /* UtilitiesCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C83E0391D0A602700FEBCF3 /* UtilitiesCocoa.mm */; }; >+ 7C83E03B1D0A602700FEBCF3 /* UtilitiesCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C83E0391D0A602700FEBCF3 /* UtilitiesCocoa.mm */; }; >+ 7C83E03C1D0A60D600FEBCF3 /* UtilitiesCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C83E0391D0A602700FEBCF3 /* UtilitiesCocoa.mm */; }; >+ 7C83E03D1D0A60D600FEBCF3 /* UtilitiesCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C83E0391D0A602700FEBCF3 /* UtilitiesCocoa.mm */; }; >+ 7C83E03F1D0A61A000FEBCF3 /* libicucore.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7C83E0331D0A5F2700FEBCF3 /* libicucore.dylib */; }; >+ 7C83E0401D0A63E300FEBCF3 /* FirstResponderScrollingPosition.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B79164F1BD89D0D00D50B8F /* FirstResponderScrollingPosition.mm */; }; >+ 7C83E0411D0A63F200FEBCF3 /* CandidateTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93CFA8681CEBCFED000565A8 /* CandidateTests.mm */; }; >+ 7C83E0421D0A63FD00FEBCF3 /* WebViewCloseInsideDidFinishLoadForFrame.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51B454EB1B4E236B0085EAA6 /* WebViewCloseInsideDidFinishLoadForFrame.mm */; }; >+ 7C83E04C1D0A641800FEBCF3 /* WebCoreNSURLSession.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD89D0381C4EDB2A00040A04 /* WebCoreNSURLSession.mm */; }; >+ 7C83E04D1D0A641800FEBCF3 /* DFACombiner.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260BA5781B1D2E7B004FA07C /* DFACombiner.cpp */; }; >+ 7C83E04E1D0A641800FEBCF3 /* DFAMinimizer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F6E1EF1ADC749B00DE696B /* DFAMinimizer.cpp */; }; >+ 7C83E04F1D0A641800FEBCF3 /* FileSystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 41973B5A1AF2286A006C7B36 /* FileSystem.cpp */; }; >+ 7C83E0501D0A641800FEBCF3 /* HTMLParserIdioms.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83B88A331C80056D00BB2418 /* HTMLParserIdioms.cpp */; }; >+ 7C83E0511D0A641800FEBCF3 /* ParsedContentRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD225C071C45A69200140761 /* ParsedContentRange.cpp */; }; >+ 7C83E0521D0A641800FEBCF3 /* SharedBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 41973B5C1AF22875006C7B36 /* SharedBuffer.cpp */; }; >+ 7C83E0531D0A643A00FEBCF3 /* PendingAPIRequestURL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0766DD1F1A5AD5200023E3BB /* PendingAPIRequestURL.cpp */; }; >+ 7C83E0B51D0A649300FEBCF3 /* WKRetainPtr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1CF0D3781BBF2F3D00B4EF54 /* WKRetainPtr.cpp */; }; >+ 7C83E0B61D0A64B300FEBCF3 /* ModalAlertsSPI.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51CB4AD71B3A079C00C1B1C6 /* ModalAlertsSPI.cpp */; }; >+ 7C83E0B71D0A64B800FEBCF3 /* MenuTypesForMouseEvents.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A5623101AD5AF3E0096B920 /* MenuTypesForMouseEvents.cpp */; }; >+ 7C83E0B81D0A64BD00FEBCF3 /* InjectedBundleMakeAllShadowRootsOpen.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9B0786A21C58830F00D159E3 /* InjectedBundleMakeAllShadowRootsOpen.cpp */; }; >+ 7C83E0B91D0A64F100FEBCF3 /* AutoLayoutIntegration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DD355351BD08378005DF4A7 /* AutoLayoutIntegration.mm */; }; >+ 7C83E0BA1D0A64FB00FEBCF3 /* Coding.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1AAD19F51C7CE20300831E47 /* Coding.mm */; }; >+ 7C83E0BB1D0A650000FEBCF3 /* FindInPage.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D8104CB1BEC13E70020DA46 /* FindInPage.mm */; }; >+ 7C83E0BC1D0A650700FEBCF3 /* FixedLayoutSize.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D1FE0AF1AD465C1006CD9E6 /* FixedLayoutSize.mm */; }; >+ 7C83E0BD1D0A650C00FEBCF3 /* FullscreenTopContentInset.mm in Sources */ = {isa = PBXBuildFile; fileRef = CDE195B31CFE0ADE0053D256 /* FullscreenTopContentInset.mm */; }; >+ 7C83E0BE1D0A651300FEBCF3 /* IndexedDBMultiProcess.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51BCEE491C84F4AF0042C82E /* IndexedDBMultiProcess.mm */; }; >+ 7C83E0BF1D0A652200FEBCF3 /* IndexedDBPersistence.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51B1EE8D1C80F5880064FB98 /* IndexedDBPersistence.mm */; }; >+ 7C83E0C01D0A652700FEBCF3 /* LoadInvalidURLRequest.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57901FAC1CAF12C200ED64F9 /* LoadInvalidURLRequest.mm */; }; >+ 7C83E0C11D0A652F00FEBCF3 /* ProvisionalURLNotChange.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5798E2AF1CAF5C2800C5CBA0 /* ProvisionalURLNotChange.mm */; }; >+ 7C83E0C21D0A653500FEBCF3 /* QuickLook.mm in Sources */ = {isa = PBXBuildFile; fileRef = A1C4FB6C1BACCE50003742D0 /* QuickLook.mm */; }; >+ 7C83E0C31D0A653A00FEBCF3 /* RemoteObjectRegistry.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1A4F81C81BDFFD18004E672E /* RemoteObjectRegistry.mm */; }; >+ 7C83E0C41D0A654200FEBCF3 /* RequiresUserActionForPlayback.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD9E292B1C90A71F000BB800 /* RequiresUserActionForPlayback.mm */; }; >+ 7C83E0C51D0A654600FEBCF3 /* ShrinkToFit.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D9A53AE1B31FA8D0074D5AA /* ShrinkToFit.mm */; }; >+ 7C83E0C61D0A654E00FEBCF3 /* VideoControlsManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93E943F11CD3E87E00AC08C2 /* VideoControlsManager.mm */; }; >+ 7C83FC711D5535A8001DFBCD /* Variant.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD0D5AA1D5534DE000CC9E1 /* Variant.cpp */; }; >+ 7C882E091C80C630006BF731 /* UserContentWorldPlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C882E041C80C624006BF731 /* UserContentWorldPlugIn.mm */; }; >+ 7C882E0A1C80C764006BF731 /* UserContentWorld.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C882E031C80C624006BF731 /* UserContentWorld.mm */; }; >+ 7C89D2AC1A69B80D003A5FDE /* WKPageConfiguration.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C89D2AA1A69B80D003A5FDE /* WKPageConfiguration.cpp */; }; >+ 7C9ED98B17A19F4B00E4DC33 /* attributedStringStrikethrough.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7C9ED98A17A19D0600E4DC33 /* attributedStringStrikethrough.html */; }; >+ 7CB184C61AA3F2100066EDFD /* ContentExtensions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CB184C41AA3F2100066EDFD /* ContentExtensions.cpp */; }; >+ 7CCB4DA91C83AE7300CC6918 /* PageGroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CCB4DA71C83AE7300CC6918 /* PageGroup.cpp */; }; >+ 7CCB99211D3B41F6003922F6 /* UserInitiatedActionInNavigationAction.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7CCB99201D3B41F6003922F6 /* UserInitiatedActionInNavigationAction.mm */; }; >+ 7CCB99231D3B4A46003922F6 /* open-multiple-external-url.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7CCB99221D3B44E7003922F6 /* open-multiple-external-url.html */; }; >+ 7CCE7EA51A411A0800447C4C /* JavaScriptTestMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = C081224013FC172400DC39AE /* JavaScriptTestMac.mm */; }; >+ 7CCE7EA61A411A0F00447C4C /* PlatformUtilitiesMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC131884117114B600B69727 /* PlatformUtilitiesMac.mm */; }; >+ 7CCE7EA71A411A1300447C4C /* PlatformWebViewMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC90955C125548AA00083756 /* PlatformWebViewMac.mm */; }; >+ 7CCE7EA81A411A1900447C4C /* SyntheticBackingScaleFactorWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = C081224413FC19EC00DC39AE /* SyntheticBackingScaleFactorWindow.m */; }; >+ 7CCE7EA91A411A1D00447C4C /* TestBrowsingContextLoadDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 29AB8AA2164C7A9300D49BEC /* TestBrowsingContextLoadDelegate.mm */; }; >+ 7CCE7EAB1A411A2400447C4C /* WebKitAgnosticTest.mm in Sources */ = {isa = PBXBuildFile; fileRef = C08587BD13FE956C001EF4E5 /* WebKitAgnosticTest.mm */; }; >+ 7CCE7EAC1A411A3400447C4C /* Counters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C6BBD8B19CEA63000C1F5E0 /* Counters.cpp */; }; >+ 7CCE7EAD1A411A3400447C4C /* JavaScriptTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0ADBE7A12FCA4D000D2C129 /* JavaScriptTest.cpp */; }; >+ 7CCE7EAE1A411A3400447C4C /* TestsController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC131AA8117131FC00B69727 /* TestsController.cpp */; }; >+ 7CCE7EAF1A411A3800447C4C /* PlatformUtilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC575BBF126F5752006F0F12 /* PlatformUtilities.cpp */; }; >+ 7CCE7EB01A411A4400447C4C /* URLExtras.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93A7EB3C18FA63A4009E7670 /* URLExtras.mm */; }; >+ 7CCE7EB21A411A5100447C4C /* MemoryCacheAddImageToCacheIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7560917719259C59009EF06E /* MemoryCacheAddImageToCacheIOS.mm */; }; >+ 7CCE7EB31A411A7E00447C4C /* AcceptsFirstMouse.mm in Sources */ = {isa = PBXBuildFile; fileRef = 379028B514FABD92007E6B43 /* AcceptsFirstMouse.mm */; }; >+ 7CCE7EB41A411A7E00447C4C /* AttributedString.mm in Sources */ = {isa = PBXBuildFile; fileRef = B55F119F1516834F00915916 /* AttributedString.mm */; }; >+ 7CCE7EB51A411A7E00447C4C /* BackForwardList.mm in Sources */ = {isa = PBXBuildFile; fileRef = 00CD9F6215BE312C002DA2CE /* BackForwardList.mm */; }; >+ 7CCE7EB61A411A7E00447C4C /* CancelLoadFromResourceLoadDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 26DF5A5D15A29BAA003689C2 /* CancelLoadFromResourceLoadDelegate.mm */; }; >+ 7CCE7EB71A411A7E00447C4C /* CloseNewWindowInNavigationPolicyDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 290A9BB51735DE8A00D71BBC /* CloseNewWindowInNavigationPolicyDelegate.mm */; }; >+ 7CCE7EB81A411A7E00447C4C /* ContextMenuCanCopyURL.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5142B2701517C88B00C32B19 /* ContextMenuCanCopyURL.mm */; }; >+ 7CCE7EB91A411A7E00447C4C /* DeviceScaleFactorInDashboardRegions.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3776BC62150946BC0043A66D /* DeviceScaleFactorInDashboardRegions.mm */; }; >+ 7CCE7EBA1A411A7E00447C4C /* DeviceScaleFactorOnBack.mm in Sources */ = {isa = PBXBuildFile; fileRef = 939BA91614103412001A01BD /* DeviceScaleFactorOnBack.mm */; }; >+ 7CCE7EBB1A411A7E00447C4C /* DOMHTMLTableCellCellAbove.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37E1064A1697676400B78BD0 /* DOMHTMLTableCellCellAbove.mm */; }; >+ 7CCE7EBC1A411A7E00447C4C /* DOMNodeFromJSObject.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3751AF7A169518F800764319 /* DOMNodeFromJSObject.mm */; }; >+ 7CCE7EBD1A411A7E00447C4C /* DOMRangeOfString.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37DC678B140D7C5000ABCCDB /* DOMRangeOfString.mm */; }; >+ 7CCE7EBE1A411A7E00447C4C /* DynamicDeviceScaleFactor.mm in Sources */ = {isa = PBXBuildFile; fileRef = C07E6CAE13FD67650038B22B /* DynamicDeviceScaleFactor.mm */; }; >+ 7CCE7EBF1A411A7E00447C4C /* ElementAtPointInWebFrame.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4BB4160316815F9100824238 /* ElementAtPointInWebFrame.mm */; }; >+ 7CCE7EC01A411A7E00447C4C /* FragmentNavigation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1A7E8B33181208DE00AEB74A /* FragmentNavigation.mm */; }; >+ 7CCE7EC11A411A7E00447C4C /* HTMLCollectionNamedItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B4F8FA3159D52B1002D9F94 /* HTMLCollectionNamedItem.mm */; }; >+ 7CCE7EC21A411A7E00447C4C /* HTMLFormCollectionNamedItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B26FC6B159D061000CC3765 /* HTMLFormCollectionNamedItem.mm */; }; >+ 7CCE7EC31A411A7E00447C4C /* InspectorBar.mm in Sources */ = {isa = PBXBuildFile; fileRef = C507E8A614C6545B005D6B3B /* InspectorBar.mm */; }; >+ 7CCE7EC41A411A7E00447C4C /* JSWrapperForNodeInWebFrame.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4BB4160116815B2600824238 /* JSWrapperForNodeInWebFrame.mm */; }; >+ 7CCE7EC51A411A7E00447C4C /* MemoryCacheDisableWithinResourceLoadDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1220D9F155B25480013E2FC /* MemoryCacheDisableWithinResourceLoadDelegate.mm */; }; >+ 7CCE7EC61A411A7E00447C4C /* MemoryCachePruneWithinResourceLoadDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 517E7DFB15110EA600D0B008 /* MemoryCachePruneWithinResourceLoadDelegate.mm */; }; >+ 7CCE7EC71A411A7E00447C4C /* PageVisibilityStateWithWindowChanges.mm in Sources */ = {isa = PBXBuildFile; fileRef = A57A34EF16AF677200C2501F /* PageVisibilityStateWithWindowChanges.mm */; }; >+ 7CCE7EC81A411A7E00447C4C /* PublicSuffix.mm in Sources */ = {isa = PBXBuildFile; fileRef = 00BC16851680FE810065F1E5 /* PublicSuffix.mm */; }; >+ 7CCE7EC91A411A7E00447C4C /* RenderedImageFromDOMNode.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37C784DE197C8F2E0010A496 /* RenderedImageFromDOMNode.mm */; }; >+ 7CCE7ECA1A411A7E00447C4C /* RenderedImageFromDOMRange.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3722C8681461E03E00C45D00 /* RenderedImageFromDOMRange.mm */; }; >+ 7CCE7ECB1A411A7E00447C4C /* SetAndUpdateCacheModel.mm in Sources */ = {isa = PBXBuildFile; fileRef = 261516D515B0E60500A2C201 /* SetAndUpdateCacheModel.mm */; }; >+ 7CCE7ECC1A411A7E00447C4C /* SetDocumentURI.mm in Sources */ = {isa = PBXBuildFile; fileRef = 52B8CF9515868CF000281053 /* SetDocumentURI.mm */; }; >+ 7CCE7ECE1A411A7E00447C4C /* StopLoadingFromDidFinishLoading.mm in Sources */ = {isa = PBXBuildFile; fileRef = 291861FD17BD4DC700D4E41E /* StopLoadingFromDidFinishLoading.mm */; }; >+ 7CCE7ECF1A411A7E00447C4C /* StopLoadingFromDidReceiveResponse.mm in Sources */ = {isa = PBXBuildFile; fileRef = E194E1BA177E5145009C4D4E /* StopLoadingFromDidReceiveResponse.mm */; }; >+ 7CCE7ED01A411A7E00447C4C /* StringByEvaluatingJavaScriptFromString.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3799AD3914120A43005EB0C6 /* StringByEvaluatingJavaScriptFromString.mm */; }; >+ 7CCE7ED11A411A7E00447C4C /* StringTruncator.mm in Sources */ = {isa = PBXBuildFile; fileRef = 939BFE3918E5548900883275 /* StringTruncator.mm */; }; >+ 7CCE7ED21A411A7E00447C4C /* SubresourceErrorCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37A6895D148A9B50005100FA /* SubresourceErrorCrash.mm */; }; >+ 7CCE7ED31A411A7E00447C4C /* TypingStyleCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = E490296714E2E3A4002BEDD1 /* TypingStyleCrash.mm */; }; >+ 7CCE7ED41A411A7E00447C4C /* WebViewCanPasteURL.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51FBBB4C1513D4E900822738 /* WebViewCanPasteURL.mm */; }; >+ 7CCE7ED51A411A7E00447C4C /* WebViewDidCreateJavaScriptContext.mm in Sources */ = {isa = PBXBuildFile; fileRef = C2EB2DD116CAC7AC009B52EE /* WebViewDidCreateJavaScriptContext.mm */; }; >+ 7CCE7ED61A411A7E00447C4C /* WebViewDidRemoveFrameFromHierarchy.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37E38C33169B7D010084C28C /* WebViewDidRemoveFrameFromHierarchy.mm */; }; >+ 7CCE7ED71A411A7E00447C4C /* WillPerformClientRedirectToURLCrash.mm in Sources */ = {isa = PBXBuildFile; fileRef = CE32C7C718184C4900CD8C28 /* WillPerformClientRedirectToURLCrash.mm */; }; >+ 7CCE7ED81A411A7E00447C4C /* WillSendSubmitEvent.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1A7BFC0A171A0BDB00BC5F64 /* WillSendSubmitEvent.mm */; }; >+ 7CCE7ED91A411A7E00447C4C /* WindowlessWebViewWithMedia.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5E2027215B2181900C13E14 /* WindowlessWebViewWithMedia.mm */; }; >+ 7CCE7EDA1A411A8700447C4C /* InstanceMethodSwizzler.mm in Sources */ = {isa = PBXBuildFile; fileRef = C08587FB13FEC39B001EF4E5 /* InstanceMethodSwizzler.mm */; }; >+ 7CCE7EDB1A411A9200447C4C /* CSSParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD5451E919E41F9D0016936F /* CSSParser.cpp */; }; >+ 7CCE7EDC1A411A9200447C4C /* CalculationValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93A720E518F1A0E800A848E1 /* CalculationValue.cpp */; }; >+ 7CCE7EDD1A411A9200447C4C /* TimeRanges.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CDC2C7141797089D00E627FB /* TimeRanges.cpp */; }; >+ 7CCE7EDE1A411A9200447C4C /* URL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 440A1D3814A0103A008A66F2 /* URL.cpp */; }; >+ 7CCE7EDF1A411A9200447C4C /* LayoutUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14464012167A8305000BD218 /* LayoutUnit.cpp */; }; >+ 7CCE7EE01A411A9A00447C4C /* EditorCommands.mm in Sources */ = {isa = PBXBuildFile; fileRef = BCAA485714A044D40088FAC4 /* EditorCommands.mm */; }; >+ 7CCE7EE11A411A9A00447C4C /* GetBackingScaleFactor.mm in Sources */ = {isa = PBXBuildFile; fileRef = C0C5D3BC14598B6F00A802A6 /* GetBackingScaleFactor.mm */; }; >+ 7CCE7EE21A411A9A00447C4C /* GetPIDAfterAbortedProcessLaunch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AEF994817A09F5300998EF0 /* GetPIDAfterAbortedProcessLaunch.cpp */; }; >+ 7CCE7EE41A411AE600447C4C /* AboutBlankLoad.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC246D8C132F115A00B56D7C /* AboutBlankLoad.cpp */; }; >+ 7CCE7EE51A411AE600447C4C /* CloseThenTerminate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C8DDAA91735DE1D00EA5AC0 /* CloseThenTerminate.cpp */; }; >+ 7CCE7EE61A411AE600447C4C /* CloseFromWithinCreatePage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A50AA1C1A2A4E7000F4C345 /* CloseFromWithinCreatePage.cpp */; }; >+ 7CCE7EE71A411AE600447C4C /* CanHandleRequest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC246D98132F1FE100B56D7C /* CanHandleRequest.cpp */; }; >+ 7CCE7EE91A411AE600447C4C /* DidAssociateFormControls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6B7BE93174691EF008A3445 /* DidAssociateFormControls.cpp */; }; >+ 7CCE7EEA1A411AE600447C4C /* DidNotHandleKeyDown.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9331407B17B4419000F083B1 /* DidNotHandleKeyDown.cpp */; }; >+ 7CCE7EEB1A411AE600447C4C /* DocumentStartUserScriptAlertCrash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCB6803F126FBFE100642A61 /* DocumentStartUserScriptAlertCrash.cpp */; }; >+ 7CCE7EEC1A411AE600447C4C /* DOMWindowExtensionBasic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51393E1E1523944A005F39C5 /* DOMWindowExtensionBasic.cpp */; }; >+ 7CCE7EED1A411AE600447C4C /* DOMWindowExtensionNoCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6F49C6715545C8D0007F39D /* DOMWindowExtensionNoCache.cpp */; }; >+ 7CCE7EEE1A411AE600447C4C /* DownloadDecideDestinationCrash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C045F9441385C2E900C0F3CD /* DownloadDecideDestinationCrash.cpp */; }; >+ 7CCE7EEF1A411AE600447C4C /* EphemeralSessionPushStateNoHistoryCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 75F3133F18C171B70041CAEC /* EphemeralSessionPushStateNoHistoryCallback.cpp */; }; >+ 7CCE7EF01A411AE600447C4C /* EvaluateJavaScript.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A5FEFDC1270E2A3000E2921 /* EvaluateJavaScript.cpp */; }; >+ 7CCE7EF11A411AE600447C4C /* FailedLoad.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC8B95A12611F4700DE46A4 /* FailedLoad.cpp */; }; >+ 7CCE7EF21A411AE600447C4C /* StopLoadingDuringDidFailProvisionalLoad.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 76734997193016DC00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad.cpp */; }; >+ 7CCE7EF31A411AE600447C4C /* Find.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A02C84E125D4A8400E3F4BD /* Find.cpp */; }; >+ 7CCE7EF41A411AE600447C4C /* FindMatches.mm in Sources */ = {isa = PBXBuildFile; fileRef = C51AFB98169F49FF009CCF66 /* FindMatches.mm */; }; >+ 7CCE7EF51A411AE600447C4C /* ForceRepaint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ADBEFAD130C689C00D61D19 /* ForceRepaint.cpp */; }; >+ 7CCE7EF61A411AE600447C4C /* FrameMIMETypeHTML.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCBD370F125AA2EB00D2C29F /* FrameMIMETypeHTML.cpp */; }; >+ 7CCE7EF71A411AE600447C4C /* FrameMIMETypePNG.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCBD3760125ABCFE00D2C29F /* FrameMIMETypePNG.cpp */; }; >+ 7CCE7EF81A411AE600447C4C /* Geolocation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26F52EAA182872600023D412 /* Geolocation.cpp */; }; >+ 7CCE7EF91A411AE600447C4C /* GetInjectedBundleInitializationUserDataCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F660AA0C15A5F061003A1243 /* GetInjectedBundleInitializationUserDataCallback.cpp */; }; >+ 7CCE7EFA1A411AE600447C4C /* HitTestResultNodeHandle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4BFDFFA8131477770061F24B /* HitTestResultNodeHandle.cpp */; }; >+ 7CCE7EFB1A411AE600447C4C /* InjectedBundleBasic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC575AAC126E83B9006F0F12 /* InjectedBundleBasic.cpp */; }; >+ 7CCE7EFC1A411AE600447C4C /* InjectedBundleFrameHitTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 378E64711632646D00B6C676 /* InjectedBundleFrameHitTest.cpp */; }; >+ 7CCE7EFD1A411AE600447C4C /* InjectedBundleInitializationUserDataCallbackWins.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F660AA1215A619C8003A1243 /* InjectedBundleInitializationUserDataCallbackWins.cpp */; }; >+ 7CCE7EFE1A411AE600447C4C /* LoadAlternateHTMLStringWithNonDirectoryURL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 52CB47401448FB9300873995 /* LoadAlternateHTMLStringWithNonDirectoryURL.cpp */; }; >+ 7CCE7EFF1A411AE600447C4C /* LoadCanceledNoServerRedirectCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33DC8910141953A300747EF7 /* LoadCanceledNoServerRedirectCallback.cpp */; }; >+ 7CCE7F001A411AE600447C4C /* LoadPageOnCrash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8AA28C1916D2FA7B002FF4DB /* LoadPageOnCrash.cpp */; }; >+ 7CCE7F011A411AE600447C4C /* MouseMoveAfterCrash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33BE5AF4137B5A6C00705813 /* MouseMoveAfterCrash.cpp */; }; >+ 7CCE7F021A411AE600447C4C /* NewFirstVisuallyNonEmptyLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93F1DB3014DA20760024C362 /* NewFirstVisuallyNonEmptyLayout.cpp */; }; >+ 7CCE7F031A411AE600447C4C /* NewFirstVisuallyNonEmptyLayoutFails.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93F1DB5414DB1B730024C362 /* NewFirstVisuallyNonEmptyLayoutFails.cpp */; }; >+ 7CCE7F041A411AE600447C4C /* NewFirstVisuallyNonEmptyLayoutForImages.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93AF4ECA1506F035007FD57E /* NewFirstVisuallyNonEmptyLayoutForImages.cpp */; }; >+ 7CCE7F051A411AE600447C4C /* NewFirstVisuallyNonEmptyLayoutFrames.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93F7E86B14DC8E4D00C84A99 /* NewFirstVisuallyNonEmptyLayoutFrames.cpp */; }; >+ 7CCE7F061A411AE600447C4C /* LayoutMilestonesWithAllContentInFrame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93D3D19D17B1A84200C7C415 /* LayoutMilestonesWithAllContentInFrame.cpp */; }; >+ 7CCE7F071A411AE600447C4C /* PageLoadBasic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC909779125571AB00083756 /* PageLoadBasic.cpp */; }; >+ 7CCE7F081A411AE600447C4C /* PageLoadDidChangeLocationWithinPageForFrame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC2D004812A9FDFA00E732A3 /* PageLoadDidChangeLocationWithinPageForFrame.cpp */; }; >+ 7CCE7F091A411AE600447C4C /* ParentFrame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 52E5CE4514D21E9D003B2BD8 /* ParentFrame.cpp */; }; >+ 7CCE7F0A1A411AE600447C4C /* PasteboardNotifications.mm in Sources */ = {isa = PBXBuildFile; fileRef = C54237EE16B8955800E638FC /* PasteboardNotifications.mm */; }; >+ 7CCE7F0B1A411AE600447C4C /* PreventEmptyUserAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 333B9CE11277F23100FEFCE3 /* PreventEmptyUserAgent.cpp */; }; >+ 7CCE7F0C1A411AE600447C4C /* PrivateBrowsingPushStateNoHistoryCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6FDDDD214241AD4004F1729 /* PrivateBrowsingPushStateNoHistoryCallback.cpp */; }; >+ 7CCE7F0D1A411AE600447C4C /* ReloadPageAfterCrash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8A3AF93A16C9ED2700D248C1 /* ReloadPageAfterCrash.cpp */; }; >+ 7CCE7F0E1A411AE600447C4C /* ResizeReversePaginatedWebView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2DD7D3A9178205D00026E1E3 /* ResizeReversePaginatedWebView.cpp */; }; >+ 7CCE7F0F1A411AE600447C4C /* ResizeWindowAfterCrash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8A2C750D16CED9550024F352 /* ResizeWindowAfterCrash.cpp */; }; >+ 7CCE7F101A411AE600447C4C /* ResponsivenessTimerDoesntFireEarly.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0BD669C131D3CF700E18F2A /* ResponsivenessTimerDoesntFireEarly.cpp */; }; >+ 7CCE7F111A411AE600447C4C /* RestoreSessionStateContainingFormData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0ADBE8212FCA6AA00D2C129 /* RestoreSessionStateContainingFormData.cpp */; }; >+ 7CCE7F121A411AE600447C4C /* ScrollPinningBehaviors.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D640B5417875DFF00BFAF99 /* ScrollPinningBehaviors.cpp */; }; >+ 7CCE7F131A411AE600447C4C /* ShouldGoToBackForwardListItem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51FCF7981534AC6D00104491 /* ShouldGoToBackForwardListItem.cpp */; }; >+ 7CCE7F141A411AE600447C4C /* ShouldKeepCurrentBackForwardListItemInList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51E5C7041919EA5F00D8B3E1 /* ShouldKeepCurrentBackForwardListItemInList.cpp */; }; >+ 7CCE7F151A411AE600447C4C /* SpacebarScrolling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C02B77F1126612140026BF0F /* SpacebarScrolling.cpp */; }; >+ 7CCE7F161A411AE600447C4C /* TerminateTwice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE72F47173EB214006362F0 /* TerminateTwice.cpp */; }; >+ 7CCE7F171A411AE600447C4C /* UserMedia.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4A410F4B19AF7BD6002EBAB5 /* UserMedia.cpp */; }; >+ 7CCE7F181A411AE600447C4C /* UserMessage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC22D31314DC689800FFB1DD /* UserMessage.cpp */; }; >+ 7CCE7F191A411AE600447C4C /* WebArchive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 520BCF4B141EB09E00937EA8 /* WebArchive.cpp */; }; >+ 7CCE7F1A1A411AE600447C4C /* WebCoreStatisticsWithNoWebProcess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F17BBD415AF6C4D007AB753 /* WebCoreStatisticsWithNoWebProcess.cpp */; }; >+ 7CCE7F1B1A411AE600447C4C /* WillLoad.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CFBCADD1743234F00B2BFCF /* WillLoad.cpp */; }; >+ 7CCE7F1C1A411AE600447C4C /* WillSendSubmitEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 76E182D91547550100F1FADD /* WillSendSubmitEvent.cpp */; }; >+ 7CCE7F1D1A411AE600447C4C /* WKImageCreateCGImageCrash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1FDFD2E19C288BB005148A4 /* WKImageCreateCGImageCrash.cpp */; }; >+ 7CCE7F1E1A411AE600447C4C /* WKStringJSString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC9099931256ACF100083756 /* WKStringJSString.cpp */; }; >+ 7CCE7F1F1A411AE600447C4C /* WKPageGetScaleFactorNotZero.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51E93016156B13E1004C99DF /* WKPageGetScaleFactorNotZero.cpp */; }; >+ 7CCE7F201A411AE600447C4C /* WKPageIsPlayingAudio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 524BBC9C19DF377A002F1AF1 /* WKPageIsPlayingAudio.cpp */; }; >+ 7CCE7F211A411AE600447C4C /* WKPreferences.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC7B619A1299FE9E00D174A4 /* WKPreferences.cpp */; }; >+ 7CCE7F221A411AE600447C4C /* WKString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC90995D12567BC100083756 /* WKString.cpp */; }; >+ 7CCE7F231A411AF600447C4C /* Download.mm in Sources */ = {isa = PBXBuildFile; fileRef = A1A4FE5D18DD3DB700B5EA8A /* Download.mm */; }; >+ 7CCE7F241A411AF600447C4C /* Navigation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1ABC3DED1899BE6D004F0626 /* Navigation.mm */; }; >+ 7CCE7F251A411AF600447C4C /* OpenAndCloseWindow.mm in Sources */ = {isa = PBXBuildFile; fileRef = CEA6CF2219CCF5BD0064F5A7 /* OpenAndCloseWindow.mm */; }; >+ 7CCE7F261A411AF600447C4C /* Preferences.mm in Sources */ = {isa = PBXBuildFile; fileRef = C95501BE19AD2FAF0049BE3E /* Preferences.mm */; }; >+ 7CCE7F271A411AF600447C4C /* UserContentController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7CC3E1FA197E234100BE6252 /* UserContentController.mm */; }; >+ 7CCE7F291A411B1000447C4C /* CustomProtocolsInvalidScheme.mm in Sources */ = {isa = PBXBuildFile; fileRef = 297234B2173AD04800983601 /* CustomProtocolsInvalidScheme.mm */; }; >+ 7CCE7F2A1A411B1000447C4C /* CustomProtocolsSyncXHRTest.mm in Sources */ = {isa = PBXBuildFile; fileRef = 290F4276172A232C00939FF0 /* CustomProtocolsSyncXHRTest.mm */; }; >+ 7CCE7F2B1A411B1000447C4C /* CustomProtocolsTest.mm in Sources */ = {isa = PBXBuildFile; fileRef = 29AB8A9F164C735800D49BEC /* CustomProtocolsTest.mm */; }; >+ 7CCE7F2C1A411B1000447C4C /* PreventImageLoadWithAutoResizing.mm in Sources */ = {isa = PBXBuildFile; fileRef = B55AD1D1179F336600AC1494 /* PreventImageLoadWithAutoResizing.mm */; }; >+ 7CCE7F2D1A411B1000447C4C /* UserContentTest.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2943BE84161DFEB800999E3D /* UserContentTest.mm */; }; >+ 7CCE7F2E1A411B1000447C4C /* WKBrowsingContextGroupTest.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC3C4C7D14587AA60025FB62 /* WKBrowsingContextGroupTest.mm */; }; >+ 7CCE7F2F1A411B1000447C4C /* WKBrowsingContextLoadDelegateTest.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC3C4C7014575B6A0025FB62 /* WKBrowsingContextLoadDelegateTest.mm */; }; >+ 7CD4C26E1E2C0E6E00929470 /* StringConcatenate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD4C26C1E2C0E6E00929470 /* StringConcatenate.cpp */; }; >+ 7CEFA9661AC0B9E200B910FD /* _WKUserContentExtensionStore.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7CEFA9641AC0B9E200B910FD /* _WKUserContentExtensionStore.mm */; }; >+ 7CFBCAE51743238F00B2BFCF /* WillLoad_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CFBCAE31743238E00B2BFCF /* WillLoad_Bundle.cpp */; }; >+ 8349D3C21DB96DDE004A9F65 /* ContextMenuDownload.mm in Sources */ = {isa = PBXBuildFile; fileRef = 8349D3C11DB96DDA004A9F65 /* ContextMenuDownload.mm */; }; >+ 8349D3C41DB9728E004A9F65 /* link-with-download-attribute.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 8349D3C31DB9724F004A9F65 /* link-with-download-attribute.html */; }; >+ 835CF9671D25FCD6001A65D4 /* RestoreSessionStateWithoutNavigation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 835CF9661D25FCD6001A65D4 /* RestoreSessionStateWithoutNavigation.cpp */; }; >+ 8361F1781E610B4E00759B25 /* link-with-download-attribute-with-slashes.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 8361F1771E610B2100759B25 /* link-with-download-attribute-with-slashes.html */; }; >+ 83779C381F82FECE007CDA8A /* VisitedLinkStore.mm in Sources */ = {isa = PBXBuildFile; fileRef = 83779C371F82FEB0007CDA8A /* VisitedLinkStore.mm */; }; >+ 837A35F11D9A1E7D00663C57 /* DownloadRequestBlobURL.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 837A35F01D9A1E6400663C57 /* DownloadRequestBlobURL.html */; }; >+ 83B6DE6F1EE75221001E792F /* RestoreSessionState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83B6DE6E1EE7520F001E792F /* RestoreSessionState.cpp */; }; >+ 83BAEE8D1EF4625500DDE894 /* PluginLoadClientPolicies.mm in Sources */ = {isa = PBXBuildFile; fileRef = 83BAEE8C1EF4625500DDE894 /* PluginLoadClientPolicies.mm */; }; >+ 83DB79691EF63B3C00BFA5E5 /* Function.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83DB79671EF63B3C00BFA5E5 /* Function.cpp */; }; >+ 83DE134D1EF1C50800C1B355 /* ResponsivenessTimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83DE134C1EF1C4FE00C1B355 /* ResponsivenessTimer.cpp */; }; >+ 8E4A85371E1D1AB200F53B0F /* GridPosition.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8E4A85361E1D1AA100F53B0F /* GridPosition.cpp */; }; >+ 930AD402150698D00067970F /* lots-of-text.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 930AD401150698B30067970F /* lots-of-text.html */; }; >+ 9310CD381EF708FB0050FFE0 /* Function.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9310CD361EF708FB0050FFE0 /* Function.cpp */; }; >+ 9329AA291DE3F81E003ABD07 /* TextBreakIterator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9329AA281DE3F81E003ABD07 /* TextBreakIterator.cpp */; }; >+ 932AE53D1D371047005DFFAF /* focus-inputs.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 93575C551D30366E000D604D /* focus-inputs.html */; }; >+ 9361002914DC95A70061379D /* lots-of-iframes.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9361002814DC957B0061379D /* lots-of-iframes.html */; }; >+ 93625D271CD9741C006DC1F1 /* large-video-without-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 93625D261CD973AF006DC1F1 /* large-video-without-audio.html */; }; >+ 936F72801CD7D9EC0068A0FB /* large-video-with-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 936F727E1CD7D9D00068A0FB /* large-video-with-audio.html */; }; >+ 936F72811CD7D9EC0068A0FB /* large-video-with-audio.mp4 in Copy Resources */ = {isa = PBXBuildFile; fileRef = 936F727F1CD7D9D00068A0FB /* large-video-with-audio.mp4 */; }; >+ 93AF4ECE1506F064007FD57E /* NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93AF4ECD1506F064007FD57E /* NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp */; }; >+ 93AF4ED11506F130007FD57E /* lots-of-images.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 93AF4ECF1506F123007FD57E /* lots-of-images.html */; }; >+ 93CFA8671CEB9E38000565A8 /* autofocused-text-input.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 93CFA8661CEB9DE1000565A8 /* autofocused-text-input.html */; }; >+ 93E2D2761ED7D53200FA76F6 /* offscreen-iframe-of-media-document.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 93E2D2751ED7D51700FA76F6 /* offscreen-iframe-of-media-document.html */; }; >+ 93F1DB3414DA20870024C362 /* NewFirstVisuallyNonEmptyLayout_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93F1DB3314DA20870024C362 /* NewFirstVisuallyNonEmptyLayout_Bundle.cpp */; }; >+ 93F1DB5714DB1B840024C362 /* NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93F1DB5614DB1B840024C362 /* NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp */; }; >+ 93F56DA71E5F9174003EDE84 /* libicucore.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7C83E0331D0A5F2700FEBCF3 /* libicucore.dylib */; }; >+ 93F56DA91E5F919D003EDE84 /* WKWebViewSnapshot.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93F56DA81E5F9181003EDE84 /* WKWebViewSnapshot.mm */; }; >+ 93F7E86F14DC8E5C00C84A99 /* NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93F7E86E14DC8E5B00C84A99 /* NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp */; }; >+ 95646E5B1F1DB60E00DE0EB9 /* InspectorValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 953F47911F1DB40300E3D1E3 /* InspectorValue.cpp */; }; >+ 9984FACC1CFFAF60008D198C /* WKWebViewTextInput.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9984FACA1CFFAEEE008D198C /* WKWebViewTextInput.mm */; }; >+ 9984FACE1CFFB090008D198C /* editable-body.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9984FACD1CFFB038008D198C /* editable-body.html */; }; >+ 9999108B1F393C96008AD455 /* Copying.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9999108A1F393C8B008AD455 /* Copying.mm */; }; >+ 9B0786A51C5885C300D159E3 /* InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9B0786A41C5885C300D159E3 /* InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp */; }; >+ 9B19CDA01F06DFE3000548DD /* NetworkProcessCrashWithPendingConnection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B19CD9E1F06DFE3000548DD /* NetworkProcessCrashWithPendingConnection.mm */; }; >+ 9B26FCCA159D16DE00CC3765 /* HTMLFormCollectionNamedItem.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B26FCB4159D15E700CC3765 /* HTMLFormCollectionNamedItem.html */; }; >+ 9B270FEE1DDC2C0B002D53F3 /* closed-shadow-tree-test.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B270FED1DDC25FD002D53F3 /* closed-shadow-tree-test.html */; }; >+ 9B4F8FA7159D52DD002D9F94 /* HTMLCollectionNamedItem.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B4F8FA6159D52CA002D9F94 /* HTMLCollectionNamedItem.html */; }; >+ 9B62630C1F8C25C8007EE29B /* copy-url.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B62630B1F8C2510007EE29B /* copy-url.html */; }; >+ 9B7A37C41F8AEBA5004AA228 /* CopyURL.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B7A37C21F8AEBA5004AA228 /* CopyURL.mm */; }; >+ 9B7D740F1F8378770006C432 /* paste-rtfd.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9B7D740E1F8377E60006C432 /* paste-rtfd.html */; }; >+ 9BD4239A1E04BD9800200395 /* AttributedSubstringForProposedRangeWithImage.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9BD423991E04BD9800200395 /* AttributedSubstringForProposedRangeWithImage.mm */; }; >+ 9BD4239C1E04C01C00200395 /* chinese-character-with-image.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9BD4239B1E04BFD000200395 /* chinese-character-with-image.html */; }; >+ 9BD6D3A21F7B218300BD4962 /* sunset-in-cupertino-100px.tiff in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9BD6D3A11F7B202100BD4962 /* sunset-in-cupertino-100px.tiff */; }; >+ 9BD6D3A31F7B218300BD4962 /* sunset-in-cupertino-200px.png in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9BD6D3A01F7B202000BD4962 /* sunset-in-cupertino-200px.png */; }; >+ 9BD6D3A41F7B218300BD4962 /* sunset-in-cupertino-400px.gif in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9BD6D39F1F7B202000BD4962 /* sunset-in-cupertino-400px.gif */; }; >+ 9BD6D3A51F7B218300BD4962 /* sunset-in-cupertino-600px.jpg in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9BD6D39E1F7B201E00BD4962 /* sunset-in-cupertino-600px.jpg */; }; >+ 9BD6D3A71F7B21DC00BD4962 /* paste-image.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 9BD6D3A61F7B21CC00BD4962 /* paste-image.html */; }; >+ 9BDCCD871F7D0B0700009A18 /* PasteImage.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9BDCCD851F7D0B0700009A18 /* PasteImage.mm */; }; >+ 9BDD95581F83683600D20C60 /* PasteRTFD.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9BDD95561F83683600D20C60 /* PasteRTFD.mm */; }; >+ 9C64DC321D76198A004B598E /* YouTubePluginReplacement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9C64DC311D76198A004B598E /* YouTubePluginReplacement.cpp */; }; >+ A10F047E1E3AD29C00C95E19 /* NSFileManagerExtras.mm in Sources */ = {isa = PBXBuildFile; fileRef = A10F047C1E3AD29C00C95E19 /* NSFileManagerExtras.mm */; }; >+ A1146A8D1D2D7115000FE710 /* ContentFiltering.mm in Sources */ = {isa = PBXBuildFile; fileRef = A1146A8A1D2D704F000FE710 /* ContentFiltering.mm */; }; >+ A125478F1DB18B9400358564 /* LoadDataWithNilMIMEType.mm in Sources */ = {isa = PBXBuildFile; fileRef = A125478D1DB18B9400358564 /* LoadDataWithNilMIMEType.mm */; }; >+ A12DDBFB1E836F0700CF6CAE /* RenderedImageWithOptions.mm in Sources */ = {isa = PBXBuildFile; fileRef = A12DDBF91E836F0700CF6CAE /* RenderedImageWithOptions.mm */; }; >+ A12DDC001E8373E700CF6CAE /* rendered-image-excluding-overflow.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = A12DDBFF1E8373C100CF6CAE /* rendered-image-excluding-overflow.html */; }; >+ A12DDC021E837C2400CF6CAE /* RenderedImageWithOptionsPlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = A12DDBFC1E836FF100CF6CAE /* RenderedImageWithOptionsPlugIn.mm */; }; >+ A13EBBAA1B87428D00097110 /* WebProcessPlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = A13EBBA91B87428D00097110 /* WebProcessPlugIn.mm */; }; >+ A13EBBAB1B87434600097110 /* PlatformUtilitiesCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F139E721A423A2B00F590F5 /* PlatformUtilitiesCocoa.mm */; }; >+ A13EBBB01B87436F00097110 /* BundleParametersPlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = A13EBBAE1B87436F00097110 /* BundleParametersPlugIn.mm */; }; >+ A13EBBB11B87438000097110 /* BundleParameters.mm in Sources */ = {isa = PBXBuildFile; fileRef = A13EBBAC1B87436F00097110 /* BundleParameters.mm */; }; >+ A1409AD91E7254D4004949D9 /* password-protected.pages in Copy Resources */ = {isa = PBXBuildFile; fileRef = A1409AD81E7254AC004949D9 /* password-protected.pages */; }; >+ A14AAB631E78D7DE00C1ADC2 /* WKPDFView.mm in Sources */ = {isa = PBXBuildFile; fileRef = A14AAB611E78D7DE00C1ADC2 /* WKPDFView.mm */; }; >+ A14AAB651E78DC5400C1ADC2 /* encrypted.pdf in Copy Resources */ = {isa = PBXBuildFile; fileRef = A14AAB641E78DC3F00C1ADC2 /* encrypted.pdf */; }; >+ A14FC5851B89739100D107EB /* WKWebViewConfigurationExtras.mm in Sources */ = {isa = PBXBuildFile; fileRef = A14FC5831B89739100D107EB /* WKWebViewConfigurationExtras.mm */; }; >+ A14FC5881B8991BF00D107EB /* ContentFiltering.mm in Sources */ = {isa = PBXBuildFile; fileRef = A14FC5861B8991B600D107EB /* ContentFiltering.mm */; }; >+ A14FC58B1B89927100D107EB /* ContentFilteringPlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = A14FC5891B89927100D107EB /* ContentFilteringPlugIn.mm */; }; >+ A14FC5901B8AE36F00D107EB /* TestProtocol.mm in Sources */ = {isa = PBXBuildFile; fileRef = A14FC58E1B8AE36500D107EB /* TestProtocol.mm */; }; >+ A155022A1E05020B00A24C57 /* DuplicateCompletionHandlerCalls.mm in Sources */ = {isa = PBXBuildFile; fileRef = A15502281E05020B00A24C57 /* DuplicateCompletionHandlerCalls.mm */; }; >+ A155022C1E050D0300A24C57 /* duplicate-completion-handler-calls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = A155022B1E050BC500A24C57 /* duplicate-completion-handler-calls.html */; }; >+ A16F66BA1C40EB4F00BD4D24 /* ContentFiltering.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = A16F66B91C40EA2000BD4D24 /* ContentFiltering.html */; }; >+ A17991881E1C994E00A505ED /* SharedBuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = A17991861E1C994E00A505ED /* SharedBuffer.mm */; }; >+ A179918B1E1CA24100A505ED /* SharedBufferTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A17991891E1CA24100A505ED /* SharedBufferTest.cpp */; }; >+ A180C0FA1EE67DF000468F47 /* RunOpenPanel.mm in Sources */ = {isa = PBXBuildFile; fileRef = A180C0F91EE67DF000468F47 /* RunOpenPanel.mm */; }; >+ A1C4FB731BACD1CA003742D0 /* pages.pages in Copy Resources */ = {isa = PBXBuildFile; fileRef = A1C4FB721BACD1B7003742D0 /* pages.pages */; }; >+ A1DF74321C41B65800A2F4D0 /* AlwaysRevalidatedURLSchemes.mm in Sources */ = {isa = PBXBuildFile; fileRef = A1DF74301C41B65800A2F4D0 /* AlwaysRevalidatedURLSchemes.mm */; }; >+ A1EC11881F42541200D0146E /* PreviewLoader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1EC11871F42541200D0146E /* PreviewLoader.cpp */; }; >+ A57A34F216AF6B2B00C2501F /* PageVisibilityStateWithWindowChanges.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = A57A34F116AF69E200C2501F /* PageVisibilityStateWithWindowChanges.html */; }; >+ A57D54F31F338C3600A97AA7 /* NeverDestroyed.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A57D54F21F338C3600A97AA7 /* NeverDestroyed.cpp */; }; >+ A57D54F61F3395D000A97AA7 /* Logger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A57D54F41F3395D000A97AA7 /* Logger.cpp */; }; >+ A57D54F91F3397B400A97AA7 /* LifecycleLogger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A57D54F71F3397B400A97AA7 /* LifecycleLogger.cpp */; }; >+ A5A729F11F622AA700DE5A28 /* WKNavigationResponse.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5A729F01F622A9A00DE5A28 /* WKNavigationResponse.mm */; }; >+ A5B149DE1F5A19EA00C6DAFF /* MIMETypeRegistry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5B149DD1F5A19DC00C6DAFF /* MIMETypeRegistry.cpp */; }; >+ A5E2027515B21F6E00C13E14 /* WindowlessWebViewWithMedia.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = A5E2027015B2180600C13E14 /* WindowlessWebViewWithMedia.html */; }; >+ AD57AC201DA7465000FF1BDE /* DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD57AC1E1DA7464D00FF1BDE /* DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp */; }; >+ AD57AC211DA7465B00FF1BDE /* DidRemoveFrameFromHiearchyInPageCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD57AC1F1DA7464D00FF1BDE /* DidRemoveFrameFromHiearchyInPageCache.cpp */; }; >+ AD57AC221DA7466E00FF1BDE /* many-iframes.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = AD57AC1D1DA7463800FF1BDE /* many-iframes.html */; }; >+ AD7C434D1DD2A54E0026888B /* Expected.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD7C434C1DD2A5470026888B /* Expected.cpp */; }; >+ B55AD1D5179F3B3000AC1494 /* PreventImageLoadWithAutoResizing_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B55AD1D3179F3ABF00AC1494 /* PreventImageLoadWithAutoResizing_Bundle.cpp */; }; >+ B55F11B71517D03300915916 /* attributedStringCustomFont.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = B55F11B01517A2C400915916 /* attributedStringCustomFont.html */; }; >+ BC22D31914DC68B900FFB1DD /* UserMessage_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC22D31714DC68B800FFB1DD /* UserMessage_Bundle.cpp */; }; >+ BC246D9C132F1FF000B56D7C /* CanHandleRequest_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC246D97132F1FE100B56D7C /* CanHandleRequest_Bundle.cpp */; }; >+ BC2D006412AA04CE00E732A3 /* file-with-anchor.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = BC2D004A12A9FEB300E732A3 /* file-with-anchor.html */; }; >+ BC575A97126E74F1006F0F12 /* InjectedBundleMain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC575946126E7351006F0F12 /* InjectedBundleMain.cpp */; }; >+ BC575AA2126E7660006F0F12 /* InjectedBundleController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC575AA0126E7657006F0F12 /* InjectedBundleController.cpp */; }; >+ BC575AB0126E83C8006F0F12 /* InjectedBundleBasic_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC575AAF126E83C8006F0F12 /* InjectedBundleBasic_Bundle.cpp */; }; >+ BC575BD9126F58E2006F0F12 /* PlatformUtilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC575BBF126F5752006F0F12 /* PlatformUtilities.cpp */; }; >+ BC575BE0126F590D006F0F12 /* PlatformUtilitiesMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC131884117114B600B69727 /* PlatformUtilitiesMac.mm */; }; >+ BC909784125571CF00083756 /* simple.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = BC909778125571AB00083756 /* simple.html */; }; >+ BCAA485614A0444C0088FAC4 /* simple-tall.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = BCAA485514A021640088FAC4 /* simple-tall.html */; }; >+ BCB68042126FBFF100642A61 /* DocumentStartUserScriptAlertCrash_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCB68041126FBFF100642A61 /* DocumentStartUserScriptAlertCrash_Bundle.cpp */; }; >+ BCBD3737125ABBEB00D2C29F /* icon.png in Copy Resources */ = {isa = PBXBuildFile; fileRef = BCBD372E125ABBE600D2C29F /* icon.png */; }; >+ C01A23F21266156700C9ED55 /* spacebar-scrolling.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C02B7882126615410026BF0F /* spacebar-scrolling.html */; }; >+ C07E6CB213FD73930038B22B /* devicePixelRatio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C07E6CB113FD738A0038B22B /* devicePixelRatio.html */; }; >+ C0ADBE9612FCA79B00D2C129 /* simple-form.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C0ADBE8412FCA6B600D2C129 /* simple-form.html */; }; >+ C0BD669F131D3CFF00E18F2A /* ResponsivenessTimerDoesntFireEarly_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0BD669E131D3CFF00E18F2A /* ResponsivenessTimerDoesntFireEarly_Bundle.cpp */; }; >+ C0C5D3C61459912900A802A6 /* GetBackingScaleFactor_Bundle.mm in Sources */ = {isa = PBXBuildFile; fileRef = C0C5D3BD14598B6F00A802A6 /* GetBackingScaleFactor_Bundle.mm */; }; >+ C25CCA061E51380B0026CB8A /* LineBreaking.mm in Sources */ = {isa = PBXBuildFile; fileRef = C25CCA051E51380B0026CB8A /* LineBreaking.mm */; }; >+ C25CCA0B1E5140C10026CB8A /* LineBreaking.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C25CCA0A1E513F490026CB8A /* LineBreaking.html */; }; >+ C25CCA0D1E5141840026CB8A /* AllAhem.svg in Copy Resources */ = {isa = PBXBuildFile; fileRef = C25CCA0C1E5140E50026CB8A /* AllAhem.svg */; }; >+ C2CF975A16CEC7140054E99D /* JSContextBackForwardCache2.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C2CF975916CEC69E0054E99D /* JSContextBackForwardCache2.html */; }; >+ C2CF975B16CEC71B0054E99D /* JSContextBackForwardCache1.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C2CF975816CEC69E0054E99D /* JSContextBackForwardCache1.html */; }; >+ C5101C4F176B8D9200EE9B15 /* findRanges.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C5101C4E176B8BB900EE9B15 /* findRanges.html */; }; >+ C540F784152E5A9A00A40C8C /* verboseMarkup.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C540F783152E5A7800A40C8C /* verboseMarkup.html */; }; >+ C54237F116B8957D00E638FC /* PasteboardNotifications_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C54237ED16B8955800E638FC /* PasteboardNotifications_Bundle.cpp */; }; >+ C5E1AFFE16B221F1006CC1F2 /* execCopy.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C5E1AFFD16B22179006CC1F2 /* execCopy.html */; }; >+ C95984F41E36BC6B002C0D45 /* autoplay-check.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C95984F21E36BC55002C0D45 /* autoplay-check.html */; }; >+ C95984F51E36BC6B002C0D45 /* autoplay-no-audio-check.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C95984F31E36BC55002C0D45 /* autoplay-no-audio-check.html */; }; >+ C95984F71E36BCEF002C0D45 /* test-without-audio-track.mp4 in Copy Resources */ = {isa = PBXBuildFile; fileRef = C95984F61E36BCD7002C0D45 /* test-without-audio-track.mp4 */; }; >+ C99B675C1E39721A00FC6C80 /* autoplay-with-controls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C99B675A1E3971FC00FC6C80 /* autoplay-with-controls.html */; }; >+ C99B675D1E39722000FC6C80 /* js-play-with-controls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C99B675B1E3971FC00FC6C80 /* js-play-with-controls.html */; }; >+ C99B675F1E39736F00FC6C80 /* no-autoplay-with-controls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C99B675E1E39735C00FC6C80 /* no-autoplay-with-controls.html */; }; >+ C99BDF891E80980400C7170E /* autoplay-zero-volume-check.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C99BDF881E8097E300C7170E /* autoplay-zero-volume-check.html */; }; >+ C9B1043E1ECF9848000520FA /* autoplay-inherits-gesture-from-document.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C9B1043D1ECF9832000520FA /* autoplay-inherits-gesture-from-document.html */; }; >+ C9B4AD2A1ECA6EBE00F5FEA0 /* silence-long.m4a in Copy Resources */ = {isa = PBXBuildFile; fileRef = C9B4AD291ECA6EA500F5FEA0 /* silence-long.m4a */; }; >+ C9B4AD2C1ECA6F7F00F5FEA0 /* js-autoplay-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C9B4AD2B1ECA6F7600F5FEA0 /* js-autoplay-audio.html */; }; >+ C9BF06EF1E9C132500595E3E /* autoplay-muted-with-controls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C9BF06EE1E9C130400595E3E /* autoplay-muted-with-controls.html */; }; >+ C9C60E651E53A9DC006DA181 /* autoplay-check-frame.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C9C60E631E53A9BA006DA181 /* autoplay-check-frame.html */; }; >+ C9C60E661E53A9DC006DA181 /* autoplay-check-in-iframe.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = C9C60E641E53A9BA006DA181 /* autoplay-check-in-iframe.html */; }; >+ C9E6DD351EA97D0800DD78AA /* FirstResponderSuppression.mm in Sources */ = {isa = PBXBuildFile; fileRef = C9E6DD311EA972D800DD78AA /* FirstResponderSuppression.mm */; }; >+ CD0BD0A61F79924D001AB2CF /* ContextMenuImgWithVideo.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD0BD0A51F799220001AB2CF /* ContextMenuImgWithVideo.mm */; }; >+ CD0BD0A81F79982D001AB2CF /* ContextMenuImgWithVideo.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD0BD0A71F7997C2001AB2CF /* ContextMenuImgWithVideo.html */; }; >+ CD321B041E3A85FA00EB21C8 /* video-with-muted-audio-and-webaudio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD321B031E3A84B700EB21C8 /* video-with-muted-audio-and-webaudio.html */; }; >+ CD59F53419E9110D00CF1835 /* file-with-mse.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD59F53219E910AA00CF1835 /* file-with-mse.html */; }; >+ CD59F53519E9110D00CF1835 /* test-mse.mp4 in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD59F53319E910BC00CF1835 /* test-mse.mp4 */; }; >+ CD78E11D1DB7EA660014A2DE /* FullscreenDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD78E11A1DB7EA360014A2DE /* FullscreenDelegate.mm */; }; >+ CD78E11E1DB7EE2A0014A2DE /* FullscreenDelegate.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD78E11B1DB7EA360014A2DE /* FullscreenDelegate.html */; }; >+ CD9E292E1C90C33F000BB800 /* audio-only.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CD9E292D1C90C1BA000BB800 /* audio-only.html */; }; >+ CDA315981ED53651009F60D3 /* MediaPlaybackSleepAssertion.mm in Sources */ = {isa = PBXBuildFile; fileRef = CDA315961ED53651009F60D3 /* MediaPlaybackSleepAssertion.mm */; }; >+ CDA3159A1ED548F1009F60D3 /* MediaPlaybackSleepAssertion.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDA315991ED540A5009F60D3 /* MediaPlaybackSleepAssertion.html */; }; >+ CDA3159D1ED5643F009F60D3 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CDA3159C1ED5643F009F60D3 /* IOKit.framework */; }; >+ CDB4115A1E0B00DB00EAD352 /* video-with-muted-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDB411591E09DA8E00EAD352 /* video-with-muted-audio.html */; }; >+ CDBFCC451A9FF45300A7B691 /* FullscreenZoomInitialFrame.mm in Sources */ = {isa = PBXBuildFile; fileRef = CDBFCC431A9FF44800A7B691 /* FullscreenZoomInitialFrame.mm */; }; >+ CDBFCC461A9FF49E00A7B691 /* FullscreenZoomInitialFrame.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDBFCC421A9FF44800A7B691 /* FullscreenZoomInitialFrame.html */; }; >+ CDC8E48D1BC5CB4500594FEC /* AudioSessionCategoryIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = CDC8E4851BC5B19400594FEC /* AudioSessionCategoryIOS.mm */; }; >+ CDC8E4941BC6F10800594FEC /* video-with-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDC8E4891BC5C96200594FEC /* video-with-audio.html */; }; >+ CDC8E4951BC6F10800594FEC /* video-with-audio.mp4 in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDC8E48A1BC5C96200594FEC /* video-with-audio.mp4 */; }; >+ CDC8E4961BC6F10800594FEC /* video-without-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDC8E48B1BC5C96200594FEC /* video-without-audio.html */; }; >+ CDC8E4971BC6F10800594FEC /* video-without-audio.mp4 in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDC8E48C1BC5C96200594FEC /* video-without-audio.mp4 */; }; >+ CDC9442E1EF1FC080059C3C4 /* MediaStreamTrackDetached.mm in Sources */ = {isa = PBXBuildFile; fileRef = CDC9442C1EF1FC080059C3C4 /* MediaStreamTrackDetached.mm */; }; >+ CDC9442F1EF205D60059C3C4 /* mediastreamtrack-detached.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDC9442B1EF1FBD20059C3C4 /* mediastreamtrack-detached.html */; }; >+ CDCFA7AA1E45183200C2433D /* SampleMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CDCFA7A91E45122F00C2433D /* SampleMap.cpp */; }; >+ CDE195B51CFE0B880053D256 /* FullscreenTopContentInset.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDE195B21CFE0ADE0053D256 /* FullscreenTopContentInset.html */; }; >+ CE06DF9B1E1851F200E570C9 /* SecurityOrigin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE06DF9A1E1851F200E570C9 /* SecurityOrigin.cpp */; }; >+ CE14F1A4181873B0001C2705 /* WillPerformClientRedirectToURLCrash.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CE14F1A2181873B0001C2705 /* WillPerformClientRedirectToURLCrash.html */; }; >+ CE1866491F72E8F100A0CAB6 /* MarkerSubrange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE1866471F72E8F100A0CAB6 /* MarkerSubrange.cpp */; }; >+ CE3524F81B1431F60028A7C5 /* TextFieldDidBeginAndEndEditing_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE3524F21B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing_Bundle.cpp */; }; >+ CE3524F91B1441C40028A7C5 /* TextFieldDidBeginAndEndEditing.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE3524F11B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing.cpp */; }; >+ CE3524FA1B1443890028A7C5 /* input-focus-blur.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CE3524F51B142BBB0028A7C5 /* input-focus-blur.html */; }; >+ CE4D5DE71F6743BA0072CFC6 /* StringWithDirection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE4D5DE51F6743BA0072CFC6 /* StringWithDirection.cpp */; }; >+ CEA6CF2819CCF69D0064F5A7 /* open-and-close-window.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CEA6CF2719CCF69D0064F5A7 /* open-and-close-window.html */; }; >+ CEBABD491B71687C0051210A /* should-open-external-schemes.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CEBABD481B71687C0051210A /* should-open-external-schemes.html */; }; >+ CEBCA12F1E3A660100C73293 /* OverrideContentSecurityPolicy.mm in Sources */ = {isa = PBXBuildFile; fileRef = CEBCA12E1E3A660100C73293 /* OverrideContentSecurityPolicy.mm */; }; >+ CEBCA1381E3A807A00C73293 /* page-with-csp.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CEBCA1351E3A803400C73293 /* page-with-csp.html */; }; >+ CEBCA1391E3A807A00C73293 /* page-with-csp-iframe.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CEBCA1341E3A803400C73293 /* page-with-csp-iframe.html */; }; >+ CEBCA13A1E3A807A00C73293 /* page-without-csp.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CEBCA1371E3A803400C73293 /* page-without-csp.html */; }; >+ CEBCA13B1E3A807A00C73293 /* page-without-csp-iframe.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CEBCA1361E3A803400C73293 /* page-without-csp-iframe.html */; }; >+ CEC16EA51EE863C000DE479A /* DecidePolicyForNavigationAction.mm in Sources */ = {isa = PBXBuildFile; fileRef = CEC16EA41EE863BF00DE479A /* DecidePolicyForNavigationAction.mm */; }; >+ D34E08761E4E42E1005FF14A /* WKWebViewGetContents.mm in Sources */ = {isa = PBXBuildFile; fileRef = D3BE5E341E4CE85E00FD563A /* WKWebViewGetContents.mm */; }; >+ E1220DCA155B28AA0013E2FC /* MemoryCacheDisableWithinResourceLoadDelegate.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = E1220DC9155B287D0013E2FC /* MemoryCacheDisableWithinResourceLoadDelegate.html */; }; >+ E194E1BD177E53C7009C4D4E /* StopLoadingFromDidReceiveResponse.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = E194E1BC177E534A009C4D4E /* StopLoadingFromDidReceiveResponse.html */; }; >+ E373D7911F2CF35200C6FAAF /* Signals.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3953F951F2CF32100A76A2E /* Signals.cpp */; }; >+ E3DEA8111F0A589000CBC2E8 /* ThreadGroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3DEA8101F0A588000CBC2E8 /* ThreadGroup.cpp */; }; >+ ECA680CE1E68CC0900731D20 /* StringUtilities.mm in Sources */ = {isa = PBXBuildFile; fileRef = ECA680CD1E68CC0900731D20 /* StringUtilities.mm */; }; >+ F407FE391F1D0DFC0017CF25 /* enormous.svg in Copy Resources */ = {isa = PBXBuildFile; fileRef = F407FE381F1D0DE60017CF25 /* enormous.svg */; }; >+ F415086D1DA040C50044BE9B /* play-audio-on-click.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F415086C1DA040C10044BE9B /* play-audio-on-click.html */; }; >+ F418BE151F71B7DC001970E6 /* RoundedRectTests.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F418BE141F71B7DC001970E6 /* RoundedRectTests.cpp */; }; >+ F4194AD11F5A320100ADD83F /* drop-targets.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4194AD01F5A2EA500ADD83F /* drop-targets.html */; }; >+ F41AB99F1EF4696B0083FA08 /* autofocus-contenteditable.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB9981EF4692C0083FA08 /* autofocus-contenteditable.html */; }; >+ F41AB9A01EF4696B0083FA08 /* background-image-link-and-input.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB9971EF4692C0083FA08 /* background-image-link-and-input.html */; }; >+ F41AB9A11EF4696B0083FA08 /* contenteditable-and-textarea.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB99C1EF4692C0083FA08 /* contenteditable-and-textarea.html */; }; >+ F41AB9A21EF4696B0083FA08 /* div-and-large-image.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB99E1EF4692C0083FA08 /* div-and-large-image.html */; }; >+ F41AB9A31EF4696B0083FA08 /* file-uploading.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB99B1EF4692C0083FA08 /* file-uploading.html */; }; >+ F41AB9A41EF4696B0083FA08 /* image-and-contenteditable.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB9991EF4692C0083FA08 /* image-and-contenteditable.html */; }; >+ F41AB9A51EF4696B0083FA08 /* image-and-textarea.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB9931EF4692C0083FA08 /* image-and-textarea.html */; }; >+ F41AB9A61EF4696B0083FA08 /* link-and-input.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB9961EF4692C0083FA08 /* link-and-input.html */; }; >+ F41AB9A71EF4696B0083FA08 /* link-and-target-div.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB99D1EF4692C0083FA08 /* link-and-target-div.html */; }; >+ F41AB9A81EF4696B0083FA08 /* prevent-operation.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB9941EF4692C0083FA08 /* prevent-operation.html */; }; >+ F41AB9A91EF4696B0083FA08 /* prevent-start.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB99A1EF4692C0083FA08 /* prevent-start.html */; }; >+ F41AB9AA1EF4696B0083FA08 /* textarea-to-input.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F41AB9951EF4692C0083FA08 /* textarea-to-input.html */; }; >+ F42DA5161D8CEFE400336F40 /* large-input-field-focus-onload.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F42DA5151D8CEFDB00336F40 /* large-input-field-focus-onload.html */; }; >+ F4451C761EB8FD890020C5DA /* two-paragraph-contenteditable.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4451C751EB8FD7C0020C5DA /* two-paragraph-contenteditable.html */; }; >+ F44D06451F395C26001A0E29 /* editor-state-test-harness.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F44D06441F395C0D001A0E29 /* editor-state-test-harness.html */; }; >+ F44D06471F39627A001A0E29 /* EditorStateTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = F44D06461F395C4D001A0E29 /* EditorStateTests.mm */; }; >+ F44D064A1F3962F2001A0E29 /* EditingTestHarness.mm in Sources */ = {isa = PBXBuildFile; fileRef = F44D06491F3962E3001A0E29 /* EditingTestHarness.mm */; }; >+ F4512E131F60C44600BB369E /* DataTransferItem-getAsEntry.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4512E121F60C43400BB369E /* DataTransferItem-getAsEntry.html */; }; >+ F4538EF71E8473E600B5C953 /* large-red-square.png in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4538EF01E846B4100B5C953 /* large-red-square.png */; }; >+ F45B63FB1F197F4A009D38B9 /* image-map.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F45B63FA1F197F33009D38B9 /* image-map.html */; }; >+ F45B63FE1F19D410009D38B9 /* ActionSheetTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = F45B63FC1F19D410009D38B9 /* ActionSheetTests.mm */; }; >+ F46849BE1EEF58E400B937FE /* UIPasteboardTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = F46849BD1EEF58E400B937FE /* UIPasteboardTests.mm */; }; >+ F46849C01EEF5EF300B937FE /* rich-and-plain-text.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F46849BF1EEF5EDC00B937FE /* rich-and-plain-text.html */; }; >+ F469FB241F01804B00401539 /* contenteditable-and-target.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F469FB231F01803500401539 /* contenteditable-and-target.html */; }; >+ F46A095A1ED8A6E600D4AA55 /* apple.gif in Copy Resources */ = {isa = PBXBuildFile; fileRef = F47D30EB1ED28619000482E1 /* apple.gif */; }; >+ F46A095B1ED8A6E600D4AA55 /* gif-and-file-input.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F47D30ED1ED28A6C000482E1 /* gif-and-file-input.html */; }; >+ F47728991E4AE3C1007ABF6A /* full-page-contenteditable.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F47728981E4AE3AD007ABF6A /* full-page-contenteditable.html */; }; >+ F4856CA31E649EA8009D7EE7 /* attachment-element.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4856CA21E6498A8009D7EE7 /* attachment-element.html */; }; >+ F486B1D01F67952300F34BDD /* DataTransfer-setDragImage.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F486B1CF1F6794FF00F34BDD /* DataTransfer-setDragImage.html */; }; >+ F4A32EC41F05F3850047C544 /* dragstart-change-selection-offscreen.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4A32EC31F05F3780047C544 /* dragstart-change-selection-offscreen.html */; }; >+ F4A32ECB1F0643370047C544 /* contenteditable-in-iframe.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4A32ECA1F0642F40047C544 /* contenteditable-in-iframe.html */; }; >+ F4AB578A1F65165400DB0DA1 /* custom-draggable-div.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4AB57891F65164B00DB0DA1 /* custom-draggable-div.html */; }; >+ F4B825D81EF4DBFB006E417F /* compressed-files.zip in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4B825D61EF4DBD4006E417F /* compressed-files.zip */; }; >+ F4BFA68E1E4AD08000154298 /* DragAndDropPasteboardTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = F4BFA68C1E4AD08000154298 /* DragAndDropPasteboardTests.mm */; }; >+ F4C2AB221DD6D95E00E06D5B /* enormous-video-with-sound.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4C2AB211DD6D94100E06D5B /* enormous-video-with-sound.html */; }; >+ F4D4F3B61E4E2BCB00BB2767 /* DataInteractionSimulator.mm in Sources */ = {isa = PBXBuildFile; fileRef = F4D4F3B41E4E2BCB00BB2767 /* DataInteractionSimulator.mm */; }; >+ F4D4F3B91E4E36E400BB2767 /* DataInteractionTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = F4D4F3B71E4E36E400BB2767 /* DataInteractionTests.mm */; }; >+ F4D5E4E81F0C5D38008C1A49 /* dragstart-clear-selection.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4D5E4E71F0C5D27008C1A49 /* dragstart-clear-selection.html */; }; >+ F4D65DA81F5E4704009D8C27 /* selected-text-image-link-and-editable.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4D65DA71F5E46C0009D8C27 /* selected-text-image-link-and-editable.html */; }; >+ F4DEF6ED1E9B4DB60048EF61 /* image-in-link-and-input.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4DEF6EC1E9B4D950048EF61 /* image-in-link-and-input.html */; }; >+ F4F137921D9B683E002BEC57 /* large-video-test-now-playing.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4F137911D9B6832002BEC57 /* large-video-test-now-playing.html */; }; >+ F4F405BC1D4C0D1C007A9707 /* full-size-autoplaying-video-with-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4F405BA1D4C0CF8007A9707 /* full-size-autoplaying-video-with-audio.html */; }; >+ F4F405BD1D4C0D1C007A9707 /* skinny-autoplaying-video-with-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4F405BB1D4C0CF8007A9707 /* skinny-autoplaying-video-with-audio.html */; }; >+ F4FA91811E61849B007B8C1D /* WKWebViewMacEditingTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = F4FA917F1E61849B007B8C1D /* WKWebViewMacEditingTests.mm */; }; >+ F4FA91831E61857B007B8C1D /* double-click-does-not-select-trailing-space.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4FA91821E618566007B8C1D /* double-click-does-not-select-trailing-space.html */; }; >+ F660AA1115A5F631003A1243 /* GetInjectedBundleInitializationUserDataCallback_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F660AA0F15A5F624003A1243 /* GetInjectedBundleInitializationUserDataCallback_Bundle.cpp */; }; >+ F660AA1515A61ABF003A1243 /* InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F660AA1415A61ABF003A1243 /* InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp */; }; >+ F6B7BE9517469212008A3445 /* DidAssociateFormControls_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6B7BE92174691EF008A3445 /* DidAssociateFormControls_Bundle.cpp */; }; >+ F6B7BE9717469B96008A3445 /* associate-form-controls.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F6B7BE9617469B7E008A3445 /* associate-form-controls.html */; }; >+ F6F49C6B15545CA70007F39D /* DOMWindowExtensionNoCache_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6F49C6615545C8D0007F39D /* DOMWindowExtensionNoCache_Bundle.cpp */; }; >+ F6FDDDD614241C6F004F1729 /* push-state.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F6FDDDD514241C48004F1729 /* push-state.html */; }; >+/* End PBXBuildFile section */ >+ >+/* Begin PBXContainerItemProxy section */ >+ 7C83E0241D0A5B2500FEBCF3 /* PBXContainerItemProxy */ = { >+ isa = PBXContainerItemProxy; >+ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; >+ proxyType = 1; >+ remoteGlobalIDString = 7C83DE951D0A590C00FEBCF3; >+ remoteInfo = TestWTFLibrary; >+ }; >+ 7C83E02F1D0A5E1B00FEBCF3 /* PBXContainerItemProxy */ = { >+ isa = PBXContainerItemProxy; >+ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; >+ proxyType = 1; >+ remoteGlobalIDString = 8DD76F960486AA7600D96B5E; >+ remoteInfo = TestWebKitAPI; >+ }; >+ 7C83E0311D0A5E1D00FEBCF3 /* PBXContainerItemProxy */ = { >+ isa = PBXContainerItemProxy; >+ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; >+ proxyType = 1; >+ remoteGlobalIDString = 7C83DF951D0A5AE400FEBCF3; >+ remoteInfo = TestWTF; >+ }; >+ 7CCE7F501A4124DB00447C4C /* PBXContainerItemProxy */ = { >+ isa = PBXContainerItemProxy; >+ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; >+ proxyType = 1; >+ remoteGlobalIDString = 7CCE7E8B1A41144E00447C4C; >+ remoteInfo = TestWebKitAPILibrary; >+ }; >+ A13EBBB21B87441900097110 /* PBXContainerItemProxy */ = { >+ isa = PBXContainerItemProxy; >+ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; >+ proxyType = 1; >+ remoteGlobalIDString = A13EBB481B87339E00097110; >+ remoteInfo = WebProcessPlugIn; >+ }; >+ BC575A95126E74E7006F0F12 /* PBXContainerItemProxy */ = { >+ isa = PBXContainerItemProxy; >+ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; >+ proxyType = 1; >+ remoteGlobalIDString = BC57597F126E74AF006F0F12; >+ remoteInfo = InjectedBundle; >+ }; >+/* End PBXContainerItemProxy section */ >+ >+/* Begin PBXCopyFilesBuildPhase section */ >+ 8DD76F9E0486AA7600D96B5E /* CopyFiles */ = { >+ isa = PBXCopyFilesBuildPhase; >+ buildActionMask = 8; >+ dstPath = /usr/share/man/man1/; >+ dstSubfolderSpec = 0; >+ files = ( >+ ); >+ runOnlyForDeploymentPostprocessing = 1; >+ }; >+ BCB9F4FB112384C000A137E0 /* Copy Resources */ = { >+ isa = PBXCopyFilesBuildPhase; >+ buildActionMask = 2147483647; >+ dstPath = TestWebKitAPI.resources; >+ dstSubfolderSpec = 7; >+ files = ( >+ 1A9E52C913E65EF4006917F5 /* 18-characters.html in Copy Resources */, >+ 379028B914FAC24C007E6B43 /* acceptsFirstMouse.html in Copy Resources */, >+ 1C2B81871C8925A000A5529F /* Ahem.ttf in Copy Resources */, >+ 1A63479F183D72A4005B1707 /* all-content-in-one-iframe.html in Copy Resources */, >+ C25CCA0D1E5141840026CB8A /* AllAhem.svg in Copy Resources */, >+ F46A095A1ED8A6E600D4AA55 /* apple.gif in Copy Resources */, >+ 5C9E59411D3EB5AC00E3C62E /* ApplicationCache.db in Copy Resources */, >+ 5C9E59421D3EB5AC00E3C62E /* ApplicationCache.db-shm in Copy Resources */, >+ 5C9E59431D3EB5AC00E3C62E /* ApplicationCache.db-wal in Copy Resources */, >+ F6B7BE9717469B96008A3445 /* associate-form-controls.html in Copy Resources */, >+ F4856CA31E649EA8009D7EE7 /* attachment-element.html in Copy Resources */, >+ B55F11B71517D03300915916 /* attributedStringCustomFont.html in Copy Resources */, >+ 7C9ED98B17A19F4B00E4DC33 /* attributedStringStrikethrough.html in Copy Resources */, >+ CD9E292E1C90C33F000BB800 /* audio-only.html in Copy Resources */, >+ 76E182DF154767E600F1FADD /* auto-submitting-form.html in Copy Resources */, >+ F41AB99F1EF4696B0083FA08 /* autofocus-contenteditable.html in Copy Resources */, >+ 93CFA8671CEB9E38000565A8 /* autofocused-text-input.html in Copy Resources */, >+ C9C60E651E53A9DC006DA181 /* autoplay-check-frame.html in Copy Resources */, >+ C9C60E661E53A9DC006DA181 /* autoplay-check-in-iframe.html in Copy Resources */, >+ C95984F41E36BC6B002C0D45 /* autoplay-check.html in Copy Resources */, >+ C9B1043E1ECF9848000520FA /* autoplay-inherits-gesture-from-document.html in Copy Resources */, >+ C9BF06EF1E9C132500595E3E /* autoplay-muted-with-controls.html in Copy Resources */, >+ C95984F51E36BC6B002C0D45 /* autoplay-no-audio-check.html in Copy Resources */, >+ C99B675C1E39721A00FC6C80 /* autoplay-with-controls.html in Copy Resources */, >+ C99BDF891E80980400C7170E /* autoplay-zero-volume-check.html in Copy Resources */, >+ 2E14A5291D3FE96B0010F35B /* autoplaying-video-with-audio.html in Copy Resources */, >+ F41AB9A01EF4696B0083FA08 /* background-image-link-and-input.html in Copy Resources */, >+ 2DE71B001D49C3ED00904094 /* blinking-div.html in Copy Resources */, >+ 7C486BA11AA12567003F6F9B /* bundle-file.html in Copy Resources */, >+ 26DF5A6315A2A27E003689C2 /* CancelLoadFromResourceLoadDelegate.html in Copy Resources */, >+ 2EFF06C51D8867760004BB30 /* change-video-source-on-click.html in Copy Resources */, >+ 2EFF06C71D886A580004BB30 /* change-video-source-on-end.html in Copy Resources */, >+ 9BD4239C1E04C01C00200395 /* chinese-character-with-image.html in Copy Resources */, >+ 1A50AA201A2A51FC00F4C345 /* close-from-within-create-page.html in Copy Resources */, >+ 9B270FEE1DDC2C0B002D53F3 /* closed-shadow-tree-test.html in Copy Resources */, >+ F4B825D81EF4DBFB006E417F /* compressed-files.zip in Copy Resources */, >+ 5C9E56871DF914AE00C9EE33 /* contentBlockerCheck.html in Copy Resources */, >+ F469FB241F01804B00401539 /* contenteditable-and-target.html in Copy Resources */, >+ F41AB9A11EF4696B0083FA08 /* contenteditable-and-textarea.html in Copy Resources */, >+ F4A32ECB1F0643370047C544 /* contenteditable-in-iframe.html in Copy Resources */, >+ A16F66BA1C40EB4F00BD4D24 /* ContentFiltering.html in Copy Resources */, >+ 5142B2731517C8C800C32B19 /* ContextMenuCanCopyURL.html in Copy Resources */, >+ CD0BD0A81F79982D001AB2CF /* ContextMenuImgWithVideo.html in Copy Resources */, >+ 5C2936961D5C00ED00DEAB1E /* CookieMessage.html in Copy Resources */, >+ 9B62630C1F8C25C8007EE29B /* copy-url.html in Copy Resources */, >+ 7AEAD4811E20122700416EFE /* CrossPartitionFileSchemeAccess.html in Copy Resources */, >+ F4AB578A1F65165400DB0DA1 /* custom-draggable-div.html in Copy Resources */, >+ 290F4275172A221C00939FF0 /* custom-protocol-sync-xhr.html in Copy Resources */, >+ F486B1D01F67952300F34BDD /* DataTransfer-setDragImage.html in Copy Resources */, >+ F4512E131F60C44600BB369E /* DataTransferItem-getAsEntry.html in Copy Resources */, >+ C07E6CB213FD73930038B22B /* devicePixelRatio.html in Copy Resources */, >+ 0799C34B1EBA3301003B7532 /* disableGetUserMedia.html in Copy Resources */, >+ F41AB9A21EF4696B0083FA08 /* div-and-large-image.html in Copy Resources */, >+ 37E1064C1697681800B78BD0 /* DOMHTMLTableCellElementCellAbove.html in Copy Resources */, >+ 37DC6791140D7D7600ABCCDB /* DOMRangeOfString.html in Copy Resources */, >+ F4FA91831E61857B007B8C1D /* double-click-does-not-select-trailing-space.html in Copy Resources */, >+ 837A35F11D9A1E7D00663C57 /* DownloadRequestBlobURL.html in Copy Resources */, >+ 5714ECB91CA8B5B000051AC8 /* DownloadRequestOriginalURL.html in Copy Resources */, >+ 5714ECBD1CA8C22A00051AC8 /* DownloadRequestOriginalURL2.html in Copy Resources */, >+ 5714ECBB1CA8BFE400051AC8 /* DownloadRequestOriginalURLFrame.html in Copy Resources */, >+ F4A32EC41F05F3850047C544 /* dragstart-change-selection-offscreen.html in Copy Resources */, >+ F4D5E4E81F0C5D38008C1A49 /* dragstart-clear-selection.html in Copy Resources */, >+ F4194AD11F5A320100ADD83F /* drop-targets.html in Copy Resources */, >+ 2EB29D5E1F762DB90023A5F1 /* dump-datatransfer-types.html in Copy Resources */, >+ A155022C1E050D0300A24C57 /* duplicate-completion-handler-calls.html in Copy Resources */, >+ 9984FACE1CFFB090008D198C /* editable-body.html in Copy Resources */, >+ F44D06451F395C26001A0E29 /* editor-state-test-harness.html in Copy Resources */, >+ 51C8E1A91F27F49600BF731B /* EmptyGrandfatheredResourceLoadStatistics.plist in Copy Resources */, >+ A14AAB651E78DC5400C1ADC2 /* encrypted.pdf in Copy Resources */, >+ F4C2AB221DD6D95E00E06D5B /* enormous-video-with-sound.html in Copy Resources */, >+ F407FE391F1D0DFC0017CF25 /* enormous.svg in Copy Resources */, >+ 07492B3C1DF8B86600633DE1 /* enumerateMediaDevices.html in Copy Resources */, >+ C5E1AFFE16B221F1006CC1F2 /* execCopy.html in Copy Resources */, >+ F41AB9A31EF4696B0083FA08 /* file-uploading.html in Copy Resources */, >+ BC2D006412AA04CE00E732A3 /* file-with-anchor.html in Copy Resources */, >+ CD59F53419E9110D00CF1835 /* file-with-mse.html in Copy Resources */, >+ 524BBC9E19DF72C0002F1AF1 /* file-with-video.html in Copy Resources */, >+ 1A02C870125D4CFD00E3F4BD /* find.html in Copy Resources */, >+ C5101C4F176B8D9200EE9B15 /* findRanges.html in Copy Resources */, >+ 932AE53D1D371047005DFFAF /* focus-inputs.html in Copy Resources */, >+ 1A7E8B3618120B2F00AEB74A /* FragmentNavigation.html in Copy Resources */, >+ F47728991E4AE3C1007ABF6A /* full-page-contenteditable.html in Copy Resources */, >+ F4F405BC1D4C0D1C007A9707 /* full-size-autoplaying-video-with-audio.html in Copy Resources */, >+ CD78E11E1DB7EE2A0014A2DE /* FullscreenDelegate.html in Copy Resources */, >+ 3FBD1B4A1D3D66AB00E6D6FA /* FullscreenLayoutConstraints.html in Copy Resources */, >+ CDE195B51CFE0B880053D256 /* FullscreenTopContentInset.html in Copy Resources */, >+ CDBFCC461A9FF49E00A7B691 /* FullscreenZoomInitialFrame.html in Copy Resources */, >+ 26F52EAD1828827B0023D412 /* geolocationGetCurrentPosition.html in Copy Resources */, >+ 636353A71E98665D0009F8AF /* GeolocationGetCurrentPositionResult.html in Copy Resources */, >+ 26F52EAF18288C230023D412 /* geolocationGetCurrentPositionWithHighAccuracy.html in Copy Resources */, >+ 26F52EB218288F240023D412 /* geolocationWatchPosition.html in Copy Resources */, >+ 26F52EB318288F240023D412 /* geolocationWatchPositionWithHighAccuracy.html in Copy Resources */, >+ 074994421EA5034B000DA44E /* getUserMedia.html in Copy Resources */, >+ F46A095B1ED8A6E600D4AA55 /* gif-and-file-input.html in Copy Resources */, >+ 9B4F8FA7159D52DD002D9F94 /* HTMLCollectionNamedItem.html in Copy Resources */, >+ 9B26FCCA159D16DE00CC3765 /* HTMLFormCollectionNamedItem.html in Copy Resources */, >+ BCBD3737125ABBEB00D2C29F /* icon.png in Copy Resources */, >+ 510477771D298E72009747EB /* IDBDeleteRecovery.html in Copy Resources */, >+ 510477721D298DDD009747EB /* IDBDeleteRecovery.sqlite3 in Copy Resources */, >+ 510477731D298DDD009747EB /* IDBDeleteRecovery.sqlite3-shm in Copy Resources */, >+ 510477741D298DDD009747EB /* IDBDeleteRecovery.sqlite3-wal in Copy Resources */, >+ 5110FCF11E01CD64006F8D0B /* IDBIndexUpgradeToV2.html in Copy Resources */, >+ F41AB9A41EF4696B0083FA08 /* image-and-contenteditable.html in Copy Resources */, >+ F41AB9A51EF4696B0083FA08 /* image-and-textarea.html in Copy Resources */, >+ F4DEF6ED1E9B4DB60048EF61 /* image-in-link-and-input.html in Copy Resources */, >+ F45B63FB1F197F4A009D38B9 /* image-map.html in Copy Resources */, >+ 51A587851D2739E3004BA9AF /* IndexedDBDatabaseProcessKill-1.html in Copy Resources */, >+ 51BCEE4E1C84F53B0042C82E /* IndexedDBMultiProcess-1.html in Copy Resources */, >+ 51BCEE4F1C84F53B0042C82E /* IndexedDBMultiProcess-2.html in Copy Resources */, >+ 51A5877D1D1B49CD004BA9AF /* IndexedDBMultiProcess-3.html in Copy Resources */, >+ 51B1EE961C80FAEF0064FB98 /* IndexedDBPersistence-1.html in Copy Resources */, >+ 51B1EE971C80FAEF0064FB98 /* IndexedDBPersistence-2.html in Copy Resources */, >+ 57599E271F071AA000A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3 in Copy Resources */, >+ 57599E281F071AA000A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm in Copy Resources */, >+ 571F7FD01F2961FB00946648 /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal in Copy Resources */, >+ 57599E2A1F071AA000A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityRead.html in Copy Resources */, >+ 57599E2B1F071AA000A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityWrite.html in Copy Resources */, >+ 5110FCF91E01CD8A006F8D0B /* IndexUpgrade.blob in Copy Resources */, >+ 5110FCF61E01CD83006F8D0B /* IndexUpgrade.sqlite3 in Copy Resources */, >+ 2EFF06CD1D8A429A0004BB30 /* input-field-in-scrollable-document.html in Copy Resources */, >+ CE3524FA1B1443890028A7C5 /* input-focus-blur.html in Copy Resources */, >+ 57F56A5C1C7F8CC100F31D7E /* IsNavigationActionTrusted.html in Copy Resources */, >+ C9B4AD2C1ECA6F7F00F5FEA0 /* js-autoplay-audio.html in Copy Resources */, >+ C99B675D1E39722000FC6C80 /* js-play-with-controls.html in Copy Resources */, >+ C2CF975B16CEC71B0054E99D /* JSContextBackForwardCache1.html in Copy Resources */, >+ C2CF975A16CEC7140054E99D /* JSContextBackForwardCache2.html in Copy Resources */, >+ F42DA5161D8CEFE400336F40 /* large-input-field-focus-onload.html in Copy Resources */, >+ 55226A2F1EBA44B900C36AD0 /* large-red-square-image.html in Copy Resources */, >+ F4538EF71E8473E600B5C953 /* large-red-square.png in Copy Resources */, >+ 2E1B7B021D41B1B9007558B4 /* large-video-hides-controls-after-seek-to-end.html in Copy Resources */, >+ 2E54F40D1D7BC84200921ADF /* large-video-mutes-onplaying.html in Copy Resources */, >+ 2EFF06C31D88621E0004BB30 /* large-video-offscreen.html in Copy Resources */, >+ 2E691AF31D79E75E00129407 /* large-video-playing-scroll-away.html in Copy Resources */, >+ 2E1B7B001D41ABA7007558B4 /* large-video-seek-after-ending.html in Copy Resources */, >+ 2E1DFDF11D42E1E400714A00 /* large-video-seek-to-beginning-and-play-after-ending.html in Copy Resources */, >+ F4F137921D9B683E002BEC57 /* large-video-test-now-playing.html in Copy Resources */, >+ 936F72801CD7D9EC0068A0FB /* large-video-with-audio.html in Copy Resources */, >+ 936F72811CD7D9EC0068A0FB /* large-video-with-audio.mp4 in Copy Resources */, >+ 93625D271CD9741C006DC1F1 /* large-video-without-audio.html in Copy Resources */, >+ 2E691AEF1D79DE8400129407 /* large-videos-autoplaying-click-to-pause.html in Copy Resources */, >+ 2E691AF11D79E51A00129407 /* large-videos-autoplaying-scroll-to-video.html in Copy Resources */, >+ 2E691AEA1D78B53600129407 /* large-videos-paused-video-hides-controls.html in Copy Resources */, >+ 2E691AED1D78B91000129407 /* large-videos-playing-muted-video-hides-controls.html in Copy Resources */, >+ 2E691AEB1D78B53600129407 /* large-videos-playing-video-keeps-controls.html in Copy Resources */, >+ 2E1DFDEF1D42A6F200714A00 /* large-videos-with-audio-autoplay.html in Copy Resources */, >+ 2E1DFDED1D42A51100714A00 /* large-videos-with-audio.html in Copy Resources */, >+ C25CCA0B1E5140C10026CB8A /* LineBreaking.html in Copy Resources */, >+ F41AB9A61EF4696B0083FA08 /* link-and-input.html in Copy Resources */, >+ F41AB9A71EF4696B0083FA08 /* link-and-target-div.html in Copy Resources */, >+ 8361F1781E610B4E00759B25 /* link-with-download-attribute-with-slashes.html in Copy Resources */, >+ 8349D3C41DB9728E004A9F65 /* link-with-download-attribute.html in Copy Resources */, >+ 378E64791632707400B6C676 /* link-with-title.html in Copy Resources */, >+ 57901FB11CAF142D00ED64F9 /* LoadInvalidURLRequest.html in Copy Resources */, >+ 51E6A8961D2F1CA700C004B6 /* LocalStorageClear.html in Copy Resources */, >+ 46C519E61D3563FD00DAA51A /* LocalStorageNullEntries.html in Copy Resources */, >+ 46C519E71D3563FD00DAA51A /* LocalStorageNullEntries.localstorage in Copy Resources */, >+ 46C519E81D3563FD00DAA51A /* LocalStorageNullEntries.localstorage-shm in Copy Resources */, >+ 7A6A2C721DCCFB5200C0D085 /* LocalStorageQuirkEnabled.html in Copy Resources */, >+ 9361002914DC95A70061379D /* lots-of-iframes.html in Copy Resources */, >+ 93AF4ED11506F130007FD57E /* lots-of-images.html in Copy Resources */, >+ 2DD7D3AF178227B30026E1E3 /* lots-of-text-vertical-lr.html in Copy Resources */, >+ 930AD402150698D00067970F /* lots-of-text.html in Copy Resources */, >+ AD57AC221DA7466E00FF1BDE /* many-iframes.html in Copy Resources */, >+ CDA3159A1ED548F1009F60D3 /* MediaPlaybackSleepAssertion.html in Copy Resources */, >+ CDC9442F1EF205D60059C3C4 /* mediastreamtrack-detached.html in Copy Resources */, >+ E1220DCA155B28AA0013E2FC /* MemoryCacheDisableWithinResourceLoadDelegate.html in Copy Resources */, >+ 517E7E04151119C100D0B008 /* MemoryCachePruneWithinResourceLoadDelegate.html in Copy Resources */, >+ 51CD1C721B38D48400142CA5 /* modal-alerts-in-new-about-blank-window.html in Copy Resources */, >+ 7A1458FC1AD5C07000E06772 /* mouse-button-listener.html in Copy Resources */, >+ 33E79E06137B5FD900E32D99 /* mouse-move-listener.html in Copy Resources */, >+ 5797FE331EB15AB100B2F4A0 /* navigation-client-default-crypto.html in Copy Resources */, >+ C99B675F1E39736F00FC6C80 /* no-autoplay-with-controls.html in Copy Resources */, >+ 93E2D2761ED7D53200FA76F6 /* offscreen-iframe-of-media-document.html in Copy Resources */, >+ CEA6CF2819CCF69D0064F5A7 /* open-and-close-window.html in Copy Resources */, >+ 7CCB99231D3B4A46003922F6 /* open-multiple-external-url.html in Copy Resources */, >+ 290A9BB91735F63800D71BBC /* OpenNewWindow.html in Copy Resources */, >+ CEBCA1391E3A807A00C73293 /* page-with-csp-iframe.html in Copy Resources */, >+ CEBCA1381E3A807A00C73293 /* page-with-csp.html in Copy Resources */, >+ CEBCA13B1E3A807A00C73293 /* page-without-csp-iframe.html in Copy Resources */, >+ CEBCA13A1E3A807A00C73293 /* page-without-csp.html in Copy Resources */, >+ A1C4FB731BACD1CA003742D0 /* pages.pages in Copy Resources */, >+ A57A34F216AF6B2B00C2501F /* PageVisibilityStateWithWindowChanges.html in Copy Resources */, >+ A1409AD91E7254D4004949D9 /* password-protected.pages in Copy Resources */, >+ 9BD6D3A71F7B21DC00BD4962 /* paste-image.html in Copy Resources */, >+ 9B7D740F1F8378770006C432 /* paste-rtfd.html in Copy Resources */, >+ 3FCC4FE81EC4E8CA0076E37C /* PictureInPictureDelegate.html in Copy Resources */, >+ F415086D1DA040C50044BE9B /* play-audio-on-click.html in Copy Resources */, >+ F41AB9A81EF4696B0083FA08 /* prevent-operation.html in Copy Resources */, >+ F41AB9A91EF4696B0083FA08 /* prevent-start.html in Copy Resources */, >+ F6FDDDD614241C6F004F1729 /* push-state.html in Copy Resources */, >+ A12DDC001E8373E700CF6CAE /* rendered-image-excluding-overflow.html in Copy Resources */, >+ F46849C01EEF5EF300B937FE /* rich-and-plain-text.html in Copy Resources */, >+ F4D65DA81F5E4704009D8C27 /* selected-text-image-link-and-editable.html in Copy Resources */, >+ 7A66BDB81EAF18D500CCC924 /* set-long-title.html in Copy Resources */, >+ 52B8CF9815868D9100281053 /* SetDocumentURI.html in Copy Resources */, >+ CEBABD491B71687C0051210A /* should-open-external-schemes.html in Copy Resources */, >+ C9B4AD2A1ECA6EBE00F5FEA0 /* silence-long.m4a in Copy Resources */, >+ 1ADBEFE3130C6AA100D61D19 /* simple-accelerated-compositing.html in Copy Resources */, >+ C0ADBE9612FCA79B00D2C129 /* simple-form.html in Copy Resources */, >+ 33DC8912141955FE00747EF7 /* simple-iframe.html in Copy Resources */, >+ BCAA485614A0444C0088FAC4 /* simple-tall.html in Copy Resources */, >+ BC909784125571CF00083756 /* simple.html in Copy Resources */, >+ 51E5C7021919C3B200D8B3E1 /* simple2.html in Copy Resources */, >+ 51E5C7031919C3B200D8B3E1 /* simple3.html in Copy Resources */, >+ F4F405BD1D4C0D1C007A9707 /* skinny-autoplaying-video-with-audio.html in Copy Resources */, >+ C01A23F21266156700C9ED55 /* spacebar-scrolling.html in Copy Resources */, >+ E194E1BD177E53C7009C4D4E /* StopLoadingFromDidReceiveResponse.html in Copy Resources */, >+ 515BE16F1D428BB100DD7C68 /* StoreBlobToBeDeleted.html in Copy Resources */, >+ 9BD6D3A21F7B218300BD4962 /* sunset-in-cupertino-100px.tiff in Copy Resources */, >+ 9BD6D3A31F7B218300BD4962 /* sunset-in-cupertino-200px.png in Copy Resources */, >+ 9BD6D3A41F7B218300BD4962 /* sunset-in-cupertino-400px.gif in Copy Resources */, >+ 9BD6D3A51F7B218300BD4962 /* sunset-in-cupertino-600px.jpg in Copy Resources */, >+ CD59F53519E9110D00CF1835 /* test-mse.mp4 in Copy Resources */, >+ C95984F71E36BCEF002C0D45 /* test-without-audio-track.mp4 in Copy Resources */, >+ 524BBCA119E30C77002F1AF1 /* test.mp4 in Copy Resources */, >+ 7AE9E5091AE5AE8B00CF874B /* test.pdf in Copy Resources */, >+ 2E9896151D8F093800739892 /* text-and-password-inputs.html in Copy Resources */, >+ F41AB9AA1EF4696B0083FA08 /* textarea-to-input.html in Copy Resources */, >+ F4451C761EB8FD890020C5DA /* two-paragraph-contenteditable.html in Copy Resources */, >+ C540F784152E5A9A00A40C8C /* verboseMarkup.html in Copy Resources */, >+ CDC8E4941BC6F10800594FEC /* video-with-audio.html in Copy Resources */, >+ CDC8E4951BC6F10800594FEC /* video-with-audio.mp4 in Copy Resources */, >+ CD321B041E3A85FA00EB21C8 /* video-with-muted-audio-and-webaudio.html in Copy Resources */, >+ CDB4115A1E0B00DB00EAD352 /* video-with-muted-audio.html in Copy Resources */, >+ CDC8E4961BC6F10800594FEC /* video-without-audio.html in Copy Resources */, >+ CDC8E4971BC6F10800594FEC /* video-without-audio.mp4 in Copy Resources */, >+ 1C2B81861C89259D00A5529F /* webfont.html in Copy Resources */, >+ 51714EB41CF8C78C004723C4 /* WebProcessKillIDBCleanup-1.html in Copy Resources */, >+ 51714EB51CF8C78C004723C4 /* WebProcessKillIDBCleanup-2.html in Copy Resources */, >+ 536770361CC81B6100D425B1 /* WebScriptObjectDescription.html in Copy Resources */, >+ 5120C83E1E67678F0025B250 /* WebsiteDataStoreCustomPaths.html in Copy Resources */, >+ 2E131C181D83A98A001BA36C /* wide-autoplaying-video-with-audio.html in Copy Resources */, >+ CE14F1A4181873B0001C2705 /* WillPerformClientRedirectToURLCrash.html in Copy Resources */, >+ A5E2027515B21F6E00C13E14 /* WindowlessWebViewWithMedia.html in Copy Resources */, >+ ); >+ name = "Copy Resources"; >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+/* End PBXCopyFilesBuildPhase section */ >+ >+/* Begin PBXFileReference section */ >+ 00BC16851680FE810065F1E5 /* PublicSuffix.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PublicSuffix.mm; sourceTree = "<group>"; }; >+ 00CD9F6215BE312C002DA2CE /* BackForwardList.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BackForwardList.mm; sourceTree = "<group>"; }; >+ 07492B391DF8ADA400633DE1 /* enumerateMediaDevices.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = enumerateMediaDevices.html; sourceTree = "<group>"; }; >+ 07492B3A1DF8AE2D00633DE1 /* EnumerateMediaDevices.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EnumerateMediaDevices.cpp; sourceTree = "<group>"; }; >+ 0766DD1F1A5AD5200023E3BB /* PendingAPIRequestURL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PendingAPIRequestURL.cpp; sourceTree = "<group>"; }; >+ 076E507E1F45031E006E9F5A /* Logging.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Logging.cpp; sourceTree = "<group>"; }; >+ 0799C34A1EBA32F4003B7532 /* disableGetUserMedia.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = disableGetUserMedia.html; sourceTree = "<group>"; }; >+ 07C046C91E42573E007201E7 /* CARingBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CARingBuffer.cpp; sourceTree = "<group>"; }; >+ 07CE1CF21F06A7E000BF89F5 /* GetUserMediaNavigation.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GetUserMediaNavigation.mm; sourceTree = "<group>"; }; >+ 07EDEFAC1EB9400C00D43292 /* UserMediaDisabled.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UserMediaDisabled.mm; sourceTree = "<group>"; }; >+ 0BCD833414857CE400EA2003 /* HashMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HashMap.cpp; sourceTree = "<group>"; }; >+ 0BCD85691485C98B00EA2003 /* SetForScope.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SetForScope.cpp; sourceTree = "<group>"; }; >+ 0F139E721A423A2B00F590F5 /* PlatformUtilitiesCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PlatformUtilitiesCocoa.mm; path = cocoa/PlatformUtilitiesCocoa.mm; sourceTree = "<group>"; }; >+ 0F139E751A423A5300F590F5 /* WeakObjCPtr.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WeakObjCPtr.mm; path = cocoa/WeakObjCPtr.mm; sourceTree = "<group>"; }; >+ 0F17BBD415AF6C4D007AB753 /* WebCoreStatisticsWithNoWebProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebCoreStatisticsWithNoWebProcess.cpp; sourceTree = "<group>"; }; >+ 0F2C20B71DCD544800542D9E /* Time.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Time.cpp; sourceTree = "<group>"; }; >+ 0F3B94A51A77266C00DE3272 /* WKWebViewEvaluateJavaScript.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewEvaluateJavaScript.mm; sourceTree = "<group>"; }; >+ 0F4FFA9D1ED3AA8500F7111F /* SnapshotViaRenderInContext.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SnapshotViaRenderInContext.mm; sourceTree = "<group>"; }; >+ 0F4FFAA01ED3D0DE00F7111F /* ImageIO.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ImageIO.framework; path = System/Library/Frameworks/ImageIO.framework; sourceTree = SDKROOT; }; >+ 0FC6C4CB141027E0005B7F0C /* RedBlackTree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RedBlackTree.cpp; sourceTree = "<group>"; }; >+ 0FC6C4CE141034AD005B7F0C /* MetaAllocator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MetaAllocator.cpp; sourceTree = "<group>"; }; >+ 0FE447971B76F1E3009498EB /* ParkingLot.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParkingLot.cpp; sourceTree = "<group>"; }; >+ 0FEAE3671B7D19CB00CE17F2 /* Condition.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Condition.cpp; sourceTree = "<group>"; }; >+ 0FFC45A41B73EBE20085BD62 /* Lock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Lock.cpp; sourceTree = "<group>"; }; >+ 115EB3421EE0B720003C2C0A /* ViewportSizeForViewportUnits.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ViewportSizeForViewportUnits.mm; sourceTree = "<group>"; }; >+ 14464012167A8305000BD218 /* LayoutUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LayoutUnit.cpp; sourceTree = "<group>"; }; >+ 14F3B11215E45EAB00210069 /* SaturatedArithmeticOperations.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SaturatedArithmeticOperations.cpp; sourceTree = "<group>"; }; >+ 1A02C84B125D4A5E00E3F4BD /* find.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = find.html; sourceTree = "<group>"; }; >+ 1A02C84E125D4A8400E3F4BD /* Find.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Find.cpp; sourceTree = "<group>"; }; >+ 1A3524A91D627BD40031729B /* DeletedAddressOfOperator.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DeletedAddressOfOperator.h; sourceTree = "<group>"; }; >+ 1A3524AC1D63A4FB0031729B /* Scope.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Scope.cpp; sourceTree = "<group>"; }; >+ 1A4F81C81BDFFD18004E672E /* RemoteObjectRegistry.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RemoteObjectRegistry.mm; sourceTree = "<group>"; }; >+ 1A4F81CD1BDFFD53004E672E /* RemoteObjectRegistryPlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RemoteObjectRegistryPlugIn.mm; sourceTree = "<group>"; }; >+ 1A4F81D01BDFFDCF004E672E /* RemoteObjectRegistry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteObjectRegistry.h; sourceTree = "<group>"; }; >+ 1A50AA1C1A2A4E7000F4C345 /* CloseFromWithinCreatePage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CloseFromWithinCreatePage.cpp; sourceTree = "<group>"; }; >+ 1A50AA1F1A2A4EA500F4C345 /* close-from-within-create-page.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "close-from-within-create-page.html"; sourceTree = "<group>"; }; >+ 1A5FEFDC1270E2A3000E2921 /* EvaluateJavaScript.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EvaluateJavaScript.cpp; sourceTree = "<group>"; }; >+ 1A7BFC0A171A0BDB00BC5F64 /* WillSendSubmitEvent.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WillSendSubmitEvent.mm; sourceTree = "<group>"; }; >+ 1A7E8B33181208DE00AEB74A /* FragmentNavigation.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FragmentNavigation.mm; sourceTree = "<group>"; }; >+ 1A7E8B351812093600AEB74A /* FragmentNavigation.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = FragmentNavigation.html; sourceTree = "<group>"; }; >+ 1A9FB6CC1CA34BE500966124 /* EarlyKVOCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EarlyKVOCrash.mm; sourceTree = "<group>"; }; >+ 1AAD19F51C7CE20300831E47 /* Coding.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Coding.mm; sourceTree = "<group>"; }; >+ 1ABC3DED1899BE6D004F0626 /* Navigation.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Navigation.mm; sourceTree = "<group>"; }; >+ 1ADAD14E1D77A9F600212586 /* BlockPtr.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BlockPtr.mm; sourceTree = "<group>"; }; >+ 1ADBEFAD130C689C00D61D19 /* ForceRepaint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ForceRepaint.cpp; sourceTree = "<group>"; }; >+ 1ADBEFBC130C6A0100D61D19 /* simple-accelerated-compositing.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "simple-accelerated-compositing.html"; sourceTree = "<group>"; }; >+ 1AE72F47173EB214006362F0 /* TerminateTwice.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TerminateTwice.cpp; sourceTree = "<group>"; }; >+ 1AEDE22413E5E7A000E62FE8 /* InjectedBundleControllerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InjectedBundleControllerMac.mm; sourceTree = "<group>"; }; >+ 1AEF994817A09F5300998EF0 /* GetPIDAfterAbortedProcessLaunch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GetPIDAfterAbortedProcessLaunch.cpp; sourceTree = "<group>"; }; >+ 1AF7B21D1D6CD12E008C126C /* EnumTraits.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = EnumTraits.cpp; sourceTree = "<group>"; }; >+ 1AFDE6541953B2C000C48FFA /* Optional.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Optional.cpp; sourceTree = "<group>"; }; >+ 1C2B817E1C891E4200A5529F /* CancelFontSubresource.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CancelFontSubresource.mm; sourceTree = "<group>"; }; >+ 1C2B81811C891EFA00A5529F /* CancelFontSubresourcePlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CancelFontSubresourcePlugIn.mm; sourceTree = "<group>"; }; >+ 1C2B81841C8924A200A5529F /* webfont.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = webfont.html; sourceTree = "<group>"; }; >+ 1C2B81851C89252300A5529F /* Ahem.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = Ahem.ttf; sourceTree = "<group>"; }; >+ 1C9EB8401E380DA1005C6442 /* ComplexTextController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ComplexTextController.cpp; sourceTree = "<group>"; }; >+ 1CAD1F851E5CE7DA00AF2C2C /* FontCache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FontCache.cpp; sourceTree = "<group>"; }; >+ 1CB9BC371A67482300FE5678 /* WeakPtr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WeakPtr.cpp; sourceTree = "<group>"; }; >+ 1CF0D3781BBF2F3D00B4EF54 /* WKRetainPtr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKRetainPtr.cpp; sourceTree = "<group>"; }; >+ 1F83571A1D3FFB0E00E3967B /* WKBackForwardList.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WKBackForwardList.mm; path = Tests/WebKit/WKBackForwardList.mm; sourceTree = SOURCE_ROOT; }; >+ 260BA5781B1D2E7B004FA07C /* DFACombiner.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DFACombiner.cpp; sourceTree = "<group>"; }; >+ 260BA57A1B1D2EE2004FA07C /* DFAHelpers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DFAHelpers.h; sourceTree = "<group>"; }; >+ 261516D515B0E60500A2C201 /* SetAndUpdateCacheModel.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SetAndUpdateCacheModel.mm; sourceTree = "<group>"; }; >+ 26300B1716755CD90066886D /* ListHashSet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ListHashSet.cpp; sourceTree = "<group>"; }; >+ 265AF54F15D1E48A00B0CB4A /* WTFString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WTFString.cpp; sourceTree = "<group>"; }; >+ 266FAFD215E5775200F61D5B /* IntegerToStringConversion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IntegerToStringConversion.cpp; sourceTree = "<group>"; }; >+ 26A2C72E15E2E73C005B1A14 /* CString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CString.cpp; sourceTree = "<group>"; }; >+ 26B2DFF815BDE599004F691D /* HashSet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HashSet.cpp; sourceTree = "<group>"; }; >+ 26DF5A5D15A29BAA003689C2 /* CancelLoadFromResourceLoadDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CancelLoadFromResourceLoadDelegate.mm; sourceTree = "<group>"; }; >+ 26DF5A6115A2A22B003689C2 /* CancelLoadFromResourceLoadDelegate.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = CancelLoadFromResourceLoadDelegate.html; sourceTree = "<group>"; }; >+ 26F1B44215CA434F00D1E4BF /* AtomicString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AtomicString.cpp; sourceTree = "<group>"; }; >+ 26F1B44315CA434F00D1E4BF /* StringImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringImpl.cpp; sourceTree = "<group>"; }; >+ 26F52EAA182872600023D412 /* Geolocation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Geolocation.cpp; sourceTree = "<group>"; }; >+ 26F52EAC1828820E0023D412 /* geolocationGetCurrentPosition.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = geolocationGetCurrentPosition.html; sourceTree = "<group>"; }; >+ 26F52EAE18288C040023D412 /* geolocationGetCurrentPositionWithHighAccuracy.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = geolocationGetCurrentPositionWithHighAccuracy.html; sourceTree = "<group>"; }; >+ 26F52EB018288F0F0023D412 /* geolocationWatchPosition.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = geolocationWatchPosition.html; sourceTree = "<group>"; }; >+ 26F52EB118288F0F0023D412 /* geolocationWatchPositionWithHighAccuracy.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = geolocationWatchPositionWithHighAccuracy.html; sourceTree = "<group>"; }; >+ 26F6E1EF1ADC749B00DE696B /* DFAMinimizer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DFAMinimizer.cpp; sourceTree = "<group>"; }; >+ 290A9BB51735DE8A00D71BBC /* CloseNewWindowInNavigationPolicyDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CloseNewWindowInNavigationPolicyDelegate.mm; sourceTree = "<group>"; }; >+ 290A9BB81735F42300D71BBC /* OpenNewWindow.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = OpenNewWindow.html; sourceTree = "<group>"; }; >+ 290F4274172A1FDE00939FF0 /* custom-protocol-sync-xhr.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "custom-protocol-sync-xhr.html"; sourceTree = "<group>"; }; >+ 290F4276172A232C00939FF0 /* CustomProtocolsSyncXHRTest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CustomProtocolsSyncXHRTest.mm; sourceTree = "<group>"; }; >+ 291861FD17BD4DC700D4E41E /* StopLoadingFromDidFinishLoading.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = StopLoadingFromDidFinishLoading.mm; sourceTree = "<group>"; }; >+ 2943BE84161DFEB800999E3D /* UserContentTest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = UserContentTest.mm; path = WebKitObjC/UserContentTest.mm; sourceTree = "<group>"; }; >+ 297234B2173AD04800983601 /* CustomProtocolsInvalidScheme.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CustomProtocolsInvalidScheme.mm; path = WebKitObjC/CustomProtocolsInvalidScheme.mm; sourceTree = "<group>"; }; >+ 297234B5173AFAC700983601 /* CustomProtocolsInvalidScheme_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CustomProtocolsInvalidScheme_Bundle.cpp; path = WebKitObjC/CustomProtocolsInvalidScheme_Bundle.cpp; sourceTree = "<group>"; }; >+ 29AB8A9F164C735800D49BEC /* CustomProtocolsTest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CustomProtocolsTest.mm; path = WebKitObjC/CustomProtocolsTest.mm; sourceTree = "<group>"; }; >+ 29AB8AA2164C7A9300D49BEC /* TestBrowsingContextLoadDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TestBrowsingContextLoadDelegate.mm; sourceTree = "<group>"; }; >+ 29AB8AA3164C7A9300D49BEC /* TestBrowsingContextLoadDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestBrowsingContextLoadDelegate.h; sourceTree = "<group>"; }; >+ 2D00065D1C1F58940088E6A7 /* WKPDFViewResizeCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKPDFViewResizeCrash.mm; sourceTree = "<group>"; }; >+ 2D1646E11D1862CD00015A1A /* DeferredViewInWindowStateChange.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = DeferredViewInWindowStateChange.mm; path = WebKit/DeferredViewInWindowStateChange.mm; sourceTree = "<group>"; }; >+ 2D1C04A51D76298B000A6816 /* TestNavigationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TestNavigationDelegate.h; path = cocoa/TestNavigationDelegate.h; sourceTree = "<group>"; }; >+ 2D1C04A61D76298B000A6816 /* TestNavigationDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TestNavigationDelegate.mm; path = cocoa/TestNavigationDelegate.mm; sourceTree = "<group>"; }; >+ 2D1FE0AF1AD465C1006CD9E6 /* FixedLayoutSize.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FixedLayoutSize.mm; sourceTree = "<group>"; }; >+ 2D21FE581F04642800B58E7D /* WKPDFViewStablePresentationUpdateCallback.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKPDFViewStablePresentationUpdateCallback.mm; sourceTree = "<group>"; }; >+ 2D4CF8BC1D8360CC0001CE8D /* WKThumbnailView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WKThumbnailView.mm; path = WebKit/WKThumbnailView.mm; sourceTree = "<group>"; }; >+ 2D51A0C51C8BF00400765C45 /* DOMHTMLVideoElementWrapper.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMHTMLVideoElementWrapper.mm; sourceTree = "<group>"; }; >+ 2D640B5417875DFF00BFAF99 /* ScrollPinningBehaviors.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ScrollPinningBehaviors.cpp; sourceTree = "<group>"; }; >+ 2D8104CB1BEC13E70020DA46 /* FindInPage.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FindInPage.mm; sourceTree = "<group>"; }; >+ 2D838B1E1EEF3A5B009B980E /* WKContentViewEditingActions.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKContentViewEditingActions.mm; sourceTree = "<group>"; }; >+ 2D9A53AE1B31FA8D0074D5AA /* ShrinkToFit.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ShrinkToFit.mm; sourceTree = "<group>"; }; >+ 2DB0232E1E4E871800707123 /* InteractionDeadlockAfterCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InteractionDeadlockAfterCrash.mm; sourceTree = "<group>"; }; >+ 2DB647871F4161F70051A89E /* WKWebViewDoesNotLogDuringInitialization.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewDoesNotLogDuringInitialization.mm; sourceTree = "<group>"; }; >+ 2DC4CF761D2D9DD800ECCC94 /* DataDetection.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DataDetection.mm; sourceTree = "<group>"; }; >+ 2DC60E221E79F88C00FA6C7D /* DoAfterNextPresentationUpdateAfterCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DoAfterNextPresentationUpdateAfterCrash.mm; sourceTree = "<group>"; }; >+ 2DD355351BD08378005DF4A7 /* AutoLayoutIntegration.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AutoLayoutIntegration.mm; sourceTree = "<group>"; }; >+ 2DD7D3A9178205D00026E1E3 /* ResizeReversePaginatedWebView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResizeReversePaginatedWebView.cpp; sourceTree = "<group>"; }; >+ 2DD7D3AE178227AC0026E1E3 /* lots-of-text-vertical-lr.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "lots-of-text-vertical-lr.html"; sourceTree = "<group>"; }; >+ 2DE71AFD1D49C0BD00904094 /* AnimatedResize.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AnimatedResize.mm; sourceTree = "<group>"; }; >+ 2DE71AFF1D49C2F000904094 /* blinking-div.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "blinking-div.html"; sourceTree = "<group>"; }; >+ 2DFF7B6C1DA487AF00814614 /* SnapshotStore.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SnapshotStore.mm; sourceTree = "<group>"; }; >+ 2E131C171D83A97E001BA36C /* wide-autoplaying-video-with-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "wide-autoplaying-video-with-audio.html"; sourceTree = "<group>"; }; >+ 2E14A5281D3FE8B80010F35B /* autoplaying-video-with-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autoplaying-video-with-audio.html"; sourceTree = "<group>"; }; >+ 2E1B7AFF1D41A95F007558B4 /* large-video-seek-after-ending.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-seek-after-ending.html"; sourceTree = "<group>"; }; >+ 2E1B7B011D41B1B3007558B4 /* large-video-hides-controls-after-seek-to-end.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-hides-controls-after-seek-to-end.html"; sourceTree = "<group>"; }; >+ 2E1DFDEC1D42A41C00714A00 /* large-videos-with-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-videos-with-audio.html"; sourceTree = "<group>"; }; >+ 2E1DFDEE1D42A6EB00714A00 /* large-videos-with-audio-autoplay.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-videos-with-audio-autoplay.html"; sourceTree = "<group>"; }; >+ 2E1DFDF01D42E14400714A00 /* large-video-seek-to-beginning-and-play-after-ending.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-seek-to-beginning-and-play-after-ending.html"; sourceTree = "<group>"; }; >+ 2E205BA31F527746005952DD /* AccessibilityTestsIOS.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityTestsIOS.mm; sourceTree = "<group>"; }; >+ 2E54F40C1D7BC83900921ADF /* large-video-mutes-onplaying.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-mutes-onplaying.html"; sourceTree = "<group>"; }; >+ 2E691AE81D78B52B00129407 /* large-videos-paused-video-hides-controls.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-videos-paused-video-hides-controls.html"; sourceTree = "<group>"; }; >+ 2E691AE91D78B52B00129407 /* large-videos-playing-video-keeps-controls.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-videos-playing-video-keeps-controls.html"; sourceTree = "<group>"; }; >+ 2E691AEC1D78B90200129407 /* large-videos-playing-muted-video-hides-controls.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-videos-playing-muted-video-hides-controls.html"; sourceTree = "<group>"; }; >+ 2E691AEE1D79DE6F00129407 /* large-videos-autoplaying-click-to-pause.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-videos-autoplaying-click-to-pause.html"; sourceTree = "<group>"; }; >+ 2E691AF01D79E51400129407 /* large-videos-autoplaying-scroll-to-video.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-videos-autoplaying-scroll-to-video.html"; sourceTree = "<group>"; }; >+ 2E691AF21D79E75400129407 /* large-video-playing-scroll-away.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-playing-scroll-away.html"; sourceTree = "<group>"; }; >+ 2E7765CC16C4D80A00BA2BB1 /* mainIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = mainIOS.mm; sourceTree = "<group>"; }; >+ 2E7765CE16C4D81100BA2BB1 /* mainMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = mainMac.mm; sourceTree = "<group>"; }; >+ 2E7EF7AC1F266A8100DFB67C /* AppKitSPI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppKitSPI.h; sourceTree = "<group>"; }; >+ 2E9896141D8F092B00739892 /* text-and-password-inputs.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "text-and-password-inputs.html"; sourceTree = "<group>"; }; >+ 2EB29D5D1F762DA50023A5F1 /* dump-datatransfer-types.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "dump-datatransfer-types.html"; sourceTree = "<group>"; }; >+ 2ECFF5541D9B12F800B55394 /* NowPlayingControlsTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = NowPlayingControlsTests.mm; sourceTree = "<group>"; }; >+ 2EFF06C21D8862120004BB30 /* large-video-offscreen.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-offscreen.html"; sourceTree = "<group>"; }; >+ 2EFF06C41D8867700004BB30 /* change-video-source-on-click.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "change-video-source-on-click.html"; sourceTree = "<group>"; }; >+ 2EFF06C61D886A560004BB30 /* change-video-source-on-end.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "change-video-source-on-end.html"; sourceTree = "<group>"; }; >+ 2EFF06CC1D8A42910004BB30 /* input-field-in-scrollable-document.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "input-field-in-scrollable-document.html"; sourceTree = "<group>"; }; >+ 2EFF06D21D8AEDBB0004BB30 /* TestWKWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TestWKWebView.h; path = cocoa/TestWKWebView.h; sourceTree = "<group>"; }; >+ 2EFF06D31D8AEDBB0004BB30 /* TestWKWebView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TestWKWebView.mm; path = cocoa/TestWKWebView.mm; sourceTree = "<group>"; }; >+ 2EFF06D61D8AF34A0004BB30 /* WKWebViewCandidateTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewCandidateTests.mm; sourceTree = "<group>"; }; >+ 3151180F1DB1ADD500176304 /* ExtendedColor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExtendedColor.cpp; sourceTree = "<group>"; }; >+ 315231C91EB3B3C700A22A16 /* GPUCommandQueue.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GPUCommandQueue.mm; sourceTree = "<group>"; }; >+ 3162AE9B1E6F2FCE000E4DBC /* GPUDevice.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GPUDevice.mm; sourceTree = "<group>"; }; >+ 316BDBA01E70D6D800DE0D5A /* GPULibrary.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GPULibrary.mm; sourceTree = "<group>"; }; >+ 316BDBA21E70DEE500DE0D5A /* GPUTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPUTest.h; sourceTree = "<group>"; }; >+ 316BDBA31E70EF5D00DE0D5A /* GPUFunction.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GPUFunction.mm; sourceTree = "<group>"; }; >+ 316BDBAB1E7207F100DE0D5A /* GPUBuffer.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; path = GPUBuffer.mm; sourceTree = "<group>"; }; >+ 333B9CE11277F23100FEFCE3 /* PreventEmptyUserAgent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PreventEmptyUserAgent.cpp; sourceTree = "<group>"; }; >+ 33BE5AF4137B5A6C00705813 /* MouseMoveAfterCrash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MouseMoveAfterCrash.cpp; sourceTree = "<group>"; }; >+ 33BE5AF8137B5AAE00705813 /* MouseMoveAfterCrash_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MouseMoveAfterCrash_Bundle.cpp; sourceTree = "<group>"; }; >+ 33DC890E1419539300747EF7 /* simple-iframe.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "simple-iframe.html"; sourceTree = "<group>"; }; >+ 33DC8910141953A300747EF7 /* LoadCanceledNoServerRedirectCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LoadCanceledNoServerRedirectCallback.cpp; sourceTree = "<group>"; }; >+ 33DC89131419579F00747EF7 /* LoadCanceledNoServerRedirectCallback_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LoadCanceledNoServerRedirectCallback_Bundle.cpp; sourceTree = "<group>"; }; >+ 33E79E05137B5FCE00E32D99 /* mouse-move-listener.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "mouse-move-listener.html"; sourceTree = "<group>"; }; >+ 370CE2291F57343400E7410B /* WKContentViewTargetForAction.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WKContentViewTargetForAction.mm; sourceTree = "<group>"; }; >+ 3722C8681461E03E00C45D00 /* RenderedImageFromDOMRange.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RenderedImageFromDOMRange.mm; sourceTree = "<group>"; }; >+ 374B7A5E1DF36EEE00ACCB6C /* BundleEditingDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BundleEditingDelegate.mm; sourceTree = "<group>"; }; >+ 374B7A5F1DF36EEE00ACCB6C /* BundleEditingDelegatePlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BundleEditingDelegatePlugIn.mm; sourceTree = "<group>"; }; >+ 374B7A621DF3734C00ACCB6C /* BundleEditingDelegateProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = BundleEditingDelegateProtocol.h; sourceTree = "<group>"; }; >+ 3751AF7A169518F800764319 /* DOMNodeFromJSObject.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMNodeFromJSObject.mm; sourceTree = "<group>"; }; >+ 375E0E151D66674400EFEC2C /* WKNSNumber.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKNSNumber.mm; sourceTree = "<group>"; }; >+ 376C8C041D6E197C007D2BB9 /* FrameHandle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FrameHandle.cpp; sourceTree = "<group>"; }; >+ 3776BC62150946BC0043A66D /* DeviceScaleFactorInDashboardRegions.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DeviceScaleFactorInDashboardRegions.mm; sourceTree = "<group>"; }; >+ 378E64711632646D00B6C676 /* InjectedBundleFrameHitTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleFrameHitTest.cpp; sourceTree = "<group>"; }; >+ 378E64751632655D00B6C676 /* InjectedBundleFrameHitTest_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleFrameHitTest_Bundle.cpp; sourceTree = "<group>"; }; >+ 378E647816326FDF00B6C676 /* link-with-title.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "link-with-title.html"; sourceTree = "<group>"; }; >+ 379028B514FABD92007E6B43 /* AcceptsFirstMouse.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AcceptsFirstMouse.mm; sourceTree = "<group>"; }; >+ 379028B814FABE49007E6B43 /* acceptsFirstMouse.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = acceptsFirstMouse.html; sourceTree = "<group>"; }; >+ 3799AD3914120A43005EB0C6 /* StringByEvaluatingJavaScriptFromString.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = StringByEvaluatingJavaScriptFromString.mm; sourceTree = "<group>"; }; >+ 37A22AA51DCAA27200AFBFC4 /* ObservedRenderingProgressEventsAfterCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ObservedRenderingProgressEventsAfterCrash.mm; sourceTree = "<group>"; }; >+ 37A6895D148A9B50005100FA /* SubresourceErrorCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SubresourceErrorCrash.mm; sourceTree = "<group>"; }; >+ 37A709AA1E3EA79000CA5969 /* BundleRangeHandlePlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BundleRangeHandlePlugIn.mm; sourceTree = "<group>"; }; >+ 37A709AC1E3EA7E800CA5969 /* BundleRangeHandleProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BundleRangeHandleProtocol.h; sourceTree = "<group>"; }; >+ 37A709AD1E3EA8B000CA5969 /* BundleRangeHandle.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BundleRangeHandle.mm; sourceTree = "<group>"; }; >+ 37B47E2E1D64E7CA005F4EFF /* WKObject.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKObject.mm; sourceTree = "<group>"; }; >+ 37BCA61B1B596BA9002012CA /* ShouldOpenExternalURLsInNewWindowActions.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ShouldOpenExternalURLsInNewWindowActions.mm; sourceTree = "<group>"; }; >+ 37C784DE197C8F2E0010A496 /* RenderedImageFromDOMNode.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RenderedImageFromDOMNode.mm; sourceTree = "<group>"; }; >+ 37C7CC2B1EA4146B007BD956 /* WeakLinking.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WeakLinking.cpp; sourceTree = "<group>"; }; >+ 37C7CC2E1EA41702007BD956 /* libTestWTFAlwaysMissing-macOS-v2.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; path = "libTestWTFAlwaysMissing-macOS-v2.tbd"; sourceTree = "<group>"; }; >+ 37C7CC331EA41EC8007BD956 /* libTestWTFAlwaysMissing-iOS-v2.tbd */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = "sourcecode.text-based-dylib-definition"; path = "libTestWTFAlwaysMissing-iOS-v2.tbd"; sourceTree = "<group>"; }; >+ 37C7CC341EA41EC8007BD956 /* libTestWTFAlwaysMissing-iOS.tbd */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = "sourcecode.text-based-dylib-definition"; path = "libTestWTFAlwaysMissing-iOS.tbd"; sourceTree = "<group>"; }; >+ 37C7CC351EA41EC8007BD956 /* libTestWTFAlwaysMissing-macOS.tbd */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = "sourcecode.text-based-dylib-definition"; path = "libTestWTFAlwaysMissing-macOS.tbd"; sourceTree = "<group>"; }; >+ 37D36ED61AF42ECD00BAF5D9 /* LoadAlternateHTMLString.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LoadAlternateHTMLString.mm; sourceTree = "<group>"; }; >+ 37DC678B140D7C5000ABCCDB /* DOMRangeOfString.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMRangeOfString.mm; sourceTree = "<group>"; }; >+ 37DC678F140D7D3A00ABCCDB /* DOMRangeOfString.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = DOMRangeOfString.html; sourceTree = "<group>"; }; >+ 37E1064A1697676400B78BD0 /* DOMHTMLTableCellCellAbove.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMHTMLTableCellCellAbove.mm; sourceTree = "<group>"; }; >+ 37E1064B169767F700B78BD0 /* DOMHTMLTableCellElementCellAbove.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = DOMHTMLTableCellElementCellAbove.html; sourceTree = "<group>"; }; >+ 37E38C33169B7D010084C28C /* WebViewDidRemoveFrameFromHierarchy.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebViewDidRemoveFrameFromHierarchy.mm; sourceTree = "<group>"; }; >+ 37E7DD631EA06FF2009B396D /* AdditionalReadAccessAllowedURLs.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AdditionalReadAccessAllowedURLs.mm; sourceTree = "<group>"; }; >+ 37E7DD651EA0715B009B396D /* AdditionalReadAccessAllowedURLsProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdditionalReadAccessAllowedURLsProtocol.h; sourceTree = "<group>"; }; >+ 37E7DD661EA071F3009B396D /* AdditionalReadAccessAllowedURLsPlugin.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AdditionalReadAccessAllowedURLsPlugin.mm; sourceTree = "<group>"; }; >+ 37FB72951DB2E82F00E41BE4 /* ContextMenuDefaultItemsHaveTags.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContextMenuDefaultItemsHaveTags.mm; sourceTree = "<group>"; }; >+ 3F1B52681D3D7129008D60C4 /* FullscreenLayoutConstraints.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FullscreenLayoutConstraints.mm; sourceTree = "<group>"; }; >+ 3FBD1B491D39D1DB00E6D6FA /* FullscreenLayoutConstraints.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = FullscreenLayoutConstraints.html; sourceTree = "<group>"; }; >+ 3FCC4FE41EC4E8520076E37C /* PictureInPictureDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PictureInPictureDelegate.mm; sourceTree = "<group>"; }; >+ 3FCC4FE61EC4E87E0076E37C /* PictureInPictureDelegate.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = PictureInPictureDelegate.html; sourceTree = "<group>"; }; >+ 41973B5A1AF2286A006C7B36 /* FileSystem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FileSystem.cpp; sourceTree = "<group>"; }; >+ 41973B5C1AF22875006C7B36 /* SharedBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SharedBuffer.cpp; sourceTree = "<group>"; }; >+ 440A1D3814A0103A008A66F2 /* URL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = URL.cpp; sourceTree = "<group>"; }; >+ 442BBF681C91CAD90017087F /* RefLogger.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RefLogger.cpp; sourceTree = "<group>"; }; >+ 44817A2E1F0486BF00003810 /* WKRequestActivatedElementInfo.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKRequestActivatedElementInfo.mm; sourceTree = "<group>"; }; >+ 448D7E451EA6C55500ECC756 /* EnvironmentUtilitiesTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EnvironmentUtilitiesTest.cpp; sourceTree = "<group>"; }; >+ 44A622C114A0E2B60048515B /* WTFStringUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WTFStringUtilities.h; sourceTree = "<group>"; }; >+ 46397B941DC2C850009A78AE /* DOMNode.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMNode.mm; sourceTree = "<group>"; }; >+ 4647B1251EBA3B730041D7EF /* ProcessDidTerminate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ProcessDidTerminate.cpp; sourceTree = "<group>"; }; >+ 46C519D81D355A7300DAA51A /* LocalStorageNullEntries.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LocalStorageNullEntries.mm; sourceTree = "<group>"; }; >+ 46C519E21D35629600DAA51A /* LocalStorageNullEntries.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = LocalStorageNullEntries.html; sourceTree = "<group>"; }; >+ 46C519E31D35629600DAA51A /* LocalStorageNullEntries.localstorage */ = {isa = PBXFileReference; lastKnownFileType = file; path = LocalStorageNullEntries.localstorage; sourceTree = "<group>"; }; >+ 46C519E41D35629600DAA51A /* LocalStorageNullEntries.localstorage-shm */ = {isa = PBXFileReference; lastKnownFileType = file; path = "LocalStorageNullEntries.localstorage-shm"; sourceTree = "<group>"; }; >+ 46E66A8F1F0D75590026D83C /* WKWebViewDiagnosticLogging.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewDiagnosticLogging.mm; sourceTree = "<group>"; }; >+ 46E816F71E79E29100375ADC /* RestoreStateAfterTermination.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RestoreStateAfterTermination.mm; sourceTree = "<group>"; }; >+ 4A410F4B19AF7BD6002EBAB5 /* UserMedia.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UserMedia.cpp; sourceTree = "<group>"; }; >+ 4A410F4D19AF7BEF002EBAB5 /* getUserMedia.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = getUserMedia.html; sourceTree = "<group>"; }; >+ 4BB4160116815B2600824238 /* JSWrapperForNodeInWebFrame.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = JSWrapperForNodeInWebFrame.mm; sourceTree = "<group>"; }; >+ 4BB4160316815F9100824238 /* ElementAtPointInWebFrame.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ElementAtPointInWebFrame.mm; sourceTree = "<group>"; }; >+ 4BFDFFA61314776C0061F24B /* HitTestResultNodeHandle_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HitTestResultNodeHandle_Bundle.cpp; sourceTree = "<group>"; }; >+ 4BFDFFA8131477770061F24B /* HitTestResultNodeHandle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HitTestResultNodeHandle.cpp; sourceTree = "<group>"; }; >+ 5104776F1D298D85009747EB /* IDBDeleteRecovery.sqlite3 */ = {isa = PBXFileReference; lastKnownFileType = file; path = IDBDeleteRecovery.sqlite3; sourceTree = "<group>"; }; >+ 510477701D298D85009747EB /* IDBDeleteRecovery.sqlite3-shm */ = {isa = PBXFileReference; lastKnownFileType = file; path = "IDBDeleteRecovery.sqlite3-shm"; sourceTree = "<group>"; }; >+ 510477711D298D85009747EB /* IDBDeleteRecovery.sqlite3-wal */ = {isa = PBXFileReference; lastKnownFileType = file; path = "IDBDeleteRecovery.sqlite3-wal"; sourceTree = "<group>"; }; >+ 510477751D298E03009747EB /* IDBDeleteRecovery.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IDBDeleteRecovery.mm; sourceTree = "<group>"; }; >+ 510477761D298E57009747EB /* IDBDeleteRecovery.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = IDBDeleteRecovery.html; sourceTree = "<group>"; }; >+ 5110FCEF1E01CBAA006F8D0B /* IDBIndexUpgradeToV2.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IDBIndexUpgradeToV2.mm; sourceTree = "<group>"; }; >+ 5110FCF01E01CD53006F8D0B /* IDBIndexUpgradeToV2.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = IDBIndexUpgradeToV2.html; sourceTree = "<group>"; }; >+ 5110FCF21E01CD77006F8D0B /* IndexUpgrade.blob */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = IndexUpgrade.blob; sourceTree = "<group>"; }; >+ 5110FCF31E01CD77006F8D0B /* IndexUpgrade.sqlite3 */ = {isa = PBXFileReference; lastKnownFileType = file; path = IndexUpgrade.sqlite3; sourceTree = "<group>"; }; >+ 5120C83B1E674E350025B250 /* WebsiteDataStoreCustomPaths.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = WebsiteDataStoreCustomPaths.html; sourceTree = "<group>"; }; >+ 5120C83C1E6750790025B250 /* WebsiteDataStoreCustomPaths.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebsiteDataStoreCustomPaths.mm; sourceTree = "<group>"; }; >+ 51393E1D1523944A005F39C5 /* DOMWindowExtensionBasic_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DOMWindowExtensionBasic_Bundle.cpp; sourceTree = "<group>"; }; >+ 51393E1E1523944A005F39C5 /* DOMWindowExtensionBasic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DOMWindowExtensionBasic.cpp; sourceTree = "<group>"; }; >+ 5142B2701517C88B00C32B19 /* ContextMenuCanCopyURL.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContextMenuCanCopyURL.mm; sourceTree = "<group>"; }; >+ 5142B2721517C89100C32B19 /* ContextMenuCanCopyURL.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = ContextMenuCanCopyURL.html; sourceTree = "<group>"; }; >+ 514958BD1F7427AC00E87BAD /* WKWebViewAutofillTests.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewAutofillTests.mm; sourceTree = "<group>"; }; >+ 515BE16E1D4288FF00DD7C68 /* StoreBlobToBeDeleted.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = StoreBlobToBeDeleted.html; sourceTree = "<group>"; }; >+ 515BE1701D428BD100DD7C68 /* StoreBlobThenDelete.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = StoreBlobThenDelete.mm; sourceTree = "<group>"; }; >+ 51714EB21CF8C761004723C4 /* WebProcessKillIDBCleanup-1.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "WebProcessKillIDBCleanup-1.html"; sourceTree = "<group>"; }; >+ 51714EB31CF8C761004723C4 /* WebProcessKillIDBCleanup-2.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "WebProcessKillIDBCleanup-2.html"; sourceTree = "<group>"; }; >+ 51714EB61CF8C7A4004723C4 /* WebProcessKillIDBCleanup.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebProcessKillIDBCleanup.mm; sourceTree = "<group>"; }; >+ 51714EB91D087416004723C4 /* CrossThreadTask.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CrossThreadTask.cpp; sourceTree = "<group>"; }; >+ 517E7DFB15110EA600D0B008 /* MemoryCachePruneWithinResourceLoadDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MemoryCachePruneWithinResourceLoadDelegate.mm; sourceTree = "<group>"; }; >+ 517E7E031511187500D0B008 /* MemoryCachePruneWithinResourceLoadDelegate.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = MemoryCachePruneWithinResourceLoadDelegate.html; sourceTree = "<group>"; }; >+ 5182C22D1F2BCB410059BA7C /* WKURLSchemeHandler-leaks.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = "WKURLSchemeHandler-leaks.mm"; sourceTree = "<group>"; }; >+ 5198A23F1EA7E595008910B7 /* InitialWarmedProcessUsed.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InitialWarmedProcessUsed.mm; sourceTree = "<group>"; }; >+ 51A5877C1D1B3D8D004BA9AF /* IndexedDBMultiProcess-3.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "IndexedDBMultiProcess-3.html"; sourceTree = "<group>"; }; >+ 51A587821D272EB5004BA9AF /* IndexedDBDatabaseProcessKill-1.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "IndexedDBDatabaseProcessKill-1.html"; sourceTree = "<group>"; }; >+ 51A587841D272EF3004BA9AF /* IndexedDBDatabaseProcessKill.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IndexedDBDatabaseProcessKill.mm; sourceTree = "<group>"; }; >+ 51AF23DE1EF1A3720072F281 /* IconLoadingDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IconLoadingDelegate.mm; sourceTree = "<group>"; }; >+ 51B1EE8D1C80F5880064FB98 /* IndexedDBPersistence.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IndexedDBPersistence.mm; sourceTree = "<group>"; }; >+ 51B1EE941C80FADD0064FB98 /* IndexedDBPersistence-1.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "IndexedDBPersistence-1.html"; sourceTree = "<group>"; }; >+ 51B1EE951C80FADD0064FB98 /* IndexedDBPersistence-2.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "IndexedDBPersistence-2.html"; sourceTree = "<group>"; }; >+ 51B454EB1B4E236B0085EAA6 /* WebViewCloseInsideDidFinishLoadForFrame.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebViewCloseInsideDidFinishLoadForFrame.mm; sourceTree = "<group>"; }; >+ 51BCEE491C84F4AF0042C82E /* IndexedDBMultiProcess.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IndexedDBMultiProcess.mm; sourceTree = "<group>"; }; >+ 51BCEE4C1C84F52C0042C82E /* IndexedDBMultiProcess-1.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "IndexedDBMultiProcess-1.html"; sourceTree = "<group>"; }; >+ 51BCEE4D1C84F52C0042C82E /* IndexedDBMultiProcess-2.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "IndexedDBMultiProcess-2.html"; sourceTree = "<group>"; }; >+ 51C683DD1EA134DB00650183 /* WKURLSchemeHandler-1.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = "WKURLSchemeHandler-1.mm"; sourceTree = "<group>"; }; >+ 51C8E1A41F26AC5400BF731B /* ResourceLoadStatistics.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ResourceLoadStatistics.mm; sourceTree = "<group>"; }; >+ 51C8E1A81F27F47300BF731B /* EmptyGrandfatheredResourceLoadStatistics.plist */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = EmptyGrandfatheredResourceLoadStatistics.plist; sourceTree = "<group>"; }; >+ 51CB4AD71B3A079C00C1B1C6 /* ModalAlertsSPI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ModalAlertsSPI.cpp; sourceTree = "<group>"; }; >+ 51CD1C6A1B38CE3600142CA5 /* ModalAlerts.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ModalAlerts.mm; sourceTree = "<group>"; }; >+ 51CD1C711B38D48400142CA5 /* modal-alerts-in-new-about-blank-window.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "modal-alerts-in-new-about-blank-window.html"; sourceTree = "<group>"; }; >+ 51D124971E763AF8002B2820 /* WKHTTPCookieStore.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKHTTPCookieStore.mm; sourceTree = "<group>"; }; >+ 51DB16CD1F085047001FA4C5 /* WebViewIconLoading.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WebViewIconLoading.mm; sourceTree = "<group>"; }; >+ 51E5C7041919EA5F00D8B3E1 /* ShouldKeepCurrentBackForwardListItemInList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShouldKeepCurrentBackForwardListItemInList.cpp; sourceTree = "<group>"; }; >+ 51E6A8921D2F1BEC00C004B6 /* LocalStorageClear.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LocalStorageClear.mm; sourceTree = "<group>"; }; >+ 51E6A8951D2F1C7700C004B6 /* LocalStorageClear.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = LocalStorageClear.html; sourceTree = "<group>"; }; >+ 51E780361919AFF8001829A2 /* simple2.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = simple2.html; sourceTree = "<group>"; }; >+ 51E780371919AFF8001829A2 /* simple3.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = simple3.html; sourceTree = "<group>"; }; >+ 51E93016156B13E1004C99DF /* WKPageGetScaleFactorNotZero.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKPageGetScaleFactorNotZero.cpp; sourceTree = "<group>"; }; >+ 51FBBB4C1513D4E900822738 /* WebViewCanPasteURL.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebViewCanPasteURL.mm; sourceTree = "<group>"; }; >+ 51FCF7971534AC6D00104491 /* ShouldGoToBackForwardListItem_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShouldGoToBackForwardListItem_Bundle.cpp; sourceTree = "<group>"; }; >+ 51FCF7981534AC6D00104491 /* ShouldGoToBackForwardListItem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShouldGoToBackForwardListItem.cpp; sourceTree = "<group>"; }; >+ 520BCF4A141EB09E00937EA8 /* WebArchive_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebArchive_Bundle.cpp; sourceTree = "<group>"; }; >+ 520BCF4B141EB09E00937EA8 /* WebArchive.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebArchive.cpp; sourceTree = "<group>"; }; >+ 524BBC9B19DF3714002F1AF1 /* file-with-video.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "file-with-video.html"; sourceTree = "<group>"; }; >+ 524BBC9C19DF377A002F1AF1 /* WKPageIsPlayingAudio.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKPageIsPlayingAudio.cpp; sourceTree = "<group>"; }; >+ 524BBCA019E30C63002F1AF1 /* test.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = test.mp4; sourceTree = "<group>"; }; >+ 52B8CF9415868CF000281053 /* SetDocumentURI.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = SetDocumentURI.html; sourceTree = "<group>"; }; >+ 52B8CF9515868CF000281053 /* SetDocumentURI.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SetDocumentURI.mm; sourceTree = "<group>"; }; >+ 52CB47401448FB9300873995 /* LoadAlternateHTMLStringWithNonDirectoryURL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LoadAlternateHTMLStringWithNonDirectoryURL.cpp; sourceTree = "<group>"; }; >+ 52D673EC1AFB126800FA19FE /* WKPageCopySessionStateWithFiltering.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKPageCopySessionStateWithFiltering.cpp; sourceTree = "<group>"; }; >+ 52E5CE4514D21E9D003B2BD8 /* ParentFrame.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParentFrame.cpp; sourceTree = "<group>"; }; >+ 52E5CE4814D21EAB003B2BD8 /* ParentFrame_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParentFrame_Bundle.cpp; sourceTree = "<group>"; }; >+ 5311BD5D1EA9490D00525281 /* ThreadMessages.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ThreadMessages.cpp; sourceTree = "<group>"; }; >+ 531C1D8D1DF8EF72006E979F /* LEBDecoder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LEBDecoder.cpp; sourceTree = "<group>"; }; >+ 536770331CC8022800D425B1 /* WebScriptObjectDescription.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebScriptObjectDescription.mm; sourceTree = "<group>"; }; >+ 536770351CC812F900D425B1 /* WebScriptObjectDescription.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = WebScriptObjectDescription.html; sourceTree = "<group>"; }; >+ 53EC253F1E96BC80000831B9 /* PriorityQueue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PriorityQueue.cpp; sourceTree = "<group>"; }; >+ 55226A2E1EB969B600C36AD0 /* large-red-square-image.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-red-square-image.html"; sourceTree = "<group>"; }; >+ 5597F8341D9596C80066BC21 /* SynchronizedFixedQueue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SynchronizedFixedQueue.cpp; sourceTree = "<group>"; }; >+ 5714ECB81CA8B58800051AC8 /* DownloadRequestOriginalURL.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = DownloadRequestOriginalURL.html; sourceTree = "<group>"; }; >+ 5714ECBA1CA8BFD100051AC8 /* DownloadRequestOriginalURLFrame.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = DownloadRequestOriginalURLFrame.html; sourceTree = "<group>"; }; >+ 5714ECBC1CA8C21800051AC8 /* DownloadRequestOriginalURL2.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = DownloadRequestOriginalURL2.html; sourceTree = "<group>"; }; >+ 571F7FCF1F2961E100946648 /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal */ = {isa = PBXFileReference; lastKnownFileType = file; path = "IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal"; sourceTree = "<group>"; }; >+ 5735F0251F3A4EA6000EE801 /* TestWebKitAPI-iOS.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "TestWebKitAPI-iOS.entitlements"; sourceTree = "<group>"; }; >+ 57599E201F07191700A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IndexedDBStructuredCloneBackwardCompatibility.mm; sourceTree = "<group>"; }; >+ 57599E231F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityWrite.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = IndexedDBStructuredCloneBackwardCompatibilityWrite.html; sourceTree = "<group>"; }; >+ 57599E241F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3 */ = {isa = PBXFileReference; lastKnownFileType = file; path = IndexedDBStructuredCloneBackwardCompatibility.sqlite3; sourceTree = "<group>"; }; >+ 57599E251F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityRead.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = IndexedDBStructuredCloneBackwardCompatibilityRead.html; sourceTree = "<group>"; }; >+ 57599E261F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm */ = {isa = PBXFileReference; lastKnownFileType = file; path = "IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm"; sourceTree = "<group>"; }; >+ 5769C50A1D9B0001000847FB /* SerializedCryptoKeyWrap.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SerializedCryptoKeyWrap.mm; sourceTree = "<group>"; }; >+ 57901FAC1CAF12C200ED64F9 /* LoadInvalidURLRequest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LoadInvalidURLRequest.mm; sourceTree = "<group>"; }; >+ 57901FAE1CAF137100ED64F9 /* LoadInvalidURLRequest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LoadInvalidURLRequest.mm; sourceTree = "<group>"; }; >+ 57901FB01CAF141C00ED64F9 /* LoadInvalidURLRequest.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = LoadInvalidURLRequest.html; sourceTree = "<group>"; }; >+ 5797FE2F1EB15A5F00B2F4A0 /* NavigationClientDefaultCrypto.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NavigationClientDefaultCrypto.cpp; sourceTree = "<group>"; }; >+ 5797FE321EB15A8900B2F4A0 /* navigation-client-default-crypto.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "navigation-client-default-crypto.html"; sourceTree = "<group>"; }; >+ 5798E2AF1CAF5C2800C5CBA0 /* ProvisionalURLNotChange.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ProvisionalURLNotChange.mm; sourceTree = "<group>"; }; >+ 57F10D921C7E7B3800ECDF30 /* IsNavigationActionTrusted.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IsNavigationActionTrusted.mm; sourceTree = "<group>"; }; >+ 57F56A5B1C7F8A4000F31D7E /* IsNavigationActionTrusted.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = IsNavigationActionTrusted.html; sourceTree = "<group>"; }; >+ 5C0BF88C1DD5957400B00328 /* MemoryPressureHandler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MemoryPressureHandler.mm; sourceTree = "<group>"; }; >+ 5C0BF88F1DD5999B00B00328 /* WebViewCanPasteZeroPng.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebViewCanPasteZeroPng.mm; sourceTree = "<group>"; }; >+ 5C2936911D5BF63E00DEAB1E /* CookieAcceptPolicy.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CookieAcceptPolicy.mm; sourceTree = "<group>"; }; >+ 5C2936941D5BFD1900DEAB1E /* CookieMessage.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = CookieMessage.html; sourceTree = "<group>"; }; >+ 5C4A84941F7EEFD400ACFC54 /* Configuration.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Configuration.mm; sourceTree = "<group>"; }; >+ 5C5E633D1D0B67940085A025 /* UniqueRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UniqueRef.cpp; sourceTree = "<group>"; }; >+ 5C69BDD41F82A7EB000F4F4B /* JavaScriptDuringNavigation.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = JavaScriptDuringNavigation.mm; sourceTree = "<group>"; }; >+ 5C6E65411D5CEF8500F7862E /* URLParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = URLParser.cpp; sourceTree = "<group>"; }; >+ 5C726D6D1D3EE06800C5E1A1 /* InstanceMethodSwizzler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = InstanceMethodSwizzler.h; path = cocoa/InstanceMethodSwizzler.h; sourceTree = "<group>"; }; >+ 5C726D6E1D3EE06800C5E1A1 /* InstanceMethodSwizzler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = InstanceMethodSwizzler.mm; path = cocoa/InstanceMethodSwizzler.mm; sourceTree = "<group>"; }; >+ 5C79640F1EB0269B0075D74C /* EventModifiers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EventModifiers.cpp; sourceTree = "<group>"; }; >+ 5C973F5B1F58EF0A00359C27 /* WebGLPolicy.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebGLPolicy.mm; sourceTree = "<group>"; }; >+ 5C9E56841DF9143D00C9EE33 /* WebsitePolicies.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebsitePolicies.mm; sourceTree = "<group>"; }; >+ 5C9E56861DF9148E00C9EE33 /* contentBlockerCheck.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = contentBlockerCheck.html; sourceTree = "<group>"; }; >+ 5C9E593E1D3EB1DE00E3C62E /* ApplicationCache.db */ = {isa = PBXFileReference; lastKnownFileType = file; path = ApplicationCache.db; sourceTree = "<group>"; }; >+ 5C9E593F1D3EB1DE00E3C62E /* ApplicationCache.db-shm */ = {isa = PBXFileReference; lastKnownFileType = file; path = "ApplicationCache.db-shm"; sourceTree = "<group>"; }; >+ 5C9E59401D3EB1DE00E3C62E /* ApplicationCache.db-wal */ = {isa = PBXFileReference; lastKnownFileType = file; path = "ApplicationCache.db-wal"; sourceTree = "<group>"; }; >+ 5CA1DEC71F71F40700E71BD3 /* HTTPHeaderField.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTTPHeaderField.cpp; sourceTree = "<group>"; }; >+ 5CA1DED81F74A87100E71BD3 /* ContentRuleListNotification.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContentRuleListNotification.mm; sourceTree = "<group>"; }; >+ 5CB18BA71F5645B200EE23C4 /* ClickAutoFillButton.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ClickAutoFillButton.mm; sourceTree = "<group>"; }; >+ 5CB40B4D1F4B98BE007DC7B9 /* UIDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UIDelegate.mm; sourceTree = "<group>"; }; >+ 5CE354D81E70D9C300BEFE3B /* WKContentExtensionStore.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKContentExtensionStore.mm; sourceTree = "<group>"; }; >+ 5E4B1D2C1D404C6100053621 /* WKScrollViewDelegateCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WKScrollViewDelegateCrash.mm; path = ../ios/WKScrollViewDelegateCrash.mm; sourceTree = "<group>"; }; >+ 631EFFF51E7B5E8D00D2EBB8 /* Geolocation.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Geolocation.mm; sourceTree = "<group>"; }; >+ 634910DF1E9D3FF300880309 /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; }; >+ 6356FB211EC4E0BA0044BF18 /* VisibleContentRect.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = VisibleContentRect.mm; sourceTree = "<group>"; }; >+ 636353A61E9861940009F8AF /* GeolocationGetCurrentPositionResult.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = GeolocationGetCurrentPositionResult.html; sourceTree = "<group>"; }; >+ 754CEC801F6722DC00D0039A /* AutoFillAvailable.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = AutoFillAvailable.mm; sourceTree = "<group>"; }; >+ 755A20AE1E6E38630093C69F /* DatabaseTrackerTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DatabaseTrackerTest.cpp; sourceTree = "<group>"; }; >+ 7560917719259C59009EF06E /* MemoryCacheAddImageToCacheIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MemoryCacheAddImageToCacheIOS.mm; sourceTree = "<group>"; }; >+ 75F3133F18C171B70041CAEC /* EphemeralSessionPushStateNoHistoryCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EphemeralSessionPushStateNoHistoryCallback.cpp; sourceTree = "<group>"; }; >+ 764322D51B61CCA40024F801 /* WordBoundaryTypingAttributes.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WordBoundaryTypingAttributes.mm; sourceTree = "<group>"; }; >+ 76734997193016DC00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StopLoadingDuringDidFailProvisionalLoad.cpp; sourceTree = "<group>"; }; >+ 7673499A1930182E00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad_bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StopLoadingDuringDidFailProvisionalLoad_bundle.cpp; sourceTree = "<group>"; }; >+ 76E182D91547550100F1FADD /* WillSendSubmitEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WillSendSubmitEvent.cpp; sourceTree = "<group>"; }; >+ 76E182DC1547569100F1FADD /* WillSendSubmitEvent_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WillSendSubmitEvent_Bundle.cpp; sourceTree = "<group>"; }; >+ 76E182DE15475A8300F1FADD /* auto-submitting-form.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "auto-submitting-form.html"; sourceTree = "<group>"; }; >+ 7A010BCA1D877C0500EDE72A /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; >+ 7A010BCC1D877C0D00EDE72A /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; >+ 7A1458FB1AD5C03500E06772 /* mouse-button-listener.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "mouse-button-listener.html"; sourceTree = "<group>"; }; >+ 7A32D7491F02151500162C44 /* FileMonitor.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = FileMonitor.cpp; sourceTree = "<group>"; }; >+ 7A38D7E51C752D5F004F157D /* HashCountedSet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HashCountedSet.cpp; sourceTree = "<group>"; }; >+ 7A5623101AD5AF3E0096B920 /* MenuTypesForMouseEvents.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MenuTypesForMouseEvents.cpp; sourceTree = "<group>"; }; >+ 7A66BDB51EAF14D000CCC924 /* LimitTitleSize.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LimitTitleSize.cpp; sourceTree = "<group>"; }; >+ 7A66BDB71EAF150100CCC924 /* set-long-title.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "set-long-title.html"; sourceTree = "<group>"; }; >+ 7A6A2C6F1DCCF87B00C0D085 /* LocalStorageQuirkTest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LocalStorageQuirkTest.mm; sourceTree = "<group>"; }; >+ 7A6A2C711DCCFB0200C0D085 /* LocalStorageQuirkEnabled.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = LocalStorageQuirkEnabled.html; sourceTree = "<group>"; }; >+ 7A7B0E7E1EAFE454006AB8AE /* LimitTitleSize.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LimitTitleSize.mm; sourceTree = "<group>"; }; >+ 7A909A6F1D877475007E10F8 /* AffineTransform.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AffineTransform.cpp; sourceTree = "<group>"; }; >+ 7A909A701D877475007E10F8 /* FloatPoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FloatPoint.cpp; sourceTree = "<group>"; }; >+ 7A909A711D877475007E10F8 /* FloatRect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FloatRect.cpp; sourceTree = "<group>"; }; >+ 7A909A721D877475007E10F8 /* FloatSize.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FloatSize.cpp; sourceTree = "<group>"; }; >+ 7A909A731D877475007E10F8 /* IntPoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IntPoint.cpp; sourceTree = "<group>"; }; >+ 7A909A741D877475007E10F8 /* IntRect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IntRect.cpp; sourceTree = "<group>"; }; >+ 7A909A751D877475007E10F8 /* IntSize.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IntSize.cpp; sourceTree = "<group>"; }; >+ 7A95BDDF1E9BEC4000865498 /* InjectedBundleAppleEvent_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleAppleEvent_Bundle.cpp; sourceTree = "<group>"; }; >+ 7A95BDE01E9BEC4000865498 /* InjectedBundleAppleEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleAppleEvent.cpp; sourceTree = "<group>"; }; >+ 7A99D9931AD4A29D00373141 /* MenuTypesForMouseEvents.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MenuTypesForMouseEvents.mm; sourceTree = "<group>"; }; >+ 7AA021BA1AB09EA70052953F /* DateMath.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DateMath.cpp; sourceTree = "<group>"; }; >+ 7AA6A1511AAC0B31002B2ED3 /* WorkQueue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WorkQueue.cpp; sourceTree = "<group>"; }; >+ 7AD3FE8D1D75FB8D00B169A4 /* TransformationMatrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TransformationMatrix.cpp; sourceTree = "<group>"; }; >+ 7AE9E5081AE5AE8B00CF874B /* test.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = test.pdf; sourceTree = "<group>"; }; >+ 7AEAD47C1E20113800416EFE /* CrossPartitionFileSchemeAccess.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CrossPartitionFileSchemeAccess.mm; sourceTree = "<group>"; }; >+ 7AEAD47D1E20114E00416EFE /* CrossPartitionFileSchemeAccess.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = CrossPartitionFileSchemeAccess.html; path = Tests/mac/CrossPartitionFileSchemeAccess.html; sourceTree = SOURCE_ROOT; }; >+ 7C1AF7931E8DCBAB002645B9 /* PrepareForMoveToWindow.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PrepareForMoveToWindow.mm; sourceTree = "<group>"; }; >+ 7C3965051CDD74F90094DBB8 /* Color.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Color.cpp; sourceTree = "<group>"; }; >+ 7C3DB8E21D12129B00AE8CC3 /* CommandBackForward.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CommandBackForward.mm; sourceTree = "<group>"; }; >+ 7C417F311D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewDefaultNavigationDelegate.mm; sourceTree = "<group>"; }; >+ 7C486BA01AA1254B003F6F9B /* bundle-file.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "bundle-file.html"; sourceTree = "<group>"; }; >+ 7C54A4BC1AA11CCA00380F78 /* WKBundleFileHandle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKBundleFileHandle.cpp; sourceTree = "<group>"; }; >+ 7C54A4BF1AA11CE400380F78 /* WKBundleFileHandle_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKBundleFileHandle_Bundle.cpp; sourceTree = "<group>"; }; >+ 7C6BBD8A19CEA54300C1F5E0 /* Counters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Counters.h; sourceTree = "<group>"; }; >+ 7C6BBD8B19CEA63000C1F5E0 /* Counters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Counters.cpp; sourceTree = "<group>"; }; >+ 7C74D42D188228F300E5ED57 /* StringView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringView.cpp; sourceTree = "<group>"; }; >+ 7C83DF681D0A590C00FEBCF3 /* libTestWTF.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libTestWTF.a; sourceTree = BUILT_PRODUCTS_DIR; }; >+ 7C83E0231D0A5AE400FEBCF3 /* TestWTF */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = TestWTF; sourceTree = BUILT_PRODUCTS_DIR; }; >+ 7C83E0261D0A5B8D00FEBCF3 /* TestWTF.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = TestWTF.xcconfig; sourceTree = "<group>"; }; >+ 7C83E0271D0A5B8D00FEBCF3 /* TestWTFLibrary.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = TestWTFLibrary.xcconfig; sourceTree = "<group>"; }; >+ 7C83E0291D0A5CDF00FEBCF3 /* libWTF.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libWTF.a; path = ../../../../../Builds/Debug/libWTF.a; sourceTree = "<group>"; }; >+ 7C83E0331D0A5F2700FEBCF3 /* libicucore.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libicucore.dylib; path = /usr/lib/libicucore.dylib; sourceTree = SDKROOT; }; >+ 7C83E0361D0A5F7000FEBCF3 /* Utilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Utilities.h; sourceTree = "<group>"; }; >+ 7C83E0391D0A602700FEBCF3 /* UtilitiesCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = UtilitiesCocoa.mm; path = cocoa/UtilitiesCocoa.mm; sourceTree = "<group>"; }; >+ 7C882E031C80C624006BF731 /* UserContentWorld.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UserContentWorld.mm; sourceTree = "<group>"; }; >+ 7C882E041C80C624006BF731 /* UserContentWorldPlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UserContentWorldPlugIn.mm; sourceTree = "<group>"; }; >+ 7C882E051C80C624006BF731 /* UserContentWorldProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserContentWorldProtocol.h; sourceTree = "<group>"; }; >+ 7C89D2AA1A69B80D003A5FDE /* WKPageConfiguration.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKPageConfiguration.cpp; sourceTree = "<group>"; }; >+ 7C8DDAA91735DE1D00EA5AC0 /* CloseThenTerminate.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = CloseThenTerminate.cpp; sourceTree = "<group>"; }; >+ 7C9ED98A17A19D0600E4DC33 /* attributedStringStrikethrough.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = attributedStringStrikethrough.html; sourceTree = "<group>"; }; >+ 7CB184C41AA3F2100066EDFD /* ContentExtensions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ContentExtensions.cpp; sourceTree = "<group>"; }; >+ 7CBBA07619BB8A9100BBF025 /* OSObjectPtr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = OSObjectPtr.cpp; sourceTree = "<group>"; }; >+ 7CC3E1FA197E234100BE6252 /* UserContentController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UserContentController.mm; sourceTree = "<group>"; }; >+ 7CCB4DA71C83AE7300CC6918 /* PageGroup.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PageGroup.cpp; sourceTree = "<group>"; }; >+ 7CCB99201D3B41F6003922F6 /* UserInitiatedActionInNavigationAction.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UserInitiatedActionInNavigationAction.mm; sourceTree = "<group>"; }; >+ 7CCB99221D3B44E7003922F6 /* open-multiple-external-url.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "open-multiple-external-url.html"; sourceTree = "<group>"; }; >+ 7CCE7E8C1A41144E00447C4C /* libTestWebKitAPI.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libTestWebKitAPI.a; sourceTree = BUILT_PRODUCTS_DIR; }; >+ 7CCE7EA31A4115CB00447C4C /* TestWebKitAPILibrary.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = TestWebKitAPILibrary.xcconfig; sourceTree = "<group>"; }; >+ 7CD0D5AA1D5534DE000CC9E1 /* Variant.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Variant.cpp; sourceTree = "<group>"; }; >+ 7CD4C26C1E2C0E6E00929470 /* StringConcatenate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringConcatenate.cpp; sourceTree = "<group>"; }; >+ 7CEFA9641AC0B9E200B910FD /* _WKUserContentExtensionStore.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = _WKUserContentExtensionStore.mm; sourceTree = "<group>"; }; >+ 7CFBCADD1743234F00B2BFCF /* WillLoad.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WillLoad.cpp; sourceTree = "<group>"; }; >+ 7CFBCAE31743238E00B2BFCF /* WillLoad_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WillLoad_Bundle.cpp; sourceTree = "<group>"; }; >+ 81B50192140F232300D9EB58 /* StringBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringBuilder.cpp; sourceTree = "<group>"; }; >+ 8349D3C11DB96DDA004A9F65 /* ContextMenuDownload.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContextMenuDownload.mm; sourceTree = "<group>"; }; >+ 8349D3C31DB9724F004A9F65 /* link-with-download-attribute.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "link-with-download-attribute.html"; sourceTree = "<group>"; }; >+ 835CF9661D25FCD6001A65D4 /* RestoreSessionStateWithoutNavigation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RestoreSessionStateWithoutNavigation.cpp; sourceTree = "<group>"; }; >+ 8361F1771E610B2100759B25 /* link-with-download-attribute-with-slashes.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "link-with-download-attribute-with-slashes.html"; sourceTree = "<group>"; }; >+ 83779C371F82FEB0007CDA8A /* VisitedLinkStore.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = VisitedLinkStore.mm; sourceTree = "<group>"; }; >+ 837A35F01D9A1E6400663C57 /* DownloadRequestBlobURL.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = DownloadRequestBlobURL.html; sourceTree = "<group>"; }; >+ 83B6DE6E1EE7520F001E792F /* RestoreSessionState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RestoreSessionState.cpp; sourceTree = "<group>"; }; >+ 83B88A331C80056D00BB2418 /* HTMLParserIdioms.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLParserIdioms.cpp; sourceTree = "<group>"; }; >+ 83BAEE8C1EF4625500DDE894 /* PluginLoadClientPolicies.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PluginLoadClientPolicies.mm; sourceTree = "<group>"; }; >+ 83DB79671EF63B3C00BFA5E5 /* Function.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Function.cpp; sourceTree = "<group>"; }; >+ 83DE134C1EF1C4FE00C1B355 /* ResponsivenessTimer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResponsivenessTimer.cpp; sourceTree = "<group>"; }; >+ 86BD19971A2DB05B006DCF0A /* RefCounter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RefCounter.cpp; sourceTree = "<group>"; }; >+ 8A2C750D16CED9550024F352 /* ResizeWindowAfterCrash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResizeWindowAfterCrash.cpp; sourceTree = "<group>"; }; >+ 8A3AF93A16C9ED2700D248C1 /* ReloadPageAfterCrash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ReloadPageAfterCrash.cpp; sourceTree = "<group>"; }; >+ 8AA28C1916D2FA7B002FF4DB /* LoadPageOnCrash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LoadPageOnCrash.cpp; sourceTree = "<group>"; }; >+ 8DD76FA10486AA7600D96B5E /* TestWebKitAPI */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = TestWebKitAPI; sourceTree = BUILT_PRODUCTS_DIR; }; >+ 8E4A85361E1D1AA100F53B0F /* GridPosition.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GridPosition.cpp; sourceTree = "<group>"; }; >+ 930AD401150698B30067970F /* lots-of-text.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "lots-of-text.html"; sourceTree = "<group>"; }; >+ 9310CD361EF708FB0050FFE0 /* Function.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Function.cpp; sourceTree = "<group>"; }; >+ 9329AA281DE3F81E003ABD07 /* TextBreakIterator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextBreakIterator.cpp; sourceTree = "<group>"; }; >+ 9331407B17B4419000F083B1 /* DidNotHandleKeyDown.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DidNotHandleKeyDown.cpp; sourceTree = "<group>"; }; >+ 93575C551D30366E000D604D /* focus-inputs.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "focus-inputs.html"; sourceTree = "<group>"; }; >+ 9361002814DC957B0061379D /* lots-of-iframes.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "lots-of-iframes.html"; sourceTree = "<group>"; }; >+ 93625D261CD973AF006DC1F1 /* large-video-without-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-without-audio.html"; sourceTree = "<group>"; }; >+ 936F727E1CD7D9D00068A0FB /* large-video-with-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-with-audio.html"; sourceTree = "<group>"; }; >+ 936F727F1CD7D9D00068A0FB /* large-video-with-audio.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = "large-video-with-audio.mp4"; sourceTree = "<group>"; }; >+ 939BA91614103412001A01BD /* DeviceScaleFactorOnBack.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DeviceScaleFactorOnBack.mm; sourceTree = "<group>"; }; >+ 939BFE3918E5548900883275 /* StringTruncator.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = StringTruncator.mm; sourceTree = "<group>"; }; >+ 93A427A8180D9B0700CD24D7 /* RefPtr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RefPtr.cpp; sourceTree = "<group>"; }; >+ 93A427AA180DA26400CD24D7 /* Ref.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Ref.cpp; sourceTree = "<group>"; }; >+ 93A427AC180DA60F00CD24D7 /* MoveOnly.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MoveOnly.h; sourceTree = "<group>"; }; >+ 93A427AD180DA60F00CD24D7 /* RefLogger.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RefLogger.h; sourceTree = "<group>"; }; >+ 93A720E518F1A0E800A848E1 /* CalculationValue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CalculationValue.cpp; sourceTree = "<group>"; }; >+ 93A7EB3C18FA63A4009E7670 /* URLExtras.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = URLExtras.mm; sourceTree = "<group>"; }; >+ 93ABA80816DDAB91002DB2FA /* StringHasher.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringHasher.cpp; sourceTree = "<group>"; }; >+ 93AF4ECA1506F035007FD57E /* NewFirstVisuallyNonEmptyLayoutForImages.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NewFirstVisuallyNonEmptyLayoutForImages.cpp; sourceTree = "<group>"; }; >+ 93AF4ECD1506F064007FD57E /* NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp; sourceTree = "<group>"; }; >+ 93AF4ECF1506F123007FD57E /* lots-of-images.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "lots-of-images.html"; sourceTree = "<group>"; }; >+ 93CFA8661CEB9DE1000565A8 /* autofocused-text-input.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autofocused-text-input.html"; sourceTree = "<group>"; }; >+ 93CFA8681CEBCFED000565A8 /* CandidateTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CandidateTests.mm; sourceTree = "<group>"; }; >+ 93D3D19B17B1A7B000C7C415 /* all-content-in-one-iframe.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "all-content-in-one-iframe.html"; sourceTree = "<group>"; }; >+ 93D3D19D17B1A84200C7C415 /* LayoutMilestonesWithAllContentInFrame.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LayoutMilestonesWithAllContentInFrame.cpp; sourceTree = "<group>"; }; >+ 93E2D2751ED7D51700FA76F6 /* offscreen-iframe-of-media-document.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "offscreen-iframe-of-media-document.html"; sourceTree = "<group>"; }; >+ 93E943F11CD3E87E00AC08C2 /* VideoControlsManager.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = VideoControlsManager.mm; sourceTree = "<group>"; }; >+ 93F1DB3014DA20760024C362 /* NewFirstVisuallyNonEmptyLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NewFirstVisuallyNonEmptyLayout.cpp; sourceTree = "<group>"; }; >+ 93F1DB3314DA20870024C362 /* NewFirstVisuallyNonEmptyLayout_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NewFirstVisuallyNonEmptyLayout_Bundle.cpp; sourceTree = "<group>"; }; >+ 93F1DB5414DB1B730024C362 /* NewFirstVisuallyNonEmptyLayoutFails.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NewFirstVisuallyNonEmptyLayoutFails.cpp; sourceTree = "<group>"; }; >+ 93F1DB5614DB1B840024C362 /* NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp; sourceTree = "<group>"; }; >+ 93F56DA81E5F9181003EDE84 /* WKWebViewSnapshot.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewSnapshot.mm; sourceTree = "<group>"; }; >+ 93F7E86B14DC8E4D00C84A99 /* NewFirstVisuallyNonEmptyLayoutFrames.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NewFirstVisuallyNonEmptyLayoutFrames.cpp; sourceTree = "<group>"; }; >+ 93F7E86E14DC8E5B00C84A99 /* NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp; sourceTree = "<group>"; }; >+ 953F47911F1DB40300E3D1E3 /* InspectorValue.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorValue.cpp; sourceTree = "<group>"; }; >+ 9984FACA1CFFAEEE008D198C /* WKWebViewTextInput.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewTextInput.mm; sourceTree = "<group>"; }; >+ 9984FACD1CFFB038008D198C /* editable-body.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "editable-body.html"; sourceTree = "<group>"; }; >+ 9999108A1F393C8B008AD455 /* Copying.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Copying.mm; sourceTree = "<group>"; }; >+ 9B0786A21C58830F00D159E3 /* InjectedBundleMakeAllShadowRootsOpen.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleMakeAllShadowRootsOpen.cpp; sourceTree = "<group>"; }; >+ 9B0786A41C5885C300D159E3 /* InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp; sourceTree = "<group>"; }; >+ 9B19CD9E1F06DFE3000548DD /* NetworkProcessCrashWithPendingConnection.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = NetworkProcessCrashWithPendingConnection.mm; path = WebKit/NetworkProcessCrashWithPendingConnection.mm; sourceTree = "<group>"; }; >+ 9B26FC6B159D061000CC3765 /* HTMLFormCollectionNamedItem.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = HTMLFormCollectionNamedItem.mm; sourceTree = "<group>"; }; >+ 9B26FCB4159D15E700CC3765 /* HTMLFormCollectionNamedItem.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = HTMLFormCollectionNamedItem.html; sourceTree = "<group>"; }; >+ 9B270FED1DDC25FD002D53F3 /* closed-shadow-tree-test.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "closed-shadow-tree-test.html"; sourceTree = "<group>"; }; >+ 9B4F8FA3159D52B1002D9F94 /* HTMLCollectionNamedItem.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = HTMLCollectionNamedItem.mm; sourceTree = "<group>"; }; >+ 9B4F8FA6159D52CA002D9F94 /* HTMLCollectionNamedItem.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = HTMLCollectionNamedItem.html; sourceTree = "<group>"; }; >+ 9B62630B1F8C2510007EE29B /* copy-url.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "copy-url.html"; sourceTree = "<group>"; }; >+ 9B79164F1BD89D0D00D50B8F /* FirstResponderScrollingPosition.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FirstResponderScrollingPosition.mm; sourceTree = "<group>"; }; >+ 9B7A37C21F8AEBA5004AA228 /* CopyURL.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = CopyURL.mm; sourceTree = "<group>"; }; >+ 9B7D740E1F8377E60006C432 /* paste-rtfd.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "paste-rtfd.html"; sourceTree = "<group>"; }; >+ 9BD423991E04BD9800200395 /* AttributedSubstringForProposedRangeWithImage.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AttributedSubstringForProposedRangeWithImage.mm; sourceTree = "<group>"; }; >+ 9BD4239B1E04BFD000200395 /* chinese-character-with-image.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "chinese-character-with-image.html"; sourceTree = "<group>"; }; >+ 9BD6D39E1F7B201E00BD4962 /* sunset-in-cupertino-600px.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = "sunset-in-cupertino-600px.jpg"; sourceTree = "<group>"; }; >+ 9BD6D39F1F7B202000BD4962 /* sunset-in-cupertino-400px.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "sunset-in-cupertino-400px.gif"; sourceTree = "<group>"; }; >+ 9BD6D3A01F7B202000BD4962 /* sunset-in-cupertino-200px.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "sunset-in-cupertino-200px.png"; sourceTree = "<group>"; }; >+ 9BD6D3A11F7B202100BD4962 /* sunset-in-cupertino-100px.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = "sunset-in-cupertino-100px.tiff"; sourceTree = "<group>"; }; >+ 9BD6D3A61F7B21CC00BD4962 /* paste-image.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "paste-image.html"; sourceTree = "<group>"; }; >+ 9BDCCD851F7D0B0700009A18 /* PasteImage.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = PasteImage.mm; sourceTree = "<group>"; }; >+ 9BDD95561F83683600D20C60 /* PasteRTFD.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = PasteRTFD.mm; sourceTree = "<group>"; }; >+ 9C64DC311D76198A004B598E /* YouTubePluginReplacement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = YouTubePluginReplacement.cpp; sourceTree = "<group>"; }; >+ A10F047C1E3AD29C00C95E19 /* NSFileManagerExtras.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = NSFileManagerExtras.mm; sourceTree = "<group>"; }; >+ A1146A8A1D2D704F000FE710 /* ContentFiltering.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContentFiltering.mm; sourceTree = "<group>"; }; >+ A125478D1DB18B9400358564 /* LoadDataWithNilMIMEType.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LoadDataWithNilMIMEType.mm; sourceTree = "<group>"; }; >+ A12DDBF91E836F0700CF6CAE /* RenderedImageWithOptions.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RenderedImageWithOptions.mm; sourceTree = "<group>"; }; >+ A12DDBFC1E836FF100CF6CAE /* RenderedImageWithOptionsPlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RenderedImageWithOptionsPlugIn.mm; sourceTree = "<group>"; }; >+ A12DDBFF1E8373C100CF6CAE /* rendered-image-excluding-overflow.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "rendered-image-excluding-overflow.html"; sourceTree = "<group>"; }; >+ A12DDC011E8374F500CF6CAE /* RenderedImageWithOptionsProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderedImageWithOptionsProtocol.h; sourceTree = "<group>"; }; >+ A13EBB491B87339E00097110 /* TestWebKitAPI.wkbundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TestWebKitAPI.wkbundle; sourceTree = BUILT_PRODUCTS_DIR; }; >+ A13EBB521B87346600097110 /* WebProcessPlugIn.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = WebProcessPlugIn.xcconfig; sourceTree = "<group>"; }; >+ A13EBB541B8734E000097110 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; >+ A13EBBA91B87428D00097110 /* WebProcessPlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebProcessPlugIn.mm; sourceTree = "<group>"; }; >+ A13EBBAC1B87436F00097110 /* BundleParameters.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BundleParameters.mm; sourceTree = "<group>"; }; >+ A13EBBAE1B87436F00097110 /* BundleParametersPlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BundleParametersPlugIn.mm; sourceTree = "<group>"; }; >+ A1409AD81E7254AC004949D9 /* password-protected.pages */ = {isa = PBXFileReference; lastKnownFileType = file; path = "password-protected.pages"; sourceTree = "<group>"; }; >+ A14AAB611E78D7DE00C1ADC2 /* WKPDFView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKPDFView.mm; sourceTree = "<group>"; }; >+ A14AAB641E78DC3F00C1ADC2 /* encrypted.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = encrypted.pdf; sourceTree = "<group>"; }; >+ A14FC5831B89739100D107EB /* WKWebViewConfigurationExtras.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewConfigurationExtras.mm; sourceTree = "<group>"; }; >+ A14FC5841B89739100D107EB /* WKWebViewConfigurationExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebViewConfigurationExtras.h; sourceTree = "<group>"; }; >+ A14FC5861B8991B600D107EB /* ContentFiltering.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContentFiltering.mm; sourceTree = "<group>"; }; >+ A14FC5891B89927100D107EB /* ContentFilteringPlugIn.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContentFilteringPlugIn.mm; sourceTree = "<group>"; }; >+ A14FC58D1B8AE36500D107EB /* TestProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TestProtocol.h; path = cocoa/TestProtocol.h; sourceTree = "<group>"; }; >+ A14FC58E1B8AE36500D107EB /* TestProtocol.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TestProtocol.mm; path = cocoa/TestProtocol.mm; sourceTree = "<group>"; }; >+ A15502281E05020B00A24C57 /* DuplicateCompletionHandlerCalls.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DuplicateCompletionHandlerCalls.mm; sourceTree = "<group>"; }; >+ A155022B1E050BC500A24C57 /* duplicate-completion-handler-calls.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "duplicate-completion-handler-calls.html"; sourceTree = "<group>"; }; >+ A16F66B91C40EA2000BD4D24 /* ContentFiltering.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = ContentFiltering.html; sourceTree = "<group>"; }; >+ A17991861E1C994E00A505ED /* SharedBuffer.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SharedBuffer.mm; sourceTree = "<group>"; }; >+ A17991891E1CA24100A505ED /* SharedBufferTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SharedBufferTest.cpp; sourceTree = "<group>"; }; >+ A179918A1E1CA24100A505ED /* SharedBufferTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SharedBufferTest.h; sourceTree = "<group>"; }; >+ A180C0F91EE67DF000468F47 /* RunOpenPanel.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = RunOpenPanel.mm; sourceTree = "<group>"; }; >+ A18AA8CC1C3FA218009B2B97 /* ContentFiltering.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContentFiltering.h; sourceTree = "<group>"; }; >+ A1A4FE5D18DD3DB700B5EA8A /* Download.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Download.mm; sourceTree = "<group>"; }; >+ A1C4FB6C1BACCE50003742D0 /* QuickLook.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = QuickLook.mm; sourceTree = "<group>"; }; >+ A1C4FB721BACD1B7003742D0 /* pages.pages */ = {isa = PBXFileReference; lastKnownFileType = file; name = pages.pages; path = ios/pages.pages; sourceTree = SOURCE_ROOT; }; >+ A1DF74301C41B65800A2F4D0 /* AlwaysRevalidatedURLSchemes.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AlwaysRevalidatedURLSchemes.mm; sourceTree = "<group>"; }; >+ A1EC11871F42541200D0146E /* PreviewLoader.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = PreviewLoader.cpp; sourceTree = "<group>"; }; >+ A1FDFD2E19C288BB005148A4 /* WKImageCreateCGImageCrash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKImageCreateCGImageCrash.cpp; sourceTree = "<group>"; }; >+ A57A34EF16AF677200C2501F /* PageVisibilityStateWithWindowChanges.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PageVisibilityStateWithWindowChanges.mm; sourceTree = "<group>"; }; >+ A57A34F116AF69E200C2501F /* PageVisibilityStateWithWindowChanges.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = PageVisibilityStateWithWindowChanges.html; sourceTree = "<group>"; }; >+ A57D54F21F338C3600A97AA7 /* NeverDestroyed.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = NeverDestroyed.cpp; sourceTree = "<group>"; }; >+ A57D54F41F3395D000A97AA7 /* Logger.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = Logger.cpp; sourceTree = "<group>"; }; >+ A57D54F51F3395D000A97AA7 /* Logger.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Logger.h; sourceTree = "<group>"; }; >+ A57D54F71F3397B400A97AA7 /* LifecycleLogger.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = LifecycleLogger.cpp; sourceTree = "<group>"; }; >+ A57D54F81F3397B400A97AA7 /* LifecycleLogger.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LifecycleLogger.h; sourceTree = "<group>"; }; >+ A5A729F01F622A9A00DE5A28 /* WKNavigationResponse.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKNavigationResponse.mm; sourceTree = "<group>"; }; >+ A5B149DD1F5A19DC00C6DAFF /* MIMETypeRegistry.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MIMETypeRegistry.cpp; sourceTree = "<group>"; }; >+ A5E2027015B2180600C13E14 /* WindowlessWebViewWithMedia.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = WindowlessWebViewWithMedia.html; sourceTree = "<group>"; }; >+ A5E2027215B2181900C13E14 /* WindowlessWebViewWithMedia.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WindowlessWebViewWithMedia.mm; sourceTree = "<group>"; }; >+ A7A966DA140ECCC8005EF9B4 /* CheckedArithmeticOperations.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckedArithmeticOperations.cpp; sourceTree = "<group>"; }; >+ AD57AC1D1DA7463800FF1BDE /* many-iframes.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "many-iframes.html"; sourceTree = "<group>"; }; >+ AD57AC1E1DA7464D00FF1BDE /* DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp; sourceTree = "<group>"; }; >+ AD57AC1F1DA7464D00FF1BDE /* DidRemoveFrameFromHiearchyInPageCache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DidRemoveFrameFromHiearchyInPageCache.cpp; sourceTree = "<group>"; }; >+ AD7C434C1DD2A5470026888B /* Expected.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Expected.cpp; sourceTree = "<group>"; }; >+ B4039F9C15E6D8B3007255D6 /* MathExtras.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MathExtras.cpp; sourceTree = "<group>"; }; >+ B55AD1D1179F336600AC1494 /* PreventImageLoadWithAutoResizing.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = PreventImageLoadWithAutoResizing.mm; path = WebKitObjC/PreventImageLoadWithAutoResizing.mm; sourceTree = "<group>"; }; >+ B55AD1D3179F3ABF00AC1494 /* PreventImageLoadWithAutoResizing_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PreventImageLoadWithAutoResizing_Bundle.cpp; path = WebKitObjC/PreventImageLoadWithAutoResizing_Bundle.cpp; sourceTree = "<group>"; }; >+ B55F119F1516834F00915916 /* AttributedString.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AttributedString.mm; sourceTree = "<group>"; }; >+ B55F11B01517A2C400915916 /* attributedStringCustomFont.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = attributedStringCustomFont.html; sourceTree = "<group>"; }; >+ BC029B161486AD6400817DA9 /* RetainPtr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RetainPtr.cpp; sourceTree = "<group>"; }; >+ BC029B1B1486B25900817DA9 /* RetainPtr.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RetainPtr.mm; path = ns/RetainPtr.mm; sourceTree = "<group>"; }; >+ BC131883117114A800B69727 /* PlatformUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlatformUtilities.h; sourceTree = "<group>"; }; >+ BC131884117114B600B69727 /* PlatformUtilitiesMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PlatformUtilitiesMac.mm; sourceTree = "<group>"; }; >+ BC131A9E1171317C00B69727 /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = "<group>"; }; >+ BC131AA8117131FC00B69727 /* TestsController.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = TestsController.cpp; sourceTree = "<group>"; }; >+ BC22D31314DC689800FFB1DD /* UserMessage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UserMessage.cpp; sourceTree = "<group>"; }; >+ BC22D31714DC68B800FFB1DD /* UserMessage_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UserMessage_Bundle.cpp; sourceTree = "<group>"; }; >+ BC246D8C132F115A00B56D7C /* AboutBlankLoad.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AboutBlankLoad.cpp; sourceTree = "<group>"; }; >+ BC246D97132F1FE100B56D7C /* CanHandleRequest_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CanHandleRequest_Bundle.cpp; sourceTree = "<group>"; }; >+ BC246D98132F1FE100B56D7C /* CanHandleRequest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CanHandleRequest.cpp; sourceTree = "<group>"; }; >+ BC2D004812A9FDFA00E732A3 /* PageLoadDidChangeLocationWithinPageForFrame.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PageLoadDidChangeLocationWithinPageForFrame.cpp; sourceTree = "<group>"; }; >+ BC2D004A12A9FEB300E732A3 /* file-with-anchor.html */ = {isa = PBXFileReference; explicitFileType = text.html; fileEncoding = 4; path = "file-with-anchor.html"; sourceTree = "<group>"; }; >+ BC3C4C7014575B6A0025FB62 /* WKBrowsingContextLoadDelegateTest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WKBrowsingContextLoadDelegateTest.mm; path = WebKitObjC/WKBrowsingContextLoadDelegateTest.mm; sourceTree = "<group>"; }; >+ BC3C4C7D14587AA60025FB62 /* WKBrowsingContextGroupTest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WKBrowsingContextGroupTest.mm; path = WebKitObjC/WKBrowsingContextGroupTest.mm; sourceTree = "<group>"; }; >+ BC55F5F814AD78EE00484BE1 /* Vector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Vector.cpp; sourceTree = "<group>"; }; >+ BC575946126E7351006F0F12 /* InjectedBundleMain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleMain.cpp; sourceTree = "<group>"; }; >+ BC575980126E74AF006F0F12 /* InjectedBundleTestWebKitAPI.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = InjectedBundleTestWebKitAPI.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; >+ BC575981126E74AF006F0F12 /* InjectedBundle-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "InjectedBundle-Info.plist"; sourceTree = "<group>"; }; >+ BC575A9E126E75FB006F0F12 /* InjectedBundleTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundleTest.h; sourceTree = "<group>"; }; >+ BC575A9F126E7657006F0F12 /* InjectedBundleController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundleController.h; sourceTree = "<group>"; }; >+ BC575AA0126E7657006F0F12 /* InjectedBundleController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleController.cpp; sourceTree = "<group>"; }; >+ BC575AAC126E83B9006F0F12 /* InjectedBundleBasic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleBasic.cpp; sourceTree = "<group>"; }; >+ BC575AAF126E83C8006F0F12 /* InjectedBundleBasic_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleBasic_Bundle.cpp; sourceTree = "<group>"; }; >+ BC575AE2126E88B1006F0F12 /* InjectedBundle.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = InjectedBundle.xcconfig; sourceTree = "<group>"; }; >+ BC575BBF126F5752006F0F12 /* PlatformUtilities.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PlatformUtilities.cpp; sourceTree = "<group>"; }; >+ BC7B619A1299FE9E00D174A4 /* WKPreferences.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKPreferences.cpp; sourceTree = "<group>"; }; >+ BC90951B125533D700083756 /* PlatformWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlatformWebView.h; sourceTree = "<group>"; }; >+ BC90955C125548AA00083756 /* PlatformWebViewMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PlatformWebViewMac.mm; sourceTree = "<group>"; }; >+ BC90957E12554CF900083756 /* Base.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Base.xcconfig; sourceTree = "<group>"; }; >+ BC90957F12554CF900083756 /* DebugRelease.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = DebugRelease.xcconfig; sourceTree = "<group>"; }; >+ BC90958012554CF900083756 /* TestWebKitAPI.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = TestWebKitAPI.xcconfig; sourceTree = "<group>"; }; >+ BC90964D1255620C00083756 /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = JavaScriptCore.framework; sourceTree = BUILT_PRODUCTS_DIR; }; >+ BC909778125571AB00083756 /* simple.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = simple.html; sourceTree = "<group>"; }; >+ BC909779125571AB00083756 /* PageLoadBasic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PageLoadBasic.cpp; sourceTree = "<group>"; }; >+ BC90995D12567BC100083756 /* WKString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKString.cpp; sourceTree = "<group>"; }; >+ BC9099931256ACF100083756 /* WKStringJSString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKStringJSString.cpp; sourceTree = "<group>"; }; >+ BCAA485514A021640088FAC4 /* simple-tall.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "simple-tall.html"; sourceTree = "<group>"; }; >+ BCAA485714A044D40088FAC4 /* EditorCommands.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EditorCommands.mm; sourceTree = "<group>"; }; >+ BCB6803F126FBFE100642A61 /* DocumentStartUserScriptAlertCrash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DocumentStartUserScriptAlertCrash.cpp; sourceTree = "<group>"; }; >+ BCB68041126FBFF100642A61 /* DocumentStartUserScriptAlertCrash_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DocumentStartUserScriptAlertCrash_Bundle.cpp; sourceTree = "<group>"; }; >+ BCB9E7C711234E3A00A137E0 /* TestsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestsController.h; sourceTree = "<group>"; }; >+ BCB9E7FA112359A300A137E0 /* Test.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Test.h; sourceTree = "<group>"; }; >+ BCB9E9F011235BDE00A137E0 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; >+ BCBD370F125AA2EB00D2C29F /* FrameMIMETypeHTML.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FrameMIMETypeHTML.cpp; sourceTree = "<group>"; }; >+ BCBD372E125ABBE600D2C29F /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = "<group>"; }; >+ BCBD3760125ABCFE00D2C29F /* FrameMIMETypePNG.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FrameMIMETypePNG.cpp; sourceTree = "<group>"; }; >+ BCC8B95A12611F4700DE46A4 /* FailedLoad.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FailedLoad.cpp; sourceTree = "<group>"; }; >+ C01363C713C3997300EF3964 /* StringOperators.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringOperators.cpp; sourceTree = "<group>"; }; >+ C02B77F1126612140026BF0F /* SpacebarScrolling.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SpacebarScrolling.cpp; sourceTree = "<group>"; }; >+ C02B7853126613AE0026BF0F /* Carbon.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Carbon.framework; sourceTree = SDKROOT; }; >+ C02B7882126615410026BF0F /* spacebar-scrolling.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "spacebar-scrolling.html"; sourceTree = "<group>"; }; >+ C045F9441385C2E900C0F3CD /* DownloadDecideDestinationCrash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DownloadDecideDestinationCrash.cpp; sourceTree = "<group>"; }; >+ C045F9461385C2F800C0F3CD /* 18-characters.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "18-characters.html"; sourceTree = "<group>"; }; >+ C07E6CAE13FD67650038B22B /* DynamicDeviceScaleFactor.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DynamicDeviceScaleFactor.mm; sourceTree = "<group>"; }; >+ C07E6CB113FD738A0038B22B /* devicePixelRatio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = devicePixelRatio.html; sourceTree = "<group>"; }; >+ C081224013FC172400DC39AE /* JavaScriptTestMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = JavaScriptTestMac.mm; sourceTree = "<group>"; }; >+ C081224313FC19EC00DC39AE /* SyntheticBackingScaleFactorWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SyntheticBackingScaleFactorWindow.h; sourceTree = "<group>"; }; >+ C081224413FC19EC00DC39AE /* SyntheticBackingScaleFactorWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SyntheticBackingScaleFactorWindow.m; sourceTree = "<group>"; }; >+ C081224813FC1B0300DC39AE /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = WebKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; >+ C08587BD13FE956C001EF4E5 /* WebKitAgnosticTest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebKitAgnosticTest.mm; sourceTree = "<group>"; }; >+ C08587BE13FE956C001EF4E5 /* WebKitAgnosticTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitAgnosticTest.h; sourceTree = "<group>"; }; >+ C08587FB13FEC39B001EF4E5 /* InstanceMethodSwizzler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InstanceMethodSwizzler.mm; sourceTree = "<group>"; }; >+ C0991C50143C7D68007998F2 /* RetainPtrHashing.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RetainPtrHashing.cpp; sourceTree = "<group>"; }; >+ C0ADBE7A12FCA4D000D2C129 /* JavaScriptTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JavaScriptTest.cpp; sourceTree = "<group>"; }; >+ C0ADBE7B12FCA4D000D2C129 /* JavaScriptTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JavaScriptTest.h; sourceTree = "<group>"; }; >+ C0ADBE8212FCA6AA00D2C129 /* RestoreSessionStateContainingFormData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RestoreSessionStateContainingFormData.cpp; sourceTree = "<group>"; }; >+ C0ADBE8412FCA6B600D2C129 /* simple-form.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "simple-form.html"; sourceTree = "<group>"; }; >+ C0BD669C131D3CF700E18F2A /* ResponsivenessTimerDoesntFireEarly.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResponsivenessTimerDoesntFireEarly.cpp; sourceTree = "<group>"; }; >+ C0BD669E131D3CFF00E18F2A /* ResponsivenessTimerDoesntFireEarly_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResponsivenessTimerDoesntFireEarly_Bundle.cpp; sourceTree = "<group>"; }; >+ C0C5D3BC14598B6F00A802A6 /* GetBackingScaleFactor.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GetBackingScaleFactor.mm; sourceTree = "<group>"; }; >+ C0C5D3BD14598B6F00A802A6 /* GetBackingScaleFactor_Bundle.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GetBackingScaleFactor_Bundle.mm; sourceTree = "<group>"; }; >+ C25CCA051E51380B0026CB8A /* LineBreaking.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = LineBreaking.mm; path = ../WebCore/LineBreaking.mm; sourceTree = "<group>"; }; >+ C25CCA0A1E513F490026CB8A /* LineBreaking.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = LineBreaking.html; sourceTree = "<group>"; }; >+ C25CCA0C1E5140E50026CB8A /* AllAhem.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AllAhem.svg; sourceTree = "<group>"; }; >+ C2CF975816CEC69E0054E99D /* JSContextBackForwardCache1.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = JSContextBackForwardCache1.html; sourceTree = "<group>"; }; >+ C2CF975916CEC69E0054E99D /* JSContextBackForwardCache2.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = JSContextBackForwardCache2.html; sourceTree = "<group>"; }; >+ C2EB2DD116CAC7AC009B52EE /* WebViewDidCreateJavaScriptContext.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebViewDidCreateJavaScriptContext.mm; sourceTree = "<group>"; }; >+ C507E8A614C6545B005D6B3B /* InspectorBar.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InspectorBar.mm; sourceTree = "<group>"; }; >+ C5101C4E176B8BB900EE9B15 /* findRanges.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = findRanges.html; sourceTree = "<group>"; }; >+ C51AFB98169F49FF009CCF66 /* FindMatches.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FindMatches.mm; sourceTree = "<group>"; }; >+ C540F783152E5A7800A40C8C /* verboseMarkup.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = verboseMarkup.html; sourceTree = "<group>"; }; >+ C54237ED16B8955800E638FC /* PasteboardNotifications_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PasteboardNotifications_Bundle.cpp; sourceTree = "<group>"; }; >+ C54237EE16B8955800E638FC /* PasteboardNotifications.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PasteboardNotifications.mm; sourceTree = "<group>"; }; >+ C5E1AFFD16B22179006CC1F2 /* execCopy.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = execCopy.html; sourceTree = "<group>"; }; >+ C95501BE19AD2FAF0049BE3E /* Preferences.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Preferences.mm; sourceTree = "<group>"; }; >+ C95984F21E36BC55002C0D45 /* autoplay-check.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autoplay-check.html"; sourceTree = "<group>"; }; >+ C95984F31E36BC55002C0D45 /* autoplay-no-audio-check.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autoplay-no-audio-check.html"; sourceTree = "<group>"; }; >+ C95984F61E36BCD7002C0D45 /* test-without-audio-track.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = "test-without-audio-track.mp4"; sourceTree = "<group>"; }; >+ C99B675A1E3971FC00FC6C80 /* autoplay-with-controls.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autoplay-with-controls.html"; sourceTree = "<group>"; }; >+ C99B675B1E3971FC00FC6C80 /* js-play-with-controls.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "js-play-with-controls.html"; sourceTree = "<group>"; }; >+ C99B675E1E39735C00FC6C80 /* no-autoplay-with-controls.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "no-autoplay-with-controls.html"; sourceTree = "<group>"; }; >+ C99BDF881E8097E300C7170E /* autoplay-zero-volume-check.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autoplay-zero-volume-check.html"; sourceTree = "<group>"; }; >+ C9B1043D1ECF9832000520FA /* autoplay-inherits-gesture-from-document.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "autoplay-inherits-gesture-from-document.html"; sourceTree = "<group>"; }; >+ C9B4AD291ECA6EA500F5FEA0 /* silence-long.m4a */ = {isa = PBXFileReference; lastKnownFileType = file; path = "silence-long.m4a"; sourceTree = "<group>"; }; >+ C9B4AD2B1ECA6F7600F5FEA0 /* js-autoplay-audio.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "js-autoplay-audio.html"; sourceTree = "<group>"; }; >+ C9BF06EE1E9C130400595E3E /* autoplay-muted-with-controls.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autoplay-muted-with-controls.html"; sourceTree = "<group>"; }; >+ C9C60E631E53A9BA006DA181 /* autoplay-check-frame.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autoplay-check-frame.html"; sourceTree = "<group>"; }; >+ C9C60E641E53A9BA006DA181 /* autoplay-check-in-iframe.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "autoplay-check-in-iframe.html"; sourceTree = "<group>"; }; >+ C9E6DD311EA972D800DD78AA /* FirstResponderSuppression.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = FirstResponderSuppression.mm; sourceTree = "<group>"; }; >+ CD0BD0A51F799220001AB2CF /* ContextMenuImgWithVideo.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ContextMenuImgWithVideo.mm; sourceTree = "<group>"; }; >+ CD0BD0A71F7997C2001AB2CF /* ContextMenuImgWithVideo.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = ContextMenuImgWithVideo.html; sourceTree = "<group>"; }; >+ CD225C071C45A69200140761 /* ParsedContentRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParsedContentRange.cpp; sourceTree = "<group>"; }; >+ CD321B031E3A84B700EB21C8 /* video-with-muted-audio-and-webaudio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "video-with-muted-audio-and-webaudio.html"; sourceTree = "<group>"; }; >+ CD5393C71757BA9700C07123 /* MD5.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MD5.cpp; sourceTree = "<group>"; }; >+ CD5393C91757BAC400C07123 /* SHA1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SHA1.cpp; sourceTree = "<group>"; }; >+ CD5451E919E41F9D0016936F /* CSSParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSParser.cpp; sourceTree = "<group>"; }; >+ CD5497B315857F0C00B5BC30 /* MediaTime.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaTime.cpp; sourceTree = "<group>"; }; >+ CD59F53219E910AA00CF1835 /* file-with-mse.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "file-with-mse.html"; sourceTree = "<group>"; }; >+ CD59F53319E910BC00CF1835 /* test-mse.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = "test-mse.mp4"; sourceTree = "<group>"; }; >+ CD773F711C5057DB0002257C /* FeatureDefines.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = FeatureDefines.xcconfig; sourceTree = "<group>"; }; >+ CD78E11A1DB7EA360014A2DE /* FullscreenDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FullscreenDelegate.mm; sourceTree = "<group>"; }; >+ CD78E11B1DB7EA360014A2DE /* FullscreenDelegate.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = FullscreenDelegate.html; sourceTree = "<group>"; }; >+ CD89D0381C4EDB2A00040A04 /* WebCoreNSURLSession.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebCoreNSURLSession.mm; sourceTree = "<group>"; }; >+ CD9E292B1C90A71F000BB800 /* RequiresUserActionForPlayback.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RequiresUserActionForPlayback.mm; sourceTree = "<group>"; }; >+ CD9E292D1C90C1BA000BB800 /* audio-only.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "audio-only.html"; sourceTree = "<group>"; }; >+ CDA315961ED53651009F60D3 /* MediaPlaybackSleepAssertion.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MediaPlaybackSleepAssertion.mm; sourceTree = "<group>"; }; >+ CDA315991ED540A5009F60D3 /* MediaPlaybackSleepAssertion.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = MediaPlaybackSleepAssertion.html; sourceTree = "<group>"; }; >+ CDA3159C1ED5643F009F60D3 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; >+ CDB411591E09DA8E00EAD352 /* video-with-muted-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "video-with-muted-audio.html"; sourceTree = "<group>"; }; >+ CDBFCC421A9FF44800A7B691 /* FullscreenZoomInitialFrame.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = FullscreenZoomInitialFrame.html; sourceTree = "<group>"; }; >+ CDBFCC431A9FF44800A7B691 /* FullscreenZoomInitialFrame.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FullscreenZoomInitialFrame.mm; sourceTree = "<group>"; }; >+ CDC2C7141797089D00E627FB /* TimeRanges.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TimeRanges.cpp; sourceTree = "<group>"; }; >+ CDC8E4851BC5B19400594FEC /* AudioSessionCategoryIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AudioSessionCategoryIOS.mm; sourceTree = "<group>"; }; >+ CDC8E4891BC5C96200594FEC /* video-with-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "video-with-audio.html"; sourceTree = "<group>"; }; >+ CDC8E48A1BC5C96200594FEC /* video-with-audio.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = "video-with-audio.mp4"; sourceTree = "<group>"; }; >+ CDC8E48B1BC5C96200594FEC /* video-without-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "video-without-audio.html"; sourceTree = "<group>"; }; >+ CDC8E48C1BC5C96200594FEC /* video-without-audio.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = "video-without-audio.mp4"; sourceTree = "<group>"; }; >+ CDC9442B1EF1FBD20059C3C4 /* mediastreamtrack-detached.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "mediastreamtrack-detached.html"; sourceTree = "<group>"; }; >+ CDC9442C1EF1FC080059C3C4 /* MediaStreamTrackDetached.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MediaStreamTrackDetached.mm; sourceTree = "<group>"; }; >+ CDCFA7A91E45122F00C2433D /* SampleMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SampleMap.cpp; sourceTree = "<group>"; }; >+ CDE195B21CFE0ADE0053D256 /* FullscreenTopContentInset.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = FullscreenTopContentInset.html; sourceTree = "<group>"; }; >+ CDE195B31CFE0ADE0053D256 /* FullscreenTopContentInset.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FullscreenTopContentInset.mm; sourceTree = "<group>"; }; >+ CE06DF9A1E1851F200E570C9 /* SecurityOrigin.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SecurityOrigin.cpp; sourceTree = "<group>"; }; >+ CE14F1A2181873B0001C2705 /* WillPerformClientRedirectToURLCrash.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = WillPerformClientRedirectToURLCrash.html; sourceTree = "<group>"; }; >+ CE1866471F72E8F100A0CAB6 /* MarkerSubrange.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = MarkerSubrange.cpp; sourceTree = "<group>"; }; >+ CE32C7C718184C4900CD8C28 /* WillPerformClientRedirectToURLCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WillPerformClientRedirectToURLCrash.mm; sourceTree = "<group>"; }; >+ CE3524F11B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextFieldDidBeginAndEndEditing.cpp; sourceTree = "<group>"; }; >+ CE3524F21B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextFieldDidBeginAndEndEditing_Bundle.cpp; sourceTree = "<group>"; }; >+ CE3524F51B142BBB0028A7C5 /* input-focus-blur.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "input-focus-blur.html"; sourceTree = "<group>"; }; >+ CE4D5DE51F6743BA0072CFC6 /* StringWithDirection.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = StringWithDirection.cpp; sourceTree = "<group>"; }; >+ CE50D8C81C8665CE0072EA5A /* OptionSet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = OptionSet.cpp; sourceTree = "<group>"; }; >+ CEA6CF2219CCF5BD0064F5A7 /* OpenAndCloseWindow.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = OpenAndCloseWindow.mm; sourceTree = "<group>"; }; >+ CEA6CF2719CCF69D0064F5A7 /* open-and-close-window.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "open-and-close-window.html"; sourceTree = "<group>"; }; >+ CEBABD481B71687C0051210A /* should-open-external-schemes.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "should-open-external-schemes.html"; sourceTree = "<group>"; }; >+ CEBCA12E1E3A660100C73293 /* OverrideContentSecurityPolicy.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = OverrideContentSecurityPolicy.mm; sourceTree = "<group>"; }; >+ CEBCA1341E3A803400C73293 /* page-with-csp-iframe.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "page-with-csp-iframe.html"; sourceTree = "<group>"; }; >+ CEBCA1351E3A803400C73293 /* page-with-csp.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "page-with-csp.html"; sourceTree = "<group>"; }; >+ CEBCA1361E3A803400C73293 /* page-without-csp-iframe.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "page-without-csp-iframe.html"; sourceTree = "<group>"; }; >+ CEBCA1371E3A803400C73293 /* page-without-csp.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "page-without-csp.html"; sourceTree = "<group>"; }; >+ CEC16EA41EE863BF00DE479A /* DecidePolicyForNavigationAction.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DecidePolicyForNavigationAction.mm; sourceTree = "<group>"; }; >+ D3BE5E341E4CE85E00FD563A /* WKWebViewGetContents.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewGetContents.mm; sourceTree = "<group>"; }; >+ DC69AA621CF77C6500C6272F /* ScopedLambda.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ScopedLambda.cpp; sourceTree = "<group>"; }; >+ E1220D9F155B25480013E2FC /* MemoryCacheDisableWithinResourceLoadDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MemoryCacheDisableWithinResourceLoadDelegate.mm; sourceTree = "<group>"; }; >+ E1220DC9155B287D0013E2FC /* MemoryCacheDisableWithinResourceLoadDelegate.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = MemoryCacheDisableWithinResourceLoadDelegate.html; sourceTree = "<group>"; }; >+ E194E1BA177E5145009C4D4E /* StopLoadingFromDidReceiveResponse.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = StopLoadingFromDidReceiveResponse.mm; sourceTree = "<group>"; }; >+ E194E1BC177E534A009C4D4E /* StopLoadingFromDidReceiveResponse.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = StopLoadingFromDidReceiveResponse.html; sourceTree = "<group>"; }; >+ E19DB9781B32137C00DB38D4 /* NavigatorLanguage.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = NavigatorLanguage.mm; sourceTree = "<group>"; }; >+ E3953F951F2CF32100A76A2E /* Signals.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Signals.cpp; sourceTree = "<group>"; }; >+ E3DEA8101F0A588000CBC2E8 /* ThreadGroup.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ThreadGroup.cpp; sourceTree = "<group>"; }; >+ E40019301ACE9B5C001B0A2A /* BloomFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BloomFilter.cpp; sourceTree = "<group>"; }; >+ E490296714E2E3A4002BEDD1 /* TypingStyleCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TypingStyleCrash.mm; sourceTree = "<group>"; }; >+ E4A757D3178AEA5B00B5D7A4 /* Deque.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = Deque.cpp; sourceTree = "<group>"; }; >+ E4C9ABC71B3DB1710040A987 /* RunLoop.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RunLoop.cpp; sourceTree = "<group>"; }; >+ ECA680CD1E68CC0900731D20 /* StringUtilities.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = StringUtilities.mm; sourceTree = "<group>"; }; >+ F3FC3EE213678B7300126A65 /* libgtest.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgtest.a; sourceTree = BUILT_PRODUCTS_DIR; }; >+ F407FE381F1D0DE60017CF25 /* enormous.svg */ = {isa = PBXFileReference; lastKnownFileType = text; path = enormous.svg; sourceTree = "<group>"; }; >+ F415086C1DA040C10044BE9B /* play-audio-on-click.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "play-audio-on-click.html"; sourceTree = "<group>"; }; >+ F418BE141F71B7DC001970E6 /* RoundedRectTests.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = RoundedRectTests.cpp; sourceTree = "<group>"; }; >+ F4194AD01F5A2EA500ADD83F /* drop-targets.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "drop-targets.html"; sourceTree = "<group>"; }; >+ F41AB9931EF4692C0083FA08 /* image-and-textarea.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "image-and-textarea.html"; sourceTree = "<group>"; }; >+ F41AB9941EF4692C0083FA08 /* prevent-operation.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "prevent-operation.html"; sourceTree = "<group>"; }; >+ F41AB9951EF4692C0083FA08 /* textarea-to-input.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "textarea-to-input.html"; sourceTree = "<group>"; }; >+ F41AB9961EF4692C0083FA08 /* link-and-input.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "link-and-input.html"; sourceTree = "<group>"; }; >+ F41AB9971EF4692C0083FA08 /* background-image-link-and-input.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "background-image-link-and-input.html"; sourceTree = "<group>"; }; >+ F41AB9981EF4692C0083FA08 /* autofocus-contenteditable.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "autofocus-contenteditable.html"; sourceTree = "<group>"; }; >+ F41AB9991EF4692C0083FA08 /* image-and-contenteditable.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "image-and-contenteditable.html"; sourceTree = "<group>"; }; >+ F41AB99A1EF4692C0083FA08 /* prevent-start.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "prevent-start.html"; sourceTree = "<group>"; }; >+ F41AB99B1EF4692C0083FA08 /* file-uploading.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "file-uploading.html"; sourceTree = "<group>"; }; >+ F41AB99C1EF4692C0083FA08 /* contenteditable-and-textarea.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "contenteditable-and-textarea.html"; sourceTree = "<group>"; }; >+ F41AB99D1EF4692C0083FA08 /* link-and-target-div.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "link-and-target-div.html"; sourceTree = "<group>"; }; >+ F41AB99E1EF4692C0083FA08 /* div-and-large-image.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "div-and-large-image.html"; sourceTree = "<group>"; }; >+ F42DA5151D8CEFDB00336F40 /* large-input-field-focus-onload.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = "large-input-field-focus-onload.html"; path = "Tests/WebKitCocoa/large-input-field-focus-onload.html"; sourceTree = SOURCE_ROOT; }; >+ F4451C751EB8FD7C0020C5DA /* two-paragraph-contenteditable.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "two-paragraph-contenteditable.html"; sourceTree = "<group>"; }; >+ F44D06441F395C0D001A0E29 /* editor-state-test-harness.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "editor-state-test-harness.html"; sourceTree = "<group>"; }; >+ F44D06461F395C4D001A0E29 /* EditorStateTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EditorStateTests.mm; sourceTree = "<group>"; }; >+ F44D06481F3962E3001A0E29 /* EditingTestHarness.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingTestHarness.h; sourceTree = "<group>"; }; >+ F44D06491F3962E3001A0E29 /* EditingTestHarness.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EditingTestHarness.mm; sourceTree = "<group>"; }; >+ F4512E121F60C43400BB369E /* DataTransferItem-getAsEntry.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "DataTransferItem-getAsEntry.html"; sourceTree = "<group>"; }; >+ F4538EF01E846B4100B5C953 /* large-red-square.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "large-red-square.png"; sourceTree = "<group>"; }; >+ F45B63FA1F197F33009D38B9 /* image-map.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "image-map.html"; sourceTree = "<group>"; }; >+ F45B63FC1F19D410009D38B9 /* ActionSheetTests.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ActionSheetTests.mm; sourceTree = "<group>"; }; >+ F46849BD1EEF58E400B937FE /* UIPasteboardTests.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = UIPasteboardTests.mm; sourceTree = "<group>"; }; >+ F46849BF1EEF5EDC00B937FE /* rich-and-plain-text.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "rich-and-plain-text.html"; sourceTree = "<group>"; }; >+ F469FB231F01803500401539 /* contenteditable-and-target.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "contenteditable-and-target.html"; sourceTree = "<group>"; }; >+ F47728981E4AE3AD007ABF6A /* full-page-contenteditable.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "full-page-contenteditable.html"; sourceTree = "<group>"; }; >+ F47D30EB1ED28619000482E1 /* apple.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = apple.gif; sourceTree = "<group>"; }; >+ F47D30ED1ED28A6C000482E1 /* gif-and-file-input.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "gif-and-file-input.html"; sourceTree = "<group>"; }; >+ F4856CA21E6498A8009D7EE7 /* attachment-element.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "attachment-element.html"; sourceTree = "<group>"; }; >+ F486B1CF1F6794FF00F34BDD /* DataTransfer-setDragImage.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "DataTransfer-setDragImage.html"; sourceTree = "<group>"; }; >+ F493247C1F44DF8D006F4336 /* UIKitSPI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UIKitSPI.h; sourceTree = "<group>"; }; >+ F4A32EC31F05F3780047C544 /* dragstart-change-selection-offscreen.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "dragstart-change-selection-offscreen.html"; sourceTree = "<group>"; }; >+ F4A32ECA1F0642F40047C544 /* contenteditable-in-iframe.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "contenteditable-in-iframe.html"; sourceTree = "<group>"; }; >+ F4AB57891F65164B00DB0DA1 /* custom-draggable-div.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "custom-draggable-div.html"; sourceTree = "<group>"; }; >+ F4B825D61EF4DBD4006E417F /* compressed-files.zip */ = {isa = PBXFileReference; lastKnownFileType = archive.zip; path = "compressed-files.zip"; sourceTree = "<group>"; }; >+ F4BFA68C1E4AD08000154298 /* DragAndDropPasteboardTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DragAndDropPasteboardTests.mm; sourceTree = "<group>"; }; >+ F4C2AB211DD6D94100E06D5B /* enormous-video-with-sound.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "enormous-video-with-sound.html"; sourceTree = "<group>"; }; >+ F4D4F3B41E4E2BCB00BB2767 /* DataInteractionSimulator.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DataInteractionSimulator.mm; sourceTree = "<group>"; }; >+ F4D4F3B51E4E2BCB00BB2767 /* DataInteractionSimulator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DataInteractionSimulator.h; sourceTree = "<group>"; }; >+ F4D4F3B71E4E36E400BB2767 /* DataInteractionTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DataInteractionTests.mm; sourceTree = "<group>"; }; >+ F4D5E4E71F0C5D27008C1A49 /* dragstart-clear-selection.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "dragstart-clear-selection.html"; sourceTree = "<group>"; }; >+ F4D65DA71F5E46C0009D8C27 /* selected-text-image-link-and-editable.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "selected-text-image-link-and-editable.html"; sourceTree = "<group>"; }; >+ F4DEF6EC1E9B4D950048EF61 /* image-in-link-and-input.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "image-in-link-and-input.html"; sourceTree = "<group>"; }; >+ F4F137911D9B6832002BEC57 /* large-video-test-now-playing.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-test-now-playing.html"; sourceTree = "<group>"; }; >+ F4F405BA1D4C0CF8007A9707 /* full-size-autoplaying-video-with-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "full-size-autoplaying-video-with-audio.html"; sourceTree = "<group>"; }; >+ F4F405BB1D4C0CF8007A9707 /* skinny-autoplaying-video-with-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "skinny-autoplaying-video-with-audio.html"; sourceTree = "<group>"; }; >+ F4FA917F1E61849B007B8C1D /* WKWebViewMacEditingTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewMacEditingTests.mm; sourceTree = "<group>"; }; >+ F4FA91821E618566007B8C1D /* double-click-does-not-select-trailing-space.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = "double-click-does-not-select-trailing-space.html"; path = "Tests/WebKitCocoa/double-click-does-not-select-trailing-space.html"; sourceTree = SOURCE_ROOT; }; >+ F660AA0C15A5F061003A1243 /* GetInjectedBundleInitializationUserDataCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GetInjectedBundleInitializationUserDataCallback.cpp; sourceTree = "<group>"; }; >+ F660AA0F15A5F624003A1243 /* GetInjectedBundleInitializationUserDataCallback_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GetInjectedBundleInitializationUserDataCallback_Bundle.cpp; sourceTree = "<group>"; }; >+ F660AA1215A619C8003A1243 /* InjectedBundleInitializationUserDataCallbackWins.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleInitializationUserDataCallbackWins.cpp; sourceTree = "<group>"; }; >+ F660AA1415A61ABF003A1243 /* InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp; sourceTree = "<group>"; }; >+ F6B7BE92174691EF008A3445 /* DidAssociateFormControls_Bundle.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = DidAssociateFormControls_Bundle.cpp; sourceTree = "<group>"; }; >+ F6B7BE93174691EF008A3445 /* DidAssociateFormControls.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = DidAssociateFormControls.cpp; sourceTree = "<group>"; }; >+ F6B7BE9617469B7E008A3445 /* associate-form-controls.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "associate-form-controls.html"; sourceTree = "<group>"; }; >+ F6F3F29013342FEB00A6BF19 /* CookieManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CookieManager.cpp; sourceTree = "<group>"; }; >+ F6F49C6615545C8D0007F39D /* DOMWindowExtensionNoCache_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DOMWindowExtensionNoCache_Bundle.cpp; sourceTree = "<group>"; }; >+ F6F49C6715545C8D0007F39D /* DOMWindowExtensionNoCache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DOMWindowExtensionNoCache.cpp; sourceTree = "<group>"; }; >+ F6FDDDD214241AD4004F1729 /* PrivateBrowsingPushStateNoHistoryCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PrivateBrowsingPushStateNoHistoryCallback.cpp; sourceTree = "<group>"; }; >+ F6FDDDD514241C48004F1729 /* push-state.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "push-state.html"; sourceTree = "<group>"; }; >+ FEB6F74E1B2BA44E009E4922 /* NakedPtr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NakedPtr.cpp; sourceTree = "<group>"; }; >+/* End PBXFileReference section */ >+ >+/* Begin PBXFrameworksBuildPhase section */ >+ 7C83DF641D0A590C00FEBCF3 /* Frameworks */ = { >+ isa = PBXFrameworksBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ 7C83E02A1D0A5CDF00FEBCF3 /* libWTF.a in Frameworks */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ 7C83DFC11D0A5AE400FEBCF3 /* Frameworks */ = { >+ isa = PBXFrameworksBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ 93F56DA71E5F9174003EDE84 /* libicucore.dylib in Frameworks */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ 7CCE7E891A41144E00447C4C /* Frameworks */ = { >+ isa = PBXFrameworksBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ 8DD76F9B0486AA7600D96B5E /* Frameworks */ = { >+ isa = PBXFrameworksBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ 7A010BCB1D877C0500EDE72A /* CoreGraphics.framework in Frameworks */, >+ 634910E01E9D3FF300880309 /* CoreLocation.framework in Frameworks */, >+ CDA3159D1ED5643F009F60D3 /* IOKit.framework in Frameworks */, >+ 7C83E03F1D0A61A000FEBCF3 /* libicucore.dylib in Frameworks */, >+ 7A010BCD1D877C0D00EDE72A /* QuartzCore.framework in Frameworks */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ BC57597E126E74AF006F0F12 /* Frameworks */ = { >+ isa = PBXFrameworksBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+/* End PBXFrameworksBuildPhase section */ >+ >+/* Begin PBXGroup section */ >+ 08FB7794FE84155DC02AAC07 /* TestWebKitAPI */ = { >+ isa = PBXGroup; >+ children = ( >+ 08FB7795FE84155DC02AAC07 /* Source */, >+ BCB9EB66112366D800A137E0 /* Tests */, >+ BC90957D12554CEA00083756 /* Configurations */, >+ 08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */, >+ 1AB674ADFE9D54B511CA2CBB /* Products */, >+ 7C83E0281D0A5CDF00FEBCF3 /* Frameworks */, >+ ); >+ name = TestWebKitAPI; >+ sourceTree = "<group>"; >+ }; >+ 08FB7795FE84155DC02AAC07 /* Source */ = { >+ isa = PBXGroup; >+ children = ( >+ 0F139E711A423A1D00F590F5 /* cocoa */, >+ BC575944126E733C006F0F12 /* InjectedBundle */, >+ 2E9660DC16C07D7B00371B42 /* ios */, >+ BCA61C3A11700B9400460D1E /* mac */, >+ BC131A9E1171317C00B69727 /* config.h */, >+ 7C6BBD8B19CEA63000C1F5E0 /* Counters.cpp */, >+ 7C6BBD8A19CEA54300C1F5E0 /* Counters.h */, >+ C0ADBE7A12FCA4D000D2C129 /* JavaScriptTest.cpp */, >+ C0ADBE7B12FCA4D000D2C129 /* JavaScriptTest.h */, >+ BC575BBF126F5752006F0F12 /* PlatformUtilities.cpp */, >+ BC131883117114A800B69727 /* PlatformUtilities.h */, >+ BC90951B125533D700083756 /* PlatformWebView.h */, >+ BCB9E7FA112359A300A137E0 /* Test.h */, >+ BC131AA8117131FC00B69727 /* TestsController.cpp */, >+ BCB9E7C711234E3A00A137E0 /* TestsController.h */, >+ 7C83E0361D0A5F7000FEBCF3 /* Utilities.h */, >+ 44A622C114A0E2B60048515B /* WTFStringUtilities.h */, >+ ); >+ name = Source; >+ sourceTree = "<group>"; >+ }; >+ 08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */ = { >+ isa = PBXGroup; >+ children = ( >+ C02B7853126613AE0026BF0F /* Carbon.framework */, >+ BCB9E9F011235BDE00A137E0 /* Cocoa.framework */, >+ BC90964D1255620C00083756 /* JavaScriptCore.framework */, >+ F3FC3EE213678B7300126A65 /* libgtest.a */, >+ C081224813FC1B0300DC39AE /* WebKit.framework */, >+ ); >+ name = "External Frameworks and Libraries"; >+ sourceTree = "<group>"; >+ }; >+ 0F139E711A423A1D00F590F5 /* cocoa */ = { >+ isa = PBXGroup; >+ children = ( >+ A13EBB441B87332B00097110 /* WebProcessPlugIn */, >+ F44D06481F3962E3001A0E29 /* EditingTestHarness.h */, >+ F44D06491F3962E3001A0E29 /* EditingTestHarness.mm */, >+ 5C726D6D1D3EE06800C5E1A1 /* InstanceMethodSwizzler.h */, >+ 5C726D6E1D3EE06800C5E1A1 /* InstanceMethodSwizzler.mm */, >+ 0F139E721A423A2B00F590F5 /* PlatformUtilitiesCocoa.mm */, >+ 2D1C04A51D76298B000A6816 /* TestNavigationDelegate.h */, >+ 2D1C04A61D76298B000A6816 /* TestNavigationDelegate.mm */, >+ A14FC58D1B8AE36500D107EB /* TestProtocol.h */, >+ A14FC58E1B8AE36500D107EB /* TestProtocol.mm */, >+ 2EFF06D21D8AEDBB0004BB30 /* TestWKWebView.h */, >+ 2EFF06D31D8AEDBB0004BB30 /* TestWKWebView.mm */, >+ 7C83E0391D0A602700FEBCF3 /* UtilitiesCocoa.mm */, >+ A14FC5841B89739100D107EB /* WKWebViewConfigurationExtras.h */, >+ A14FC5831B89739100D107EB /* WKWebViewConfigurationExtras.mm */, >+ ); >+ name = cocoa; >+ sourceTree = "<group>"; >+ }; >+ 0F139E741A423A4600F590F5 /* cocoa */ = { >+ isa = PBXGroup; >+ children = ( >+ 0F139E751A423A5300F590F5 /* WeakObjCPtr.mm */, >+ ); >+ name = cocoa; >+ sourceTree = "<group>"; >+ }; >+ 1AB674ADFE9D54B511CA2CBB /* Products */ = { >+ isa = PBXGroup; >+ children = ( >+ 8DD76FA10486AA7600D96B5E /* TestWebKitAPI */, >+ 7C83E0231D0A5AE400FEBCF3 /* TestWTF */, >+ BC575980126E74AF006F0F12 /* InjectedBundleTestWebKitAPI.bundle */, >+ 7CCE7E8C1A41144E00447C4C /* libTestWebKitAPI.a */, >+ 7C83DF681D0A590C00FEBCF3 /* libTestWTF.a */, >+ A13EBB491B87339E00097110 /* TestWebKitAPI.wkbundle */, >+ ); >+ name = Products; >+ sourceTree = "<group>"; >+ }; >+ 1ABC3DEC1899BE55004F0626 /* WebKit Cocoa */ = { >+ isa = PBXGroup; >+ children = ( >+ A16F66B81C40E9E100BD4D24 /* Resources */, >+ 7CEFA9641AC0B9E200B910FD /* _WKUserContentExtensionStore.mm */, >+ 37E7DD631EA06FF2009B396D /* AdditionalReadAccessAllowedURLs.mm */, >+ 37E7DD661EA071F3009B396D /* AdditionalReadAccessAllowedURLsPlugin.mm */, >+ 37E7DD651EA0715B009B396D /* AdditionalReadAccessAllowedURLsProtocol.h */, >+ A1DF74301C41B65800A2F4D0 /* AlwaysRevalidatedURLSchemes.mm */, >+ 2DE71AFD1D49C0BD00904094 /* AnimatedResize.mm */, >+ 754CEC801F6722DC00D0039A /* AutoFillAvailable.mm */, >+ 2DD355351BD08378005DF4A7 /* AutoLayoutIntegration.mm */, >+ 374B7A5E1DF36EEE00ACCB6C /* BundleEditingDelegate.mm */, >+ 374B7A5F1DF36EEE00ACCB6C /* BundleEditingDelegatePlugIn.mm */, >+ 374B7A621DF3734C00ACCB6C /* BundleEditingDelegateProtocol.h */, >+ A13EBBAC1B87436F00097110 /* BundleParameters.mm */, >+ A13EBBAE1B87436F00097110 /* BundleParametersPlugIn.mm */, >+ 37A709AD1E3EA8B000CA5969 /* BundleRangeHandle.mm */, >+ 37A709AA1E3EA79000CA5969 /* BundleRangeHandlePlugIn.mm */, >+ 37A709AC1E3EA7E800CA5969 /* BundleRangeHandleProtocol.h */, >+ 1C2B817E1C891E4200A5529F /* CancelFontSubresource.mm */, >+ 1C2B81811C891EFA00A5529F /* CancelFontSubresourcePlugIn.mm */, >+ 5CB18BA71F5645B200EE23C4 /* ClickAutoFillButton.mm */, >+ 1AAD19F51C7CE20300831E47 /* Coding.mm */, >+ 7C3DB8E21D12129B00AE8CC3 /* CommandBackForward.mm */, >+ 5C4A84941F7EEFD400ACFC54 /* Configuration.mm */, >+ A18AA8CC1C3FA218009B2B97 /* ContentFiltering.h */, >+ A14FC5861B8991B600D107EB /* ContentFiltering.mm */, >+ A14FC5891B89927100D107EB /* ContentFilteringPlugIn.mm */, >+ 5CA1DED81F74A87100E71BD3 /* ContentRuleListNotification.mm */, >+ 5C2936911D5BF63E00DEAB1E /* CookieAcceptPolicy.mm */, >+ 9999108A1F393C8B008AD455 /* Copying.mm */, >+ 9B7A37C21F8AEBA5004AA228 /* CopyURL.mm */, >+ 2DC4CF761D2D9DD800ECCC94 /* DataDetection.mm */, >+ CEC16EA41EE863BF00DE479A /* DecidePolicyForNavigationAction.mm */, >+ 2DC60E221E79F88C00FA6C7D /* DoAfterNextPresentationUpdateAfterCrash.mm */, >+ A1A4FE5D18DD3DB700B5EA8A /* Download.mm */, >+ A15502281E05020B00A24C57 /* DuplicateCompletionHandlerCalls.mm */, >+ F44D06461F395C4D001A0E29 /* EditorStateTests.mm */, >+ 2D8104CB1BEC13E70020DA46 /* FindInPage.mm */, >+ 2D1FE0AF1AD465C1006CD9E6 /* FixedLayoutSize.mm */, >+ CD78E11A1DB7EA360014A2DE /* FullscreenDelegate.mm */, >+ 3F1B52681D3D7129008D60C4 /* FullscreenLayoutConstraints.mm */, >+ CDE195B31CFE0ADE0053D256 /* FullscreenTopContentInset.mm */, >+ 631EFFF51E7B5E8D00D2EBB8 /* Geolocation.mm */, >+ 51AF23DE1EF1A3720072F281 /* IconLoadingDelegate.mm */, >+ 510477751D298E03009747EB /* IDBDeleteRecovery.mm */, >+ 5110FCEF1E01CBAA006F8D0B /* IDBIndexUpgradeToV2.mm */, >+ 51A587841D272EF3004BA9AF /* IndexedDBDatabaseProcessKill.mm */, >+ 51BCEE491C84F4AF0042C82E /* IndexedDBMultiProcess.mm */, >+ 51B1EE8D1C80F5880064FB98 /* IndexedDBPersistence.mm */, >+ 57599E201F07191700A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.mm */, >+ 5198A23F1EA7E595008910B7 /* InitialWarmedProcessUsed.mm */, >+ 2DB0232E1E4E871800707123 /* InteractionDeadlockAfterCrash.mm */, >+ 5C69BDD41F82A7EB000F4F4B /* JavaScriptDuringNavigation.mm */, >+ C25CCA051E51380B0026CB8A /* LineBreaking.mm */, >+ 37D36ED61AF42ECD00BAF5D9 /* LoadAlternateHTMLString.mm */, >+ A125478D1DB18B9400358564 /* LoadDataWithNilMIMEType.mm */, >+ 57901FAC1CAF12C200ED64F9 /* LoadInvalidURLRequest.mm */, >+ 51E6A8921D2F1BEC00C004B6 /* LocalStorageClear.mm */, >+ 46C519D81D355A7300DAA51A /* LocalStorageNullEntries.mm */, >+ 7A6A2C6F1DCCF87B00C0D085 /* LocalStorageQuirkTest.mm */, >+ 51CD1C6A1B38CE3600142CA5 /* ModalAlerts.mm */, >+ 1ABC3DED1899BE6D004F0626 /* Navigation.mm */, >+ 2ECFF5541D9B12F800B55394 /* NowPlayingControlsTests.mm */, >+ A10F047C1E3AD29C00C95E19 /* NSFileManagerExtras.mm */, >+ 37A22AA51DCAA27200AFBFC4 /* ObservedRenderingProgressEventsAfterCrash.mm */, >+ CEA6CF2219CCF5BD0064F5A7 /* OpenAndCloseWindow.mm */, >+ CEBCA12E1E3A660100C73293 /* OverrideContentSecurityPolicy.mm */, >+ 9BDCCD851F7D0B0700009A18 /* PasteImage.mm */, >+ 9BDD95561F83683600D20C60 /* PasteRTFD.mm */, >+ 3FCC4FE41EC4E8520076E37C /* PictureInPictureDelegate.mm */, >+ 83BAEE8C1EF4625500DDE894 /* PluginLoadClientPolicies.mm */, >+ C95501BE19AD2FAF0049BE3E /* Preferences.mm */, >+ 7C1AF7931E8DCBAB002645B9 /* PrepareForMoveToWindow.mm */, >+ 5798E2AF1CAF5C2800C5CBA0 /* ProvisionalURLNotChange.mm */, >+ A1C4FB6C1BACCE50003742D0 /* QuickLook.mm */, >+ 1A4F81D01BDFFDCF004E672E /* RemoteObjectRegistry.h */, >+ 1A4F81C81BDFFD18004E672E /* RemoteObjectRegistry.mm */, >+ 1A4F81CD1BDFFD53004E672E /* RemoteObjectRegistryPlugIn.mm */, >+ A12DDBF91E836F0700CF6CAE /* RenderedImageWithOptions.mm */, >+ A12DDBFC1E836FF100CF6CAE /* RenderedImageWithOptionsPlugIn.mm */, >+ A12DDC011E8374F500CF6CAE /* RenderedImageWithOptionsProtocol.h */, >+ CD9E292B1C90A71F000BB800 /* RequiresUserActionForPlayback.mm */, >+ 51C8E1A41F26AC5400BF731B /* ResourceLoadStatistics.mm */, >+ A180C0F91EE67DF000468F47 /* RunOpenPanel.mm */, >+ 37BCA61B1B596BA9002012CA /* ShouldOpenExternalURLsInNewWindowActions.mm */, >+ 2D9A53AE1B31FA8D0074D5AA /* ShrinkToFit.mm */, >+ 2DFF7B6C1DA487AF00814614 /* SnapshotStore.mm */, >+ 515BE1701D428BD100DD7C68 /* StoreBlobThenDelete.mm */, >+ 5CB40B4D1F4B98BE007DC7B9 /* UIDelegate.mm */, >+ 7CC3E1FA197E234100BE6252 /* UserContentController.mm */, >+ 7C882E031C80C624006BF731 /* UserContentWorld.mm */, >+ 7C882E041C80C624006BF731 /* UserContentWorldPlugIn.mm */, >+ 7C882E051C80C624006BF731 /* UserContentWorldProtocol.h */, >+ 7CCB99201D3B41F6003922F6 /* UserInitiatedActionInNavigationAction.mm */, >+ 07EDEFAC1EB9400C00D43292 /* UserMediaDisabled.mm */, >+ 93E943F11CD3E87E00AC08C2 /* VideoControlsManager.mm */, >+ 6356FB211EC4E0BA0044BF18 /* VisibleContentRect.mm */, >+ 83779C371F82FEB0007CDA8A /* VisitedLinkStore.mm */, >+ 5C973F5B1F58EF0A00359C27 /* WebGLPolicy.mm */, >+ 51714EB61CF8C7A4004723C4 /* WebProcessKillIDBCleanup.mm */, >+ 5120C83C1E6750790025B250 /* WebsiteDataStoreCustomPaths.mm */, >+ 5C9E56841DF9143D00C9EE33 /* WebsitePolicies.mm */, >+ 1F83571A1D3FFB0E00E3967B /* WKBackForwardList.mm */, >+ 5CE354D81E70D9C300BEFE3B /* WKContentExtensionStore.mm */, >+ 2D838B1E1EEF3A5B009B980E /* WKContentViewEditingActions.mm */, >+ 370CE2291F57343400E7410B /* WKContentViewTargetForAction.mm */, >+ 51D124971E763AF8002B2820 /* WKHTTPCookieStore.mm */, >+ A5A729F01F622A9A00DE5A28 /* WKNavigationResponse.mm */, >+ 375E0E151D66674400EFEC2C /* WKNSNumber.mm */, >+ 37B47E2E1D64E7CA005F4EFF /* WKObject.mm */, >+ A14AAB611E78D7DE00C1ADC2 /* WKPDFView.mm */, >+ 2D00065D1C1F58940088E6A7 /* WKPDFViewResizeCrash.mm */, >+ 2D21FE581F04642800B58E7D /* WKPDFViewStablePresentationUpdateCallback.mm */, >+ 44817A2E1F0486BF00003810 /* WKRequestActivatedElementInfo.mm */, >+ 5E4B1D2C1D404C6100053621 /* WKScrollViewDelegateCrash.mm */, >+ 51C683DD1EA134DB00650183 /* WKURLSchemeHandler-1.mm */, >+ 5182C22D1F2BCB410059BA7C /* WKURLSchemeHandler-leaks.mm */, >+ 2EFF06D61D8AF34A0004BB30 /* WKWebViewCandidateTests.mm */, >+ 7C417F311D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm */, >+ 46E66A8F1F0D75590026D83C /* WKWebViewDiagnosticLogging.mm */, >+ 2DB647871F4161F70051A89E /* WKWebViewDoesNotLogDuringInitialization.mm */, >+ 0F3B94A51A77266C00DE3272 /* WKWebViewEvaluateJavaScript.mm */, >+ D3BE5E341E4CE85E00FD563A /* WKWebViewGetContents.mm */, >+ 93F56DA81E5F9181003EDE84 /* WKWebViewSnapshot.mm */, >+ 9984FACA1CFFAEEE008D198C /* WKWebViewTextInput.mm */, >+ ); >+ name = "WebKit Cocoa"; >+ path = WebKitCocoa; >+ sourceTree = "<group>"; >+ }; >+ 2E9660DC16C07D7B00371B42 /* ios */ = { >+ isa = PBXGroup; >+ children = ( >+ F4D4F3B51E4E2BCB00BB2767 /* DataInteractionSimulator.h */, >+ F4D4F3B41E4E2BCB00BB2767 /* DataInteractionSimulator.mm */, >+ 2E7765CC16C4D80A00BA2BB1 /* mainIOS.mm */, >+ F493247C1F44DF8D006F4336 /* UIKitSPI.h */, >+ ); >+ path = ios; >+ sourceTree = "<group>"; >+ }; >+ 3162AE9A1E6F2F8F000E4DBC /* mac */ = { >+ isa = PBXGroup; >+ children = ( >+ 316BDBAB1E7207F100DE0D5A /* GPUBuffer.mm */, >+ 315231C91EB3B3C700A22A16 /* GPUCommandQueue.mm */, >+ 3162AE9B1E6F2FCE000E4DBC /* GPUDevice.mm */, >+ 316BDBA31E70EF5D00DE0D5A /* GPUFunction.mm */, >+ 316BDBA01E70D6D800DE0D5A /* GPULibrary.mm */, >+ 316BDBA21E70DEE500DE0D5A /* GPUTest.h */, >+ ); >+ path = mac; >+ sourceTree = "<group>"; >+ }; >+ 440A1D3614A01000008A66F2 /* WebCore */ = { >+ isa = PBXGroup; >+ children = ( >+ CD89D0371C4EDB1300040A04 /* cocoa */, >+ A1EC11851F4253D900D0146E /* ios */, >+ 3162AE9A1E6F2F8F000E4DBC /* mac */, >+ 7A909A6F1D877475007E10F8 /* AffineTransform.cpp */, >+ 93A720E518F1A0E800A848E1 /* CalculationValue.cpp */, >+ 07C046C91E42573E007201E7 /* CARingBuffer.cpp */, >+ 7C3965051CDD74F90094DBB8 /* Color.cpp */, >+ 1C9EB8401E380DA1005C6442 /* ComplexTextController.cpp */, >+ 7CB184C41AA3F2100066EDFD /* ContentExtensions.cpp */, >+ CD5451E919E41F9D0016936F /* CSSParser.cpp */, >+ 755A20AE1E6E38630093C69F /* DatabaseTrackerTest.cpp */, >+ 260BA5781B1D2E7B004FA07C /* DFACombiner.cpp */, >+ 260BA57A1B1D2EE2004FA07C /* DFAHelpers.h */, >+ 26F6E1EF1ADC749B00DE696B /* DFAMinimizer.cpp */, >+ 3151180F1DB1ADD500176304 /* ExtendedColor.cpp */, >+ 7A32D7491F02151500162C44 /* FileMonitor.cpp */, >+ 41973B5A1AF2286A006C7B36 /* FileSystem.cpp */, >+ 7A909A701D877475007E10F8 /* FloatPoint.cpp */, >+ 7A909A711D877475007E10F8 /* FloatRect.cpp */, >+ 7A909A721D877475007E10F8 /* FloatSize.cpp */, >+ 1CAD1F851E5CE7DA00AF2C2C /* FontCache.cpp */, >+ 8E4A85361E1D1AA100F53B0F /* GridPosition.cpp */, >+ 83B88A331C80056D00BB2418 /* HTMLParserIdioms.cpp */, >+ 5CA1DEC71F71F40700E71BD3 /* HTTPHeaderField.cpp */, >+ 7A909A731D877475007E10F8 /* IntPoint.cpp */, >+ 7A909A741D877475007E10F8 /* IntRect.cpp */, >+ 7A909A751D877475007E10F8 /* IntSize.cpp */, >+ 14464012167A8305000BD218 /* LayoutUnit.cpp */, >+ 076E507E1F45031E006E9F5A /* Logging.cpp */, >+ CE1866471F72E8F100A0CAB6 /* MarkerSubrange.cpp */, >+ A5B149DD1F5A19DC00C6DAFF /* MIMETypeRegistry.cpp */, >+ CD225C071C45A69200140761 /* ParsedContentRange.cpp */, >+ F418BE141F71B7DC001970E6 /* RoundedRectTests.cpp */, >+ CDCFA7A91E45122F00C2433D /* SampleMap.cpp */, >+ CE06DF9A1E1851F200E570C9 /* SecurityOrigin.cpp */, >+ 41973B5C1AF22875006C7B36 /* SharedBuffer.cpp */, >+ A17991891E1CA24100A505ED /* SharedBufferTest.cpp */, >+ A179918A1E1CA24100A505ED /* SharedBufferTest.h */, >+ ECA680CD1E68CC0900731D20 /* StringUtilities.mm */, >+ CE4D5DE51F6743BA0072CFC6 /* StringWithDirection.cpp */, >+ CDC2C7141797089D00E627FB /* TimeRanges.cpp */, >+ 7AD3FE8D1D75FB8D00B169A4 /* TransformationMatrix.cpp */, >+ 440A1D3814A0103A008A66F2 /* URL.cpp */, >+ 5C6E65411D5CEF8500F7862E /* URLParser.cpp */, >+ 9C64DC311D76198A004B598E /* YouTubePluginReplacement.cpp */, >+ ); >+ path = WebCore; >+ sourceTree = "<group>"; >+ }; >+ 7560917619259C59009EF06E /* ios */ = { >+ isa = PBXGroup; >+ children = ( >+ A1C4FB6F1BACCEFA003742D0 /* Resources */, >+ 2E205BA31F527746005952DD /* AccessibilityTestsIOS.mm */, >+ F45B63FC1F19D410009D38B9 /* ActionSheetTests.mm */, >+ F4D4F3B71E4E36E400BB2767 /* DataInteractionTests.mm */, >+ 7560917719259C59009EF06E /* MemoryCacheAddImageToCacheIOS.mm */, >+ F46849BD1EEF58E400B937FE /* UIPasteboardTests.mm */, >+ 514958BD1F7427AC00E87BAD /* WKWebViewAutofillTests.mm */, >+ ); >+ path = ios; >+ sourceTree = "<group>"; >+ }; >+ 7C83E0281D0A5CDF00FEBCF3 /* Frameworks */ = { >+ isa = PBXGroup; >+ children = ( >+ 7A010BCA1D877C0500EDE72A /* CoreGraphics.framework */, >+ 634910DF1E9D3FF300880309 /* CoreLocation.framework */, >+ 0F4FFAA01ED3D0DE00F7111F /* ImageIO.framework */, >+ CDA3159C1ED5643F009F60D3 /* IOKit.framework */, >+ 7C83E0331D0A5F2700FEBCF3 /* libicucore.dylib */, >+ 7C83E0291D0A5CDF00FEBCF3 /* libWTF.a */, >+ 7A010BCC1D877C0D00EDE72A /* QuartzCore.framework */, >+ ); >+ name = Frameworks; >+ sourceTree = "<group>"; >+ }; >+ 7CBBA07519BB8A0900BBF025 /* darwin */ = { >+ isa = PBXGroup; >+ children = ( >+ 37C7CC331EA41EC8007BD956 /* libTestWTFAlwaysMissing-iOS-v2.tbd */, >+ 37C7CC341EA41EC8007BD956 /* libTestWTFAlwaysMissing-iOS.tbd */, >+ 37C7CC2E1EA41702007BD956 /* libTestWTFAlwaysMissing-macOS-v2.tbd */, >+ 37C7CC351EA41EC8007BD956 /* libTestWTFAlwaysMissing-macOS.tbd */, >+ 7CBBA07619BB8A9100BBF025 /* OSObjectPtr.cpp */, >+ 37C7CC2B1EA4146B007BD956 /* WeakLinking.cpp */, >+ ); >+ path = darwin; >+ sourceTree = "<group>"; >+ }; >+ A13EBB441B87332B00097110 /* WebProcessPlugIn */ = { >+ isa = PBXGroup; >+ children = ( >+ A13EBB541B8734E000097110 /* Info.plist */, >+ A13EBBA91B87428D00097110 /* WebProcessPlugIn.mm */, >+ ); >+ name = WebProcessPlugIn; >+ path = cocoa/WebProcessPlugIn; >+ sourceTree = "<group>"; >+ }; >+ A16F66B81C40E9E100BD4D24 /* Resources */ = { >+ isa = PBXGroup; >+ children = ( >+ C25CCA0C1E5140E50026CB8A /* AllAhem.svg */, >+ F47D30EB1ED28619000482E1 /* apple.gif */, >+ 5C9E593E1D3EB1DE00E3C62E /* ApplicationCache.db */, >+ 5C9E593F1D3EB1DE00E3C62E /* ApplicationCache.db-shm */, >+ 5C9E59401D3EB1DE00E3C62E /* ApplicationCache.db-wal */, >+ F4856CA21E6498A8009D7EE7 /* attachment-element.html */, >+ F41AB9981EF4692C0083FA08 /* autofocus-contenteditable.html */, >+ 93CFA8661CEB9DE1000565A8 /* autofocused-text-input.html */, >+ 2E14A5281D3FE8B80010F35B /* autoplaying-video-with-audio.html */, >+ F41AB9971EF4692C0083FA08 /* background-image-link-and-input.html */, >+ 2DE71AFF1D49C2F000904094 /* blinking-div.html */, >+ 2EFF06C41D8867700004BB30 /* change-video-source-on-click.html */, >+ 2EFF06C61D886A560004BB30 /* change-video-source-on-end.html */, >+ F4B825D61EF4DBD4006E417F /* compressed-files.zip */, >+ F469FB231F01803500401539 /* contenteditable-and-target.html */, >+ F41AB99C1EF4692C0083FA08 /* contenteditable-and-textarea.html */, >+ F4A32ECA1F0642F40047C544 /* contenteditable-in-iframe.html */, >+ A16F66B91C40EA2000BD4D24 /* ContentFiltering.html */, >+ 5C2936941D5BFD1900DEAB1E /* CookieMessage.html */, >+ 9B62630B1F8C2510007EE29B /* copy-url.html */, >+ F4AB57891F65164B00DB0DA1 /* custom-draggable-div.html */, >+ F486B1CF1F6794FF00F34BDD /* DataTransfer-setDragImage.html */, >+ F4512E121F60C43400BB369E /* DataTransferItem-getAsEntry.html */, >+ 0799C34A1EBA32F4003B7532 /* disableGetUserMedia.html */, >+ F41AB99E1EF4692C0083FA08 /* div-and-large-image.html */, >+ 837A35F01D9A1E6400663C57 /* DownloadRequestBlobURL.html */, >+ 5714ECB81CA8B58800051AC8 /* DownloadRequestOriginalURL.html */, >+ 5714ECBC1CA8C21800051AC8 /* DownloadRequestOriginalURL2.html */, >+ 5714ECBA1CA8BFD100051AC8 /* DownloadRequestOriginalURLFrame.html */, >+ F4A32EC31F05F3780047C544 /* dragstart-change-selection-offscreen.html */, >+ F4D5E4E71F0C5D27008C1A49 /* dragstart-clear-selection.html */, >+ F4194AD01F5A2EA500ADD83F /* drop-targets.html */, >+ 2EB29D5D1F762DA50023A5F1 /* dump-datatransfer-types.html */, >+ A155022B1E050BC500A24C57 /* duplicate-completion-handler-calls.html */, >+ 9984FACD1CFFB038008D198C /* editable-body.html */, >+ F44D06441F395C0D001A0E29 /* editor-state-test-harness.html */, >+ 51C8E1A81F27F47300BF731B /* EmptyGrandfatheredResourceLoadStatistics.plist */, >+ F4C2AB211DD6D94100E06D5B /* enormous-video-with-sound.html */, >+ F407FE381F1D0DE60017CF25 /* enormous.svg */, >+ F41AB99B1EF4692C0083FA08 /* file-uploading.html */, >+ 93575C551D30366E000D604D /* focus-inputs.html */, >+ F4F405BA1D4C0CF8007A9707 /* full-size-autoplaying-video-with-audio.html */, >+ CD78E11B1DB7EA360014A2DE /* FullscreenDelegate.html */, >+ 3FBD1B491D39D1DB00E6D6FA /* FullscreenLayoutConstraints.html */, >+ CDE195B21CFE0ADE0053D256 /* FullscreenTopContentInset.html */, >+ 636353A61E9861940009F8AF /* GeolocationGetCurrentPositionResult.html */, >+ F47D30ED1ED28A6C000482E1 /* gif-and-file-input.html */, >+ 510477761D298E57009747EB /* IDBDeleteRecovery.html */, >+ 5104776F1D298D85009747EB /* IDBDeleteRecovery.sqlite3 */, >+ 510477701D298D85009747EB /* IDBDeleteRecovery.sqlite3-shm */, >+ 510477711D298D85009747EB /* IDBDeleteRecovery.sqlite3-wal */, >+ 5110FCF01E01CD53006F8D0B /* IDBIndexUpgradeToV2.html */, >+ F41AB9991EF4692C0083FA08 /* image-and-contenteditable.html */, >+ F41AB9931EF4692C0083FA08 /* image-and-textarea.html */, >+ F4DEF6EC1E9B4D950048EF61 /* image-in-link-and-input.html */, >+ F45B63FA1F197F33009D38B9 /* image-map.html */, >+ 51A587821D272EB5004BA9AF /* IndexedDBDatabaseProcessKill-1.html */, >+ 51BCEE4C1C84F52C0042C82E /* IndexedDBMultiProcess-1.html */, >+ 51BCEE4D1C84F52C0042C82E /* IndexedDBMultiProcess-2.html */, >+ 51A5877C1D1B3D8D004BA9AF /* IndexedDBMultiProcess-3.html */, >+ 51B1EE941C80FADD0064FB98 /* IndexedDBPersistence-1.html */, >+ 51B1EE951C80FADD0064FB98 /* IndexedDBPersistence-2.html */, >+ 57599E241F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3 */, >+ 57599E261F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm */, >+ 571F7FCF1F2961E100946648 /* IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal */, >+ 57599E251F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityRead.html */, >+ 57599E231F07192C00A3FB8C /* IndexedDBStructuredCloneBackwardCompatibilityWrite.html */, >+ 5110FCF21E01CD77006F8D0B /* IndexUpgrade.blob */, >+ 5110FCF31E01CD77006F8D0B /* IndexUpgrade.sqlite3 */, >+ 2EFF06CC1D8A42910004BB30 /* input-field-in-scrollable-document.html */, >+ F4538EF01E846B4100B5C953 /* large-red-square.png */, >+ 2E1B7B011D41B1B3007558B4 /* large-video-hides-controls-after-seek-to-end.html */, >+ 2E54F40C1D7BC83900921ADF /* large-video-mutes-onplaying.html */, >+ 2EFF06C21D8862120004BB30 /* large-video-offscreen.html */, >+ 2E691AF21D79E75400129407 /* large-video-playing-scroll-away.html */, >+ 2E1B7AFF1D41A95F007558B4 /* large-video-seek-after-ending.html */, >+ 2E1DFDF01D42E14400714A00 /* large-video-seek-to-beginning-and-play-after-ending.html */, >+ F4F137911D9B6832002BEC57 /* large-video-test-now-playing.html */, >+ 936F727E1CD7D9D00068A0FB /* large-video-with-audio.html */, >+ 936F727F1CD7D9D00068A0FB /* large-video-with-audio.mp4 */, >+ 93625D261CD973AF006DC1F1 /* large-video-without-audio.html */, >+ 2E691AEE1D79DE6F00129407 /* large-videos-autoplaying-click-to-pause.html */, >+ 2E691AF01D79E51400129407 /* large-videos-autoplaying-scroll-to-video.html */, >+ 2E691AE81D78B52B00129407 /* large-videos-paused-video-hides-controls.html */, >+ 2E691AEC1D78B90200129407 /* large-videos-playing-muted-video-hides-controls.html */, >+ 2E691AE91D78B52B00129407 /* large-videos-playing-video-keeps-controls.html */, >+ 2E1DFDEE1D42A6EB00714A00 /* large-videos-with-audio-autoplay.html */, >+ 2E1DFDEC1D42A41C00714A00 /* large-videos-with-audio.html */, >+ C25CCA0A1E513F490026CB8A /* LineBreaking.html */, >+ F41AB9961EF4692C0083FA08 /* link-and-input.html */, >+ F41AB99D1EF4692C0083FA08 /* link-and-target-div.html */, >+ 51E6A8951D2F1C7700C004B6 /* LocalStorageClear.html */, >+ 46C519E21D35629600DAA51A /* LocalStorageNullEntries.html */, >+ 46C519E31D35629600DAA51A /* LocalStorageNullEntries.localstorage */, >+ 46C519E41D35629600DAA51A /* LocalStorageNullEntries.localstorage-shm */, >+ 7A6A2C711DCCFB0200C0D085 /* LocalStorageQuirkEnabled.html */, >+ 93E2D2751ED7D51700FA76F6 /* offscreen-iframe-of-media-document.html */, >+ 7CCB99221D3B44E7003922F6 /* open-multiple-external-url.html */, >+ CEBCA1341E3A803400C73293 /* page-with-csp-iframe.html */, >+ CEBCA1351E3A803400C73293 /* page-with-csp.html */, >+ CEBCA1361E3A803400C73293 /* page-without-csp-iframe.html */, >+ CEBCA1371E3A803400C73293 /* page-without-csp.html */, >+ A1409AD81E7254AC004949D9 /* password-protected.pages */, >+ 9BD6D3A61F7B21CC00BD4962 /* paste-image.html */, >+ 9B7D740E1F8377E60006C432 /* paste-rtfd.html */, >+ 3FCC4FE61EC4E87E0076E37C /* PictureInPictureDelegate.html */, >+ F415086C1DA040C10044BE9B /* play-audio-on-click.html */, >+ F41AB9941EF4692C0083FA08 /* prevent-operation.html */, >+ F41AB99A1EF4692C0083FA08 /* prevent-start.html */, >+ A12DDBFF1E8373C100CF6CAE /* rendered-image-excluding-overflow.html */, >+ F46849BF1EEF5EDC00B937FE /* rich-and-plain-text.html */, >+ F4D65DA71F5E46C0009D8C27 /* selected-text-image-link-and-editable.html */, >+ C9B4AD291ECA6EA500F5FEA0 /* silence-long.m4a */, >+ F4F405BB1D4C0CF8007A9707 /* skinny-autoplaying-video-with-audio.html */, >+ 515BE16E1D4288FF00DD7C68 /* StoreBlobToBeDeleted.html */, >+ 9BD6D3A11F7B202100BD4962 /* sunset-in-cupertino-100px.tiff */, >+ 9BD6D3A01F7B202000BD4962 /* sunset-in-cupertino-200px.png */, >+ 9BD6D39F1F7B202000BD4962 /* sunset-in-cupertino-400px.gif */, >+ 9BD6D39E1F7B201E00BD4962 /* sunset-in-cupertino-600px.jpg */, >+ 2E9896141D8F092B00739892 /* text-and-password-inputs.html */, >+ F41AB9951EF4692C0083FA08 /* textarea-to-input.html */, >+ F4451C751EB8FD7C0020C5DA /* two-paragraph-contenteditable.html */, >+ 51714EB21CF8C761004723C4 /* WebProcessKillIDBCleanup-1.html */, >+ 51714EB31CF8C761004723C4 /* WebProcessKillIDBCleanup-2.html */, >+ 5120C83B1E674E350025B250 /* WebsiteDataStoreCustomPaths.html */, >+ 2E131C171D83A97E001BA36C /* wide-autoplaying-video-with-audio.html */, >+ ); >+ name = Resources; >+ sourceTree = "<group>"; >+ }; >+ A1C4FB6F1BACCEFA003742D0 /* Resources */ = { >+ isa = PBXGroup; >+ children = ( >+ A1C4FB721BACD1B7003742D0 /* pages.pages */, >+ ); >+ name = Resources; >+ sourceTree = "<group>"; >+ }; >+ A1EC11851F4253D900D0146E /* ios */ = { >+ isa = PBXGroup; >+ children = ( >+ A1EC11871F42541200D0146E /* PreviewLoader.cpp */, >+ ); >+ path = ios; >+ sourceTree = "<group>"; >+ }; >+ BC029B1A1486B23800817DA9 /* ns */ = { >+ isa = PBXGroup; >+ children = ( >+ 1ADAD14E1D77A9F600212586 /* BlockPtr.mm */, >+ BC029B1B1486B25900817DA9 /* RetainPtr.mm */, >+ ); >+ name = ns; >+ sourceTree = "<group>"; >+ }; >+ BC3C4C6F14575B1D0025FB62 /* WebKit Objective-C */ = { >+ isa = PBXGroup; >+ children = ( >+ 297234B2173AD04800983601 /* CustomProtocolsInvalidScheme.mm */, >+ 297234B5173AFAC700983601 /* CustomProtocolsInvalidScheme_Bundle.cpp */, >+ 290F4276172A232C00939FF0 /* CustomProtocolsSyncXHRTest.mm */, >+ 29AB8A9F164C735800D49BEC /* CustomProtocolsTest.mm */, >+ 2D1646E11D1862CD00015A1A /* DeferredViewInWindowStateChange.mm */, >+ 9B19CD9E1F06DFE3000548DD /* NetworkProcessCrashWithPendingConnection.mm */, >+ B55AD1D1179F336600AC1494 /* PreventImageLoadWithAutoResizing.mm */, >+ B55AD1D3179F3ABF00AC1494 /* PreventImageLoadWithAutoResizing_Bundle.cpp */, >+ 2943BE84161DFEB800999E3D /* UserContentTest.mm */, >+ BC3C4C7D14587AA60025FB62 /* WKBrowsingContextGroupTest.mm */, >+ BC3C4C7014575B6A0025FB62 /* WKBrowsingContextLoadDelegateTest.mm */, >+ 2D4CF8BC1D8360CC0001CE8D /* WKThumbnailView.mm */, >+ ); >+ name = "WebKit Objective-C"; >+ sourceTree = "<group>"; >+ }; >+ BC575944126E733C006F0F12 /* InjectedBundle */ = { >+ isa = PBXGroup; >+ children = ( >+ BC575981126E74AF006F0F12 /* InjectedBundle-Info.plist */, >+ BC575AA0126E7657006F0F12 /* InjectedBundleController.cpp */, >+ BC575A9F126E7657006F0F12 /* InjectedBundleController.h */, >+ BC575946126E7351006F0F12 /* InjectedBundleMain.cpp */, >+ BC575A9E126E75FB006F0F12 /* InjectedBundleTest.h */, >+ ); >+ name = InjectedBundle; >+ sourceTree = "<group>"; >+ }; >+ BC90957D12554CEA00083756 /* Configurations */ = { >+ isa = PBXGroup; >+ children = ( >+ BC90957E12554CF900083756 /* Base.xcconfig */, >+ BC90957F12554CF900083756 /* DebugRelease.xcconfig */, >+ CD773F711C5057DB0002257C /* FeatureDefines.xcconfig */, >+ BC575AE2126E88B1006F0F12 /* InjectedBundle.xcconfig */, >+ 5735F0251F3A4EA6000EE801 /* TestWebKitAPI-iOS.entitlements */, >+ BC90958012554CF900083756 /* TestWebKitAPI.xcconfig */, >+ 7CCE7EA31A4115CB00447C4C /* TestWebKitAPILibrary.xcconfig */, >+ 7C83E0261D0A5B8D00FEBCF3 /* TestWTF.xcconfig */, >+ 7C83E0271D0A5B8D00FEBCF3 /* TestWTFLibrary.xcconfig */, >+ A13EBB521B87346600097110 /* WebProcessPlugIn.xcconfig */, >+ ); >+ path = Configurations; >+ sourceTree = "<group>"; >+ }; >+ BC9096411255616000083756 /* WebKit */ = { >+ isa = PBXGroup; >+ children = ( >+ 0F139E741A423A4600F590F5 /* cocoa */, >+ C0C5D3BB14598B6F00A802A6 /* mac */, >+ BC90977B125571AE00083756 /* Resources */, >+ BC246D8C132F115A00B56D7C /* AboutBlankLoad.cpp */, >+ BC246D98132F1FE100B56D7C /* CanHandleRequest.cpp */, >+ BC246D97132F1FE100B56D7C /* CanHandleRequest_Bundle.cpp */, >+ 1A50AA1C1A2A4E7000F4C345 /* CloseFromWithinCreatePage.cpp */, >+ 7C8DDAA91735DE1D00EA5AC0 /* CloseThenTerminate.cpp */, >+ F6F3F29013342FEB00A6BF19 /* CookieManager.cpp */, >+ F6B7BE93174691EF008A3445 /* DidAssociateFormControls.cpp */, >+ F6B7BE92174691EF008A3445 /* DidAssociateFormControls_Bundle.cpp */, >+ 9331407B17B4419000F083B1 /* DidNotHandleKeyDown.cpp */, >+ AD57AC1F1DA7464D00FF1BDE /* DidRemoveFrameFromHiearchyInPageCache.cpp */, >+ AD57AC1E1DA7464D00FF1BDE /* DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp */, >+ BCB6803F126FBFE100642A61 /* DocumentStartUserScriptAlertCrash.cpp */, >+ BCB68041126FBFF100642A61 /* DocumentStartUserScriptAlertCrash_Bundle.cpp */, >+ 51393E1E1523944A005F39C5 /* DOMWindowExtensionBasic.cpp */, >+ 51393E1D1523944A005F39C5 /* DOMWindowExtensionBasic_Bundle.cpp */, >+ F6F49C6715545C8D0007F39D /* DOMWindowExtensionNoCache.cpp */, >+ F6F49C6615545C8D0007F39D /* DOMWindowExtensionNoCache_Bundle.cpp */, >+ C045F9441385C2E900C0F3CD /* DownloadDecideDestinationCrash.cpp */, >+ 07492B3A1DF8AE2D00633DE1 /* EnumerateMediaDevices.cpp */, >+ 448D7E451EA6C55500ECC756 /* EnvironmentUtilitiesTest.cpp */, >+ 75F3133F18C171B70041CAEC /* EphemeralSessionPushStateNoHistoryCallback.cpp */, >+ 1A5FEFDC1270E2A3000E2921 /* EvaluateJavaScript.cpp */, >+ 5C79640F1EB0269B0075D74C /* EventModifiers.cpp */, >+ BCC8B95A12611F4700DE46A4 /* FailedLoad.cpp */, >+ 1A02C84E125D4A8400E3F4BD /* Find.cpp */, >+ C51AFB98169F49FF009CCF66 /* FindMatches.mm */, >+ 1ADBEFAD130C689C00D61D19 /* ForceRepaint.cpp */, >+ 376C8C041D6E197C007D2BB9 /* FrameHandle.cpp */, >+ BCBD370F125AA2EB00D2C29F /* FrameMIMETypeHTML.cpp */, >+ BCBD3760125ABCFE00D2C29F /* FrameMIMETypePNG.cpp */, >+ 26F52EAA182872600023D412 /* Geolocation.cpp */, >+ F660AA0C15A5F061003A1243 /* GetInjectedBundleInitializationUserDataCallback.cpp */, >+ F660AA0F15A5F624003A1243 /* GetInjectedBundleInitializationUserDataCallback_Bundle.cpp */, >+ 07CE1CF21F06A7E000BF89F5 /* GetUserMediaNavigation.mm */, >+ 4BFDFFA8131477770061F24B /* HitTestResultNodeHandle.cpp */, >+ 4BFDFFA61314776C0061F24B /* HitTestResultNodeHandle_Bundle.cpp */, >+ BC575AAC126E83B9006F0F12 /* InjectedBundleBasic.cpp */, >+ BC575AAF126E83C8006F0F12 /* InjectedBundleBasic_Bundle.cpp */, >+ 378E64711632646D00B6C676 /* InjectedBundleFrameHitTest.cpp */, >+ 378E64751632655D00B6C676 /* InjectedBundleFrameHitTest_Bundle.cpp */, >+ F660AA1215A619C8003A1243 /* InjectedBundleInitializationUserDataCallbackWins.cpp */, >+ F660AA1415A61ABF003A1243 /* InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp */, >+ 9B0786A21C58830F00D159E3 /* InjectedBundleMakeAllShadowRootsOpen.cpp */, >+ 9B0786A41C5885C300D159E3 /* InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp */, >+ 93D3D19D17B1A84200C7C415 /* LayoutMilestonesWithAllContentInFrame.cpp */, >+ 7A66BDB51EAF14D000CCC924 /* LimitTitleSize.cpp */, >+ 52CB47401448FB9300873995 /* LoadAlternateHTMLStringWithNonDirectoryURL.cpp */, >+ 33DC8910141953A300747EF7 /* LoadCanceledNoServerRedirectCallback.cpp */, >+ 33DC89131419579F00747EF7 /* LoadCanceledNoServerRedirectCallback_Bundle.cpp */, >+ 8AA28C1916D2FA7B002FF4DB /* LoadPageOnCrash.cpp */, >+ CDC9442C1EF1FC080059C3C4 /* MediaStreamTrackDetached.mm */, >+ 7A5623101AD5AF3E0096B920 /* MenuTypesForMouseEvents.cpp */, >+ 51CB4AD71B3A079C00C1B1C6 /* ModalAlertsSPI.cpp */, >+ 33BE5AF4137B5A6C00705813 /* MouseMoveAfterCrash.cpp */, >+ 33BE5AF8137B5AAE00705813 /* MouseMoveAfterCrash_Bundle.cpp */, >+ 5797FE2F1EB15A5F00B2F4A0 /* NavigationClientDefaultCrypto.cpp */, >+ 93F1DB3014DA20760024C362 /* NewFirstVisuallyNonEmptyLayout.cpp */, >+ 93F1DB3314DA20870024C362 /* NewFirstVisuallyNonEmptyLayout_Bundle.cpp */, >+ 93F1DB5414DB1B730024C362 /* NewFirstVisuallyNonEmptyLayoutFails.cpp */, >+ 93F1DB5614DB1B840024C362 /* NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp */, >+ 93AF4ECA1506F035007FD57E /* NewFirstVisuallyNonEmptyLayoutForImages.cpp */, >+ 93AF4ECD1506F064007FD57E /* NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp */, >+ 93F7E86B14DC8E4D00C84A99 /* NewFirstVisuallyNonEmptyLayoutFrames.cpp */, >+ 93F7E86E14DC8E5B00C84A99 /* NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp */, >+ 7CCB4DA71C83AE7300CC6918 /* PageGroup.cpp */, >+ BC909779125571AB00083756 /* PageLoadBasic.cpp */, >+ BC2D004812A9FDFA00E732A3 /* PageLoadDidChangeLocationWithinPageForFrame.cpp */, >+ 52E5CE4514D21E9D003B2BD8 /* ParentFrame.cpp */, >+ 52E5CE4814D21EAB003B2BD8 /* ParentFrame_Bundle.cpp */, >+ C54237EE16B8955800E638FC /* PasteboardNotifications.mm */, >+ C54237ED16B8955800E638FC /* PasteboardNotifications_Bundle.cpp */, >+ 0766DD1F1A5AD5200023E3BB /* PendingAPIRequestURL.cpp */, >+ 333B9CE11277F23100FEFCE3 /* PreventEmptyUserAgent.cpp */, >+ F6FDDDD214241AD4004F1729 /* PrivateBrowsingPushStateNoHistoryCallback.cpp */, >+ 4647B1251EBA3B730041D7EF /* ProcessDidTerminate.cpp */, >+ 8A3AF93A16C9ED2700D248C1 /* ReloadPageAfterCrash.cpp */, >+ 2DD7D3A9178205D00026E1E3 /* ResizeReversePaginatedWebView.cpp */, >+ 8A2C750D16CED9550024F352 /* ResizeWindowAfterCrash.cpp */, >+ 83DE134C1EF1C4FE00C1B355 /* ResponsivenessTimer.cpp */, >+ C0BD669C131D3CF700E18F2A /* ResponsivenessTimerDoesntFireEarly.cpp */, >+ C0BD669E131D3CFF00E18F2A /* ResponsivenessTimerDoesntFireEarly_Bundle.cpp */, >+ 83B6DE6E1EE7520F001E792F /* RestoreSessionState.cpp */, >+ C0ADBE8212FCA6AA00D2C129 /* RestoreSessionStateContainingFormData.cpp */, >+ 835CF9661D25FCD6001A65D4 /* RestoreSessionStateWithoutNavigation.cpp */, >+ 2D640B5417875DFF00BFAF99 /* ScrollPinningBehaviors.cpp */, >+ 51FCF7981534AC6D00104491 /* ShouldGoToBackForwardListItem.cpp */, >+ 51FCF7971534AC6D00104491 /* ShouldGoToBackForwardListItem_Bundle.cpp */, >+ 51E5C7041919EA5F00D8B3E1 /* ShouldKeepCurrentBackForwardListItemInList.cpp */, >+ C02B77F1126612140026BF0F /* SpacebarScrolling.cpp */, >+ 76734997193016DC00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad.cpp */, >+ 7673499A1930182E00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad_bundle.cpp */, >+ 1AE72F47173EB214006362F0 /* TerminateTwice.cpp */, >+ CE3524F11B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing.cpp */, >+ CE3524F21B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing_Bundle.cpp */, >+ 4A410F4B19AF7BD6002EBAB5 /* UserMedia.cpp */, >+ BC22D31314DC689800FFB1DD /* UserMessage.cpp */, >+ BC22D31714DC68B800FFB1DD /* UserMessage_Bundle.cpp */, >+ 115EB3421EE0B720003C2C0A /* ViewportSizeForViewportUnits.mm */, >+ 520BCF4B141EB09E00937EA8 /* WebArchive.cpp */, >+ 520BCF4A141EB09E00937EA8 /* WebArchive_Bundle.cpp */, >+ 0F17BBD415AF6C4D007AB753 /* WebCoreStatisticsWithNoWebProcess.cpp */, >+ 7CFBCADD1743234F00B2BFCF /* WillLoad.cpp */, >+ 7CFBCAE31743238E00B2BFCF /* WillLoad_Bundle.cpp */, >+ 76E182D91547550100F1FADD /* WillSendSubmitEvent.cpp */, >+ 76E182DC1547569100F1FADD /* WillSendSubmitEvent_Bundle.cpp */, >+ 7C54A4BC1AA11CCA00380F78 /* WKBundleFileHandle.cpp */, >+ 7C54A4BF1AA11CE400380F78 /* WKBundleFileHandle_Bundle.cpp */, >+ A1FDFD2E19C288BB005148A4 /* WKImageCreateCGImageCrash.cpp */, >+ 7C89D2AA1A69B80D003A5FDE /* WKPageConfiguration.cpp */, >+ 52D673EC1AFB126800FA19FE /* WKPageCopySessionStateWithFiltering.cpp */, >+ 51E93016156B13E1004C99DF /* WKPageGetScaleFactorNotZero.cpp */, >+ 524BBC9C19DF377A002F1AF1 /* WKPageIsPlayingAudio.cpp */, >+ BC7B619A1299FE9E00D174A4 /* WKPreferences.cpp */, >+ 1CF0D3781BBF2F3D00B4EF54 /* WKRetainPtr.cpp */, >+ BC90995D12567BC100083756 /* WKString.cpp */, >+ BC9099931256ACF100083756 /* WKStringJSString.cpp */, >+ ); >+ path = WebKit; >+ sourceTree = "<group>"; >+ }; >+ BC9096461255618900083756 /* WTF */ = { >+ isa = PBXGroup; >+ children = ( >+ C0991C4F143C7D68007998F2 /* cf */, >+ 7CBBA07519BB8A0900BBF025 /* darwin */, >+ BC029B1A1486B23800817DA9 /* ns */, >+ 26F1B44215CA434F00D1E4BF /* AtomicString.cpp */, >+ E40019301ACE9B5C001B0A2A /* BloomFilter.cpp */, >+ A7A966DA140ECCC8005EF9B4 /* CheckedArithmeticOperations.cpp */, >+ 0FEAE3671B7D19CB00CE17F2 /* Condition.cpp */, >+ 51714EB91D087416004723C4 /* CrossThreadTask.cpp */, >+ 26A2C72E15E2E73C005B1A14 /* CString.cpp */, >+ 7AA021BA1AB09EA70052953F /* DateMath.cpp */, >+ 1A3524A91D627BD40031729B /* DeletedAddressOfOperator.h */, >+ E4A757D3178AEA5B00B5D7A4 /* Deque.cpp */, >+ 1AF7B21D1D6CD12E008C126C /* EnumTraits.cpp */, >+ AD7C434C1DD2A5470026888B /* Expected.cpp */, >+ 9310CD361EF708FB0050FFE0 /* Function.cpp */, >+ 83DB79671EF63B3C00BFA5E5 /* Function.cpp */, >+ 7A38D7E51C752D5F004F157D /* HashCountedSet.cpp */, >+ 0BCD833414857CE400EA2003 /* HashMap.cpp */, >+ 26B2DFF815BDE599004F691D /* HashSet.cpp */, >+ 266FAFD215E5775200F61D5B /* IntegerToStringConversion.cpp */, >+ 531C1D8D1DF8EF72006E979F /* LEBDecoder.cpp */, >+ A57D54F71F3397B400A97AA7 /* LifecycleLogger.cpp */, >+ A57D54F81F3397B400A97AA7 /* LifecycleLogger.h */, >+ 26300B1716755CD90066886D /* ListHashSet.cpp */, >+ 0FFC45A41B73EBE20085BD62 /* Lock.cpp */, >+ A57D54F41F3395D000A97AA7 /* Logger.cpp */, >+ A57D54F51F3395D000A97AA7 /* Logger.h */, >+ B4039F9C15E6D8B3007255D6 /* MathExtras.cpp */, >+ CD5393C71757BA9700C07123 /* MD5.cpp */, >+ CD5497B315857F0C00B5BC30 /* MediaTime.cpp */, >+ 0FC6C4CE141034AD005B7F0C /* MetaAllocator.cpp */, >+ 93A427AC180DA60F00CD24D7 /* MoveOnly.h */, >+ FEB6F74E1B2BA44E009E4922 /* NakedPtr.cpp */, >+ A57D54F21F338C3600A97AA7 /* NeverDestroyed.cpp */, >+ 1AFDE6541953B2C000C48FFA /* Optional.cpp */, >+ CE50D8C81C8665CE0072EA5A /* OptionSet.cpp */, >+ 0FE447971B76F1E3009498EB /* ParkingLot.cpp */, >+ 53EC253F1E96BC80000831B9 /* PriorityQueue.cpp */, >+ 0FC6C4CB141027E0005B7F0C /* RedBlackTree.cpp */, >+ 93A427AA180DA26400CD24D7 /* Ref.cpp */, >+ 86BD19971A2DB05B006DCF0A /* RefCounter.cpp */, >+ 442BBF681C91CAD90017087F /* RefLogger.cpp */, >+ 93A427AD180DA60F00CD24D7 /* RefLogger.h */, >+ 93A427A8180D9B0700CD24D7 /* RefPtr.cpp */, >+ E4C9ABC71B3DB1710040A987 /* RunLoop.cpp */, >+ 14F3B11215E45EAB00210069 /* SaturatedArithmeticOperations.cpp */, >+ 1A3524AC1D63A4FB0031729B /* Scope.cpp */, >+ DC69AA621CF77C6500C6272F /* ScopedLambda.cpp */, >+ 0BCD85691485C98B00EA2003 /* SetForScope.cpp */, >+ CD5393C91757BAC400C07123 /* SHA1.cpp */, >+ E3953F951F2CF32100A76A2E /* Signals.cpp */, >+ 81B50192140F232300D9EB58 /* StringBuilder.cpp */, >+ 7CD4C26C1E2C0E6E00929470 /* StringConcatenate.cpp */, >+ 93ABA80816DDAB91002DB2FA /* StringHasher.cpp */, >+ 26F1B44315CA434F00D1E4BF /* StringImpl.cpp */, >+ C01363C713C3997300EF3964 /* StringOperators.cpp */, >+ 7C74D42D188228F300E5ED57 /* StringView.cpp */, >+ 5597F8341D9596C80066BC21 /* SynchronizedFixedQueue.cpp */, >+ 9329AA281DE3F81E003ABD07 /* TextBreakIterator.cpp */, >+ E3DEA8101F0A588000CBC2E8 /* ThreadGroup.cpp */, >+ 5311BD5D1EA9490D00525281 /* ThreadMessages.cpp */, >+ 0F2C20B71DCD544800542D9E /* Time.cpp */, >+ 5C5E633D1D0B67940085A025 /* UniqueRef.cpp */, >+ 7CD0D5AA1D5534DE000CC9E1 /* Variant.cpp */, >+ BC55F5F814AD78EE00484BE1 /* Vector.cpp */, >+ 1CB9BC371A67482300FE5678 /* WeakPtr.cpp */, >+ 7AA6A1511AAC0B31002B2ED3 /* WorkQueue.cpp */, >+ 265AF54F15D1E48A00B0CB4A /* WTFString.cpp */, >+ ); >+ path = WTF; >+ sourceTree = "<group>"; >+ }; >+ BC90977B125571AE00083756 /* Resources */ = { >+ isa = PBXGroup; >+ children = ( >+ C045F9461385C2F800C0F3CD /* 18-characters.html */, >+ 1C2B81851C89252300A5529F /* Ahem.ttf */, >+ 93D3D19B17B1A7B000C7C415 /* all-content-in-one-iframe.html */, >+ F6B7BE9617469B7E008A3445 /* associate-form-controls.html */, >+ 76E182DE15475A8300F1FADD /* auto-submitting-form.html */, >+ C9C60E631E53A9BA006DA181 /* autoplay-check-frame.html */, >+ C9C60E641E53A9BA006DA181 /* autoplay-check-in-iframe.html */, >+ C95984F21E36BC55002C0D45 /* autoplay-check.html */, >+ C9B1043D1ECF9832000520FA /* autoplay-inherits-gesture-from-document.html */, >+ C9BF06EE1E9C130400595E3E /* autoplay-muted-with-controls.html */, >+ C95984F31E36BC55002C0D45 /* autoplay-no-audio-check.html */, >+ C99B675A1E3971FC00FC6C80 /* autoplay-with-controls.html */, >+ C99BDF881E8097E300C7170E /* autoplay-zero-volume-check.html */, >+ 7C486BA01AA1254B003F6F9B /* bundle-file.html */, >+ 9BD4239B1E04BFD000200395 /* chinese-character-with-image.html */, >+ 1A50AA1F1A2A4EA500F4C345 /* close-from-within-create-page.html */, >+ 9B270FED1DDC25FD002D53F3 /* closed-shadow-tree-test.html */, >+ 5C9E56861DF9148E00C9EE33 /* contentBlockerCheck.html */, >+ 290F4274172A1FDE00939FF0 /* custom-protocol-sync-xhr.html */, >+ A14AAB641E78DC3F00C1ADC2 /* encrypted.pdf */, >+ 07492B391DF8ADA400633DE1 /* enumerateMediaDevices.html */, >+ C5E1AFFD16B22179006CC1F2 /* execCopy.html */, >+ BC2D004A12A9FEB300E732A3 /* file-with-anchor.html */, >+ CD59F53219E910AA00CF1835 /* file-with-mse.html */, >+ 524BBC9B19DF3714002F1AF1 /* file-with-video.html */, >+ 1A02C84B125D4A5E00E3F4BD /* find.html */, >+ C5101C4E176B8BB900EE9B15 /* findRanges.html */, >+ 26F52EAC1828820E0023D412 /* geolocationGetCurrentPosition.html */, >+ 26F52EAE18288C040023D412 /* geolocationGetCurrentPositionWithHighAccuracy.html */, >+ 26F52EB018288F0F0023D412 /* geolocationWatchPosition.html */, >+ 26F52EB118288F0F0023D412 /* geolocationWatchPositionWithHighAccuracy.html */, >+ 4A410F4D19AF7BEF002EBAB5 /* getUserMedia.html */, >+ BCBD372E125ABBE600D2C29F /* icon.png */, >+ CE3524F51B142BBB0028A7C5 /* input-focus-blur.html */, >+ C9B4AD2B1ECA6F7600F5FEA0 /* js-autoplay-audio.html */, >+ C99B675B1E3971FC00FC6C80 /* js-play-with-controls.html */, >+ 55226A2E1EB969B600C36AD0 /* large-red-square-image.html */, >+ 8361F1771E610B2100759B25 /* link-with-download-attribute-with-slashes.html */, >+ 8349D3C31DB9724F004A9F65 /* link-with-download-attribute.html */, >+ 378E647816326FDF00B6C676 /* link-with-title.html */, >+ 9361002814DC957B0061379D /* lots-of-iframes.html */, >+ 93AF4ECF1506F123007FD57E /* lots-of-images.html */, >+ 2DD7D3AE178227AC0026E1E3 /* lots-of-text-vertical-lr.html */, >+ 930AD401150698B30067970F /* lots-of-text.html */, >+ AD57AC1D1DA7463800FF1BDE /* many-iframes.html */, >+ CDC9442B1EF1FBD20059C3C4 /* mediastreamtrack-detached.html */, >+ 51CD1C711B38D48400142CA5 /* modal-alerts-in-new-about-blank-window.html */, >+ 7A1458FB1AD5C03500E06772 /* mouse-button-listener.html */, >+ 33E79E05137B5FCE00E32D99 /* mouse-move-listener.html */, >+ 5797FE321EB15A8900B2F4A0 /* navigation-client-default-crypto.html */, >+ C99B675E1E39735C00FC6C80 /* no-autoplay-with-controls.html */, >+ CEA6CF2719CCF69D0064F5A7 /* open-and-close-window.html */, >+ F6FDDDD514241C48004F1729 /* push-state.html */, >+ 7A66BDB71EAF150100CCC924 /* set-long-title.html */, >+ CEBABD481B71687C0051210A /* should-open-external-schemes.html */, >+ 1ADBEFBC130C6A0100D61D19 /* simple-accelerated-compositing.html */, >+ C0ADBE8412FCA6B600D2C129 /* simple-form.html */, >+ 33DC890E1419539300747EF7 /* simple-iframe.html */, >+ BCAA485514A021640088FAC4 /* simple-tall.html */, >+ BC909778125571AB00083756 /* simple.html */, >+ 51E780361919AFF8001829A2 /* simple2.html */, >+ 51E780371919AFF8001829A2 /* simple3.html */, >+ C02B7882126615410026BF0F /* spacebar-scrolling.html */, >+ CD59F53319E910BC00CF1835 /* test-mse.mp4 */, >+ C95984F61E36BCD7002C0D45 /* test-without-audio-track.mp4 */, >+ 524BBCA019E30C63002F1AF1 /* test.mp4 */, >+ 7AE9E5081AE5AE8B00CF874B /* test.pdf */, >+ 1C2B81841C8924A200A5529F /* webfont.html */, >+ ); >+ name = Resources; >+ sourceTree = "<group>"; >+ }; >+ BCA61C3A11700B9400460D1E /* mac */ = { >+ isa = PBXGroup; >+ children = ( >+ 1AEDE22413E5E7A000E62FE8 /* InjectedBundleControllerMac.mm */, >+ C081224013FC172400DC39AE /* JavaScriptTestMac.mm */, >+ 2E7765CE16C4D81100BA2BB1 /* mainMac.mm */, >+ BC131884117114B600B69727 /* PlatformUtilitiesMac.mm */, >+ BC90955C125548AA00083756 /* PlatformWebViewMac.mm */, >+ C081224313FC19EC00DC39AE /* SyntheticBackingScaleFactorWindow.h */, >+ C081224413FC19EC00DC39AE /* SyntheticBackingScaleFactorWindow.m */, >+ 29AB8AA3164C7A9300D49BEC /* TestBrowsingContextLoadDelegate.h */, >+ 29AB8AA2164C7A9300D49BEC /* TestBrowsingContextLoadDelegate.mm */, >+ C08587BE13FE956C001EF4E5 /* WebKitAgnosticTest.h */, >+ C08587BD13FE956C001EF4E5 /* WebKitAgnosticTest.mm */, >+ ); >+ path = mac; >+ sourceTree = "<group>"; >+ }; >+ BCB9EB66112366D800A137E0 /* Tests */ = { >+ isa = PBXGroup; >+ children = ( >+ 7560917619259C59009EF06E /* ios */, >+ FE217ECB1640A54A0052988B /* JavaScriptCore */, >+ C07E6CAD13FD67650038B22B /* mac */, >+ C08587F913FEC39B001EF4E5 /* TestWebKitAPI */, >+ 440A1D3614A01000008A66F2 /* WebCore */, >+ BC9096411255616000083756 /* WebKit */, >+ 1ABC3DEC1899BE55004F0626 /* WebKit Cocoa */, >+ BC3C4C6F14575B1D0025FB62 /* WebKit Objective-C */, >+ CDC8E4981BC728AE00594FEC /* WebKitLegacy */, >+ BC9096461255618900083756 /* WTF */, >+ ); >+ path = Tests; >+ sourceTree = "<group>"; >+ }; >+ C07E6CAD13FD67650038B22B /* mac */ = { >+ isa = PBXGroup; >+ children = ( >+ C07E6CB013FD737C0038B22B /* Resources */, >+ 379028B514FABD92007E6B43 /* AcceptsFirstMouse.mm */, >+ B55F119F1516834F00915916 /* AttributedString.mm */, >+ 00CD9F6215BE312C002DA2CE /* BackForwardList.mm */, >+ 26DF5A5D15A29BAA003689C2 /* CancelLoadFromResourceLoadDelegate.mm */, >+ 93CFA8681CEBCFED000565A8 /* CandidateTests.mm */, >+ 290A9BB51735DE8A00D71BBC /* CloseNewWindowInNavigationPolicyDelegate.mm */, >+ A1146A8A1D2D704F000FE710 /* ContentFiltering.mm */, >+ 5142B2701517C88B00C32B19 /* ContextMenuCanCopyURL.mm */, >+ 37FB72951DB2E82F00E41BE4 /* ContextMenuDefaultItemsHaveTags.mm */, >+ 7AEAD47C1E20113800416EFE /* CrossPartitionFileSchemeAccess.mm */, >+ 3776BC62150946BC0043A66D /* DeviceScaleFactorInDashboardRegions.mm */, >+ 939BA91614103412001A01BD /* DeviceScaleFactorOnBack.mm */, >+ 37E1064A1697676400B78BD0 /* DOMHTMLTableCellCellAbove.mm */, >+ 2D51A0C51C8BF00400765C45 /* DOMHTMLVideoElementWrapper.mm */, >+ 46397B941DC2C850009A78AE /* DOMNode.mm */, >+ 3751AF7A169518F800764319 /* DOMNodeFromJSObject.mm */, >+ 37DC678B140D7C5000ABCCDB /* DOMRangeOfString.mm */, >+ F4BFA68C1E4AD08000154298 /* DragAndDropPasteboardTests.mm */, >+ C07E6CAE13FD67650038B22B /* DynamicDeviceScaleFactor.mm */, >+ 1A9FB6CC1CA34BE500966124 /* EarlyKVOCrash.mm */, >+ 4BB4160316815F9100824238 /* ElementAtPointInWebFrame.mm */, >+ 9B79164F1BD89D0D00D50B8F /* FirstResponderScrollingPosition.mm */, >+ C9E6DD311EA972D800DD78AA /* FirstResponderSuppression.mm */, >+ 1A7E8B33181208DE00AEB74A /* FragmentNavigation.mm */, >+ CDBFCC431A9FF44800A7B691 /* FullscreenZoomInitialFrame.mm */, >+ 9B4F8FA3159D52B1002D9F94 /* HTMLCollectionNamedItem.mm */, >+ 9B26FC6B159D061000CC3765 /* HTMLFormCollectionNamedItem.mm */, >+ C507E8A614C6545B005D6B3B /* InspectorBar.mm */, >+ 57F10D921C7E7B3800ECDF30 /* IsNavigationActionTrusted.mm */, >+ 4BB4160116815B2600824238 /* JSWrapperForNodeInWebFrame.mm */, >+ 7A7B0E7E1EAFE454006AB8AE /* LimitTitleSize.mm */, >+ 57901FAE1CAF137100ED64F9 /* LoadInvalidURLRequest.mm */, >+ CDA315961ED53651009F60D3 /* MediaPlaybackSleepAssertion.mm */, >+ E1220D9F155B25480013E2FC /* MemoryCacheDisableWithinResourceLoadDelegate.mm */, >+ 517E7DFB15110EA600D0B008 /* MemoryCachePruneWithinResourceLoadDelegate.mm */, >+ 5C0BF88C1DD5957400B00328 /* MemoryPressureHandler.mm */, >+ 7A99D9931AD4A29D00373141 /* MenuTypesForMouseEvents.mm */, >+ E19DB9781B32137C00DB38D4 /* NavigatorLanguage.mm */, >+ A57A34EF16AF677200C2501F /* PageVisibilityStateWithWindowChanges.mm */, >+ 00BC16851680FE810065F1E5 /* PublicSuffix.mm */, >+ 37C784DE197C8F2E0010A496 /* RenderedImageFromDOMNode.mm */, >+ 3722C8681461E03E00C45D00 /* RenderedImageFromDOMRange.mm */, >+ 261516D515B0E60500A2C201 /* SetAndUpdateCacheModel.mm */, >+ 52B8CF9515868CF000281053 /* SetDocumentURI.mm */, >+ 291861FD17BD4DC700D4E41E /* StopLoadingFromDidFinishLoading.mm */, >+ E194E1BA177E5145009C4D4E /* StopLoadingFromDidReceiveResponse.mm */, >+ 3799AD3914120A43005EB0C6 /* StringByEvaluatingJavaScriptFromString.mm */, >+ 939BFE3918E5548900883275 /* StringTruncator.mm */, >+ 37A6895D148A9B50005100FA /* SubresourceErrorCrash.mm */, >+ E490296714E2E3A4002BEDD1 /* TypingStyleCrash.mm */, >+ 536770331CC8022800D425B1 /* WebScriptObjectDescription.mm */, >+ 51FBBB4C1513D4E900822738 /* WebViewCanPasteURL.mm */, >+ 5C0BF88F1DD5999B00B00328 /* WebViewCanPasteZeroPng.mm */, >+ 51B454EB1B4E236B0085EAA6 /* WebViewCloseInsideDidFinishLoadForFrame.mm */, >+ C2EB2DD116CAC7AC009B52EE /* WebViewDidCreateJavaScriptContext.mm */, >+ 37E38C33169B7D010084C28C /* WebViewDidRemoveFrameFromHierarchy.mm */, >+ 51DB16CD1F085047001FA4C5 /* WebViewIconLoading.mm */, >+ CE32C7C718184C4900CD8C28 /* WillPerformClientRedirectToURLCrash.mm */, >+ 1A7BFC0A171A0BDB00BC5F64 /* WillSendSubmitEvent.mm */, >+ A5E2027215B2181900C13E14 /* WindowlessWebViewWithMedia.mm */, >+ F4FA917F1E61849B007B8C1D /* WKWebViewMacEditingTests.mm */, >+ 764322D51B61CCA40024F801 /* WordBoundaryTypingAttributes.mm */, >+ ); >+ path = mac; >+ sourceTree = "<group>"; >+ }; >+ C07E6CB013FD737C0038B22B /* Resources */ = { >+ isa = PBXGroup; >+ children = ( >+ 379028B814FABE49007E6B43 /* acceptsFirstMouse.html */, >+ B55F11B01517A2C400915916 /* attributedStringCustomFont.html */, >+ 7C9ED98A17A19D0600E4DC33 /* attributedStringStrikethrough.html */, >+ 26DF5A6115A2A22B003689C2 /* CancelLoadFromResourceLoadDelegate.html */, >+ 5142B2721517C89100C32B19 /* ContextMenuCanCopyURL.html */, >+ 7AEAD47D1E20114E00416EFE /* CrossPartitionFileSchemeAccess.html */, >+ C07E6CB113FD738A0038B22B /* devicePixelRatio.html */, >+ 37E1064B169767F700B78BD0 /* DOMHTMLTableCellElementCellAbove.html */, >+ 37DC678F140D7D3A00ABCCDB /* DOMRangeOfString.html */, >+ F4FA91821E618566007B8C1D /* double-click-does-not-select-trailing-space.html */, >+ 1A7E8B351812093600AEB74A /* FragmentNavigation.html */, >+ F47728981E4AE3AD007ABF6A /* full-page-contenteditable.html */, >+ CDBFCC421A9FF44800A7B691 /* FullscreenZoomInitialFrame.html */, >+ 9B4F8FA6159D52CA002D9F94 /* HTMLCollectionNamedItem.html */, >+ 9B26FCB4159D15E700CC3765 /* HTMLFormCollectionNamedItem.html */, >+ 57F56A5B1C7F8A4000F31D7E /* IsNavigationActionTrusted.html */, >+ C2CF975816CEC69E0054E99D /* JSContextBackForwardCache1.html */, >+ C2CF975916CEC69E0054E99D /* JSContextBackForwardCache2.html */, >+ F42DA5151D8CEFDB00336F40 /* large-input-field-focus-onload.html */, >+ 57901FB01CAF141C00ED64F9 /* LoadInvalidURLRequest.html */, >+ CDA315991ED540A5009F60D3 /* MediaPlaybackSleepAssertion.html */, >+ E1220DC9155B287D0013E2FC /* MemoryCacheDisableWithinResourceLoadDelegate.html */, >+ 517E7E031511187500D0B008 /* MemoryCachePruneWithinResourceLoadDelegate.html */, >+ 290A9BB81735F42300D71BBC /* OpenNewWindow.html */, >+ A57A34F116AF69E200C2501F /* PageVisibilityStateWithWindowChanges.html */, >+ 52B8CF9415868CF000281053 /* SetDocumentURI.html */, >+ E194E1BC177E534A009C4D4E /* StopLoadingFromDidReceiveResponse.html */, >+ C540F783152E5A7800A40C8C /* verboseMarkup.html */, >+ 536770351CC812F900D425B1 /* WebScriptObjectDescription.html */, >+ CE14F1A2181873B0001C2705 /* WillPerformClientRedirectToURLCrash.html */, >+ A5E2027015B2180600C13E14 /* WindowlessWebViewWithMedia.html */, >+ ); >+ name = Resources; >+ sourceTree = "<group>"; >+ }; >+ C08587F913FEC39B001EF4E5 /* TestWebKitAPI */ = { >+ isa = PBXGroup; >+ children = ( >+ C08587FA13FEC39B001EF4E5 /* mac */, >+ ); >+ path = TestWebKitAPI; >+ sourceTree = "<group>"; >+ }; >+ C08587FA13FEC39B001EF4E5 /* mac */ = { >+ isa = PBXGroup; >+ children = ( >+ 2E7EF7AC1F266A8100DFB67C /* AppKitSPI.h */, >+ C08587FB13FEC39B001EF4E5 /* InstanceMethodSwizzler.mm */, >+ ); >+ path = mac; >+ sourceTree = "<group>"; >+ }; >+ C0991C4F143C7D68007998F2 /* cf */ = { >+ isa = PBXGroup; >+ children = ( >+ BC029B161486AD6400817DA9 /* RetainPtr.cpp */, >+ C0991C50143C7D68007998F2 /* RetainPtrHashing.cpp */, >+ ); >+ path = cf; >+ sourceTree = "<group>"; >+ }; >+ C0C5D3BB14598B6F00A802A6 /* mac */ = { >+ isa = PBXGroup; >+ children = ( >+ 9BD423991E04BD9800200395 /* AttributedSubstringForProposedRangeWithImage.mm */, >+ 8349D3C11DB96DDA004A9F65 /* ContextMenuDownload.mm */, >+ CD0BD0A71F7997C2001AB2CF /* ContextMenuImgWithVideo.html */, >+ CD0BD0A51F799220001AB2CF /* ContextMenuImgWithVideo.mm */, >+ BCAA485714A044D40088FAC4 /* EditorCommands.mm */, >+ C0C5D3BC14598B6F00A802A6 /* GetBackingScaleFactor.mm */, >+ C0C5D3BD14598B6F00A802A6 /* GetBackingScaleFactor_Bundle.mm */, >+ 1AEF994817A09F5300998EF0 /* GetPIDAfterAbortedProcessLaunch.cpp */, >+ 7A95BDE01E9BEC4000865498 /* InjectedBundleAppleEvent.cpp */, >+ 7A95BDDF1E9BEC4000865498 /* InjectedBundleAppleEvent_Bundle.cpp */, >+ 46E816F71E79E29100375ADC /* RestoreStateAfterTermination.mm */, >+ ); >+ path = mac; >+ sourceTree = "<group>"; >+ }; >+ CD89D0371C4EDB1300040A04 /* cocoa */ = { >+ isa = PBXGroup; >+ children = ( >+ 5769C50A1D9B0001000847FB /* SerializedCryptoKeyWrap.mm */, >+ A17991861E1C994E00A505ED /* SharedBuffer.mm */, >+ 93A7EB3C18FA63A4009E7670 /* URLExtras.mm */, >+ CD89D0381C4EDB2A00040A04 /* WebCoreNSURLSession.mm */, >+ ); >+ path = cocoa; >+ sourceTree = "<group>"; >+ }; >+ CDC8E4981BC728AE00594FEC /* WebKitLegacy */ = { >+ isa = PBXGroup; >+ children = ( >+ CDC8E4991BC728C000594FEC /* ios */, >+ ); >+ path = WebKitLegacy; >+ sourceTree = "<group>"; >+ }; >+ CDC8E4991BC728C000594FEC /* ios */ = { >+ isa = PBXGroup; >+ children = ( >+ CDC8E49A1BC728FE00594FEC /* Resources */, >+ CDC8E4851BC5B19400594FEC /* AudioSessionCategoryIOS.mm */, >+ 0F4FFA9D1ED3AA8500F7111F /* SnapshotViaRenderInContext.mm */, >+ ); >+ path = ios; >+ sourceTree = "<group>"; >+ }; >+ CDC8E49A1BC728FE00594FEC /* Resources */ = { >+ isa = PBXGroup; >+ children = ( >+ CD9E292D1C90C1BA000BB800 /* audio-only.html */, >+ CDC8E4891BC5C96200594FEC /* video-with-audio.html */, >+ CDC8E48A1BC5C96200594FEC /* video-with-audio.mp4 */, >+ CD321B031E3A84B700EB21C8 /* video-with-muted-audio-and-webaudio.html */, >+ CDB411591E09DA8E00EAD352 /* video-with-muted-audio.html */, >+ CDC8E48B1BC5C96200594FEC /* video-without-audio.html */, >+ CDC8E48C1BC5C96200594FEC /* video-without-audio.mp4 */, >+ ); >+ name = Resources; >+ sourceTree = "<group>"; >+ }; >+ FE217ECB1640A54A0052988B /* JavaScriptCore */ = { >+ isa = PBXGroup; >+ children = ( >+ 953F47911F1DB40300E3D1E3 /* InspectorValue.cpp */, >+ ); >+ path = JavaScriptCore; >+ sourceTree = "<group>"; >+ }; >+/* End PBXGroup section */ >+ >+/* Begin PBXNativeTarget section */ >+ 7C83DE951D0A590C00FEBCF3 /* TestWTFLibrary */ = { >+ isa = PBXNativeTarget; >+ buildConfigurationList = 7C83DF651D0A590C00FEBCF3 /* Build configuration list for PBXNativeTarget "TestWTFLibrary" */; >+ buildPhases = ( >+ 7C83DE961D0A590C00FEBCF3 /* Sources */, >+ 7C83DF641D0A590C00FEBCF3 /* Frameworks */, >+ ); >+ buildRules = ( >+ ); >+ dependencies = ( >+ ); >+ name = TestWTFLibrary; >+ productName = TestWebKitAPILibrary; >+ productReference = 7C83DF681D0A590C00FEBCF3 /* libTestWTF.a */; >+ productType = "com.apple.product-type.library.static"; >+ }; >+ 7C83DF951D0A5AE400FEBCF3 /* TestWTF */ = { >+ isa = PBXNativeTarget; >+ buildConfigurationList = 7C83E0201D0A5AE400FEBCF3 /* Build configuration list for PBXNativeTarget "TestWTF" */; >+ buildPhases = ( >+ 7C83DF9C1D0A5AE400FEBCF3 /* Sources */, >+ 7C83DFC11D0A5AE400FEBCF3 /* Frameworks */, >+ ); >+ buildRules = ( >+ ); >+ dependencies = ( >+ 7C83E0251D0A5B2500FEBCF3 /* PBXTargetDependency */, >+ ); >+ name = TestWTF; >+ productInstallPath = "$(HOME)/bin"; >+ productName = TestWebKitAPI; >+ productReference = 7C83E0231D0A5AE400FEBCF3 /* TestWTF */; >+ productType = "com.apple.product-type.tool"; >+ }; >+ 7CCE7E8B1A41144E00447C4C /* TestWebKitAPILibrary */ = { >+ isa = PBXNativeTarget; >+ buildConfigurationList = 7CCE7EA11A41144E00447C4C /* Build configuration list for PBXNativeTarget "TestWebKitAPILibrary" */; >+ buildPhases = ( >+ 7CCE7E881A41144E00447C4C /* Sources */, >+ 7CCE7E891A41144E00447C4C /* Frameworks */, >+ ); >+ buildRules = ( >+ ); >+ dependencies = ( >+ ); >+ name = TestWebKitAPILibrary; >+ productName = TestWebKitAPILibrary; >+ productReference = 7CCE7E8C1A41144E00447C4C /* libTestWebKitAPI.a */; >+ productType = "com.apple.product-type.library.static"; >+ }; >+ 8DD76F960486AA7600D96B5E /* TestWebKitAPI */ = { >+ isa = PBXNativeTarget; >+ buildConfigurationList = 1DEB927408733DD40010E9CD /* Build configuration list for PBXNativeTarget "TestWebKitAPI" */; >+ buildPhases = ( >+ 8DD76F990486AA7600D96B5E /* Sources */, >+ 8DD76F9B0486AA7600D96B5E /* Frameworks */, >+ 8DD76F9E0486AA7600D96B5E /* CopyFiles */, >+ BCB9F4FB112384C000A137E0 /* Copy Resources */, >+ ); >+ buildRules = ( >+ ); >+ dependencies = ( >+ A13EBBB31B87441900097110 /* PBXTargetDependency */, >+ BC575A96126E74E7006F0F12 /* PBXTargetDependency */, >+ 7CCE7F511A4124DB00447C4C /* PBXTargetDependency */, >+ ); >+ name = TestWebKitAPI; >+ productInstallPath = "$(HOME)/bin"; >+ productName = TestWebKitAPI; >+ productReference = 8DD76FA10486AA7600D96B5E /* TestWebKitAPI */; >+ productType = "com.apple.product-type.tool"; >+ }; >+ A13EBB481B87339E00097110 /* WebProcessPlugIn */ = { >+ isa = PBXNativeTarget; >+ buildConfigurationList = A13EBB4C1B87339E00097110 /* Build configuration list for PBXNativeTarget "WebProcessPlugIn" */; >+ buildPhases = ( >+ A13EBB451B87339E00097110 /* Sources */, >+ ); >+ buildRules = ( >+ ); >+ dependencies = ( >+ ); >+ name = WebProcessPlugIn; >+ productName = WebProcessPlugIn; >+ productReference = A13EBB491B87339E00097110 /* TestWebKitAPI.wkbundle */; >+ productType = "com.apple.product-type.bundle"; >+ }; >+ BC57597F126E74AF006F0F12 /* InjectedBundleTestWebKitAPI */ = { >+ isa = PBXNativeTarget; >+ buildConfigurationList = BC575986126E74AF006F0F12 /* Build configuration list for PBXNativeTarget "InjectedBundleTestWebKitAPI" */; >+ buildPhases = ( >+ BC57597C126E74AF006F0F12 /* Resources */, >+ BC57597D126E74AF006F0F12 /* Sources */, >+ BC57597E126E74AF006F0F12 /* Frameworks */, >+ ); >+ buildRules = ( >+ ); >+ dependencies = ( >+ ); >+ name = InjectedBundleTestWebKitAPI; >+ productName = InjectedBundle; >+ productReference = BC575980126E74AF006F0F12 /* InjectedBundleTestWebKitAPI.bundle */; >+ productType = "com.apple.product-type.bundle"; >+ }; >+/* End PBXNativeTarget section */ >+ >+/* Begin PBXProject section */ >+ 08FB7793FE84155DC02AAC07 /* Project object */ = { >+ isa = PBXProject; >+ attributes = { >+ LastSwiftUpdateCheck = 0700; >+ LastUpgradeCheck = 0700; >+ TargetAttributes = { >+ 7C83E02B1D0A5E1000FEBCF3 = { >+ CreatedOnToolsVersion = 8.0; >+ ProvisioningStyle = Automatic; >+ }; >+ 7CCE7E8B1A41144E00447C4C = { >+ CreatedOnToolsVersion = 6.3; >+ ProvisioningStyle = Manual; >+ }; >+ 8DD76F960486AA7600D96B5E = { >+ ProvisioningStyle = Manual; >+ }; >+ A13EBB481B87339E00097110 = { >+ CreatedOnToolsVersion = 7.0; >+ ProvisioningStyle = Manual; >+ }; >+ BC57597F126E74AF006F0F12 = { >+ ProvisioningStyle = Manual; >+ }; >+ }; >+ }; >+ buildConfigurationList = 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "TestWebKitAPI" */; >+ compatibilityVersion = "Xcode 3.2"; >+ developmentRegion = English; >+ hasScannedForEncodings = 1; >+ knownRegions = ( >+ English, >+ Japanese, >+ French, >+ German, >+ ); >+ mainGroup = 08FB7794FE84155DC02AAC07 /* TestWebKitAPI */; >+ projectDirPath = ""; >+ projectRoot = ""; >+ targets = ( >+ 7C83E02B1D0A5E1000FEBCF3 /* All */, >+ 7CCE7E8B1A41144E00447C4C /* TestWebKitAPILibrary */, >+ 7C83DE951D0A590C00FEBCF3 /* TestWTFLibrary */, >+ 8DD76F960486AA7600D96B5E /* TestWebKitAPI */, >+ 7C83DF951D0A5AE400FEBCF3 /* TestWTF */, >+ BC57597F126E74AF006F0F12 /* InjectedBundleTestWebKitAPI */, >+ A13EBB481B87339E00097110 /* WebProcessPlugIn */, >+ ); >+ }; >+/* End PBXProject section */ >+ >+/* Begin PBXResourcesBuildPhase section */ >+ BC57597C126E74AF006F0F12 /* Resources */ = { >+ isa = PBXResourcesBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+/* End PBXResourcesBuildPhase section */ >+ >+/* Begin PBXSourcesBuildPhase section */ >+ 7C83DE961D0A590C00FEBCF3 /* Sources */ = { >+ isa = PBXSourcesBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ 7C83DE991D0A590C00FEBCF3 /* AtomicString.cpp in Sources */, >+ 1ADAD1501D77A9F600212586 /* BlockPtr.mm in Sources */, >+ 7C83DE9C1D0A590C00FEBCF3 /* BloomFilter.cpp in Sources */, >+ 7C83DEA01D0A590C00FEBCF3 /* CheckedArithmeticOperations.cpp in Sources */, >+ 7C83DEC31D0A590C00FEBCF3 /* Condition.cpp in Sources */, >+ 7C83DEA61D0A590C00FEBCF3 /* Counters.cpp in Sources */, >+ 7C83DEA91D0A590C00FEBCF3 /* CString.cpp in Sources */, >+ 7C83DEAD1D0A590C00FEBCF3 /* Deque.cpp in Sources */, >+ 1AF7B21F1D6CD14D008C126C /* EnumTraits.cpp in Sources */, >+ AD7C434D1DD2A54E0026888B /* Expected.cpp in Sources */, >+ 9310CD381EF708FB0050FFE0 /* Function.cpp in Sources */, >+ 6BFD294C1D5E6C1D008EC968 /* HashCountedSet.cpp in Sources */, >+ 7C83DED21D0A590C00FEBCF3 /* HashMap.cpp in Sources */, >+ 7C83DED41D0A590C00FEBCF3 /* HashSet.cpp in Sources */, >+ 7C83DEE01D0A590C00FEBCF3 /* IntegerToStringConversion.cpp in Sources */, >+ 531C1D8E1DF8EF72006E979F /* LEBDecoder.cpp in Sources */, >+ A57D54F91F3397B400A97AA7 /* LifecycleLogger.cpp in Sources */, >+ 7C83DEE81D0A590C00FEBCF3 /* ListHashSet.cpp in Sources */, >+ 7C83DF1D1D0A590C00FEBCF3 /* Lock.cpp in Sources */, >+ A57D54F61F3395D000A97AA7 /* Logger.cpp in Sources */, >+ 7C83DEED1D0A590C00FEBCF3 /* MathExtras.cpp in Sources */, >+ 7C83DEEF1D0A590C00FEBCF3 /* MD5.cpp in Sources */, >+ 7C83DEF11D0A590C00FEBCF3 /* MediaTime.cpp in Sources */, >+ 7C83DEF61D0A590C00FEBCF3 /* MetaAllocator.cpp in Sources */, >+ 7C83DEFE1D0A590C00FEBCF3 /* NakedPtr.cpp in Sources */, >+ A57D54F31F338C3600A97AA7 /* NeverDestroyed.cpp in Sources */, >+ 7C83DF011D0A590C00FEBCF3 /* Optional.cpp in Sources */, >+ 1A77BAA31D9AFFFC005FC568 /* OptionSet.cpp in Sources */, >+ 7C83DF021D0A590C00FEBCF3 /* OSObjectPtr.cpp in Sources */, >+ 7C83DF591D0A590C00FEBCF3 /* ParkingLot.cpp in Sources */, >+ 53EC25411E96FD87000831B9 /* PriorityQueue.cpp in Sources */, >+ 7C83DF131D0A590C00FEBCF3 /* RedBlackTree.cpp in Sources */, >+ 7C83DF141D0A590C00FEBCF3 /* Ref.cpp in Sources */, >+ 7C83DF151D0A590C00FEBCF3 /* RefCounter.cpp in Sources */, >+ 7C83DED71D0A590C00FEBCF3 /* RefLogger.cpp in Sources */, >+ 7C83DF161D0A590C00FEBCF3 /* RefPtr.cpp in Sources */, >+ 7C83DF241D0A590C00FEBCF3 /* RetainPtr.mm in Sources */, >+ 7C83DF051D0A590C00FEBCF3 /* RunLoop.cpp in Sources */, >+ 7C83DF261D0A590C00FEBCF3 /* SaturatedArithmeticOperations.cpp in Sources */, >+ 1A3524AE1D63A4FB0031729B /* Scope.cpp in Sources */, >+ 7C83DF121D0A590C00FEBCF3 /* ScopedLambda.cpp in Sources */, >+ 7C83DF3D1D0A590C00FEBCF3 /* SetForScope.cpp in Sources */, >+ 7C83DF2A1D0A590C00FEBCF3 /* SHA1.cpp in Sources */, >+ E373D7911F2CF35200C6FAAF /* Signals.cpp in Sources */, >+ 7C83DF321D0A590C00FEBCF3 /* StringBuilder.cpp in Sources */, >+ 7CD4C26E1E2C0E6E00929470 /* StringConcatenate.cpp in Sources */, >+ 7C83DF361D0A590C00FEBCF3 /* StringHasher.cpp in Sources */, >+ 7C83DF371D0A590C00FEBCF3 /* StringImpl.cpp in Sources */, >+ 7C83DF381D0A590C00FEBCF3 /* StringOperators.cpp in Sources */, >+ 7C83DF3A1D0A590C00FEBCF3 /* StringView.cpp in Sources */, >+ 5597F8361D9596C80066BC21 /* SynchronizedFixedQueue.cpp in Sources */, >+ 7C83DF401D0A590C00FEBCF3 /* TestsController.cpp in Sources */, >+ 9329AA291DE3F81E003ABD07 /* TextBreakIterator.cpp in Sources */, >+ E3DEA8111F0A589000CBC2E8 /* ThreadGroup.cpp in Sources */, >+ 5311BD5E1EA9490E00525281 /* ThreadMessages.cpp in Sources */, >+ 0F2C20B81DCD545000542D9E /* Time.cpp in Sources */, >+ 7C83E03B1D0A602700FEBCF3 /* UtilitiesCocoa.mm in Sources */, >+ 7C83FC711D5535A8001DFBCD /* Variant.cpp in Sources */, >+ 7C83DF4C1D0A590C00FEBCF3 /* Vector.cpp in Sources */, >+ 37C7CC2D1EA4146B007BD956 /* WeakLinking.cpp in Sources */, >+ 57C3FA661F7C248F009D4B80 /* WeakPtr.cpp in Sources */, >+ 7C83DF631D0A590C00FEBCF3 /* WTFString.cpp in Sources */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ 7C83DF9C1D0A5AE400FEBCF3 /* Sources */ = { >+ isa = PBXSourcesBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ 7C83DFA21D0A5AE400FEBCF3 /* mainIOS.mm in Sources */, >+ 7C83DFAD1D0A5AE400FEBCF3 /* mainMac.mm in Sources */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ 7CCE7E881A41144E00447C4C /* Sources */ = { >+ isa = PBXSourcesBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ 7CEFA9661AC0B9E200B910FD /* _WKUserContentExtensionStore.mm in Sources */, >+ 7CCE7EE41A411AE600447C4C /* AboutBlankLoad.cpp in Sources */, >+ 7CCE7EB31A411A7E00447C4C /* AcceptsFirstMouse.mm in Sources */, >+ 2E205BA41F527746005952DD /* AccessibilityTestsIOS.mm in Sources */, >+ F45B63FE1F19D410009D38B9 /* ActionSheetTests.mm in Sources */, >+ 37E7DD641EA06FF2009B396D /* AdditionalReadAccessAllowedURLs.mm in Sources */, >+ 7A909A7D1D877480007E10F8 /* AffineTransform.cpp in Sources */, >+ A1DF74321C41B65800A2F4D0 /* AlwaysRevalidatedURLSchemes.mm in Sources */, >+ 2DE71AFE1D49C0BD00904094 /* AnimatedResize.mm in Sources */, >+ 7CCE7EB41A411A7E00447C4C /* AttributedString.mm in Sources */, >+ CDC8E48D1BC5CB4500594FEC /* AudioSessionCategoryIOS.mm in Sources */, >+ 7C83E0B91D0A64F100FEBCF3 /* AutoLayoutIntegration.mm in Sources */, >+ 7CCE7EB51A411A7E00447C4C /* BackForwardList.mm in Sources */, >+ 374B7A601DF36EEE00ACCB6C /* BundleEditingDelegate.mm in Sources */, >+ A13EBBB11B87438000097110 /* BundleParameters.mm in Sources */, >+ 37A709AE1E3EA8B000CA5969 /* BundleRangeHandle.mm in Sources */, >+ 7CCE7EDC1A411A9200447C4C /* CalculationValue.cpp in Sources */, >+ 1C2B81801C891E7C00A5529F /* CancelFontSubresource.mm in Sources */, >+ 7CCE7EB61A411A7E00447C4C /* CancelLoadFromResourceLoadDelegate.mm in Sources */, >+ 7C83E0411D0A63F200FEBCF3 /* CandidateTests.mm in Sources */, >+ 7CCE7EE71A411AE600447C4C /* CanHandleRequest.cpp in Sources */, >+ 07C046CA1E4262A8007201E7 /* CARingBuffer.cpp in Sources */, >+ 7CCE7EE61A411AE600447C4C /* CloseFromWithinCreatePage.cpp in Sources */, >+ 7CCE7EB71A411A7E00447C4C /* CloseNewWindowInNavigationPolicyDelegate.mm in Sources */, >+ 7CCE7EE51A411AE600447C4C /* CloseThenTerminate.cpp in Sources */, >+ 7C83E0BA1D0A64FB00FEBCF3 /* Coding.mm in Sources */, >+ 7C3965061CDD74F90094DBB8 /* Color.cpp in Sources */, >+ 7C3DB8E41D12129B00AE8CC3 /* CommandBackForward.mm in Sources */, >+ 1C9EB8411E380DA1005C6442 /* ComplexTextController.cpp in Sources */, >+ 5C4A84951F7EEFFC00ACFC54 /* Configuration.mm in Sources */, >+ 7CB184C61AA3F2100066EDFD /* ContentExtensions.cpp in Sources */, >+ A1146A8D1D2D7115000FE710 /* ContentFiltering.mm in Sources */, >+ A14FC5881B8991BF00D107EB /* ContentFiltering.mm in Sources */, >+ 5CA1DED91F74A91A00E71BD3 /* ContentRuleListNotification.mm in Sources */, >+ 7CCE7EB81A411A7E00447C4C /* ContextMenuCanCopyURL.mm in Sources */, >+ 37FB72971DB2E82F00E41BE4 /* ContextMenuDefaultItemsHaveTags.mm in Sources */, >+ 8349D3C21DB96DDE004A9F65 /* ContextMenuDownload.mm in Sources */, >+ CD0BD0A61F79924D001AB2CF /* ContextMenuImgWithVideo.mm in Sources */, >+ 5C2936931D5BF70D00DEAB1E /* CookieAcceptPolicy.mm in Sources */, >+ 51D1249B1E785425002B2820 /* CookieManager.cpp in Sources */, >+ 9999108B1F393C96008AD455 /* Copying.mm in Sources */, >+ 9B7A37C41F8AEBA5004AA228 /* CopyURL.mm in Sources */, >+ 7CCE7EAC1A411A3400447C4C /* Counters.cpp in Sources */, >+ 7AEAD47F1E20116C00416EFE /* CrossPartitionFileSchemeAccess.mm in Sources */, >+ 7CCE7EDB1A411A9200447C4C /* CSSParser.cpp in Sources */, >+ 7CCE7F291A411B1000447C4C /* CustomProtocolsInvalidScheme.mm in Sources */, >+ 7CCE7F2A1A411B1000447C4C /* CustomProtocolsSyncXHRTest.mm in Sources */, >+ 7CCE7F2B1A411B1000447C4C /* CustomProtocolsTest.mm in Sources */, >+ 755A20AF1E6E38630093C69F /* DatabaseTrackerTest.cpp in Sources */, >+ 2DC4CF771D2D9DD800ECCC94 /* DataDetection.mm in Sources */, >+ F4D4F3B61E4E2BCB00BB2767 /* DataInteractionSimulator.mm in Sources */, >+ F4D4F3B91E4E36E400BB2767 /* DataInteractionTests.mm in Sources */, >+ CEC16EA51EE863C000DE479A /* DecidePolicyForNavigationAction.mm in Sources */, >+ 2D1646E21D1862CD00015A1A /* DeferredViewInWindowStateChange.mm in Sources */, >+ 7CCE7EB91A411A7E00447C4C /* DeviceScaleFactorInDashboardRegions.mm in Sources */, >+ 7CCE7EBA1A411A7E00447C4C /* DeviceScaleFactorOnBack.mm in Sources */, >+ 7C83E04D1D0A641800FEBCF3 /* DFACombiner.cpp in Sources */, >+ 7C83E04E1D0A641800FEBCF3 /* DFAMinimizer.cpp in Sources */, >+ 7CCE7EE91A411AE600447C4C /* DidAssociateFormControls.cpp in Sources */, >+ 7CCE7EEA1A411AE600447C4C /* DidNotHandleKeyDown.cpp in Sources */, >+ AD57AC211DA7465B00FF1BDE /* DidRemoveFrameFromHiearchyInPageCache.cpp in Sources */, >+ 2DC60E231E79F88C00FA6C7D /* DoAfterNextPresentationUpdateAfterCrash.mm in Sources */, >+ 7CCE7EEB1A411AE600447C4C /* DocumentStartUserScriptAlertCrash.cpp in Sources */, >+ 7CCE7EBB1A411A7E00447C4C /* DOMHTMLTableCellCellAbove.mm in Sources */, >+ 2D51A0C71C8BF00C00765C45 /* DOMHTMLVideoElementWrapper.mm in Sources */, >+ 46397B951DC2C850009A78AE /* DOMNode.mm in Sources */, >+ 7CCE7EBC1A411A7E00447C4C /* DOMNodeFromJSObject.mm in Sources */, >+ 7CCE7EBD1A411A7E00447C4C /* DOMRangeOfString.mm in Sources */, >+ 7CCE7EEC1A411AE600447C4C /* DOMWindowExtensionBasic.cpp in Sources */, >+ 7CCE7EED1A411AE600447C4C /* DOMWindowExtensionNoCache.cpp in Sources */, >+ 7CCE7F231A411AF600447C4C /* Download.mm in Sources */, >+ 7CCE7EEE1A411AE600447C4C /* DownloadDecideDestinationCrash.cpp in Sources */, >+ F4BFA68E1E4AD08000154298 /* DragAndDropPasteboardTests.mm in Sources */, >+ A155022A1E05020B00A24C57 /* DuplicateCompletionHandlerCalls.mm in Sources */, >+ 7CCE7EBE1A411A7E00447C4C /* DynamicDeviceScaleFactor.mm in Sources */, >+ 5C0BF8921DD599B600B00328 /* EarlyKVOCrash.mm in Sources */, >+ F44D064A1F3962F2001A0E29 /* EditingTestHarness.mm in Sources */, >+ 7CCE7EE01A411A9A00447C4C /* EditorCommands.mm in Sources */, >+ F44D06471F39627A001A0E29 /* EditorStateTests.mm in Sources */, >+ 7CCE7EBF1A411A7E00447C4C /* ElementAtPointInWebFrame.mm in Sources */, >+ 07492B3B1DF8B14C00633DE1 /* EnumerateMediaDevices.cpp in Sources */, >+ 448D7E471EA6C55500ECC756 /* EnvironmentUtilitiesTest.cpp in Sources */, >+ 7CCE7EEF1A411AE600447C4C /* EphemeralSessionPushStateNoHistoryCallback.cpp in Sources */, >+ 7CCE7EF01A411AE600447C4C /* EvaluateJavaScript.cpp in Sources */, >+ 5C7964101EB0278D0075D74C /* EventModifiers.cpp in Sources */, >+ 315118101DB1AE4000176304 /* ExtendedColor.cpp in Sources */, >+ 7CCE7EF11A411AE600447C4C /* FailedLoad.cpp in Sources */, >+ 7A32D74A1F02151500162C44 /* FileMonitor.cpp in Sources */, >+ 7C83E04F1D0A641800FEBCF3 /* FileSystem.cpp in Sources */, >+ 7CCE7EF31A411AE600447C4C /* Find.cpp in Sources */, >+ 7C83E0BB1D0A650000FEBCF3 /* FindInPage.mm in Sources */, >+ 7CCE7EF41A411AE600447C4C /* FindMatches.mm in Sources */, >+ 7C83E0401D0A63E300FEBCF3 /* FirstResponderScrollingPosition.mm in Sources */, >+ C9E6DD351EA97D0800DD78AA /* FirstResponderSuppression.mm in Sources */, >+ 7C83E0BC1D0A650700FEBCF3 /* FixedLayoutSize.mm in Sources */, >+ 7A909A7E1D877480007E10F8 /* FloatPoint.cpp in Sources */, >+ 7A909A7F1D877480007E10F8 /* FloatRect.cpp in Sources */, >+ 7A909A801D877480007E10F8 /* FloatSize.cpp in Sources */, >+ 1CAD1F861E5CE7DA00AF2C2C /* FontCache.cpp in Sources */, >+ 7CCE7EF51A411AE600447C4C /* ForceRepaint.cpp in Sources */, >+ 7CCE7EC01A411A7E00447C4C /* FragmentNavigation.mm in Sources */, >+ 376C8C061D6E197C007D2BB9 /* FrameHandle.cpp in Sources */, >+ 7CCE7EF61A411AE600447C4C /* FrameMIMETypeHTML.cpp in Sources */, >+ 7CCE7EF71A411AE600447C4C /* FrameMIMETypePNG.cpp in Sources */, >+ CD78E11D1DB7EA660014A2DE /* FullscreenDelegate.mm in Sources */, >+ 7C83E0BD1D0A650C00FEBCF3 /* FullscreenTopContentInset.mm in Sources */, >+ CDBFCC451A9FF45300A7B691 /* FullscreenZoomInitialFrame.mm in Sources */, >+ 83DB79691EF63B3C00BFA5E5 /* Function.cpp in Sources */, >+ 7CCE7EF81A411AE600447C4C /* Geolocation.cpp in Sources */, >+ 631EFFF61E7B5E8D00D2EBB8 /* Geolocation.mm in Sources */, >+ 7CCE7EE11A411A9A00447C4C /* GetBackingScaleFactor.mm in Sources */, >+ 7CCE7EF91A411AE600447C4C /* GetInjectedBundleInitializationUserDataCallback.cpp in Sources */, >+ 7CCE7EE21A411A9A00447C4C /* GetPIDAfterAbortedProcessLaunch.cpp in Sources */, >+ 07CE1CF31F06A7E000BF89F5 /* GetUserMediaNavigation.mm in Sources */, >+ 316BDBAC1E7207F100DE0D5A /* GPUBuffer.mm in Sources */, >+ 315231CA1EB3B3C700A22A16 /* GPUCommandQueue.mm in Sources */, >+ 3162AE9C1E6F2FF5000E4DBC /* GPUDevice.mm in Sources */, >+ 316BDBA41E70EF6800DE0D5A /* GPUFunction.mm in Sources */, >+ 316BDBA11E70D71B00DE0D5A /* GPULibrary.mm in Sources */, >+ 8E4A85371E1D1AB200F53B0F /* GridPosition.cpp in Sources */, >+ 7CCE7EFA1A411AE600447C4C /* HitTestResultNodeHandle.cpp in Sources */, >+ 7CCE7EC11A411A7E00447C4C /* HTMLCollectionNamedItem.mm in Sources */, >+ 7CCE7EC21A411A7E00447C4C /* HTMLFormCollectionNamedItem.mm in Sources */, >+ 7C83E0501D0A641800FEBCF3 /* HTMLParserIdioms.cpp in Sources */, >+ 5CA1DEC81F71F70100E71BD3 /* HTTPHeaderField.cpp in Sources */, >+ 51AF23DF1EF1A3730072F281 /* IconLoadingDelegate.mm in Sources */, >+ 510477781D29923B009747EB /* IDBDeleteRecovery.mm in Sources */, >+ 5110FCFA1E01CDB8006F8D0B /* IDBIndexUpgradeToV2.mm in Sources */, >+ 51A587861D273AA9004BA9AF /* IndexedDBDatabaseProcessKill.mm in Sources */, >+ 7C83E0BE1D0A651300FEBCF3 /* IndexedDBMultiProcess.mm in Sources */, >+ 7C83E0BF1D0A652200FEBCF3 /* IndexedDBPersistence.mm in Sources */, >+ 57599E211F07191900A3FB8C /* IndexedDBStructuredCloneBackwardCompatibility.mm in Sources */, >+ 5198A2401EA7E59F008910B7 /* InitialWarmedProcessUsed.mm in Sources */, >+ 7A95BDE11E9BEC5F00865498 /* InjectedBundleAppleEvent.cpp in Sources */, >+ 7CCE7EFB1A411AE600447C4C /* InjectedBundleBasic.cpp in Sources */, >+ 7CCE7EFC1A411AE600447C4C /* InjectedBundleFrameHitTest.cpp in Sources */, >+ 7CCE7EFD1A411AE600447C4C /* InjectedBundleInitializationUserDataCallbackWins.cpp in Sources */, >+ 7C83E0B81D0A64BD00FEBCF3 /* InjectedBundleMakeAllShadowRootsOpen.cpp in Sources */, >+ 7CCE7EC31A411A7E00447C4C /* InspectorBar.mm in Sources */, >+ 95646E5B1F1DB60E00DE0EB9 /* InspectorValue.cpp in Sources */, >+ 7CCE7EDA1A411A8700447C4C /* InstanceMethodSwizzler.mm in Sources */, >+ 5C726D6F1D3EE06E00C5E1A1 /* InstanceMethodSwizzler.mm in Sources */, >+ 2DB0232F1E4E871800707123 /* InteractionDeadlockAfterCrash.mm in Sources */, >+ 7A909A811D877480007E10F8 /* IntPoint.cpp in Sources */, >+ 7A909A821D877480007E10F8 /* IntRect.cpp in Sources */, >+ 7A909A831D877480007E10F8 /* IntSize.cpp in Sources */, >+ 5C0BF8931DD599BD00B00328 /* IsNavigationActionTrusted.mm in Sources */, >+ 5C69BDD51F82A7EF000F4F4B /* JavaScriptDuringNavigation.mm in Sources */, >+ 7CCE7EAD1A411A3400447C4C /* JavaScriptTest.cpp in Sources */, >+ 7CCE7EA51A411A0800447C4C /* JavaScriptTestMac.mm in Sources */, >+ 7CCE7EC41A411A7E00447C4C /* JSWrapperForNodeInWebFrame.mm in Sources */, >+ 7CCE7F061A411AE600447C4C /* LayoutMilestonesWithAllContentInFrame.cpp in Sources */, >+ 7CCE7EDF1A411A9200447C4C /* LayoutUnit.cpp in Sources */, >+ 7A66BDB61EAF14EF00CCC924 /* LimitTitleSize.cpp in Sources */, >+ 7A7B0E7F1EAFE4C3006AB8AE /* LimitTitleSize.mm in Sources */, >+ C25CCA061E51380B0026CB8A /* LineBreaking.mm in Sources */, >+ 37D36ED71AF42ECD00BAF5D9 /* LoadAlternateHTMLString.mm in Sources */, >+ 7CCE7EFE1A411AE600447C4C /* LoadAlternateHTMLStringWithNonDirectoryURL.cpp in Sources */, >+ 7CCE7EFF1A411AE600447C4C /* LoadCanceledNoServerRedirectCallback.cpp in Sources */, >+ A125478F1DB18B9400358564 /* LoadDataWithNilMIMEType.mm in Sources */, >+ 5C838F7F1DB04F900082858F /* LoadInvalidURLRequest.mm in Sources */, >+ 7C83E0C01D0A652700FEBCF3 /* LoadInvalidURLRequest.mm in Sources */, >+ 7CCE7F001A411AE600447C4C /* LoadPageOnCrash.cpp in Sources */, >+ 51E6A8941D2F1C0A00C004B6 /* LocalStorageClear.mm in Sources */, >+ 46C519DA1D355AB200DAA51A /* LocalStorageNullEntries.mm in Sources */, >+ 7A6A2C701DCCFA8C00C0D085 /* LocalStorageQuirkTest.mm in Sources */, >+ 076E507F1F4513D6006E9F5A /* Logging.cpp in Sources */, >+ CE1866491F72E8F100A0CAB6 /* MarkerSubrange.cpp in Sources */, >+ CDA315981ED53651009F60D3 /* MediaPlaybackSleepAssertion.mm in Sources */, >+ CDC9442E1EF1FC080059C3C4 /* MediaStreamTrackDetached.mm in Sources */, >+ 7CCE7EB21A411A5100447C4C /* MemoryCacheAddImageToCacheIOS.mm in Sources */, >+ 7CCE7EC51A411A7E00447C4C /* MemoryCacheDisableWithinResourceLoadDelegate.mm in Sources */, >+ 7CCE7EC61A411A7E00447C4C /* MemoryCachePruneWithinResourceLoadDelegate.mm in Sources */, >+ 5C0BF88D1DD5964D00B00328 /* MemoryPressureHandler.mm in Sources */, >+ 7C83E0B71D0A64B800FEBCF3 /* MenuTypesForMouseEvents.cpp in Sources */, >+ 5C0BF8941DD599C900B00328 /* MenuTypesForMouseEvents.mm in Sources */, >+ A5B149DE1F5A19EA00C6DAFF /* MIMETypeRegistry.cpp in Sources */, >+ 51CD1C6C1B38CE4300142CA5 /* ModalAlerts.mm in Sources */, >+ 7C83E0B61D0A64B300FEBCF3 /* ModalAlertsSPI.cpp in Sources */, >+ 7CCE7F011A411AE600447C4C /* MouseMoveAfterCrash.cpp in Sources */, >+ 7CCE7F241A411AF600447C4C /* Navigation.mm in Sources */, >+ 5C0BF8951DD599CD00B00328 /* NavigatorLanguage.mm in Sources */, >+ 9B19CDA01F06DFE3000548DD /* NetworkProcessCrashWithPendingConnection.mm in Sources */, >+ 7CCE7F021A411AE600447C4C /* NewFirstVisuallyNonEmptyLayout.cpp in Sources */, >+ 7CCE7F031A411AE600447C4C /* NewFirstVisuallyNonEmptyLayoutFails.cpp in Sources */, >+ 7CCE7F041A411AE600447C4C /* NewFirstVisuallyNonEmptyLayoutForImages.cpp in Sources */, >+ 7CCE7F051A411AE600447C4C /* NewFirstVisuallyNonEmptyLayoutFrames.cpp in Sources */, >+ 2ECFF5551D9B12F800B55394 /* NowPlayingControlsTests.mm in Sources */, >+ A10F047E1E3AD29C00C95E19 /* NSFileManagerExtras.mm in Sources */, >+ 37A22AA71DCAA27200AFBFC4 /* ObservedRenderingProgressEventsAfterCrash.mm in Sources */, >+ 7CCE7F251A411AF600447C4C /* OpenAndCloseWindow.mm in Sources */, >+ CEBCA12F1E3A660100C73293 /* OverrideContentSecurityPolicy.mm in Sources */, >+ 7CCB4DA91C83AE7300CC6918 /* PageGroup.cpp in Sources */, >+ 7CCE7F071A411AE600447C4C /* PageLoadBasic.cpp in Sources */, >+ 7CCE7F081A411AE600447C4C /* PageLoadDidChangeLocationWithinPageForFrame.cpp in Sources */, >+ 7CCE7EC71A411A7E00447C4C /* PageVisibilityStateWithWindowChanges.mm in Sources */, >+ 7CCE7F091A411AE600447C4C /* ParentFrame.cpp in Sources */, >+ 7C83E0511D0A641800FEBCF3 /* ParsedContentRange.cpp in Sources */, >+ 7CCE7F0A1A411AE600447C4C /* PasteboardNotifications.mm in Sources */, >+ 9BDCCD871F7D0B0700009A18 /* PasteImage.mm in Sources */, >+ 9BDD95581F83683600D20C60 /* PasteRTFD.mm in Sources */, >+ 7C83E0531D0A643A00FEBCF3 /* PendingAPIRequestURL.cpp in Sources */, >+ 3FCC4FE51EC4E8520076E37C /* PictureInPictureDelegate.mm in Sources */, >+ 7CCE7EAF1A411A3800447C4C /* PlatformUtilities.cpp in Sources */, >+ 0F139E781A423A6B00F590F5 /* PlatformUtilitiesCocoa.mm in Sources */, >+ 7CCE7EA61A411A0F00447C4C /* PlatformUtilitiesMac.mm in Sources */, >+ 7CCE7EA71A411A1300447C4C /* PlatformWebViewMac.mm in Sources */, >+ 83BAEE8D1EF4625500DDE894 /* PluginLoadClientPolicies.mm in Sources */, >+ 7CCE7F261A411AF600447C4C /* Preferences.mm in Sources */, >+ 7C1AF7951E8DCBAB002645B9 /* PrepareForMoveToWindow.mm in Sources */, >+ 7CCE7F0B1A411AE600447C4C /* PreventEmptyUserAgent.cpp in Sources */, >+ 7CCE7F2C1A411B1000447C4C /* PreventImageLoadWithAutoResizing.mm in Sources */, >+ A1EC11881F42541200D0146E /* PreviewLoader.cpp in Sources */, >+ 7CCE7F0C1A411AE600447C4C /* PrivateBrowsingPushStateNoHistoryCallback.cpp in Sources */, >+ 4647B1261EBA3B850041D7EF /* ProcessDidTerminate.cpp in Sources */, >+ 7C83E0C11D0A652F00FEBCF3 /* ProvisionalURLNotChange.mm in Sources */, >+ 7CCE7EC81A411A7E00447C4C /* PublicSuffix.mm in Sources */, >+ 7C83E0C21D0A653500FEBCF3 /* QuickLook.mm in Sources */, >+ 7CCE7F0D1A411AE600447C4C /* ReloadPageAfterCrash.cpp in Sources */, >+ 7C83E0C31D0A653A00FEBCF3 /* RemoteObjectRegistry.mm in Sources */, >+ 7CCE7EC91A411A7E00447C4C /* RenderedImageFromDOMNode.mm in Sources */, >+ 7CCE7ECA1A411A7E00447C4C /* RenderedImageFromDOMRange.mm in Sources */, >+ A12DDBFB1E836F0700CF6CAE /* RenderedImageWithOptions.mm in Sources */, >+ 7C83E0C41D0A654200FEBCF3 /* RequiresUserActionForPlayback.mm in Sources */, >+ 7CCE7F0E1A411AE600447C4C /* ResizeReversePaginatedWebView.cpp in Sources */, >+ 7CCE7F0F1A411AE600447C4C /* ResizeWindowAfterCrash.cpp in Sources */, >+ 51C8E1A51F26AF4C00BF731B /* ResourceLoadStatistics.mm in Sources */, >+ 83DE134D1EF1C50800C1B355 /* ResponsivenessTimer.cpp in Sources */, >+ 7CCE7F101A411AE600447C4C /* ResponsivenessTimerDoesntFireEarly.cpp in Sources */, >+ 83B6DE6F1EE75221001E792F /* RestoreSessionState.cpp in Sources */, >+ 7CCE7F111A411AE600447C4C /* RestoreSessionStateContainingFormData.cpp in Sources */, >+ 835CF9671D25FCD6001A65D4 /* RestoreSessionStateWithoutNavigation.cpp in Sources */, >+ 46E816F81E79E29C00375ADC /* RestoreStateAfterTermination.mm in Sources */, >+ F418BE151F71B7DC001970E6 /* RoundedRectTests.cpp in Sources */, >+ A180C0FA1EE67DF000468F47 /* RunOpenPanel.mm in Sources */, >+ CDCFA7AA1E45183200C2433D /* SampleMap.cpp in Sources */, >+ 7CCE7F121A411AE600447C4C /* ScrollPinningBehaviors.cpp in Sources */, >+ CE06DF9B1E1851F200E570C9 /* SecurityOrigin.cpp in Sources */, >+ 5769C50B1D9B0002000847FB /* SerializedCryptoKeyWrap.mm in Sources */, >+ 7CCE7ECB1A411A7E00447C4C /* SetAndUpdateCacheModel.mm in Sources */, >+ 7CCE7ECC1A411A7E00447C4C /* SetDocumentURI.mm in Sources */, >+ 7C83E0521D0A641800FEBCF3 /* SharedBuffer.cpp in Sources */, >+ A17991881E1C994E00A505ED /* SharedBuffer.mm in Sources */, >+ A179918B1E1CA24100A505ED /* SharedBufferTest.cpp in Sources */, >+ 7CCE7F131A411AE600447C4C /* ShouldGoToBackForwardListItem.cpp in Sources */, >+ 7CCE7F141A411AE600447C4C /* ShouldKeepCurrentBackForwardListItemInList.cpp in Sources */, >+ 37BCA61C1B596BA9002012CA /* ShouldOpenExternalURLsInNewWindowActions.mm in Sources */, >+ 7C83E0C51D0A654600FEBCF3 /* ShrinkToFit.mm in Sources */, >+ 2DFF7B6D1DA487AF00814614 /* SnapshotStore.mm in Sources */, >+ 0F4FFA9E1ED3AA8500F7111F /* SnapshotViaRenderInContext.mm in Sources */, >+ 7CCE7F151A411AE600447C4C /* SpacebarScrolling.cpp in Sources */, >+ 7CCE7EF21A411AE600447C4C /* StopLoadingDuringDidFailProvisionalLoad.cpp in Sources */, >+ 7CCE7ECE1A411A7E00447C4C /* StopLoadingFromDidFinishLoading.mm in Sources */, >+ 7CCE7ECF1A411A7E00447C4C /* StopLoadingFromDidReceiveResponse.mm in Sources */, >+ 515BE1711D428E4B00DD7C68 /* StoreBlobThenDelete.mm in Sources */, >+ 7CCE7ED01A411A7E00447C4C /* StringByEvaluatingJavaScriptFromString.mm in Sources */, >+ 7CCE7ED11A411A7E00447C4C /* StringTruncator.mm in Sources */, >+ ECA680CE1E68CC0900731D20 /* StringUtilities.mm in Sources */, >+ CE4D5DE71F6743BA0072CFC6 /* StringWithDirection.cpp in Sources */, >+ 7CCE7ED21A411A7E00447C4C /* SubresourceErrorCrash.mm in Sources */, >+ 7CCE7EA81A411A1900447C4C /* SyntheticBackingScaleFactorWindow.m in Sources */, >+ 7CCE7F161A411AE600447C4C /* TerminateTwice.cpp in Sources */, >+ 7CCE7EA91A411A1D00447C4C /* TestBrowsingContextLoadDelegate.mm in Sources */, >+ 2D1C04A71D76298B000A6816 /* TestNavigationDelegate.mm in Sources */, >+ A14FC5901B8AE36F00D107EB /* TestProtocol.mm in Sources */, >+ 7CCE7EAE1A411A3400447C4C /* TestsController.cpp in Sources */, >+ 2EFF06D41D8AEDBB0004BB30 /* TestWKWebView.mm in Sources */, >+ CE3524F91B1441C40028A7C5 /* TextFieldDidBeginAndEndEditing.cpp in Sources */, >+ 7CCE7EDD1A411A9200447C4C /* TimeRanges.cpp in Sources */, >+ 7CCE7ED31A411A7E00447C4C /* TypingStyleCrash.mm in Sources */, >+ 5CB40B4E1F4B98D3007DC7B9 /* UIDelegate.mm in Sources */, >+ F46849BE1EEF58E400B937FE /* UIPasteboardTests.mm in Sources */, >+ 7CCE7EDE1A411A9200447C4C /* URL.cpp in Sources */, >+ 7CCE7EB01A411A4400447C4C /* URLExtras.mm in Sources */, >+ 5C6E65441D5CEFD400F7862E /* URLParser.cpp in Sources */, >+ 7CCE7F271A411AF600447C4C /* UserContentController.mm in Sources */, >+ 7CCE7F2D1A411B1000447C4C /* UserContentTest.mm in Sources */, >+ 7C882E0A1C80C764006BF731 /* UserContentWorld.mm in Sources */, >+ 7CCB99211D3B41F6003922F6 /* UserInitiatedActionInNavigationAction.mm in Sources */, >+ 7CCE7F171A411AE600447C4C /* UserMedia.cpp in Sources */, >+ 0799C3491EBA2D7B003B7532 /* UserMediaDisabled.mm in Sources */, >+ 7CCE7F181A411AE600447C4C /* UserMessage.cpp in Sources */, >+ 7C83E03A1D0A602700FEBCF3 /* UtilitiesCocoa.mm in Sources */, >+ 7C83E0C61D0A654E00FEBCF3 /* VideoControlsManager.mm in Sources */, >+ 115EB3431EE0BA03003C2C0A /* ViewportSizeForViewportUnits.mm in Sources */, >+ 6356FB221EC4E0BA0044BF18 /* VisibleContentRect.mm in Sources */, >+ 83779C381F82FECE007CDA8A /* VisitedLinkStore.mm in Sources */, >+ 0F139E771A423A5B00F590F5 /* WeakObjCPtr.mm in Sources */, >+ 7CCE7F191A411AE600447C4C /* WebArchive.cpp in Sources */, >+ 7C83E04C1D0A641800FEBCF3 /* WebCoreNSURLSession.mm in Sources */, >+ 7CCE7F1A1A411AE600447C4C /* WebCoreStatisticsWithNoWebProcess.cpp in Sources */, >+ 5C973F5C1F58EF8B00359C27 /* WebGLPolicy.mm in Sources */, >+ 7CCE7EAB1A411A2400447C4C /* WebKitAgnosticTest.mm in Sources */, >+ 51714EB81CF8CA17004723C4 /* WebProcessKillIDBCleanup.mm in Sources */, >+ 536770341CC8022800D425B1 /* WebScriptObjectDescription.mm in Sources */, >+ 5120C83D1E6751290025B250 /* WebsiteDataStoreCustomPaths.mm in Sources */, >+ 5C9E56851DF9145400C9EE33 /* WebsitePolicies.mm in Sources */, >+ 7CCE7ED41A411A7E00447C4C /* WebViewCanPasteURL.mm in Sources */, >+ 5C0BF8911DD599A900B00328 /* WebViewCanPasteZeroPng.mm in Sources */, >+ 7C83E0421D0A63FD00FEBCF3 /* WebViewCloseInsideDidFinishLoadForFrame.mm in Sources */, >+ 7CCE7ED51A411A7E00447C4C /* WebViewDidCreateJavaScriptContext.mm in Sources */, >+ 7CCE7ED61A411A7E00447C4C /* WebViewDidRemoveFrameFromHierarchy.mm in Sources */, >+ 51DB16CE1F085137001FA4C5 /* WebViewIconLoading.mm in Sources */, >+ 7CCE7F1B1A411AE600447C4C /* WillLoad.cpp in Sources */, >+ 7CCE7ED71A411A7E00447C4C /* WillPerformClientRedirectToURLCrash.mm in Sources */, >+ 7CCE7F1C1A411AE600447C4C /* WillSendSubmitEvent.cpp in Sources */, >+ 7CCE7ED81A411A7E00447C4C /* WillSendSubmitEvent.mm in Sources */, >+ 7CCE7ED91A411A7E00447C4C /* WindowlessWebViewWithMedia.mm in Sources */, >+ 1F83571B1D3FFB2300E3967B /* WKBackForwardList.mm in Sources */, >+ 7CCE7F2E1A411B1000447C4C /* WKBrowsingContextGroupTest.mm in Sources */, >+ 7CCE7F2F1A411B1000447C4C /* WKBrowsingContextLoadDelegateTest.mm in Sources */, >+ 7C54A4BE1AA11CCA00380F78 /* WKBundleFileHandle.cpp in Sources */, >+ 5CE354D91E70DA5C00BEFE3B /* WKContentExtensionStore.mm in Sources */, >+ 2D838B1F1EEF3A5C009B980E /* WKContentViewEditingActions.mm in Sources */, >+ 370CE22A1F57343400E7410B /* WKContentViewTargetForAction.mm in Sources */, >+ 51D124981E763B02002B2820 /* WKHTTPCookieStore.mm in Sources */, >+ 7CCE7F1D1A411AE600447C4C /* WKImageCreateCGImageCrash.cpp in Sources */, >+ A5A729F11F622AA700DE5A28 /* WKNavigationResponse.mm in Sources */, >+ 375E0E171D66674400EFEC2C /* WKNSNumber.mm in Sources */, >+ 37B47E301D64E7CA005F4EFF /* WKObject.mm in Sources */, >+ 7C89D2AC1A69B80D003A5FDE /* WKPageConfiguration.cpp in Sources */, >+ 52D673EE1AFB127300FA19FE /* WKPageCopySessionStateWithFiltering.cpp in Sources */, >+ 7CCE7F1F1A411AE600447C4C /* WKPageGetScaleFactorNotZero.cpp in Sources */, >+ 7CCE7F201A411AE600447C4C /* WKPageIsPlayingAudio.cpp in Sources */, >+ A14AAB631E78D7DE00C1ADC2 /* WKPDFView.mm in Sources */, >+ 2D00065F1C1F589A0088E6A7 /* WKPDFViewResizeCrash.mm in Sources */, >+ 2D21FE591F04642900B58E7D /* WKPDFViewStablePresentationUpdateCallback.mm in Sources */, >+ 7CCE7F211A411AE600447C4C /* WKPreferences.cpp in Sources */, >+ 44817A2F1F0486BF00003810 /* WKRequestActivatedElementInfo.mm in Sources */, >+ 7C83E0B51D0A649300FEBCF3 /* WKRetainPtr.cpp in Sources */, >+ 5E4B1D2E1D404C6100053621 /* WKScrollViewDelegateCrash.mm in Sources */, >+ 7CCE7F221A411AE600447C4C /* WKString.cpp in Sources */, >+ 7CCE7F1E1A411AE600447C4C /* WKStringJSString.cpp in Sources */, >+ 2D4CF8BD1D8360CC0001CE8D /* WKThumbnailView.mm in Sources */, >+ 51C683DE1EA134E800650183 /* WKURLSchemeHandler-1.mm in Sources */, >+ 5182C22E1F2BCE540059BA7C /* WKURLSchemeHandler-leaks.mm in Sources */, >+ 514958BE1F7427AC00E87BAD /* WKWebViewAutofillTests.mm in Sources */, >+ 2EFF06D71D8AF34A0004BB30 /* WKWebViewCandidateTests.mm in Sources */, >+ A14FC5851B89739100D107EB /* WKWebViewConfigurationExtras.mm in Sources */, >+ 7C417F331D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm in Sources */, >+ 46E66A901F0D75590026D83C /* WKWebViewDiagnosticLogging.mm in Sources */, >+ 2DB647881F4163D60051A89E /* WKWebViewDoesNotLogDuringInitialization.mm in Sources */, >+ 0F3B94A71A77267400DE3272 /* WKWebViewEvaluateJavaScript.mm in Sources */, >+ D34E08761E4E42E1005FF14A /* WKWebViewGetContents.mm in Sources */, >+ F4FA91811E61849B007B8C1D /* WKWebViewMacEditingTests.mm in Sources */, >+ 93F56DA91E5F919D003EDE84 /* WKWebViewSnapshot.mm in Sources */, >+ 9984FACC1CFFAF60008D198C /* WKWebViewTextInput.mm in Sources */, >+ 764322D71B61CCC30024F801 /* WordBoundaryTypingAttributes.mm in Sources */, >+ 9C64DC321D76198A004B598E /* YouTubePluginReplacement.cpp in Sources */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ 8DD76F990486AA7600D96B5E /* Sources */ = { >+ isa = PBXSourcesBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ 9BD4239A1E04BD9800200395 /* AttributedSubstringForProposedRangeWithImage.mm in Sources */, >+ 2E7765CD16C4D80A00BA2BB1 /* mainIOS.mm in Sources */, >+ 2E7765CF16C4D81100BA2BB1 /* mainMac.mm in Sources */, >+ 5797FE311EB15A6800B2F4A0 /* NavigationClientDefaultCrypto.cpp in Sources */, >+ 7AD3FE8E1D76131200B169A4 /* TransformationMatrix.cpp in Sources */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ A13EBB451B87339E00097110 /* Sources */ = { >+ isa = PBXSourcesBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ 37E7DD671EA071F3009B396D /* AdditionalReadAccessAllowedURLsPlugin.mm in Sources */, >+ 754CEC811F6722F200D0039A /* AutoFillAvailable.mm in Sources */, >+ 374B7A611DF371CF00ACCB6C /* BundleEditingDelegatePlugIn.mm in Sources */, >+ A13EBBB01B87436F00097110 /* BundleParametersPlugIn.mm in Sources */, >+ 37A709AF1E3EA97E00CA5969 /* BundleRangeHandlePlugIn.mm in Sources */, >+ 1C2B81831C891F0900A5529F /* CancelFontSubresourcePlugIn.mm in Sources */, >+ 5CB18BA81F5645E300EE23C4 /* ClickAutoFillButton.mm in Sources */, >+ A14FC58B1B89927100D107EB /* ContentFilteringPlugIn.mm in Sources */, >+ A13EBBAB1B87434600097110 /* PlatformUtilitiesCocoa.mm in Sources */, >+ 1A4F81CF1BDFFD53004E672E /* RemoteObjectRegistryPlugIn.mm in Sources */, >+ A12DDC021E837C2400CF6CAE /* RenderedImageWithOptionsPlugIn.mm in Sources */, >+ 7C882E091C80C630006BF731 /* UserContentWorldPlugIn.mm in Sources */, >+ 7C83E03D1D0A60D600FEBCF3 /* UtilitiesCocoa.mm in Sources */, >+ A13EBBAA1B87428D00097110 /* WebProcessPlugIn.mm in Sources */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+ BC57597D126E74AF006F0F12 /* Sources */ = { >+ isa = PBXSourcesBuildPhase; >+ buildActionMask = 2147483647; >+ files = ( >+ BC246D9C132F1FF000B56D7C /* CanHandleRequest_Bundle.cpp in Sources */, >+ 297234B7173AFAC700983601 /* CustomProtocolsInvalidScheme_Bundle.cpp in Sources */, >+ F6B7BE9517469212008A3445 /* DidAssociateFormControls_Bundle.cpp in Sources */, >+ AD57AC201DA7465000FF1BDE /* DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp in Sources */, >+ BCB68042126FBFF100642A61 /* DocumentStartUserScriptAlertCrash_Bundle.cpp in Sources */, >+ 51393E221523952D005F39C5 /* DOMWindowExtensionBasic_Bundle.cpp in Sources */, >+ F6F49C6B15545CA70007F39D /* DOMWindowExtensionNoCache_Bundle.cpp in Sources */, >+ C0C5D3C61459912900A802A6 /* GetBackingScaleFactor_Bundle.mm in Sources */, >+ F660AA1115A5F631003A1243 /* GetInjectedBundleInitializationUserDataCallback_Bundle.cpp in Sources */, >+ 4BFDFFA71314776C0061F24B /* HitTestResultNodeHandle_Bundle.cpp in Sources */, >+ 7A95BDE21E9BEC7400865498 /* InjectedBundleAppleEvent_Bundle.cpp in Sources */, >+ BC575AB0126E83C8006F0F12 /* InjectedBundleBasic_Bundle.cpp in Sources */, >+ BC575AA2126E7660006F0F12 /* InjectedBundleController.cpp in Sources */, >+ 1AEDE22613E5E7E700E62FE8 /* InjectedBundleControllerMac.mm in Sources */, >+ 378E64771632655E00B6C676 /* InjectedBundleFrameHitTest_Bundle.cpp in Sources */, >+ F660AA1515A61ABF003A1243 /* InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp in Sources */, >+ BC575A97126E74F1006F0F12 /* InjectedBundleMain.cpp in Sources */, >+ 9B0786A51C5885C300D159E3 /* InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp in Sources */, >+ 33DC89141419579F00747EF7 /* LoadCanceledNoServerRedirectCallback_Bundle.cpp in Sources */, >+ 33BE5AF9137B5AAE00705813 /* MouseMoveAfterCrash_Bundle.cpp in Sources */, >+ 93F1DB3414DA20870024C362 /* NewFirstVisuallyNonEmptyLayout_Bundle.cpp in Sources */, >+ 93F1DB5714DB1B840024C362 /* NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp in Sources */, >+ 93AF4ECE1506F064007FD57E /* NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp in Sources */, >+ 93F7E86F14DC8E5C00C84A99 /* NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp in Sources */, >+ 52E5CE4914D21EAB003B2BD8 /* ParentFrame_Bundle.cpp in Sources */, >+ C54237F116B8957D00E638FC /* PasteboardNotifications_Bundle.cpp in Sources */, >+ BC575BD9126F58E2006F0F12 /* PlatformUtilities.cpp in Sources */, >+ 0F139E791A42457000F590F5 /* PlatformUtilitiesCocoa.mm in Sources */, >+ BC575BE0126F590D006F0F12 /* PlatformUtilitiesMac.mm in Sources */, >+ B55AD1D5179F3B3000AC1494 /* PreventImageLoadWithAutoResizing_Bundle.cpp in Sources */, >+ C0BD669F131D3CFF00E18F2A /* ResponsivenessTimerDoesntFireEarly_Bundle.cpp in Sources */, >+ 51FCF7A11534B2A000104491 /* ShouldGoToBackForwardListItem_Bundle.cpp in Sources */, >+ 7673499D1930C5BB00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad_bundle.cpp in Sources */, >+ CE3524F81B1431F60028A7C5 /* TextFieldDidBeginAndEndEditing_Bundle.cpp in Sources */, >+ BC22D31914DC68B900FFB1DD /* UserMessage_Bundle.cpp in Sources */, >+ 7C83E03C1D0A60D600FEBCF3 /* UtilitiesCocoa.mm in Sources */, >+ 520BCF4C141EB09E00937EA8 /* WebArchive_Bundle.cpp in Sources */, >+ 7CFBCAE51743238F00B2BFCF /* WillLoad_Bundle.cpp in Sources */, >+ 76E182DD1547569100F1FADD /* WillSendSubmitEvent_Bundle.cpp in Sources */, >+ 7C54A4C11AA11CE400380F78 /* WKBundleFileHandle_Bundle.cpp in Sources */, >+ ); >+ runOnlyForDeploymentPostprocessing = 0; >+ }; >+/* End PBXSourcesBuildPhase section */ >+ >+/* Begin PBXTargetDependency section */ >+ 7C83E0251D0A5B2500FEBCF3 /* PBXTargetDependency */ = { >+ isa = PBXTargetDependency; >+ target = 7C83DE951D0A590C00FEBCF3 /* TestWTFLibrary */; >+ targetProxy = 7C83E0241D0A5B2500FEBCF3 /* PBXContainerItemProxy */; >+ }; >+ 7C83E0301D0A5E1B00FEBCF3 /* PBXTargetDependency */ = { >+ isa = PBXTargetDependency; >+ target = 8DD76F960486AA7600D96B5E /* TestWebKitAPI */; >+ targetProxy = 7C83E02F1D0A5E1B00FEBCF3 /* PBXContainerItemProxy */; >+ }; >+ 7C83E0321D0A5E1D00FEBCF3 /* PBXTargetDependency */ = { >+ isa = PBXTargetDependency; >+ target = 7C83DF951D0A5AE400FEBCF3 /* TestWTF */; >+ targetProxy = 7C83E0311D0A5E1D00FEBCF3 /* PBXContainerItemProxy */; >+ }; >+ 7CCE7F511A4124DB00447C4C /* PBXTargetDependency */ = { >+ isa = PBXTargetDependency; >+ target = 7CCE7E8B1A41144E00447C4C /* TestWebKitAPILibrary */; >+ targetProxy = 7CCE7F501A4124DB00447C4C /* PBXContainerItemProxy */; >+ }; >+ A13EBBB31B87441900097110 /* PBXTargetDependency */ = { >+ isa = PBXTargetDependency; >+ target = A13EBB481B87339E00097110 /* WebProcessPlugIn */; >+ targetProxy = A13EBBB21B87441900097110 /* PBXContainerItemProxy */; >+ }; >+ BC575A96126E74E7006F0F12 /* PBXTargetDependency */ = { >+ isa = PBXTargetDependency; >+ target = BC57597F126E74AF006F0F12 /* InjectedBundleTestWebKitAPI */; >+ targetProxy = BC575A95126E74E7006F0F12 /* PBXContainerItemProxy */; >+ }; >+/* End PBXTargetDependency section */ >+ >+/* Begin XCBuildConfiguration section */ >+ 1DEB927508733DD40010E9CD /* Debug */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = BC90958012554CF900083756 /* TestWebKitAPI.xcconfig */; >+ buildSettings = { >+ }; >+ name = Debug; >+ }; >+ 1DEB927608733DD40010E9CD /* Release */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = BC90958012554CF900083756 /* TestWebKitAPI.xcconfig */; >+ buildSettings = { >+ }; >+ name = Release; >+ }; >+ 1DEB927908733DD40010E9CD /* Debug */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = BC90957F12554CF900083756 /* DebugRelease.xcconfig */; >+ buildSettings = { >+ DEBUG_DEFINES = "$(DEBUG_DEFINES_debug)"; >+ GCC_OPTIMIZATION_LEVEL = 0; >+ }; >+ name = Debug; >+ }; >+ 1DEB927A08733DD40010E9CD /* Release */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = BC90957F12554CF900083756 /* DebugRelease.xcconfig */; >+ buildSettings = { >+ }; >+ name = Release; >+ }; >+ 7C83DF661D0A590C00FEBCF3 /* Debug */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = 7C83E0271D0A5B8D00FEBCF3 /* TestWTFLibrary.xcconfig */; >+ buildSettings = { >+ }; >+ name = Debug; >+ }; >+ 7C83DF671D0A590C00FEBCF3 /* Release */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = 7C83E0271D0A5B8D00FEBCF3 /* TestWTFLibrary.xcconfig */; >+ buildSettings = { >+ }; >+ name = Release; >+ }; >+ 7C83E0211D0A5AE400FEBCF3 /* Debug */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = 7C83E0261D0A5B8D00FEBCF3 /* TestWTF.xcconfig */; >+ buildSettings = { >+ }; >+ name = Debug; >+ }; >+ 7C83E0221D0A5AE400FEBCF3 /* Release */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = 7C83E0261D0A5B8D00FEBCF3 /* TestWTF.xcconfig */; >+ buildSettings = { >+ }; >+ name = Release; >+ }; >+ 7C83E02D1D0A5E1000FEBCF3 /* Debug */ = { >+ isa = XCBuildConfiguration; >+ buildSettings = { >+ PRODUCT_NAME = "$(TARGET_NAME)"; >+ }; >+ name = Debug; >+ }; >+ 7C83E02E1D0A5E1000FEBCF3 /* Release */ = { >+ isa = XCBuildConfiguration; >+ buildSettings = { >+ PRODUCT_NAME = "$(TARGET_NAME)"; >+ }; >+ name = Release; >+ }; >+ 7CCE7E9D1A41144E00447C4C /* Debug */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = 7CCE7EA31A4115CB00447C4C /* TestWebKitAPILibrary.xcconfig */; >+ buildSettings = { >+ }; >+ name = Debug; >+ }; >+ 7CCE7E9E1A41144E00447C4C /* Release */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = 7CCE7EA31A4115CB00447C4C /* TestWebKitAPILibrary.xcconfig */; >+ buildSettings = { >+ }; >+ name = Release; >+ }; >+ A13EBB4D1B87339E00097110 /* Debug */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = A13EBB521B87346600097110 /* WebProcessPlugIn.xcconfig */; >+ buildSettings = { >+ }; >+ name = Debug; >+ }; >+ A13EBB4E1B87339E00097110 /* Release */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = A13EBB521B87346600097110 /* WebProcessPlugIn.xcconfig */; >+ buildSettings = { >+ }; >+ name = Release; >+ }; >+ BC575984126E74AF006F0F12 /* Debug */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = BC575AE2126E88B1006F0F12 /* InjectedBundle.xcconfig */; >+ buildSettings = { >+ }; >+ name = Debug; >+ }; >+ BC575985126E74AF006F0F12 /* Release */ = { >+ isa = XCBuildConfiguration; >+ baseConfigurationReference = BC575AE2126E88B1006F0F12 /* InjectedBundle.xcconfig */; >+ buildSettings = { >+ }; >+ name = Release; >+ }; >+/* End XCBuildConfiguration section */ >+ >+/* Begin XCConfigurationList section */ >+ 1DEB927408733DD40010E9CD /* Build configuration list for PBXNativeTarget "TestWebKitAPI" */ = { >+ isa = XCConfigurationList; >+ buildConfigurations = ( >+ 1DEB927508733DD40010E9CD /* Debug */, >+ 1DEB927608733DD40010E9CD /* Release */, >+ ); >+ defaultConfigurationIsVisible = 0; >+ defaultConfigurationName = Release; >+ }; >+ 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "TestWebKitAPI" */ = { >+ isa = XCConfigurationList; >+ buildConfigurations = ( >+ 1DEB927908733DD40010E9CD /* Debug */, >+ 1DEB927A08733DD40010E9CD /* Release */, >+ ); >+ defaultConfigurationIsVisible = 0; >+ defaultConfigurationName = Release; >+ }; >+ 7C83DF651D0A590C00FEBCF3 /* Build configuration list for PBXNativeTarget "TestWTFLibrary" */ = { >+ isa = XCConfigurationList; >+ buildConfigurations = ( >+ 7C83DF661D0A590C00FEBCF3 /* Debug */, >+ 7C83DF671D0A590C00FEBCF3 /* Release */, >+ ); >+ defaultConfigurationIsVisible = 0; >+ defaultConfigurationName = Release; >+ }; >+ 7C83E0201D0A5AE400FEBCF3 /* Build configuration list for PBXNativeTarget "TestWTF" */ = { >+ isa = XCConfigurationList; >+ buildConfigurations = ( >+ 7C83E0211D0A5AE400FEBCF3 /* Debug */, >+ 7C83E0221D0A5AE400FEBCF3 /* Release */, >+ ); >+ defaultConfigurationIsVisible = 0; >+ defaultConfigurationName = Release; >+ }; >+ 7C83E02C1D0A5E1000FEBCF3 /* Build configuration list for PBXAggregateTarget "All" */ = { >+ isa = XCConfigurationList; >+ buildConfigurations = ( >+ 7C83E02D1D0A5E1000FEBCF3 /* Debug */, >+ 7C83E02E1D0A5E1000FEBCF3 /* Release */, >+ ); >+ defaultConfigurationIsVisible = 0; >+ defaultConfigurationName = Release; >+ }; >+ 7CCE7EA11A41144E00447C4C /* Build configuration list for PBXNativeTarget "TestWebKitAPILibrary" */ = { >+ isa = XCConfigurationList; >+ buildConfigurations = ( >+ 7CCE7E9D1A41144E00447C4C /* Debug */, >+ 7CCE7E9E1A41144E00447C4C /* Release */, >+ ); >+ defaultConfigurationIsVisible = 0; >+ defaultConfigurationName = Release; >+ }; >+ A13EBB4C1B87339E00097110 /* Build configuration list for PBXNativeTarget "WebProcessPlugIn" */ = { >+ isa = XCConfigurationList; >+ buildConfigurations = ( >+ A13EBB4D1B87339E00097110 /* Debug */, >+ A13EBB4E1B87339E00097110 /* Release */, >+ ); >+ defaultConfigurationIsVisible = 0; >+ defaultConfigurationName = Release; >+ }; >+ BC575986126E74AF006F0F12 /* Build configuration list for PBXNativeTarget "InjectedBundleTestWebKitAPI" */ = { >+ isa = XCConfigurationList; >+ buildConfigurations = ( >+ BC575984126E74AF006F0F12 /* Debug */, >+ BC575985126E74AF006F0F12 /* Release */, >+ ); >+ defaultConfigurationIsVisible = 0; >+ defaultConfigurationName = Release; >+ }; >+/* End XCConfigurationList section */ >+ }; >+ rootObject = 08FB7793FE84155DC02AAC07 /* Project object */; >+} >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm >new file mode 100644 >index 0000000000000000000000000000000000000000..631fbea2370411ea64545cf13eed3953501323be >--- /dev/null >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm >@@ -0,0 +1,90 @@ >+ >+/* >+ * Copyright (C) 2017 Apple Inc. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+#include "config.h" >+ >+#if WK_API_ENABLED && PLATFORM(COCOA) >+ >+#import "PlatformUtilities.h" >+#import "TestWKWebView.h" >+#import <WebKit/WKPreferencesPrivate.h> >+#import <wtf/RetainPtr.h> >+#import <wtf/text/WTFString.h> >+ >+#if PLATFORM(IOS) >+#include <MobileCoreServices/MobileCoreServices.h> >+#endif >+ >+@interface WKWebView () >+- (void)copy:(id)sender; >+- (void)paste:(id)sender; >+@end >+ >+#if PLATFORM(MAC) >+NSString *readHTMLFromPasteboard() >+{ >+ return [[NSPasteboard generalPasteboard] stringForType:NSHTMLPboardType]; >+} >+#else >+NSString *readHTMLFromPasteboard() >+{ >+ id value = [[UIPasteboard generalPasteboard] valueForPasteboardType:(NSString *)kUTTypeHTML]; >+ if ([value isKindOfClass:[NSData class]]) >+ value = [[[NSString alloc] initWithData:(NSData *)value encoding:NSUTF8StringEncoding] autorelease]; >+ ASSERT([value isKindOfClass:[NSString class]]); >+ return (NSString *)value; >+} >+#endif >+ >+static RetainPtr<TestWKWebView> createWebViewWithCustomPasteboardDataEnabled() >+{ >+ auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 400, 400)]); >+ auto preferences = (WKPreferencesRef)[[webView configuration] preferences]; >+ WKPreferencesSetDataTransferItemsEnabled(preferences, true); >+ WKPreferencesSetCustomPasteboardDataEnabled(preferences, true); >+ return webView; >+} >+ >+TEST(CopyHTML, Sanitizes) >+{ >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); >+ [webView synchronouslyLoadTestPageNamed:@"copy-html"]; >+ [webView stringByEvaluatingJavaScript:@"HTMLToCopy = '<meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b>" >+ "<!-- secret-->, world<script>dangerousCode()</script>';"]; >+ [webView copy:nil]; >+ [webView paste:nil]; >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"didCopy"].boolValue); >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"didPaste"].boolValue); >+ EXPECT_WK_STREQ("<meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world<script>dangerousCode()</script>", >+ [webView stringByEvaluatingJavaScript:@"pastedHTML"]); >+ String htmlInNativePasteboard = readHTMLFromPasteboard(); >+ EXPECT_TRUE(htmlInNativePasteboard.contains("hello")); >+ EXPECT_TRUE(htmlInNativePasteboard.contains(", world")); >+ EXPECT_FALSE(htmlInNativePasteboard.contains("secret")); >+ EXPECT_FALSE(htmlInNativePasteboard.contains("dangerousCode")); >+} >+ >+#endif // WK_API_ENABLED && PLATFORM(MAC) >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm >index 5edbf433248daaba3364d2e7e1c8a5be50184c63..d88fa54b4ee71052ecf31f1a16526335957861e9 100644 >--- a/Tools/TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm >@@ -57,9 +57,18 @@ NSString *readURLFromPasteboard() > } > #endif > >-TEST(CopyURL, ValidURL) >+static RetainPtr<TestWKWebView> createWebViewWithCustomPasteboardDataEnabled() > { > auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 400, 400)]); >+ auto preferences = (WKPreferencesRef)[[webView configuration] preferences]; >+ WKPreferencesSetDataTransferItemsEnabled(preferences, true); >+ WKPreferencesSetCustomPasteboardDataEnabled(preferences, true); >+ return webView; >+} >+ >+TEST(CopyURL, ValidURL) >+{ >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); > [webView synchronouslyLoadTestPageNamed:@"copy-url"]; > [webView stringByEvaluatingJavaScript:@"URLToCopy = 'http://webkit.org/b/123';"]; > [webView copy:nil]; >@@ -70,12 +79,9 @@ TEST(CopyURL, ValidURL) > EXPECT_WK_STREQ(@"http://webkit.org/b/123", readURLFromPasteboard()); > } > >-// FIXME: We should add a mechanism to enable custom pasteboard data in older OS for testing purposes. >-#if (PLATFORM(IOS) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 110300) || (PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED > 101300) >- > TEST(CopyURL, UnescapedURL) > { >- auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 400, 400)]); >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); > [webView synchronouslyLoadTestPageNamed:@"copy-url"]; > [webView stringByEvaluatingJavaScript:@"URLToCopy = 'http://webkit.org/b/\u4F60\u597D;?x=8 + 6';"]; > [webView copy:nil]; >@@ -88,7 +94,7 @@ TEST(CopyURL, UnescapedURL) > > TEST(CopyURL, MalformedURL) > { >- auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 400, 400)]); >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); > [webView synchronouslyLoadTestPageNamed:@"copy-url"]; > [webView stringByEvaluatingJavaScript:@"URLToCopy = 'bad url';"]; > [webView copy:nil]; >@@ -99,7 +105,5 @@ TEST(CopyURL, MalformedURL) > EXPECT_WK_STREQ(@"", readURLFromPasteboard()); > } > >-#endif >- > #endif // WK_API_ENABLED && PLATFORM(MAC) > >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm >index 2de5aa63a4419bc7d85866a6ac9b25ed46dca7de..0c5418338e7e3f39ed32b8a729286a832c19c403 100644 >--- a/Tools/TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm >@@ -29,6 +29,9 @@ > > #import "PlatformUtilities.h" > #import "TestWKWebView.h" >+#import <WebKit/WKPreferencesPrivate.h> >+#import <WebKit/WKPreferencesRefPrivate.h> >+#import <WebKit/WKWebViewConfigurationPrivate.h> > #import <wtf/RetainPtr.h> > #import <wtf/text/WTFString.h> > >@@ -41,6 +44,12 @@ - (void)paste:(id)sender; > @end > > #if PLATFORM(MAC) >+void writeRTFToPasteboard(NSData *data) >+{ >+ [[NSPasteboard generalPasteboard] declareTypes:@[NSPasteboardTypeRTF] owner:nil]; >+ [[NSPasteboard generalPasteboard] setData:data forType:NSPasteboardTypeRTF]; >+} >+ > void writeRTFDToPasteboard(NSData *data) > { > [[NSPasteboard generalPasteboard] declareTypes:@[NSRTFDPboardType] owner:nil]; >@@ -56,15 +65,56 @@ - (NSData *)RTFDFromRange:(NSRange)range documentAttributes:(NSDictionary *)dict > - (BOOL)containsAttachments; > @end > >+void writeRTFToPasteboard(NSData *data) >+{ >+ [[UIPasteboard generalPasteboard] setItems:@[@{ (NSString *)kUTTypeRTF : data}]]; >+} >+ > void writeRTFDToPasteboard(NSData *data) > { > [[UIPasteboard generalPasteboard] setItems:@[@{ (NSString *)kUTTypeFlatRTFD : data}]]; > } > #endif > >-TEST(PasteRTFD, EmptyRTFD) >+static RetainPtr<TestWKWebView> createWebViewWithCustomPasteboardDataEnabled() > { > auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 400, 400)]); >+ auto preferences = (WKPreferencesRef)[[webView configuration] preferences]; >+ WKPreferencesSetDataTransferItemsEnabled(preferences, true); >+ WKPreferencesSetCustomPasteboardDataEnabled(preferences, true); >+ return webView; >+} >+ >+static RetainPtr<NSAttributedString> createHelloWorldString() >+{ >+ auto hello = adoptNS([[NSAttributedString alloc] initWithString:@"hello" attributes:@{ NSUnderlineStyleAttributeName : @(NSUnderlineStyleSingle) }]); >+ auto world = adoptNS([[NSAttributedString alloc] initWithString:@", world" attributes:@{ }]); >+ auto string = adoptNS([[NSMutableAttributedString alloc] init]); >+ [string appendAttributedString:hello.get()]; >+ [string appendAttributedString:world.get()]; >+ return string; >+} >+ >+TEST(PasteRTF, ExposesHTMLTypeInDataTransfer) >+{ >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); >+ [webView synchronouslyLoadTestPageNamed:@"paste-rtfd"]; >+ >+ auto string = createHelloWorldString(); >+ writeRTFToPasteboard([string RTFFromRange:NSMakeRange(0, [string length]) documentAttributes:@{ }]); >+ [webView paste:nil]; >+ >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"clipboardData.types.includes('text/html')"]); >+ [webView stringByEvaluatingJavaScript:@"editor.innerHTML = clipboardData.values[0]; editor.focus()"]; >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"document.queryCommandState('underline')"].boolValue); >+ [webView stringByEvaluatingJavaScript:@"getSelection().modify('move', 'forward', 'lineboundary')"]; >+ EXPECT_FALSE([webView stringByEvaluatingJavaScript:@"document.queryCommandState('underline')"].boolValue); >+ EXPECT_WK_STREQ("hello, world", [webView stringByEvaluatingJavaScript:@"editor.textContent"]); >+} >+ >+TEST(PasteRTFD, EmptyRTFD) >+{ >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); > [webView synchronouslyLoadHTMLString:@"<!DOCTYPE html><html><body><div id='editor' contenteditable></div></body></html>"]; > > writeRTFDToPasteboard([NSData data]); >@@ -72,9 +122,26 @@ TEST(PasteRTFD, EmptyRTFD) > [webView paste:nil]; > } > >-TEST(PasteRTFD, ImageElementsUseBlobURL) >+TEST(PasteRTFD, ExposesHTMLTypeInDataTransfer) > { >- auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 400, 400)]); >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); >+ [webView synchronouslyLoadTestPageNamed:@"paste-rtfd"]; >+ >+ auto string = createHelloWorldString(); >+ writeRTFDToPasteboard([string RTFDFromRange:NSMakeRange(0, [string length]) documentAttributes:@{ }]); >+ [webView paste:nil]; >+ >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"clipboardData.types.includes('text/html')"]); >+ [webView stringByEvaluatingJavaScript:@"editor.innerHTML = clipboardData.values[0]; editor.focus()"]; >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"document.queryCommandState('underline')"].boolValue); >+ [webView stringByEvaluatingJavaScript:@"getSelection().modify('move', 'forward', 'lineboundary')"]; >+ EXPECT_FALSE([webView stringByEvaluatingJavaScript:@"document.queryCommandState('underline')"].boolValue); >+ EXPECT_WK_STREQ("hello, world", [webView stringByEvaluatingJavaScript:@"editor.textContent"]); >+} >+ >+TEST(PasteRTFD, ImageElementUsesBlobURL) >+{ >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); > [webView synchronouslyLoadTestPageNamed:@"paste-rtfd"]; > > auto *pngData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"sunset-in-cupertino-200px" ofType:@"png" inDirectory:@"TestWebKitAPI.resources"]]; >@@ -90,6 +157,25 @@ TEST(PasteRTFD, ImageElementsUseBlobURL) > EXPECT_WK_STREQ("blob:", [webView stringByEvaluatingJavaScript:@"url = new URL(imageElement.src).protocol"]); > } > >+TEST(PasteRTFD, ImageElementUsesBlobURLInHTML) >+{ >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); >+ [webView synchronouslyLoadTestPageNamed:@"paste-rtfd"]; >+ >+ auto *pngData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"sunset-in-cupertino-200px" ofType:@"png" inDirectory:@"TestWebKitAPI.resources"]]; >+ auto attachment = adoptNS([[NSTextAttachment alloc] initWithData:pngData ofType:(NSString *)kUTTypePNG]); >+ NSAttributedString *string = [NSAttributedString attributedStringWithAttachment:attachment.get()]; >+ NSData *RTFDData = [string RTFDFromRange:NSMakeRange(0, [string length]) documentAttributes:@{ }]; >+ >+ writeRTFDToPasteboard(RTFDData); >+ [webView paste:nil]; >+ >+ [webView waitForMessage:@"loaded"]; >+ EXPECT_WK_STREQ("[\"text/html\"]", [webView stringByEvaluatingJavaScript:@"JSON.stringify(clipboardData.types)"]); >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"imageElement = (new DOMParser).parseFromString(clipboardData.values[0], 'text/html').querySelector('img'); !!imageElement"].boolValue); >+ EXPECT_WK_STREQ("blob:", [webView stringByEvaluatingJavaScript:@"new URL(imageElement.src).protocol"]); >+} >+ > #endif // WK_API_ENABLED && PLATFORM(MAC) > > >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm >new file mode 100644 >index 0000000000000000000000000000000000000000..f4374b4fa31c9d85e5c54d99da21aface3dfbc63 >--- /dev/null >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm >@@ -0,0 +1,83 @@ >+/* >+ * Copyright (C) 2017 Apple Inc. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+#include "config.h" >+ >+#if WK_API_ENABLED && PLATFORM(MAC) >+ >+#import "PlatformUtilities.h" >+#import "TestWKWebView.h" >+#import <WebKit/WKPreferencesPrivate.h> >+#import <WebKit/WKPreferencesRefPrivate.h> >+#import <WebKit/WKWebViewConfigurationPrivate.h> >+#import <wtf/RetainPtr.h> >+#import <wtf/text/WTFString.h> >+ >+@interface WKWebView () >+- (void)paste:(id)sender; >+@end >+ >+static RetainPtr<TestWKWebView> createWebViewWithCustomPasteboardDataEnabled() >+{ >+ auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 400, 400)]); >+ auto preferences = (WKPreferencesRef)[[webView configuration] preferences]; >+ WKPreferencesSetDataTransferItemsEnabled(preferences, true); >+ WKPreferencesSetCustomPasteboardDataEnabled(preferences, true); >+ return webView; >+} >+ >+TEST(PasteWebArchive, ExposesHTMLTypeInDataTransfer) >+{ >+ auto* url = [NSURL URLWithString:@"file:///some-file.html"]; >+ auto* markup = [@"<!DOCTYPE html><html><body><meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b>" >+ "<!-- secret-->, world<script>dangerousCode()</script></html>" dataUsingEncoding:NSUTF8StringEncoding]; >+ auto mainResource = adoptNS([[WebResource alloc] initWithData:markup URL:url MIMEType:@"text/html" textEncodingName:@"utf-8" frameName:nil]); >+ auto archive = adoptNS([[WebArchive alloc] initWithMainResource:mainResource.get() subresources:nil subframeArchives:nil]); >+ >+ [[NSPasteboard generalPasteboard] declareTypes:@[WebArchivePboardType] owner:nil]; >+ [[NSPasteboard generalPasteboard] setData:[archive data] forType:WebArchivePboardType]; >+ >+ auto webView = createWebViewWithCustomPasteboardDataEnabled(); >+ [webView synchronouslyLoadTestPageNamed:@"paste-rtfd"]; >+ [webView paste:nil]; >+ >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"clipboardData.types.includes('text/html')"]); >+ [webView stringByEvaluatingJavaScript:@"html = clipboardData.values[0]"]; >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"html.includes('hello')"].boolValue); >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"html.includes(', world')"].boolValue); >+ EXPECT_FALSE([webView stringByEvaluatingJavaScript:@"html.includes('secret')"].boolValue); >+ EXPECT_FALSE([webView stringByEvaluatingJavaScript:@"html.includes('dangerousCode')"].boolValue); >+ >+ [webView stringByEvaluatingJavaScript:@"editor.innerHTML = html; editor.focus(); getSelection().setPosition(editor, 0)"]; >+ EXPECT_TRUE([webView stringByEvaluatingJavaScript:@"document.queryCommandState('bold')"].boolValue); >+ [webView stringByEvaluatingJavaScript:@"getSelection().modify('move', 'forward', 'lineboundary')"]; >+ EXPECT_FALSE([webView stringByEvaluatingJavaScript:@"document.queryCommandState('bold')"].boolValue); >+ EXPECT_WK_STREQ("hello, world", [webView stringByEvaluatingJavaScript:@"editor.textContent"]); >+} >+ >+#endif // WK_API_ENABLED && PLATFORM(MAC) >+ >+ >+ >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/copy-html.html b/Tools/TestWebKitAPI/Tests/WebKitCocoa/copy-html.html >new file mode 100644 >index 0000000000000000000000000000000000000000..419c8b0979fcf2888fb02918907e5c51715c321d >--- /dev/null >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/copy-html.html >@@ -0,0 +1,27 @@ >+<!DOCTYPE html> >+<html> >+<body> >+<div id="editor" oncopy="copy(event)" onpaste="paste(event)" contenteditable>some text</div> >+<script> >+ >+var HTMLToCopy = null; >+var didCopy = false; >+var didPaste = false; >+ >+function copy(event) { >+ if (HTMLToCopy) { >+ event.clipboardData.setData('text/html', HTMLToCopy); >+ event.preventDefault(); >+ } >+ didCopy = true; >+} >+ >+function paste(event) { >+ pastedHTML = event.clipboardData.getData('text/html'); >+ didPaste = true; >+} >+ >+editor.focus(); >+</script> >+</body> >+</html> >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html b/Tools/TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html >index 58b6098a94a23437dca9559d77f867a42e0e2632..2bdb24f061522d952a52c5c5940959c2b8a8a81f 100644 >--- a/Tools/TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html >@@ -6,7 +6,13 @@ > const editor = document.getElementById('editor'); > editor.focus(); > >+var clipboardData = {}; > editor.addEventListener('paste', (event) => { >+ clipboardData.types = Array.from(event.clipboardData.types); >+ clipboardData.items = Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})); >+ clipboardData.values = clipboardData.types.map((type) => event.clipboardData.getData(type)); >+ clipboardData.files = Array.from(event.clipboardData.files); >+ > setTimeout(() => { > let img = document.querySelector('img'); > if (img.complete) >diff --git a/Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm b/Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm >index 4c9dc0f0879dbc4d413635e3c59780b059dfe4ce..6d9601a546f95147f978d2fde99cdabaca8ef321 100644 >--- a/Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm >+++ b/Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm >@@ -1742,6 +1742,46 @@ TEST(DataInteractionTests, DataTransferSetDataInvalidURL) > }); > } > >+TEST(DataInteractionTests, DataTransferSanitizeHTML) >+{ >+ auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 500)]); >+ [webView synchronouslyLoadTestPageNamed:@"dump-datatransfer-types"]; >+ auto simulator = adoptNS([[DataInteractionSimulator alloc] initWithWebView:webView.get()]); >+ >+ [webView stringByEvaluatingJavaScript:@"select(rich)"]; >+ [webView stringByEvaluatingJavaScript:@"customData = { 'text/html' : '<meta content=\"secret\">" >+ "<b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world<script>dangerousCode()</script>' }"]; >+ [webView stringByEvaluatingJavaScript:@"writeCustomData = true"]; >+ >+ __block bool done = false; >+ [simulator.get() setOverridePerformDropBlock:^NSArray<UIDragItem *> *(id <UIDropSession> session) >+ { >+ EXPECT_EQ(1UL, session.items.count); >+ auto *item = session.items[0].itemProvider; >+ EXPECT_TRUE([item.registeredTypeIdentifiers containsObject:(NSString *)kUTTypeHTML]); >+ [item loadDataRepresentationForTypeIdentifier:(NSString *)kUTTypeHTML completionHandler:^(NSData *data, NSError *error) { >+ NSString *markup = [[[NSString alloc] initWithData:(NSData *)data encoding:NSUTF8StringEncoding] autorelease]; >+ EXPECT_TRUE([markup containsString:@"hello"]); >+ EXPECT_TRUE([markup containsString:@", world"]); >+ EXPECT_FALSE([markup containsString:@"secret"]); >+ EXPECT_FALSE([markup containsString:@"dangerousCode"]); >+ done = true; >+ }]; >+ return session.items; >+ }]; >+ [simulator runFrom:CGPointMake(50, 225) to:CGPointMake(50, 375)]; >+ >+ checkJSONWithLogging([webView stringByEvaluatingJavaScript:@"output.value"], @{ >+ @"dragover": @{ >+ @"text/html": @"", >+ }, >+ @"drop": @{ >+ @"text/html": @"<meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world<script>dangerousCode()</script>", >+ } >+ }); >+ TestWebKitAPI::Util::run(&done); >+} >+ > #endif // __IPHONE_OS_VERSION_MIN_REQUIRED >= 110300 > > } // namespace TestWebKitAPI >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index ceee791e76bbf16d719939a2520a87e586f1d0d6..4b557be4284b7234ac715e9ddd59f73712ff8020 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,39 @@ >+2017-10-13 Ryosuke Niwa <rniwa@webkit.org> >+ >+ Cannot access images included in the content pasted from Microsoft Word >+ https://bugs.webkit.org/show_bug.cgi?id=124391 >+ <rdar://problem/26862741> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Added tests for copying & pasting and dragging & dropping HTML contents. >+ >+ * TestExpectations: >+ * editing/pasteboard/data-transfer-get-data-on-drop-rich-text-expected.txt: Rebaselined. >+ * editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt: Ditto. >+ * editing/pasteboard/data-transfer-get-data-on-paste-rich-text.html: Modified the test to strip away platform specific >+ inline style properties. >+ * editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url-expected.txt: Added. >+ * editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url.html: Added. >+ * editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-expected.txt: Added. >+ * editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin-expected.txt: Added. >+ * editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin.html: Added. >+ * editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying.html: Added. >+ * editing/pasteboard/data-transfer-set-data-sanitizes-html-when-dragging-in-null-origin-expected.txt: Added. >+ * editing/pasteboard/data-transfer-set-data-sanitizes-html-when-dragging-in-null-origin.html: Added. >+ * editing/pasteboard/data-transfer-set-data-sanitizes-url-when-dragging-in-null-origin.html: Removed the superflous >+ call to setTimeout that was errornously added during debugging. Also updated the test to not claim all URL and >+ HTML values are read in the same origin, and updated the assertion for cross-origin case as it's now sanitized. >+ * editing/pasteboard/onpaste-text-html-expected.txt: Rebaselined. The order of CSS properties have changed. >+ * http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html-expected.txt: Added. >+ * http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html.html: Added. >+ * http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url.html: >+ * http/tests/security/clipboard/resources/copy-html.html: Added. >+ * http/tests/security/clipboard/resources/copy-url.html: Renamed from copy.html. >+ * platform/ios-wk2/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt: Remoevd. >+ * platform/ios-wk1/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt: Remoevd. >+ * platform/mac-wk1/TestExpectations: >+ > 2017-10-14 Antoine Quint <graouts@apple.com> > > Remove all Web Animations code >diff --git a/LayoutTests/TestExpectations b/LayoutTests/TestExpectations >index 8387a7c0337feb48db157d276cfbd39f08fa34e6..fde212703b1a834084b2073ecdadbd7730205204 100644 >--- a/LayoutTests/TestExpectations >+++ b/LayoutTests/TestExpectations >@@ -77,7 +77,9 @@ editing/pasteboard/data-transfer-get-data-on-drop-plain-text.html [ Skip ] > editing/pasteboard/data-transfer-get-data-on-drop-rich-text.html [ Skip ] > editing/pasteboard/data-transfer-get-data-on-drop-url.html [ Skip ] > editing/pasteboard/data-transfer-is-unique-for-dragenter-and-dragleave.html [ Skip ] >+editing/pasteboard/data-transfer-set-data-sanitize-html-when-dragging-in-null-origin.html [ Skip ] > editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html [ Skip ] >+ > editing/pasteboard/drag-end-crash-accessing-item-list.html [ Skip ] > editing/pasteboard/data-transfer-item-list-add-file-on-drag.html [ Skip ] > editing/pasteboard/data-transfer-items-drop-file.html [ Skip ] >diff --git a/LayoutTests/editing/pasteboard/data-transfer-get-data-on-drop-rich-text-expected.txt b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-drop-rich-text-expected.txt >index cec5b6207c7730b34d42604338d442ad73163e76..c9bf47574ef773c78582c422d826a656f6ebef0e 100644 >--- a/LayoutTests/editing/pasteboard/data-transfer-get-data-on-drop-rich-text-expected.txt >+++ b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-drop-rich-text-expected.txt >@@ -5,7 +5,7 @@ Rich text > "text/plain": "" > }, > "drop": { >- "text/html": "<strong style=\"font-family: -apple-system; font-size: 150px; font-style: normal; font-variant-caps: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: nowrap; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: purple;\">Rich text</strong>", >+ "text/html": "<strong style=\"font-style: normal; font-variant-caps: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-family: -apple-system; font-size: 150px; white-space: nowrap; color: purple;\">Rich text</strong>", > "text/plain": "Rich text" > } > } >diff --git a/LayoutTests/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt >index d4b004f485a9d97663badd581e10639372a26061..13d2c865fcc29650dd8f6705e0d84811e22a9ffb 100644 >--- a/LayoutTests/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt >+++ b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt >@@ -1,7 +1,7 @@ > Rich text > { > "paste": { >- "text/html": "<span style=\"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: -apple-system; font-size: 150px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: nowrap; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none;\">Rich text</span>", >+ "text/html": "<span style=\"...\"\">Rich text</span>", > "text/plain": "Rich text" > } > } >diff --git a/LayoutTests/editing/pasteboard/data-transfer-get-data-on-paste-rich-text.html b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-paste-rich-text.html >index 69bb7c07c3d40da8363c5105d160a01998eafcf2..d63f2b9e5da4a4b7d9a76461076af5b4f20d4701 100644 >--- a/LayoutTests/editing/pasteboard/data-transfer-get-data-on-paste-rich-text.html >+++ b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-paste-rich-text.html >@@ -35,7 +35,7 @@ result = {}; > function updateResultWithEvent(event) { > const eventData = {}; > for (const type of event.clipboardData.types) >- eventData[type] = event.clipboardData.getData(type); >+ eventData[type] = event.clipboardData.getData(type).replace(/style="[^"]+"/g, 'style="...""'); > result[event.type] = eventData; > output.textContent = JSON.stringify(result, null, " "); > event.preventDefault(); >diff --git a/LayoutTests/editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url-expected.txt b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..3a6458537e5bcd6135a5fc15428708af4090b120 >--- /dev/null >+++ b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url-expected.txt >@@ -0,0 +1,25 @@ >+This tests getData strips away secrets and dangerous code when copying inside a null origin document. >+ >+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". >+ >+ >+PASS typesInNullOrigin.includes("text/html") is true >+PASS htmlInNullOrigin.includes("secret") is false >+PASS htmlInNullOrigin.includes("dangerousCode") is false >+PASS parsedTree = (new DOMParser).parseFromString(htmlInNullOrigin, "text/html"); !!parsedTree.querySelector("b"); is true >+PASS parsedTree.querySelector("b").textContent is "16th President of the United States:" >+PASS (new URL(parsedTree.querySelector("img").src)).protocol is "blob:" >+PASS parsedTree.querySelector("img").src.includes("resources/abe.png") is false >+PASS itemsInNullOrigin.some((item) => item.kind == "string" && item.type == "text/html") is true >+PASS typesInNullOrigin.includes("text/html") is true >+PASS htmlInSameDocument.includes("secret") is false >+PASS htmlInSameDocument.includes("dangerousCode") is false >+PASS parsedTree = (new DOMParser).parseFromString(htmlInNullOrigin, "text/html"); !!parsedTree.querySelector("b"); is true >+PASS parsedTree.querySelector("b").textContent is "16th President of the United States:" >+FAIL (new URL(parsedTree.querySelector("img").src)).protocol should be file:. Was blob:. >+FAIL parsedTree.querySelector("img").src.includes("resources/abe.png") should be true. Was false. >+PASS itemsInSameDocument.some((item) => item.kind == "string" && item.type == "text/html") is true >+PASS successfullyParsed is true >+ >+TEST COMPLETE >+ >diff --git a/LayoutTests/editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url.html b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url.html >new file mode 100644 >index 0000000000000000000000000000000000000000..146f90d8eab7424e3175e495fe0d096f0ea409ac >--- /dev/null >+++ b/LayoutTests/editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url.html >@@ -0,0 +1,104 @@ >+<!DOCTYPE html> >+<html> >+<body> >+<script src="../../resources/js-test-pre.js"></script> >+<div id="container"> >+<button id="copy" onclick="runTest()">1. Copy</button> >+<div><br></div> >+<div id="source" oncopy="doCopy(event)" contenteditable> >+ <b>16th President of the United States:</b> >+ <!-- secret--> >+ <img src="../resources/abe.png" alt="Abraham Lincoln" onmouseover="dangerousCode()"> >+ <script>function dangerousCode() { } dangerousCode();</script> >+</div> >+<div id="destination" onpaste="doPaste(event)" contenteditable>3. Paste here</div></div> >+<script> >+ >+description('This tests getData strips away secrets and dangerous code when copying inside a null origin document.'); >+jsTestIsAsync = true; >+ >+if (window.internals) >+ internals.settings.setCustomPasteboardDataEnabled(true); >+ >+function runTest() { >+ document.getElementById('source').focus(); >+ document.execCommand('selectAll'); >+ document.execCommand('copy'); >+} >+ >+const container = document.getElementById('container'); >+function doCopy(event) { >+ const iframe = document.createElement('iframe'); >+ container.insertBefore(iframe, container.lastChild); >+ iframe.src = `data:text/html;charset=utf-8,<!DOCTYPE html> >+ <div id="destination" onpaste="doPaste(event)" contenteditable>2. Paste here</div> >+ <script> >+ >+ function doPaste(event) { >+ event.preventDefault(); >+ parent.postMessage({ >+ html: event.clipboardData.getData('text/html'), >+ types: event.clipboardData.types, >+ items: Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})), >+ }, '*'); >+ }; >+ >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+ >+ </scri` + 'pt>'; >+} >+ >+onmessage = (event) => { >+ typesInNullOrigin = event.data.types; >+ shouldBeTrue('typesInNullOrigin.includes("text/html")'); >+ >+ htmlInNullOrigin = event.data.html; >+ shouldBeFalse('htmlInNullOrigin.includes("secret")'); >+ shouldBeFalse('htmlInNullOrigin.includes("dangerousCode")'); >+ shouldBeTrue('parsedTree = (new DOMParser).parseFromString(htmlInNullOrigin, "text/html"); !!parsedTree.querySelector("b");'); >+ shouldBeEqualToString('parsedTree.querySelector("b").textContent', '16th President of the United States:'); >+ shouldBeEqualToString('(new URL(parsedTree.querySelector("img").src)).protocol', 'blob:'); >+ shouldBeFalse('parsedTree.querySelector("img").src.includes("resources/abe.png")'); >+ >+ itemsInNullOrigin = event.data.items; >+ shouldBeTrue('itemsInNullOrigin.some((item) => item.kind == "string" && item.type == "text/html")'); >+ >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+} >+ >+function doPaste(event) { >+ event.preventDefault(); >+ >+ typesInSameDocument = event.clipboardData.types; >+ shouldBeTrue('typesInNullOrigin.includes("text/html")'); >+ >+ htmlInSameDocument = event.clipboardData.getData('text/html'); >+ shouldBeFalse('htmlInSameDocument.includes("secret")'); >+ shouldBeFalse('htmlInSameDocument.includes("dangerousCode")'); >+ shouldBeTrue('parsedTree = (new DOMParser).parseFromString(htmlInNullOrigin, "text/html"); !!parsedTree.querySelector("b");'); >+ shouldBeEqualToString('parsedTree.querySelector("b").textContent', '16th President of the United States:'); >+ >+ // FIXME: These two test cases fail. >+ shouldBeEqualToString('(new URL(parsedTree.querySelector("img").src)).protocol', 'file:'); >+ shouldBeTrue('parsedTree.querySelector("img").src.includes("resources/abe.png")'); >+ >+ itemsInSameDocument = Array.from(event.clipboardData.items); >+ shouldBeTrue('itemsInSameDocument.some((item) => item.kind == "string" && item.type == "text/html")'); >+ >+ container.remove(); >+ finishJSTest(); >+} >+ >+if (window.testRunner) >+ window.onload = runTest; >+ >+successfullyParsed = true; >+ >+</script> >+<script src="../../resources/js-test-post.js"></script> >+</body> >+</html> >diff --git a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-html-when-dragging-in-null-origin-expected.txt b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-html-when-dragging-in-null-origin-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..dd773fec74737bc6c8e6f9283071a14b71439994 >--- /dev/null >+++ b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-html-when-dragging-in-null-origin-expected.txt >@@ -0,0 +1,41 @@ >+This tests calling setData to set a html in a null origin document. The URL should be sanitized when reading in another document. >+To manually test, drag and drop the "1. Drag this" above to "2. Drop here" and "3. Drop here". >+ >+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". >+ >+dragstart in the null origin document: >+PASS html is "<meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world<script>dangerousCode()</script>" >+PASS types.includes("text/html") is true >+PASS items.some((item) => item.kind == "string" && item.type == "text/html") is true >+ >+dragover in the null origin document: >+PASS html is "" >+PASS types.includes("text/html") is true >+PASS items.some((item) => item.kind == "string" && item.type == "text/html") is true >+ >+drop in the null origin document: >+PASS html is "<meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world<script>dangerousCode()</script>" >+PASS types.includes("text/html") is true >+PASS items.some((item) => item.kind == "string" && item.type == "text/html") is true >+ >+dragstart in the null origin document: >+PASS html is "<meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world<script>dangerousCode()</script>" >+PASS types.includes("text/html") is true >+PASS items.some((item) => item.kind == "string" && item.type == "text/html") is true >+ >+dragover in the file URL document: >+PASS html is "" >+PASS types.includes("text/html") is true >+PASS items.some((item) => item.kind == "string" && item.type == "text/html") is true >+ >+drop in the file URL document: >+PASS html.includes("hello") is true >+PASS html.includes(", world") is true >+PASS html.includes("secret") is false >+PASS html.includes("dangerousCode") is false >+PASS types.includes("text/html") is true >+PASS items.some((item) => item.kind == "string" && item.type == "text/html") is true >+PASS successfullyParsed is true >+ >+TEST COMPLETE >+ >diff --git a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-html-when-dragging-in-null-origin.html b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-html-when-dragging-in-null-origin.html >new file mode 100644 >index 0000000000000000000000000000000000000000..9c26e74503841038d624bd2f346a93039faacace >--- /dev/null >+++ b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-html-when-dragging-in-null-origin.html >@@ -0,0 +1,164 @@ >+<!DOCTYPE html> >+<html> >+<body> >+<div id="container"> >+<div id="destination">3. Drop here</div> >+</div> >+<div id="description"></div> >+<div id="console"></div> >+<script src="../../resources/js-test-pre.js"></script> >+<script> >+ >+description('This tests calling setData to set a html in a null origin document. The URL should be sanitized when reading in another document.<br>' >+ + 'To manually test, drag and drop the "1. Drag this" above to "2. Drop here" and "3. Drop here".'); >+jsTestIsAsync = true; >+ >+if (window.internals) >+ internals.settings.setCustomPasteboardDataEnabled(true); >+ >+const iframe = document.createElement('iframe'); >+const destination = document.getElementById('destination'); >+document.getElementById('container').prepend(iframe); >+ >+iframe.src = `data:text/html;charset=utf-8,<!DOCTYPE html> >+<div id="source" draggable="true">1. Drag this</div> >+<div id="destination" onpaste="paste(event)">2. Drop here</div> >+<script> >+ >+const source = document.getElementById('source'); >+const destination = document.getElementById('destination'); >+const originalHTML = '<meta content="secret"><b onmouseover="dangerousCode()">hello</b><!-- secret-->, world<script>dangerousCode()</scr' + 'ipt>'; >+parent.postMessage({kind: 'originalHTML', originalHTML}, '*'); >+ >+function postContent(kind, dataTransfer) { >+ parent.postMessage({ >+ kind, >+ documentLabel: 'the null origin document', >+ html: dataTransfer.getData('text/html'), >+ types: dataTransfer.types, >+ items: Array.from(dataTransfer.items).map((item) => ({kind: item.kind, type: item.type})), >+ }, '*'); >+} >+ >+let postDragOver; >+source.addEventListener("dragstart", (event) => { >+ postDragOver = false; >+ event.dataTransfer.setData('text/html', originalHTML); >+ postContent('dragstart', event.dataTransfer); >+}); >+destination.addEventListener("dragover", (event) => { >+ event.preventDefault(); >+ if (postDragOver) >+ return; >+ postDragOver = true; >+ postContent('dragover', event.dataTransfer); >+}); >+destination.addEventListener("drop", (event) => { >+ postContent('drop', event.dataTransfer); >+ destination.remove(); >+ top.postMessage({kind: 'secondDrop'}, '*'); >+}); >+ >+if (window.eventSender) { >+ const iframeOffset = {x: 10, y: 10}; >+ eventSender.mouseMoveTo(iframeOffset.x + source.offsetLeft + 5, iframeOffset.y + source.offsetTop + 5); >+ eventSender.mouseDown(); >+ eventSender.leapForward(500); >+ eventSender.mouseMoveTo(iframeOffset.x + destination.offsetLeft + 5, iframeOffset.y + destination.offsetTop + 5); >+ eventSender.mouseUp(); >+} >+ >+</scri` + 'pt>'; >+ >+onmessage = (event) => { >+ const kind = event.data.kind; >+ if (kind == 'originalHTML') { >+ originalHTML = event.data.originalHTML; >+ return; >+ } >+ if (kind == 'secondDrop') >+ return doSecondDrop(event.data.postContent); >+ debug(`${kind} in ${event.data.documentLabel}:`); >+ switch (kind) { >+ case 'dragstart': >+ html = event.data.html; >+ shouldBeEqualToString('html', originalHTML); >+ types = event.data.types; >+ shouldBeTrue('types.includes("text/html")'); >+ items = event.data.items; >+ shouldBeTrue('items.some((item) => item.kind == "string" && item.type == "text/html")'); >+ break; >+ case 'dragover': >+ html = event.data.html; >+ shouldBeEqualToString('html', ''); >+ types = event.data.types; >+ shouldBeTrue('types.includes("text/html")'); >+ items = event.data.items; >+ shouldBeTrue('items.some((item) => item.kind == "string" && item.type == "text/html")'); >+ break; >+ case 'drop': >+ html = event.data.html; >+ if (event.data.documentLabel.includes('null')) >+ shouldBeEqualToString('html', originalHTML); >+ else { >+ shouldBeTrue('html.includes("hello")'); >+ shouldBeTrue('html.includes(", world")'); >+ shouldBeFalse('html.includes("secret")'); >+ shouldBeFalse('html.includes("dangerousCode")'); >+ } >+ types = event.data.types; >+ shouldBeTrue('types.includes("text/html")'); >+ items = event.data.items; >+ shouldBeTrue('items.some((item) => item.kind == "string" && item.type == "text/html")'); >+ if (!event.data.documentLabel.includes('null')) { >+ document.getElementById('container').remove(); >+ finishJSTest(); >+ } >+ break; >+ } >+ debug(''); >+} >+ >+function postContent(kind, dataTransfer) { >+ window.postMessage({ >+ kind, >+ documentLabel: 'the file URL document', >+ html: dataTransfer.getData('text/html'), >+ types: dataTransfer.types, >+ items: Array.from(dataTransfer.items).map((item) => ({kind: item.kind, type: item.type})), >+ }, '*'); >+} >+ >+let postDragOver = false; >+destination.addEventListener("dragover", (event) => { >+ event.preventDefault(); >+ if (postDragOver) >+ return; >+ postDragOver = true; >+ postContent('dragover', event.dataTransfer); >+}); >+destination.addEventListener("drop", (event) => { >+ postContent('drop', event.dataTransfer); >+}); >+ >+function doSecondDrop(postContent) { >+ postDragOver = false; >+ if (!window.eventSender) >+ return; >+ >+ eventSender.leapForward(500); >+ eventSender.mouseMoveTo(iframe.offsetLeft + 10, iframe.offsetTop + 10); >+ eventSender.mouseDown(); >+ eventSender.leapForward(500); >+ >+ const destinationRect = destination.getBoundingClientRect(); >+ eventSender.mouseMoveTo(destination.offsetLeft + 5, destination.offsetTop + 5); >+ eventSender.mouseUp(); >+} >+ >+setTimeout(finishJSTest, 3000); >+ >+</script> >+<script src="../../resources/js-test-post.js"></script> >+</body> >+</html> >diff --git a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin-expected.txt b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin-expected.txt >index 5d3e118af0674120975736ae436d4ac119b5ccc8..6920f75d75e58eaa47f7ff6b83f7a219b5ef051c 100644 >--- a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin-expected.txt >+++ b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin-expected.txt >@@ -4,40 +4,40 @@ To manually test, drag and drop the "1. Drag this" above to "2. Drop here" and " > On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". > > dragstart in the null origin document: >-PASS urlReadInSameDocument is "http://webkit.org/b/ð¤?x=8 + 6" >-PASS htmlReadInSameDocument is "testing" >-PASS JSON.stringify(typesInSameDocument) is "[\"text/uri-list\",\"text/html\"]" >-PASS JSON.stringify(itemsInSameDocument) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS url is "http://webkit.org/b/ð¤?x=8 + 6" >+PASS html is "testing" >+PASS JSON.stringify(types) is "[\"text/uri-list\",\"text/html\"]" >+PASS JSON.stringify(items) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" > > dragover in the null origin document: >-PASS urlReadInSameDocument is "" >-PASS htmlReadInSameDocument is "" >-PASS JSON.stringify(typesInSameDocument) is "[\"text/uri-list\",\"text/html\"]" >-PASS JSON.stringify(itemsInSameDocument) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS url is "" >+PASS html is "" >+PASS JSON.stringify(types) is "[\"text/uri-list\",\"text/html\"]" >+PASS JSON.stringify(items) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" > > drop in the null origin document: >-PASS urlReadInSameDocument is "http://webkit.org/b/ð¤?x=8 + 6" >-PASS htmlReadInSameDocument is "testing" >-PASS JSON.stringify(typesInSameDocument) is "[\"text/uri-list\",\"text/html\"]" >-PASS JSON.stringify(itemsInSameDocument) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS url is "http://webkit.org/b/ð¤?x=8 + 6" >+PASS html is "testing" >+PASS JSON.stringify(types) is "[\"text/uri-list\",\"text/html\"]" >+PASS JSON.stringify(items) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" > > dragstart in the null origin document: >-PASS urlReadInSameDocument is "http://webkit.org/b/ð¤?x=8 + 6" >-PASS htmlReadInSameDocument is "testing" >-PASS JSON.stringify(typesInSameDocument) is "[\"text/uri-list\",\"text/html\"]" >-PASS JSON.stringify(itemsInSameDocument) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS url is "http://webkit.org/b/ð¤?x=8 + 6" >+PASS html is "testing" >+PASS JSON.stringify(types) is "[\"text/uri-list\",\"text/html\"]" >+PASS JSON.stringify(items) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" > > dragover in the file URL document: >-PASS urlReadInSameDocument is "" >-PASS htmlReadInSameDocument is "" >-PASS JSON.stringify(typesInSameDocument) is "[\"text/uri-list\",\"text/html\"]" >-PASS JSON.stringify(itemsInSameDocument) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS url is "" >+PASS html is "" >+PASS JSON.stringify(types) is "[\"text/uri-list\",\"text/html\"]" >+PASS JSON.stringify(items) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" > > drop in the file URL document: >-PASS urlReadInSameDocument is "http://webkit.org/b/%F0%9F%A4%94?x=8%20+%206" >-PASS htmlReadInSameDocument is "testing" >-PASS JSON.stringify(typesInSameDocument) is "[\"text/uri-list\",\"text/html\"]" >-PASS JSON.stringify(itemsInSameDocument) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS url is "http://webkit.org/b/%F0%9F%A4%94?x=8%20+%206" >+PASS html.includes("testing") is true >+PASS JSON.stringify(types) is "[\"text/uri-list\",\"text/html\"]" >+PASS JSON.stringify(items) is "[{\"kind\":\"string\",\"type\":\"text/uri-list\"},{\"kind\":\"string\",\"type\":\"text/html\"}]" > PASS successfullyParsed is true > > TEST COMPLETE >diff --git a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html >index 700c95dfbbff5bd22464b3ed40338d2660bb42d5..aa1ccdc32a7e773ef77a3a0d1b5f886eda2c8a9a 100644 >--- a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html >+++ b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html >@@ -83,34 +83,38 @@ onmessage = (event) => { > debug(`${kind} in ${event.data.documentLabel}:`); > switch (kind) { > case 'dragstart': >- urlReadInSameDocument = event.data.url; >- shouldBeEqualToString('urlReadInSameDocument', originalURL); >- htmlReadInSameDocument = event.data.html; >- shouldBeEqualToString('htmlReadInSameDocument', "testing"); >- typesInSameDocument = event.data.types; >- shouldBeEqualToString('JSON.stringify(typesInSameDocument)', '["text/uri-list","text/html"]'); >- itemsInSameDocument = event.data.items; >- shouldBeEqualToString('JSON.stringify(itemsInSameDocument)', '[{"kind":"string","type":"text/uri-list"},{"kind":"string","type":"text/html"}]'); >+ url = event.data.url; >+ shouldBeEqualToString('url', originalURL); >+ html = event.data.html; >+ shouldBeEqualToString('html', "testing"); >+ types = event.data.types; >+ shouldBeEqualToString('JSON.stringify(types)', '["text/uri-list","text/html"]'); >+ items = event.data.items; >+ shouldBeEqualToString('JSON.stringify(items)', '[{"kind":"string","type":"text/uri-list"},{"kind":"string","type":"text/html"}]'); > break; > case 'dragover': >- urlReadInSameDocument = event.data.url; >- shouldBeEqualToString('urlReadInSameDocument', ''); >- htmlReadInSameDocument = event.data.html; >- shouldBeEqualToString('htmlReadInSameDocument', ''); >- typesInSameDocument = event.data.types; >- shouldBeEqualToString('JSON.stringify(typesInSameDocument)', '["text/uri-list","text/html"]'); >- itemsInSameDocument = event.data.items; >- shouldBeEqualToString('JSON.stringify(itemsInSameDocument)', '[{"kind":"string","type":"text/uri-list"},{"kind":"string","type":"text/html"}]'); >+ url = event.data.url; >+ shouldBeEqualToString('url', ''); >+ html = event.data.html; >+ shouldBeEqualToString('html', ''); >+ types = event.data.types; >+ shouldBeEqualToString('JSON.stringify(types)', '["text/uri-list","text/html"]'); >+ items = event.data.items; >+ shouldBeEqualToString('JSON.stringify(items)', '[{"kind":"string","type":"text/uri-list"},{"kind":"string","type":"text/html"}]'); > break; > case 'drop': >- urlReadInSameDocument = event.data.url; >- shouldBeEqualToString('urlReadInSameDocument', event.data.documentLabel.includes('null') ? originalURL : (new URL(originalURL)).href); >- htmlReadInSameDocument = event.data.html; >- shouldBeEqualToString('htmlReadInSameDocument', "testing"); >- typesInSameDocument = event.data.types; >- shouldBeEqualToString('JSON.stringify(typesInSameDocument)', '["text/uri-list","text/html"]'); >- itemsInSameDocument = event.data.items; >- shouldBeEqualToString('JSON.stringify(itemsInSameDocument)', '[{"kind":"string","type":"text/uri-list"},{"kind":"string","type":"text/html"}]'); >+ url = event.data.url; >+ isSameOrigin = event.data.documentLabel.includes('null'); >+ shouldBeEqualToString('url', isSameOrigin ? originalURL : (new URL(originalURL)).href); >+ html = event.data.html; >+ if (isSameOrigin) >+ shouldBeEqualToString('html', 'testing'); >+ else >+ shouldBeTrue('html.includes("testing")'); >+ types = event.data.types; >+ shouldBeEqualToString('JSON.stringify(types)', '["text/uri-list","text/html"]'); >+ items = event.data.items; >+ shouldBeEqualToString('JSON.stringify(items)', '[{"kind":"string","type":"text/uri-list"},{"kind":"string","type":"text/html"}]'); > if (!event.data.documentLabel.includes('null')) { > document.getElementById('container').remove(); > finishJSTest(); >@@ -158,8 +162,6 @@ function doSecondDrop(postContent) { > eventSender.mouseUp(); > } > >-setTimeout(finishJSTest, 3000); >- > </script> > <script src="../../resources/js-test-post.js"></script> > </body> >diff --git a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-expected.txt b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..fde94b09dd7604eb672cc01d8914fb6ffba2ff69 >--- /dev/null >+++ b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-expected.txt >@@ -0,0 +1,16 @@ >+This tests getData strips away secrets and dangerous code when copying HTML in a regular origin and pasting inside a null origin document. >+ >+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". >+ >+ >+PASS JSON.stringify(typesInSameDocument) is "[\"text/html\"]" >+PASS htmlInSameDocument is "<meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world<script>dangerousCode()</script>" >+PASS JSON.stringify(itemsInSameDocument) is "[{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS htmlInAnotherDocument.includes("secret") is false >+PASS htmlInAnotherDocument.includes("dangerousCode") is false >+PASS b = (new DOMParser).parseFromString(htmlInAnotherDocument, "text/html").querySelector("b"); b.textContent is "hello" >+PASS b.parentNode.textContent is "hello, world" >+PASS successfullyParsed is true >+ >+TEST COMPLETE >+ >diff --git a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin-expected.txt b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..f540befec9f6f7045fe17f4aa59022d637127f4e >--- /dev/null >+++ b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin-expected.txt >@@ -0,0 +1,18 @@ >+This tests getData strips away secrets and dangerous code when copying inside a null origin document. >+ >+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". >+ >+ >+PASS JSON.stringify(typesInNullOrigin) is "[\"text/html\"]" >+PASS htmlInNullOrigin.includes("secret") is false >+PASS htmlInNullOrigin.includes("dangerousCode") is false >+PASS b = (new DOMParser).parseFromString(htmlInNullOrigin, "text/html").querySelector("b"); b.textContent is "hello" >+PASS b.parentNode.textContent is "hello, world" >+PASS JSON.stringify(itemsInNullOrigin) is "[{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS event.clipboardData.getData("text/html") is "<meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world<script>dangerousCode()</script>" >+PASS JSON.stringify(event.clipboardData.types) is "[\"text/html\"]" >+PASS JSON.stringify(Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type}))) is "[{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS successfullyParsed is true >+ >+TEST COMPLETE >+ >diff --git a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin.html b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin.html >new file mode 100644 >index 0000000000000000000000000000000000000000..94ab01402cc1a932717fb0f62167cbbcb6261dde >--- /dev/null >+++ b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin.html >@@ -0,0 +1,86 @@ >+<!DOCTYPE html> >+<html> >+<body> >+<script src="../../resources/js-test-pre.js"></script> >+<div id="container"> >+<button id="copy" onclick="runTest()">1. Copy</button> >+<div><br></div> >+<div id="source" oncopy="doCopy(event)" contenteditable>some text</div> >+<div id="destination" onpaste="doPaste(event)" contenteditable>3. Paste here</div> >+</div> >+<script> >+ >+description('This tests getData strips away secrets and dangerous code when copying inside a null origin document.'); >+jsTestIsAsync = true; >+ >+if (window.internals) >+ internals.settings.setCustomPasteboardDataEnabled(true); >+ >+function runTest() { >+ document.getElementById('source').focus(); >+ document.execCommand('selectAll'); >+ document.execCommand('copy'); >+} >+ >+var originalHTML = '<meta content="secret"><b onmouseover="dangerousCode()">hello</b><!-- secret-->, world<script>dangerousCode()</scr' + 'ipt>'; >+function doCopy(event) { >+ event.clipboardData.setData('text/html', originalHTML); >+ event.preventDefault(); >+ >+ const iframe = document.createElement('iframe'); >+ document.getElementById('container').insertBefore(iframe, iframe.lastChild); >+ iframe.src = `data:text/html;charset=utf-8,<!DOCTYPE html> >+ <div id="destination" onpaste="doPaste(event)" contenteditable>2. Paste here</div> >+ <script> >+ >+ function doPaste(event) { >+ event.preventDefault(); >+ parent.postMessage({ >+ html: event.clipboardData.getData('text/html'), >+ types: event.clipboardData.types, >+ items: Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})), >+ }, '*'); >+ }; >+ >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+ >+ </scri` + 'pt>'; >+} >+ >+onmessage = (event) => { >+ typesInNullOrigin = event.data.types; >+ shouldBeEqualToString('JSON.stringify(typesInNullOrigin)', '["text/html"]'); >+ >+ htmlInNullOrigin = event.data.html; >+ shouldBeFalse('htmlInNullOrigin.includes("secret")'); >+ shouldBeFalse('htmlInNullOrigin.includes("dangerousCode")'); >+ shouldBeEqualToString('b = (new DOMParser).parseFromString(htmlInNullOrigin, "text/html").querySelector("b"); b.textContent', 'hello'); >+ shouldBeEqualToString('b.parentNode.textContent', 'hello, world'); >+ >+ itemsInNullOrigin = event.data.items; >+ shouldBeEqualToString('JSON.stringify(itemsInNullOrigin)', '[{"kind":"string","type":"text/html"}]'); >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+} >+ >+function doPaste(event) { >+ shouldBeEqualToString('event.clipboardData.getData("text/html")', originalHTML); >+ shouldBeEqualToString('JSON.stringify(event.clipboardData.types)', '["text/html"]'); >+ shouldBeEqualToString('JSON.stringify(Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})))', >+ '[{"kind":"string","type":"text/html"}]'); >+ document.getElementById('container').remove(); >+ finishJSTest(); >+} >+ >+if (window.testRunner) >+ window.onload = runTest; >+ >+successfullyParsed = true; >+ >+</script> >+<script src="../../resources/js-test-post.js"></script> >+</body> >+</html> >diff --git a/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying.html b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying.html >new file mode 100644 >index 0000000000000000000000000000000000000000..570bbebff925b439886814f56689790aa2c9a1cb >--- /dev/null >+++ b/LayoutTests/editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying.html >@@ -0,0 +1,95 @@ >+<!DOCTYPE html> >+<html> >+<body> >+<script src="../../resources/js-test-pre.js"></script> >+<div id="container"> >+<div id="destination" onpaste="doPaste(event)" contenteditable>3. Paste here</div> >+</div> >+<script> >+ >+description('This tests getData strips away secrets and dangerous code when copying HTML in a regular origin and pasting inside a null origin document.'); >+jsTestIsAsync = true; >+ >+if (window.internals) >+ internals.settings.setCustomPasteboardDataEnabled(true); >+ >+const iframe = document.createElement('iframe'); >+document.getElementById('container').prepend(iframe); >+iframe.src = `data:text/html;charset=utf-8,<!DOCTYPE html> >+<button id="copy" onclick="runTest()">1. Copy</button> >+<div><br></div> >+<div id="source" oncopy="doCopy(event)" contenteditable>some text</div> >+<div id="destination" onpaste="doPaste(event)" contenteditable>2. Paste here</div> >+<script> >+ >+const originalHTML = '<meta content="secret"><b onmouseover="dangerousCode()">hello</b><!-- secret-->, world<script>dangerousCode()</scr' + 'ipt>'; >+ >+function runTest() { >+ document.getElementById('source').focus(); >+ document.execCommand('selectAll'); >+ document.execCommand('copy'); >+} >+ >+function doCopy(event) { >+ event.clipboardData.setData('text/html', originalHTML); >+ event.preventDefault(); >+ setTimeout(() => { >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+ }, 0); >+}; >+ >+function doPaste(event) { >+ event.preventDefault(); >+ parent.postMessage({ >+ originalHTML, >+ html: event.clipboardData.getData('text/html'), >+ types: event.clipboardData.types, >+ items: Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})), >+ }, '*'); >+}; >+ >+document.getElementById('destination').focus(); >+if (window.testRunner) >+ runTest(); >+ document.execCommand('paste'); >+ >+</scri` + 'pt>'; >+ >+function doCopy(event) { >+ event.clipboardData.setData('text/html', originalHTML); >+ event.preventDefault(); >+} >+ >+onmessage = (event) => { >+ typesInSameDocument = event.data.types; >+ shouldBeEqualToString('JSON.stringify(typesInSameDocument)', '["text/html"]'); >+ htmlInSameDocument = event.data.html; >+ originalHTML = event.data.originalHTML; >+ shouldBeEqualToString('htmlInSameDocument', originalHTML); >+ >+ itemsInSameDocument = event.data.items; >+ shouldBeEqualToString('JSON.stringify(itemsInSameDocument)', '[{"kind":"string","type":"text/html"}]'); >+ >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+} >+ >+function doPaste(event) { >+ htmlInAnotherDocument = event.clipboardData.getData("text/html"); >+ shouldBeFalse('htmlInAnotherDocument.includes("secret")'); >+ shouldBeFalse('htmlInAnotherDocument.includes("dangerousCode")'); >+ shouldBeEqualToString('b = (new DOMParser).parseFromString(htmlInAnotherDocument, "text/html").querySelector("b"); b.textContent', 'hello'); >+ shouldBeEqualToString('b.parentNode.textContent', 'hello, world'); >+ document.getElementById('container').remove(); >+ finishJSTest(); >+} >+ >+successfullyParsed = true; >+ >+</script> >+<script src="../../resources/js-test-post.js"></script> >+</body> >+</html> >diff --git a/LayoutTests/editing/pasteboard/onpaste-text-html-expected.txt b/LayoutTests/editing/pasteboard/onpaste-text-html-expected.txt >index 8c45c64d780abd1e64e94901ac596e4de5bcf0d3..2801f4c31ea48aee44f5976f78b449c68b6fca5a 100644 >--- a/LayoutTests/editing/pasteboard/onpaste-text-html-expected.txt >+++ b/LayoutTests/editing/pasteboard/onpaste-text-html-expected.txt >@@ -1,5 +1,5 @@ > CONSOLE MESSAGE: line 21: text/plain: This test verifies that we can get text/html from the clipboard during an onpaste event. >-CONSOLE MESSAGE: line 23: text/html: <span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-size: medium; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none;">This test verifies that we can get text/html from the clipboard during an onpaste event.<span class="Apple-converted-space"> </span></span> >+CONSOLE MESSAGE: line 23: text/html: <span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; float: none; display: inline !important;">This test verifies that we can get text/html from the clipboard during an onpaste event.<span class="Apple-converted-space"> </span></span> > This test verifies that we can get text/html from the clipboard during an onpaste event. This test requires DRT. > Paste content in this div.This test verifies that we can get text/html from the clipboard during an onpaste event. > PASS >diff --git a/LayoutTests/fast/events/ondrop-text-html-expected.txt b/LayoutTests/fast/events/ondrop-text-html-expected.txt >index 47616bcc548af879eb1247c08f8c6092440b2757..b3eb51b4336154e827f8cc773a63132725e736f1 100644 >--- a/LayoutTests/fast/events/ondrop-text-html-expected.txt >+++ b/LayoutTests/fast/events/ondrop-text-html-expected.txt >@@ -1,4 +1,4 @@ > CONSOLE MESSAGE: line 21: text/plain: This test verifies that we can get text/html from the drag object during an ondrop event. >-CONSOLE MESSAGE: line 23: text/html: <span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-size: medium; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none;">This test verifies that we can get text/html from the drag object during an ondrop event.<span class="Apple-converted-space"> </span></span> >+CONSOLE MESSAGE: line 23: text/html: <span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; float: none; display: inline !important;">This test verifies that we can get text/html from the drag object during an ondrop event.<span class="Apple-converted-space"> </span></span> > This test verifies that we can get text/html from the drag object during an ondrop event. This test requires DRT. > PASS >diff --git a/LayoutTests/http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html-expected.txt b/LayoutTests/http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..1e8454242b42cfd5f630acfcd08f3a04ab61b9b2 >--- /dev/null >+++ b/LayoutTests/http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html-expected.txt >@@ -0,0 +1,18 @@ >+This tests calling setData with a HTML in a null origin document. The HTML should be sanitized in another document >+ >+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". >+ >+ >+PASS htmlReadInSameDocument is "\n <meta content=\"secret\"><b onmouseover=\"dangerousCode()\">hello</b><!-- secret-->, world\n <script>function dangerousCode() { }</script>\n" >+PASS JSON.stringify(typesInSameDocument) is "[\"text/html\"]" >+PASS JSON.stringify(itemsInSameDocument) is "[{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS html = event.clipboardData.getData("text/html"); html.includes("hello") is true >+PASS html.includes(", world") is true >+PASS html.includes("secret") is false >+PASS html.includes("dangerousCode") is false >+PASS JSON.stringify(event.clipboardData.types) is "[\"text/html\"]" >+PASS JSON.stringify(Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type}))) is "[{\"kind\":\"string\",\"type\":\"text/html\"}]" >+PASS successfullyParsed is true >+ >+TEST COMPLETE >+ >diff --git a/LayoutTests/http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html.html b/LayoutTests/http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html.html >new file mode 100644 >index 0000000000000000000000000000000000000000..996b0a2c4a4f38436b96b6f63e0e842a0ccd2e6b >--- /dev/null >+++ b/LayoutTests/http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html.html >@@ -0,0 +1,43 @@ >+<!DOCTYPE html> >+<html> >+<body> >+<script src="/resources/js-test-pre.js"></script> >+<script> >+ >+description('This tests calling setData with a HTML in a null origin document. The HTML should be sanitized in another document'); >+jsTestIsAsync = true; >+ >+if (window.internals) >+ internals.settings.setCustomPasteboardDataEnabled(true); >+ >+onmessage = (event) => { >+ originalHTML = event.data.originalHTML; >+ htmlReadInSameDocument = event.data.html; >+ shouldBeEqualToString('htmlReadInSameDocument', originalHTML); >+ typesInSameDocument = event.data.types; >+ shouldBeEqualToString('JSON.stringify(typesInSameDocument)', '["text/html"]'); >+ itemsInSameDocument = event.data.items; >+ shouldBeEqualToString('JSON.stringify(itemsInSameDocument)', '[{"kind":"string","type":"text/html"}]'); >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+} >+ >+function doPaste(event) { >+ shouldBeTrue('html = event.clipboardData.getData("text/html"); html.includes("hello")'); >+ shouldBeTrue('html.includes(", world")'); >+ shouldBeFalse('html.includes("secret")'); >+ shouldBeFalse('html.includes("dangerousCode")'); >+ shouldBeEqualToString('JSON.stringify(event.clipboardData.types)', '["text/html"]'); >+ shouldBeEqualToString('JSON.stringify(Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})))', >+ '[{"kind":"string","type":"text/html"}]'); >+ document.getElementById('destination').remove(); >+ finishJSTest(); >+} >+ >+</script> >+<iframe src="http://localhost:8000/security/clipboard/resources/copy-html.html"></iframe> >+<div id="destination" onpaste="doPaste(event)" contenteditable>3. Paste here</div> >+<script src="/resources/js-test-post.js"></script> >+</body> >+</html> >diff --git a/LayoutTests/http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url.html b/LayoutTests/http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url.html >index 87d5f94f6567f76ace52d4f61b7f50857a0fc92e..56423c38ebf49436c26afbf0d591f2dc61d9f6ee 100644 >--- a/LayoutTests/http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url.html >+++ b/LayoutTests/http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url.html >@@ -33,7 +33,7 @@ function doPaste(event) { > } > > </script> >-<iframe src="http://localhost:8000/security/clipboard/resources/copy.html"></iframe> >+<iframe src="http://localhost:8000/security/clipboard/resources/copy-url.html"></iframe> > <div id="destination" onpaste="doPaste(event)" contenteditable>3. Paste here</div> > <script src="/resources/js-test-post.js"></script> > </body> >diff --git a/LayoutTests/http/tests/security/clipboard/resources/copy-html.html b/LayoutTests/http/tests/security/clipboard/resources/copy-html.html >new file mode 100644 >index 0000000000000000000000000000000000000000..f51bb4c8307547d24502be73ea6070cd64b48ef4 >--- /dev/null >+++ b/LayoutTests/http/tests/security/clipboard/resources/copy-html.html >@@ -0,0 +1,42 @@ >+<!DOCTYPE html> >+<html> >+<body> >+<button onclick="runTest()">1. Copy</button> >+<div><br></div> >+<div id="source" oncopy="copy(event)" contenteditable> >+ <meta content="secret"><b onmouseover="dangerousCode()">hello</b><!-- secret-->, world >+ <script>function dangerousCode() { }</script> >+</div> >+<div id="destination" onpaste="paste(event)" contenteditable>2. Paste here</div> >+<script> >+ >+const originalHTML = document.getElementById('source').innerHTML; >+function copy(event) { >+ event.clipboardData.setData('text/html', originalHTML); >+ event.preventDefault(); >+} >+ >+function paste(event) { >+ parent.postMessage({ >+ originalHTML, >+ html: event.clipboardData.getData('text/html'), >+ types: event.clipboardData.types, >+ items: Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})), >+ }, '*'); >+} >+ >+function runTest() { >+ document.getElementById('source').focus(); >+ document.execCommand('selectAll'); >+ document.execCommand('copy'); >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+} >+ >+if (window.testRunner) >+ runTest(); >+ >+</script> >+</body> >+</html> >diff --git a/LayoutTests/http/tests/security/clipboard/resources/copy-url.html b/LayoutTests/http/tests/security/clipboard/resources/copy-url.html >new file mode 100644 >index 0000000000000000000000000000000000000000..23682474266edc1383e59db53e4c1055871d3897 >--- /dev/null >+++ b/LayoutTests/http/tests/security/clipboard/resources/copy-url.html >@@ -0,0 +1,39 @@ >+<!DOCTYPE html> >+<html> >+<body> >+<button onclick="runTest()">1. Copy</button> >+<div><br></div> >+<div id="source" oncopy="copy(event)" contenteditable>http://webkit.org/b/🤔?x=8 + 6</div> >+<div id="destination" onpaste="paste(event)" contenteditable>2. Paste here</div> >+<script> >+ >+const originalURL = document.getElementById('source').textContent; >+function copy(event) { >+ event.clipboardData.setData('url', originalURL); >+ event.preventDefault(); >+} >+ >+function paste(event) { >+ parent.postMessage({ >+ originalURL, >+ url: event.clipboardData.getData('url'), >+ types: event.clipboardData.types, >+ items: Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})), >+ }, '*'); >+} >+ >+function runTest() { >+ document.getElementById('source').focus(); >+ document.execCommand('selectAll'); >+ document.execCommand('copy'); >+ document.getElementById('destination').focus(); >+ if (window.testRunner) >+ document.execCommand('paste'); >+} >+ >+if (window.testRunner) >+ runTest(); >+ >+</script> >+</body> >+</html> >diff --git a/LayoutTests/http/tests/security/clipboard/resources/copy.html b/LayoutTests/http/tests/security/clipboard/resources/copy.html >deleted file mode 100644 >index 23682474266edc1383e59db53e4c1055871d3897..0000000000000000000000000000000000000000 >--- a/LayoutTests/http/tests/security/clipboard/resources/copy.html >+++ /dev/null >@@ -1,39 +0,0 @@ >-<!DOCTYPE html> >-<html> >-<body> >-<button onclick="runTest()">1. Copy</button> >-<div><br></div> >-<div id="source" oncopy="copy(event)" contenteditable>http://webkit.org/b/🤔?x=8 + 6</div> >-<div id="destination" onpaste="paste(event)" contenteditable>2. Paste here</div> >-<script> >- >-const originalURL = document.getElementById('source').textContent; >-function copy(event) { >- event.clipboardData.setData('url', originalURL); >- event.preventDefault(); >-} >- >-function paste(event) { >- parent.postMessage({ >- originalURL, >- url: event.clipboardData.getData('url'), >- types: event.clipboardData.types, >- items: Array.from(event.clipboardData.items).map((item) => ({kind: item.kind, type: item.type})), >- }, '*'); >-} >- >-function runTest() { >- document.getElementById('source').focus(); >- document.execCommand('selectAll'); >- document.execCommand('copy'); >- document.getElementById('destination').focus(); >- if (window.testRunner) >- document.execCommand('paste'); >-} >- >-if (window.testRunner) >- runTest(); >- >-</script> >-</body> >-</html> >diff --git a/LayoutTests/platform/ios-wk1/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt b/LayoutTests/platform/ios-wk1/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt >deleted file mode 100644 >index b3de879f11181272c558f3ab0bba04356090399f..0000000000000000000000000000000000000000 >--- a/LayoutTests/platform/ios-wk1/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt >+++ /dev/null >@@ -1,7 +0,0 @@ >-Rich text >-{ >- "paste": { >- "text/plain": "Rich text", >- "text/html": "<span style=\"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: -apple-system; font-size: 150px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: nowrap; widows: auto; word-spacing: 0px; -webkit-tap-highlight-color: rgba(26, 26, 26, 0.301961); -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none;\">Rich text</span>" >- } >-} >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt >deleted file mode 100644 >index 263144b6cbcd40b96ab5deabdbe301f664ae32e1..0000000000000000000000000000000000000000 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt >+++ /dev/null >@@ -1,7 +0,0 @@ >-Rich text >-{ >- "paste": { >- "text/plain": "Rich text", >- "text/html": "<span style=\"caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: -apple-system; font-size: 150px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: nowrap; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; display: inline !important; float: none;\">Rich text</span>" >- } >-} >diff --git a/LayoutTests/platform/mac-wk1/TestExpectations b/LayoutTests/platform/mac-wk1/TestExpectations >index 5478bb7fcbd185a24f39c290e9dbe62f6abff495..ad0cf8dd0eec6fd56402f356ffbe73136cc7f1f4 100644 >--- a/LayoutTests/platform/mac-wk1/TestExpectations >+++ b/LayoutTests/platform/mac-wk1/TestExpectations >@@ -12,6 +12,7 @@ editing/pasteboard/data-transfer-get-data-on-drop-plain-text.html [ Pass ] > editing/pasteboard/data-transfer-get-data-on-drop-rich-text.html [ Pass ] > editing/pasteboard/data-transfer-get-data-on-drop-url.html [ Pass ] > editing/pasteboard/data-transfer-is-unique-for-dragenter-and-dragleave.html [ Pass ] >+editing/pasteboard/data-transfer-set-data-sanitize-html-when-dragging-in-null-origin.html [ Pass ] > editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html [ Pass ] > editing/pasteboard/drag-end-crash-accessing-item-list.html [ Pass ] > editing/pasteboard/data-transfer-item-list-add-file-on-drag.html [ Pass ]
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 124391
:
217003
|
299902
|
299904
|
299912
|
299914
|
323624
|
323648
|
323649
|
323654
|
323682
|
323709
|
323716
|
323721
|
323769
|
323773
|
323774
|
323798
|
323853
|
323885
|
323886
|
323888
|
332098