Diff
Modified: trunk/Source/WebKit2/ChangeLog (192485 => 192486)
--- trunk/Source/WebKit2/ChangeLog 2015-11-16 22:10:56 UTC (rev 192485)
+++ trunk/Source/WebKit2/ChangeLog 2015-11-16 22:38:20 UTC (rev 192486)
@@ -1,3 +1,51 @@
+2015-11-16 Beth Dakin <bda...@apple.com>
+
+ Add SPI for handling inline link navigation for peek/pop
+ https://bugs.webkit.org/show_bug.cgi?id=151270
+ -and corresponding-
+ rdar://problem/22233739
+
+ Reviewed by Darin Adler.
+
+ This patch adds three new SPI methods. If a client wants to disable previews
+ entirely for the given element, they should return NO in
+ shouldPreviewElement:. Returning NO in shouldPreviewElement will prevent the
+ other methods from being invoked. The client can provide a custom preview by
+ returning their own UIViewController from
+ previewingViewControllerForElement:defaultActions:. Returning nil will result
+ in the default preview behavior for that element. This will allow clients to
+ implement this method to handle http link navigation inline, but still opt
+ into UIKit’s built-in DataDetectors behaviors for DD links once we start
+ supporting DD links in WK2.
+ * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
+
+ Added linkURL to _WKElementInfo. linkURL will be nil for elements that are
+ not links.
+ * UIProcess/API/Cocoa/_WKElementInfo.h:
+ * UIProcess/API/Cocoa/_WKElementInfo.mm:
+ (-[_WKElementInfo copyWithZone:]):
+ (-[_WKElementInfo linkURL]):
+ * UIProcess/API/Cocoa/_WKElementInfoInternal.h: Added.
+
+ _WKPreviewingElementInfo inherits from _WKElementInfo. Added a constructor.
+ * UIProcess/API/Cocoa/_WKPreviewElementInfo.h: Added.
+ * UIProcess/API/Cocoa/_WKPreviewElementInfo.mm: Added.
+ (-[_WKPreviewElementInfo _initWithLinkURL:]):
+ * UIProcess/API/Cocoa/_WKPreviewElementInfoInternal.h: Added.
+
+ Invoke shouldPreviewElement:.
+ * UIProcess/ios/WKContentViewInteraction.mm:
+ (-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]):
+
+ Invoke previewingViewControllerForElement: for all potentially preview-able
+ elements that have a default implementations, which will be limited to links
+ at this time.
+ (-[WKContentView _presentedViewControllerForPreviewItemController:]):
+
+ Invoke commitPreviewingViewController:
+ (-[WKContentView _previewItemController:commitPreview:]):
+ * WebKit2.xcodeproj/project.pbxproj:
+
2015-11-16 Anders Carlsson <ander...@apple.com>
Add identifier strings for a bunch of context menu items
Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKUIDelegatePrivate.h (192485 => 192486)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKUIDelegatePrivate.h 2015-11-16 22:10:56 UTC (rev 192485)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKUIDelegatePrivate.h 2015-11-16 22:38:20 UTC (rev 192486)
@@ -30,12 +30,14 @@
#import <WebKit/WKSecurityOrigin.h>
#import <WebKit/_WKActivatedElementInfo.h>
+@class UIPreviewActionItem;
@class UIScrollView;
@class UIViewController;
@class _WKContextMenuElementInfo;
@class _WKActivatedElementInfo;
@class _WKElementAction;
@class _WKFrameHandle;
+@class _WKPreviewElementInfo;
@protocol WKUIDelegatePrivate <WKUIDelegate>
@@ -72,6 +74,15 @@
- (UIEdgeInsets)_webView:(WKWebView *)webView finalObscuredInsetsForScrollView:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset WK_AVAILABLE(NA, 9_0);
- (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForURL:(NSURL *)url defaultActions:(WK_ARRAY(_WKElementAction *) *)actions elementInfo:(_WKActivatedElementInfo *)elementInfo WK_AVAILABLE(NA, 9_0);
- (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForAnimatedImageAtURL:(NSURL *)url defaultActions:(WK_ARRAY(_WKElementAction *) *)actions elementInfo:(_WKActivatedElementInfo *)elementInfo imageSize:(CGSize)imageSize WK_AVAILABLE(NA, 9_0);
+
+// If a client wants to disable previews entirely for the given element, they should return NO in
+// shouldPreviewElement. Returning NO in shouldPreviewElement will prevent the other methods from being invoked.
+// The client can provide a custom preview by returning their own UIViewController from
+// previewingViewControllerForElement:defaultActions:. Returning nil will result in the default preview behavior
+// for that element.
+- (BOOL)_webView:(WKWebView *)webView shouldPreviewElement:(_WKPreviewElementInfo *)elementInfo;
+- (UIViewController *)_webView:(WKWebView *)webView previewingViewControllerForElement:(_WKPreviewElementInfo *)elementInfo defaultActions:(NSArray<UIPreviewActionItem *> *)previewActions WK_AVAILABLE(NA, WK_IOS_TBA);
+- (void)_webView:(WKWebView *)webView commitPreviewingViewController:(UIViewController *)previewingViewController WK_AVAILABLE(NA, WK_IOS_TBA);
#else
- (NSMenu *)_webView:(WKWebView *)webView contextMenu:(NSMenu *)menu forElement:(_WKContextMenuElementInfo *)element WK_AVAILABLE(WK_MAC_TBA, NA);
- (NSMenu *)_webView:(WKWebView *)webView contextMenu:(NSMenu *)menu forElement:(_WKContextMenuElementInfo *)element userInfo:(id <NSSecureCoding>)userInfo WK_AVAILABLE(WK_MAC_TBA, NA);
Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfo.h (192485 => 192486)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfo.h 2015-11-16 22:10:56 UTC (rev 192485)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfo.h 2015-11-16 22:38:20 UTC (rev 192486)
@@ -32,6 +32,8 @@
WK_CLASS_AVAILABLE(WK_MAC_TBA, WK_IOS_TBA)
@interface _WKElementInfo : NSObject <NSCopying>
+@property (nonatomic, readonly) NSURL *linkURL;
+
@end
WK_ASSUME_NONNULL_END
Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfo.mm (192485 => 192486)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfo.mm 2015-11-16 22:10:56 UTC (rev 192485)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfo.mm 2015-11-16 22:38:20 UTC (rev 192486)
@@ -23,8 +23,8 @@
* THE POSSIBILITY OF SUCH DAMAGE.
*/
-#include "config.h"
-#include "_WKElementInfo.h"
+#import "config.h"
+#import "_WKElementInfoInternal.h"
#if WK_API_ENABLED
@@ -35,6 +35,11 @@
return [self retain];
}
+- (NSURL *)linkURL
+{
+ return _linkURL.get();
+}
+
@end
#endif
Added: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfoInternal.h (0 => 192486)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfoInternal.h (rev 0)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementInfoInternal.h 2015-11-16 22:38:20 UTC (rev 192486)
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2015 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.
+ */
+
+#import "_WKElementInfo.h"
+
+#import <wtf/RetainPtr.h>
+
+#if WK_API_ENABLED
+
+@interface _WKElementInfo () {
+@package
+ RetainPtr<NSURL> _linkURL;
+}
+
+@end
+
+#endif // WK_API_ENABLED
Added: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfo.h (0 => 192486)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfo.h (rev 0)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfo.h 2015-11-16 22:38:20 UTC (rev 192486)
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2015 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.
+ */
+
+#import <WebKit/WKFoundation.h>
+
+#if WK_API_ENABLED && TARGET_OS_IPHONE
+
+#import <WebKit/_WKElementInfo.h>
+
+WK_ASSUME_NONNULL_BEGIN
+
+WK_CLASS_AVAILABLE(NA, WK_IOS_TBA)
+@interface _WKPreviewElementInfo : _WKElementInfo
+
+@end
+
+WK_ASSUME_NONNULL_END
+
+#endif
Added: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfo.mm (0 => 192486)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfo.mm (rev 0)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfo.mm 2015-11-16 22:38:20 UTC (rev 192486)
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2015 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.
+ */
+
+#import "config.h"
+#import "_WKPreviewElementInfoInternal.h"
+
+#import "_WKElementInfoInternal.h"
+#import <wtf/RetainPtr.h>
+
+#if WK_API_ENABLED && PLATFORM(IOS)
+
+@implementation _WKPreviewElementInfo
+
+- (instancetype)_initWithLinkURL:(NSURL *)url
+{
+ if (!(self = [super init]))
+ return nil;
+
+ _linkURL = adoptNS([url copy]);
+
+ return self;
+}
+
+@end
+
+#endif
Added: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfoInternal.h (0 => 192486)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfoInternal.h (rev 0)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKPreviewElementInfoInternal.h 2015-11-16 22:38:20 UTC (rev 192486)
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2015 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.
+ */
+
+#import "_WKPreviewElementInfo.h"
+
+#if WK_API_ENABLED && TARGET_OS_IPHONE
+
+@interface _WKPreviewElementInfo ()
+
+- (instancetype)_initWithLinkURL:(NSURL *)url;
+
+@end
+
+#endif // WK_API_ENABLED
Modified: trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm (192485 => 192486)
--- trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm 2015-11-16 22:10:56 UTC (rev 192485)
+++ trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm 2015-11-16 22:38:20 UTC (rev 192486)
@@ -56,6 +56,7 @@
#import "_WKFocusedElementInfo.h"
#import "_WKFormInputSession.h"
#import "_WKInputDelegate.h"
+#import "_WKPreviewElementInfoInternal.h"
#import <CoreText/CTFont.h>
#import <CoreText/CTFontDescriptor.h>
#import <MobileCoreServices/UTCoreTypes.h>
@@ -3478,11 +3479,16 @@
String absoluteLinkURL = _positionInformation.url;
if (_positionInformation.isLink) {
+ NSURL *targetURL = [NSURL _web_URLWithWTFString:_positionInformation.url];
+ id <WKUIDelegatePrivate> uiDelegate = static_cast<id <WKUIDelegatePrivate>>([_webView UIDelegate]);
+ if ([uiDelegate respondsToSelector:@selector(_webView:shouldPreviewElement:)]) {
+ auto previewElementInfo = adoptNS([[_WKPreviewElementInfo alloc] _initWithLinkURL:targetURL]);
+ return [uiDelegate _webView:_webView shouldPreviewElement:previewElementInfo.get()];
+ }
if (absoluteLinkURL.isEmpty())
return NO;
if (WebCore::protocolIsInHTTPFamily(absoluteLinkURL))
return YES;
- NSURL *targetURL = [NSURL _web_URLWithWTFString:_positionInformation.url];
if ([[getDDDetectionControllerClass() tapAndHoldSchemes] containsObject:[targetURL scheme]])
return YES;
return NO;
@@ -3561,6 +3567,12 @@
RetainPtr<_WKActivatedElementInfo> elementInfo = adoptNS([[_WKActivatedElementInfo alloc] _initWithType:_WKActivatedElementTypeLink URL:targetURL location:_positionInformation.point title:_positionInformation.title rect:_positionInformation.bounds image:_positionInformation.image.get()]);
RetainPtr<NSArray> actions = [_actionSheetAssistant defaultActionsForLinkSheet:elementInfo.get()];
+ if ([uiDelegate respondsToSelector:@selector(_webView:previewingViewControllerForElement:defaultActions:)]) {
+ auto previewElementInfo = adoptNS([[_WKPreviewElementInfo alloc] _initWithLinkURL:targetURL]);
+ if (UIViewController *controller = [uiDelegate _webView:_webView previewingViewControllerForElement:previewElementInfo.get() defaultActions:actions.get()])
+ return controller;
+ }
+
if ([uiDelegate respondsToSelector:@selector(_webView:previewViewControllerForURL:defaultActions:elementInfo:)])
return [uiDelegate _webView:_webView previewViewControllerForURL:targetURL defaultActions:actions.get() elementInfo:elementInfo.get()];
@@ -3598,6 +3610,11 @@
return;
}
+ if ([uiDelegate respondsToSelector:@selector(_webView:commitPreviewingViewController:)]) {
+ [uiDelegate _webView:_webView commitPreviewingViewController:viewController];
+ return;
+ }
+
if ([uiDelegate respondsToSelector:@selector(_webView:commitPreviewedViewController:)]) {
[uiDelegate _webView:_webView commitPreviewedViewController:viewController];
return;
Modified: trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj (192485 => 192486)
--- trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj 2015-11-16 22:10:56 UTC (rev 192485)
+++ trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj 2015-11-16 22:38:20 UTC (rev 192486)
@@ -1230,8 +1230,12 @@
935EEBA2127761D0003322B8 /* InjectedBundleBackForwardList.h in Headers */ = {isa = PBXBuildFile; fileRef = 935EEB901277615D003322B8 /* InjectedBundleBackForwardList.h */; };
935EEBA3127761D3003322B8 /* InjectedBundleBackForwardListItem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 935EEB911277615D003322B8 /* InjectedBundleBackForwardListItem.cpp */; };
935EEBA4127761D6003322B8 /* InjectedBundleBackForwardListItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 935EEB921277615D003322B8 /* InjectedBundleBackForwardListItem.h */; };
+ 9391074F1BF6BC65008C17AD /* _WKPreviewElementInfoInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 9391074E1BF6BC65008C17AD /* _WKPreviewElementInfoInternal.h */; };
9391F2CA121B679A00EBF7E8 /* WebFrameNetworkingContext.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9391F284121B38F500EBF7E8 /* WebFrameNetworkingContext.mm */; };
9391F2CB121B67AD00EBF7E8 /* WebFrameNetworkingContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 9391F283121B38F500EBF7E8 /* WebFrameNetworkingContext.h */; };
+ 9395E68A1BF2C33200F49BCE /* _WKPreviewElementInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 9395E6891BF2C33200F49BCE /* _WKPreviewElementInfo.h */; settings = {ATTRIBUTES = (Private, ); }; };
+ 9395E68C1BF2C35200F49BCE /* _WKPreviewElementInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9395E68B1BF2C35200F49BCE /* _WKPreviewElementInfo.mm */; };
+ 9395E68E1BF410FD00F49BCE /* _WKElementInfoInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 9395E68D1BF410FD00F49BCE /* _WKElementInfoInternal.h */; };
939AE7661316E99C00AE06A6 /* WebCoreArgumentCoders.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 939AE7651316E99C00AE06A6 /* WebCoreArgumentCoders.cpp */; };
939F401C19FB0BBC002B2B42 /* WKActionMenuTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 939F401B19FB0BBC002B2B42 /* WKActionMenuTypes.h */; settings = {ATTRIBUTES = (Private, ); }; };
93A88B301BC6E99700ABA5C2 /* WebHitTestResultData.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93A88B2E1BC6E98F00ABA5C2 /* WebHitTestResultData.mm */; };
@@ -3475,8 +3479,12 @@
935EEB961277616D003322B8 /* WKBundleBackForwardList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBundleBackForwardList.h; sourceTree = "<group>"; };
935EEB971277616D003322B8 /* WKBundleBackForwardListItem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKBundleBackForwardListItem.cpp; sourceTree = "<group>"; };
935EEB981277616D003322B8 /* WKBundleBackForwardListItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBundleBackForwardListItem.h; sourceTree = "<group>"; };
+ 9391074E1BF6BC65008C17AD /* _WKPreviewElementInfoInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKPreviewElementInfoInternal.h; sourceTree = "<group>"; };
9391F283121B38F500EBF7E8 /* WebFrameNetworkingContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebFrameNetworkingContext.h; sourceTree = "<group>"; };
9391F284121B38F500EBF7E8 /* WebFrameNetworkingContext.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebFrameNetworkingContext.mm; sourceTree = "<group>"; };
+ 9395E6891BF2C33200F49BCE /* _WKPreviewElementInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKPreviewElementInfo.h; sourceTree = "<group>"; };
+ 9395E68B1BF2C35200F49BCE /* _WKPreviewElementInfo.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = _WKPreviewElementInfo.mm; sourceTree = "<group>"; };
+ 9395E68D1BF410FD00F49BCE /* _WKElementInfoInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKElementInfoInternal.h; sourceTree = "<group>"; };
939AE7651316E99C00AE06A6 /* WebCoreArgumentCoders.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebCoreArgumentCoders.cpp; sourceTree = "<group>"; };
939F401B19FB0BBC002B2B42 /* WKActionMenuTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKActionMenuTypes.h; sourceTree = "<group>"; };
93A88B2E1BC6E98F00ABA5C2 /* WebHitTestResultData.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebHitTestResultData.mm; sourceTree = "<group>"; };
@@ -5394,6 +5402,7 @@
379A873B18BBFF0700588AF2 /* _WKElementActionInternal.h */,
1A5704F01BE0173F00874AF1 /* _WKElementInfo.h */,
1A5704EF1BE0173F00874AF1 /* _WKElementInfo.mm */,
+ 9395E68D1BF410FD00F49BCE /* _WKElementInfoInternal.h */,
1AD01BC71905D37E00C9C45F /* _WKErrorRecoveryAttempting.h */,
1AD01BC61905D37E00C9C45F /* _WKErrorRecoveryAttempting.mm */,
005D158E18E4C4EB00734619 /* _WKFindDelegate.h */,
@@ -5404,6 +5413,9 @@
37A64E5418F38E3C00EB30F1 /* _WKInputDelegate.h */,
2D790A9C1AD7050D00AB90B3 /* _WKLayoutMode.h */,
9323611D1B015DA800FA9232 /* _WKOverlayScrollbarStyle.h */,
+ 9395E6891BF2C33200F49BCE /* _WKPreviewElementInfo.h */,
+ 9395E68B1BF2C35200F49BCE /* _WKPreviewElementInfo.mm */,
+ 9391074E1BF6BC65008C17AD /* _WKPreviewElementInfoInternal.h */,
1A43E828188F3CDC009E4D30 /* _WKProcessPoolConfiguration.h */,
1A43E827188F3CDC009E4D30 /* _WKProcessPoolConfiguration.mm */,
7C89D2D61A6C6BE6003A5FDE /* _WKProcessPoolConfigurationInternal.h */,
@@ -7706,6 +7718,7 @@
7C1BA33E1A4A0E600043E249 /* APIDictionary.h in Headers */,
1F7D36C118DA513F00D9D659 /* APIDownloadClient.h in Headers */,
516A4A5D120A2CCD00C05B7F /* APIError.h in Headers */,
+ 9395E68E1BF410FD00F49BCE /* _WKElementInfoInternal.h in Headers */,
00B9661618E24CBA00CE1F88 /* APIFindClient.h in Headers */,
2DD67A2E1BD819730053B251 /* APIFindMatchesClient.h in Headers */,
37E25D6E18FDE5D6005D3A00 /* APIFormClient.h in Headers */,
@@ -7884,6 +7897,7 @@
1AA5889211EE70400061B882 /* NetscapePluginStream.h in Headers */,
E1798C7A16E6818800240139 /* NetworkBlobRegistry.h in Headers */,
E4436ECC1A0D040B00EAD204 /* NetworkCache.h in Headers */,
+ 9395E68A1BF2C33200F49BCE /* _WKPreviewElementInfo.h in Headers */,
E49D40D71AD3FB170066B7B9 /* NetworkCacheBlobStorage.h in Headers */,
E489D28A1A0A2DB80078C06A /* NetworkCacheCoder.h in Headers */,
E489D28C1A0A2DB80078C06A /* NetworkCacheCoders.h in Headers */,
@@ -8240,6 +8254,7 @@
939F401C19FB0BBC002B2B42 /* WKActionMenuTypes.h in Headers */,
0FCB4E4818BBE044000FCFC9 /* WKActionSheet.h in Headers */,
0FCB4E4A18BBE044000FCFC9 /* WKActionSheetAssistant.h in Headers */,
+ 9391074F1BF6BC65008C17AD /* _WKPreviewElementInfoInternal.h in Headers */,
C5FA1ED318E1062200B3F402 /* WKAirPlayRoutePicker.h in Headers */,
BCDDB32D124EC2E10048D13C /* WKAPICast.h in Headers */,
512E34E5130B4D0500ABD19A /* WKApplicationCacheManager.h in Headers */,
@@ -9817,6 +9832,7 @@
E1CC1B9112D7EADF00625838 /* PrintInfoMac.mm in Sources */,
37716A5A195B910500EE8B1B /* ProcessAssertion.cpp in Sources */,
86F9536418FF583C001DB2EF /* ProcessAssertionIOS.mm in Sources */,
+ 9395E68C1BF2C35200F49BCE /* _WKPreviewElementInfo.mm in Sources */,
1AE117F611DBB30900981615 /* ProcessLauncher.cpp in Sources */,
BC111B1D112F5FE600337BAB /* ProcessLauncherMac.mm in Sources */,
86E67A261910B9D900004AB7 /* ProcessThrottler.cpp in Sources */,