<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[182442] trunk/Source/WebKit2</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/182442">182442</a></dd>
<dt>Author</dt> <dd>beidson@apple.com</dd>
<dt>Date</dt> <dd>2015-04-06 15:33:57 -0700 (Mon, 06 Apr 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Combine ActionMenuHitTestResult with WebHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=143444

Reviewed by Beth Dakin.

* Shared/mac/ActionMenuHitTestResult.h: Removed.
* Shared/mac/ActionMenuHitTestResult.mm: Removed.

* Shared/WebHitTestResult.cpp:
(WebKit::WebHitTestResult::Data::Data):
(WebKit::WebHitTestResult::Data::encode):
(WebKit::WebHitTestResult::Data::decode):
(WebKit::WebHitTestResult::Data::platformEncode):
(WebKit::WebHitTestResult::Data::platformDecode):
* Shared/WebHitTestResult.h:
* Shared/mac/WebHitTestResult.mm: Added.
(WebKit::WebHitTestResult::Data::platformEncode):
(WebKit::WebHitTestResult::Data::platformDecode):

* UIProcess/API/mac/WKView.mm:
(-[WKView _didPerformActionMenuHitTest:forImmediateAction:contentPreventsDefault:userData:]):
(-[WKView _didPerformActionMenuHitTest:forImmediateAction:userData:]): Deleted.
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didPerformActionMenuHitTest):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::didPerformActionMenuHitTest):
* UIProcess/mac/WKActionMenuController.h:
* UIProcess/mac/WKActionMenuController.mm:
(-[WKActionMenuController willDestroyView:]):
(-[WKActionMenuController _clearActionMenuState]):
(-[WKActionMenuController didPerformActionMenuHitTest:userData:]):
(-[WKActionMenuController _hitTestResultDataImage]):
(-[WKActionMenuController _defaultMenuItemsForImage]):
(-[WKActionMenuController _copyImage:]):
(-[WKActionMenuController _addImageToPhotos:]):
(-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
(-[WKActionMenuController _defaultMenuItemsForEditableTextWithSuggestions]):
(-[WKActionMenuController _defaultMenuItemsForDataDetectableLink]):
(-[WKActionMenuController _webHitTestResult]):
(-[WKActionMenuController _defaultMenuItems]):
(-[WKActionMenuController _hitTestResultImage]): Deleted.
* UIProcess/mac/WKImmediateActionController.h:
* UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController willDestroyView:]):
(-[WKImmediateActionController _clearImmediateActionState]):
(-[WKImmediateActionController didPerformActionMenuHitTest:contentPreventsDefault:userData:]):
(-[WKImmediateActionController immediateActionRecognizerDidUpdateAnimation:]):
(-[WKImmediateActionController _webHitTestResult]):
(-[WKImmediateActionController _defaultAnimationController]):
(-[WKImmediateActionController _updateImmediateActionItem]):
(-[WKImmediateActionController _menuItemForDataDetectedText]):
(-[WKImmediateActionController _animationControllerForText]):
(-[WKImmediateActionController didPerformActionMenuHitTest:userData:]): Deleted.
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::performActionMenuHitTestAtLocation):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharedWebHitTestResultcpp">trunk/Source/WebKit2/Shared/WebHitTestResult.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedWebHitTestResulth">trunk/Source/WebKit2/Shared/WebHitTestResult.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPImacWKViewmm">trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPImacWKViewInternalh">trunk/Source/WebKit2/UIProcess/API/mac/WKViewInternal.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessPageClienth">trunk/Source/WebKit2/UIProcess/PageClient.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageProxycpp">trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageProxyh">trunk/Source/WebKit2/UIProcess/WebPageProxy.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageProxymessagesin">trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacPageClientImplh">trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacPageClientImplmm">trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWKActionMenuControllerh">trunk/Source/WebKit2/UIProcess/mac/WKActionMenuController.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWKActionMenuControllermm">trunk/Source/WebKit2/UIProcess/mac/WKActionMenuController.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWKImmediateActionControllerh">trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWKImmediateActionControllermm">trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm</a></li>
<li><a href="#trunkSourceWebKit2WebKit2xcodeprojprojectpbxproj">trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPagemacWebPageMacmm">trunk/Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2SharedmacWebHitTestResultmm">trunk/Source/WebKit2/Shared/mac/WebHitTestResult.mm</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2SharedmacActionMenuHitTestResulth">trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.h</a></li>
<li><a href="#trunkSourceWebKit2SharedmacActionMenuHitTestResultmm">trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.mm</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/ChangeLog        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -1,3 +1,67 @@
</span><ins>+2015-04-06  Brady Eidson  &lt;beidson@apple.com&gt;
+
+        Combine ActionMenuHitTestResult with WebHitTestResult
+        https://bugs.webkit.org/show_bug.cgi?id=143444
+
+        Reviewed by Beth Dakin.
+
+        * Shared/mac/ActionMenuHitTestResult.h: Removed.
+        * Shared/mac/ActionMenuHitTestResult.mm: Removed.
+
+        * Shared/WebHitTestResult.cpp:
+        (WebKit::WebHitTestResult::Data::Data):
+        (WebKit::WebHitTestResult::Data::encode):
+        (WebKit::WebHitTestResult::Data::decode):
+        (WebKit::WebHitTestResult::Data::platformEncode):
+        (WebKit::WebHitTestResult::Data::platformDecode):
+        * Shared/WebHitTestResult.h:
+        * Shared/mac/WebHitTestResult.mm: Added.
+        (WebKit::WebHitTestResult::Data::platformEncode):
+        (WebKit::WebHitTestResult::Data::platformDecode):
+
+        * UIProcess/API/mac/WKView.mm:
+        (-[WKView _didPerformActionMenuHitTest:forImmediateAction:contentPreventsDefault:userData:]):
+        (-[WKView _didPerformActionMenuHitTest:forImmediateAction:userData:]): Deleted.
+        * UIProcess/API/mac/WKViewInternal.h:
+        * UIProcess/PageClient.h:
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::didPerformActionMenuHitTest):
+        * UIProcess/WebPageProxy.h:
+        * UIProcess/WebPageProxy.messages.in:
+        * UIProcess/mac/PageClientImpl.h:
+        * UIProcess/mac/PageClientImpl.mm:
+        (WebKit::PageClientImpl::didPerformActionMenuHitTest):
+        * UIProcess/mac/WKActionMenuController.h:
+        * UIProcess/mac/WKActionMenuController.mm:
+        (-[WKActionMenuController willDestroyView:]):
+        (-[WKActionMenuController _clearActionMenuState]):
+        (-[WKActionMenuController didPerformActionMenuHitTest:userData:]):
+        (-[WKActionMenuController _hitTestResultDataImage]):
+        (-[WKActionMenuController _defaultMenuItemsForImage]):
+        (-[WKActionMenuController _copyImage:]):
+        (-[WKActionMenuController _addImageToPhotos:]):
+        (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
+        (-[WKActionMenuController _defaultMenuItemsForEditableTextWithSuggestions]):
+        (-[WKActionMenuController _defaultMenuItemsForDataDetectableLink]):
+        (-[WKActionMenuController _webHitTestResult]):
+        (-[WKActionMenuController _defaultMenuItems]):
+        (-[WKActionMenuController _hitTestResultImage]): Deleted.
+        * UIProcess/mac/WKImmediateActionController.h:
+        * UIProcess/mac/WKImmediateActionController.mm:
+        (-[WKImmediateActionController willDestroyView:]):
+        (-[WKImmediateActionController _clearImmediateActionState]):
+        (-[WKImmediateActionController didPerformActionMenuHitTest:contentPreventsDefault:userData:]):
+        (-[WKImmediateActionController immediateActionRecognizerDidUpdateAnimation:]):
+        (-[WKImmediateActionController _webHitTestResult]):
+        (-[WKImmediateActionController _defaultAnimationController]):
+        (-[WKImmediateActionController _updateImmediateActionItem]):
+        (-[WKImmediateActionController _menuItemForDataDetectedText]):
+        (-[WKImmediateActionController _animationControllerForText]):
+        (-[WKImmediateActionController didPerformActionMenuHitTest:userData:]): Deleted.
+        * WebKit2.xcodeproj/project.pbxproj:
+        * WebProcess/WebPage/mac/WebPageMac.mm:
+        (WebKit::WebPage::performActionMenuHitTestAtLocation):
+
</ins><span class="cx"> 2015-04-06  Jer Noble  &lt;jer.noble@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Synchronize fullscreen animation between processes.
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedWebHitTestResultcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/WebHitTestResult.cpp (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/WebHitTestResult.cpp        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/Shared/WebHitTestResult.cpp        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -58,6 +58,7 @@
</span><span class="cx">     , isOverTextInsideFormControlElement(hitTestResult.isOverTextInsideFormControlElement())
</span><span class="cx">     , allowsCopy(hitTestResult.allowsCopy())
</span><span class="cx">     , isDownloadableMedia(hitTestResult.isDownloadableMedia())
</span><ins>+    , imageSize(0)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -81,6 +82,23 @@
</span><span class="cx">     encoder &lt;&lt; isOverTextInsideFormControlElement;
</span><span class="cx">     encoder &lt;&lt; allowsCopy;
</span><span class="cx">     encoder &lt;&lt; isDownloadableMedia;
</span><ins>+    encoder &lt;&lt; hitTestLocationInViewCooordinates;
+    encoder &lt;&lt; lookupText;
+    encoder &lt;&lt; dictionaryPopupInfo;
+
+    SharedMemory::Handle imageHandle;
+    if (imageSharedMemory &amp;&amp; imageSharedMemory-&gt;data())
+        imageSharedMemory-&gt;createHandle(imageHandle, SharedMemory::ReadOnly);
+    encoder &lt;&lt; imageHandle;
+    encoder &lt;&lt; imageSize;
+    encoder &lt;&lt; imageExtension;
+
+    bool hasLinkTextIndicator = linkTextIndicator;
+    encoder &lt;&lt; hasLinkTextIndicator;
+    if (hasLinkTextIndicator)
+        encoder &lt;&lt; linkTextIndicator-&gt;data();
+
+    platformEncode(encoder);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebHitTestResult::Data::decode(IPC::ArgumentDecoder&amp; decoder, WebHitTestResult::Data&amp; hitTestResultData)
</span><span class="lines">@@ -98,11 +116,50 @@
</span><span class="cx">         || !decoder.decode(hitTestResultData.isTextNode)
</span><span class="cx">         || !decoder.decode(hitTestResultData.isOverTextInsideFormControlElement)
</span><span class="cx">         || !decoder.decode(hitTestResultData.allowsCopy)
</span><del>-        || !decoder.decode(hitTestResultData.isDownloadableMedia))
</del><ins>+        || !decoder.decode(hitTestResultData.isDownloadableMedia)
+        || !decoder.decode(hitTestResultData.hitTestLocationInViewCooordinates)
+        || !decoder.decode(hitTestResultData.lookupText)
+        || !decoder.decode(hitTestResultData.dictionaryPopupInfo))
</ins><span class="cx">         return false;
</span><span class="cx"> 
</span><ins>+    SharedMemory::Handle imageHandle;
+    if (!decoder.decode(imageHandle))
+        return false;
+
+    if (!imageHandle.isNull())
+        hitTestResultData.imageSharedMemory = SharedMemory::create(imageHandle, SharedMemory::ReadOnly);
+
+    if (!decoder.decode(hitTestResultData.imageSize))
+        return false;
+
+    if (!decoder.decode(hitTestResultData.imageExtension))
+        return false;
+
+    bool hasLinkTextIndicator;
+    if (!decoder.decode(hasLinkTextIndicator))
+        return false;
+
+    if (hasLinkTextIndicator) {
+        WebCore::TextIndicatorData indicatorData;
+        if (!decoder.decode(indicatorData))
+            return false;
+
+        hitTestResultData.linkTextIndicator = WebCore::TextIndicator::create(indicatorData);
+    }
+
+    return platformDecode(decoder, hitTestResultData);
+}
+
+#if !PLATFORM(MAC)
+void WebHitTestResult::Data::platformEncode(IPC::ArgumentEncoder&amp; encoder) const
+{
+}
+
+bool WebHitTestResult::Data::platformDecode(IPC::ArgumentDecoder&amp; decoder, WebHitTestResult::Data&amp; hitTestResultData)
+{
</ins><span class="cx">     return true;
</span><span class="cx"> }
</span><ins>+#endif // !PLATFORM(MAC)
</ins><span class="cx"> 
</span><span class="cx"> IntRect WebHitTestResult::Data::elementBoundingBoxInWindowCoordinates(const HitTestResult&amp; hitTestResult)
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedWebHitTestResulth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/WebHitTestResult.h (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/WebHitTestResult.h        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/Shared/WebHitTestResult.h        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -21,12 +21,18 @@
</span><span class="cx"> #define WebHitTestResult_h
</span><span class="cx"> 
</span><span class="cx"> #include &quot;APIObject.h&quot;
</span><ins>+#include &quot;DictionaryPopupInfo.h&quot;
+#include &quot;SharedMemory.h&quot;
+#include &lt;WebCore/FloatPoint.h&gt;
</ins><span class="cx"> #include &lt;WebCore/IntRect.h&gt;
</span><ins>+#include &lt;WebCore/PageOverlay.h&gt;
</ins><span class="cx"> #include &lt;wtf/Forward.h&gt;
</span><span class="cx"> #include &lt;wtf/PassRefPtr.h&gt;
</span><span class="cx"> #include &lt;wtf/RefPtr.h&gt;
</span><span class="cx"> #include &lt;wtf/text/WTFString.h&gt;
</span><span class="cx"> 
</span><ins>+OBJC_CLASS DDActionContext;
+
</ins><span class="cx"> namespace IPC {
</span><span class="cx"> class ArgumentDecoder;
</span><span class="cx"> class ArgumentEncoder;
</span><span class="lines">@@ -58,12 +64,32 @@
</span><span class="cx">         bool allowsCopy;
</span><span class="cx">         bool isDownloadableMedia;
</span><span class="cx"> 
</span><ins>+        // FIXME: Added from ActionHitTestResult. All make sense?
+        WebCore::FloatPoint hitTestLocationInViewCooordinates;
+        String lookupText;
+        RefPtr&lt;SharedMemory&gt; imageSharedMemory;
+        uint64_t imageSize;
+        String imageExtension;
+
+#if PLATFORM(MAC)
+        RetainPtr&lt;DDActionContext&gt; detectedDataActionContext;
+#endif
+        WebCore::FloatRect detectedDataBoundingBox;
+        RefPtr&lt;WebCore::TextIndicator&gt; detectedDataTextIndicator;
+        WebCore::PageOverlay::PageOverlayID detectedDataOriginatingPageOverlay;
+
+        DictionaryPopupInfo dictionaryPopupInfo;
+
+        RefPtr&lt;WebCore::TextIndicator&gt; linkTextIndicator;
+
</ins><span class="cx">         Data();
</span><span class="cx">         explicit Data(const WebCore::HitTestResult&amp;);
</span><span class="cx">         ~Data();
</span><span class="cx"> 
</span><span class="cx">         void encode(IPC::ArgumentEncoder&amp;) const;
</span><ins>+        void platformEncode(IPC::ArgumentEncoder&amp;) const;
</ins><span class="cx">         static bool decode(IPC::ArgumentDecoder&amp;, WebHitTestResult::Data&amp;);
</span><ins>+        static bool platformDecode(IPC::ArgumentDecoder&amp;, WebHitTestResult::Data&amp;);
</ins><span class="cx"> 
</span><span class="cx">         WebCore::IntRect elementBoundingBoxInWindowCoordinates(const WebCore::HitTestResult&amp;);
</span><span class="cx">     };
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedmacActionMenuHitTestResulth"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.h (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.h        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.h        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -1,74 +0,0 @@
</span><del>-/*
- * Copyright (C) 2014 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.
- */
-
-#ifndef ActionMenuHitTestResult_h
-#define ActionMenuHitTestResult_h
-
-#include &quot;DataReference.h&quot;
-#include &quot;DictionaryPopupInfo.h&quot;
-#include &quot;ShareableBitmap.h&quot;
-#include &quot;SharedMemory.h&quot;
-#include &quot;WebHitTestResult.h&quot;
-#include &lt;WebCore/FloatRect.h&gt;
-#include &lt;WebCore/PageOverlay.h&gt;
-#include &lt;WebCore/TextIndicator.h&gt;
-#include &lt;wtf/text/WTFString.h&gt;
-
-OBJC_CLASS DDActionContext;
-
-namespace IPC {
-class ArgumentDecoder;
-class ArgumentEncoder;
-}
-
-namespace WebKit {
-
-struct ActionMenuHitTestResult {
-    void encode(IPC::ArgumentEncoder&amp;) const;
-    static bool decode(IPC::ArgumentDecoder&amp;, ActionMenuHitTestResult&amp;);
-
-    WebCore::FloatPoint hitTestLocationInViewCooordinates;
-    WebHitTestResult::Data hitTestResult;
-
-    String lookupText;
-    RefPtr&lt;SharedMemory&gt; imageSharedMemory;
-    uint64_t imageSize;
-    String imageExtension;
-
-    RetainPtr&lt;DDActionContext&gt; actionContext;
-    WebCore::FloatRect detectedDataBoundingBox;
-    RefPtr&lt;WebCore::TextIndicator&gt; detectedDataTextIndicator;
-    WebCore::PageOverlay::PageOverlayID detectedDataOriginatingPageOverlay;
-
-    DictionaryPopupInfo dictionaryPopupInfo;
-
-    RefPtr&lt;WebCore::TextIndicator&gt; linkTextIndicator;
-
-    bool contentPreventsDefault;
-};
-
-} // namespace WebKit
-
-#endif // ActionMenuHitTestResult_h
</del></span></pre></div>
<a id="trunkSourceWebKit2SharedmacActionMenuHitTestResultmm"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.mm (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.mm        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.mm        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -1,169 +0,0 @@
</span><del>-/*
- * Copyright (C) 2014 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 &quot;config.h&quot;
-#import &quot;ActionMenuHitTestResult.h&quot;
-
-#if PLATFORM(MAC)
-
-#import &quot;ArgumentCodersCF.h&quot;
-#import &quot;ArgumentDecoder.h&quot;
-#import &quot;ArgumentEncoder.h&quot;
-#import &quot;WebCoreArgumentCoders.h&quot;
-#import &lt;WebCore/DataDetectorsSPI.h&gt;
-#import &lt;WebCore/TextIndicator.h&gt;
-
-namespace WebKit {
-
-void ActionMenuHitTestResult::encode(IPC::ArgumentEncoder&amp; encoder) const
-{
-    encoder &lt;&lt; hitTestLocationInViewCooordinates;
-    encoder &lt;&lt; hitTestResult;
-    encoder &lt;&lt; lookupText;
-    encoder &lt;&lt; imageExtension;
-
-    SharedMemory::Handle imageHandle;
-    if (imageSharedMemory &amp;&amp; imageSharedMemory-&gt;data())
-        imageSharedMemory-&gt;createHandle(imageHandle, SharedMemory::ReadOnly);
-    encoder &lt;&lt; imageHandle;
-    encoder &lt;&lt; imageSize;
-
-    bool hasActionContext = actionContext;
-    encoder &lt;&lt; hasActionContext;
-    if (hasActionContext) {
-        RetainPtr&lt;NSMutableData&gt; data = adoptNS([[NSMutableData alloc] init]);
-        RetainPtr&lt;NSKeyedArchiver&gt; archiver = adoptNS([[NSKeyedArchiver alloc] initForWritingWithMutableData:data.get()]);
-        [archiver setRequiresSecureCoding:YES];
-        [archiver encodeObject:actionContext.get() forKey:@&quot;actionContext&quot;];
-        [archiver finishEncoding];
-
-        IPC::encode(encoder, reinterpret_cast&lt;CFDataRef&gt;(data.get()));
-
-        encoder &lt;&lt; detectedDataBoundingBox;
-        encoder &lt;&lt; detectedDataOriginatingPageOverlay;
-
-        bool hasDetectedDataTextIndicator = detectedDataTextIndicator;
-        encoder &lt;&lt; hasDetectedDataTextIndicator;
-        if (hasDetectedDataTextIndicator)
-            encoder &lt;&lt; detectedDataTextIndicator-&gt;data();
-    }
-
-    encoder &lt;&lt; dictionaryPopupInfo;
-
-    bool hasLinkTextIndicator = linkTextIndicator;
-    encoder &lt;&lt; hasLinkTextIndicator;
-    if (hasLinkTextIndicator)
-        encoder &lt;&lt; linkTextIndicator-&gt;data();
-
-    encoder &lt;&lt; contentPreventsDefault;
-}
-
-bool ActionMenuHitTestResult::decode(IPC::ArgumentDecoder&amp; decoder, ActionMenuHitTestResult&amp; actionMenuHitTestResult)
-{
-    if (!decoder.decode(actionMenuHitTestResult.hitTestLocationInViewCooordinates))
-        return false;
-
-    if (!decoder.decode(actionMenuHitTestResult.hitTestResult))
-        return false;
-
-    if (!decoder.decode(actionMenuHitTestResult.lookupText))
-        return false;
-
-    if (!decoder.decode(actionMenuHitTestResult.imageExtension))
-        return false;
-
-    SharedMemory::Handle imageHandle;
-    if (!decoder.decode(imageHandle))
-        return false;
-
-    if (!imageHandle.isNull())
-        actionMenuHitTestResult.imageSharedMemory = SharedMemory::create(imageHandle, SharedMemory::ReadOnly);
-
-    if (!decoder.decode(actionMenuHitTestResult.imageSize))
-        return false;
-
-    bool hasActionContext;
-    if (!decoder.decode(hasActionContext))
-        return false;
-
-    if (hasActionContext) {
-        RetainPtr&lt;CFDataRef&gt; data;
-        if (!IPC::decode(decoder, data))
-            return false;
-
-        RetainPtr&lt;NSKeyedUnarchiver&gt; unarchiver = adoptNS([[NSKeyedUnarchiver alloc] initForReadingWithData:(NSData *)data.get()]);
-        [unarchiver setRequiresSecureCoding:YES];
-        @try {
-            actionMenuHitTestResult.actionContext = [unarchiver decodeObjectOfClass:getDDActionContextClass() forKey:@&quot;actionContext&quot;];
-        } @catch (NSException *exception) {
-            LOG_ERROR(&quot;Failed to decode DDActionContext: %@&quot;, exception);
-            return false;
-        }
-        
-        [unarchiver finishDecoding];
-
-        if (!decoder.decode(actionMenuHitTestResult.detectedDataBoundingBox))
-            return false;
-
-        if (!decoder.decode(actionMenuHitTestResult.detectedDataOriginatingPageOverlay))
-            return false;
-
-        bool hasDetectedDataTextIndicator;
-        if (!decoder.decode(hasDetectedDataTextIndicator))
-            return false;
-
-        if (hasDetectedDataTextIndicator) {
-            WebCore::TextIndicatorData indicatorData;
-            if (!decoder.decode(indicatorData))
-                return false;
-
-            actionMenuHitTestResult.detectedDataTextIndicator = WebCore::TextIndicator::create(indicatorData);
-        }
-    }
-
-    if (!decoder.decode(actionMenuHitTestResult.dictionaryPopupInfo))
-        return false;
-
-    bool hasLinkTextIndicator;
-    if (!decoder.decode(hasLinkTextIndicator))
-        return false;
-
-    if (hasLinkTextIndicator) {
-        WebCore::TextIndicatorData indicatorData;
-        if (!decoder.decode(indicatorData))
-            return false;
-
-        actionMenuHitTestResult.linkTextIndicator = WebCore::TextIndicator::create(indicatorData);
-    }
-
-    if (!decoder.decode(actionMenuHitTestResult.contentPreventsDefault))
-        return false;
-
-    return true;
-}
-    
-} // namespace WebKit
-
-#endif // PLATFORM(MAC)
</del></span></pre></div>
<a id="trunkSourceWebKit2SharedmacWebHitTestResultmm"></a>
<div class="addfile"><h4>Added: trunk/Source/WebKit2/Shared/mac/WebHitTestResult.mm (0 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/mac/WebHitTestResult.mm                                (rev 0)
+++ trunk/Source/WebKit2/Shared/mac/WebHitTestResult.mm        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -0,0 +1,111 @@
</span><ins>+/*
+ * 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 &quot;config.h&quot;
+#import &quot;WebHitTestResult.h&quot;
+
+#if PLATFORM(MAC)
+
+#import &quot;ArgumentCodersCF.h&quot;
+#import &quot;ArgumentDecoder.h&quot;
+#import &quot;ArgumentEncoder.h&quot;
+#import &quot;WebCoreArgumentCoders.h&quot;
+#import &lt;WebCore/DataDetectorsSPI.h&gt;
+#import &lt;WebCore/TextIndicator.h&gt;
+
+namespace WebKit {
+
+void WebHitTestResult::Data::platformEncode(IPC::ArgumentEncoder&amp; encoder) const
+{
+    bool hasActionContext = detectedDataActionContext;
+    encoder &lt;&lt; hasActionContext;
+    if (!hasActionContext)
+        return;
+
+    RetainPtr&lt;NSMutableData&gt; data = adoptNS([[NSMutableData alloc] init]);
+    RetainPtr&lt;NSKeyedArchiver&gt; archiver = adoptNS([[NSKeyedArchiver alloc] initForWritingWithMutableData:data.get()]);
+    [archiver setRequiresSecureCoding:YES];
+    [archiver encodeObject:detectedDataActionContext.get() forKey:@&quot;actionContext&quot;];
+    [archiver finishEncoding];
+
+    IPC::encode(encoder, reinterpret_cast&lt;CFDataRef&gt;(data.get()));
+
+    encoder &lt;&lt; detectedDataBoundingBox;
+    encoder &lt;&lt; detectedDataOriginatingPageOverlay;
+
+    bool hasDetectedDataTextIndicator = detectedDataTextIndicator;
+    encoder &lt;&lt; hasDetectedDataTextIndicator;
+    if (hasDetectedDataTextIndicator)
+        encoder &lt;&lt; detectedDataTextIndicator-&gt;data();
+}
+
+bool WebHitTestResult::Data::platformDecode(IPC::ArgumentDecoder&amp; decoder, WebHitTestResult::Data&amp; hitTestResultData)
+{
+    bool hasActionContext;
+    if (!decoder.decode(hasActionContext))
+        return false;
+
+    if (!hasActionContext)
+        return true;
+
+    RetainPtr&lt;CFDataRef&gt; data;
+    if (!IPC::decode(decoder, data))
+        return false;
+
+    RetainPtr&lt;NSKeyedUnarchiver&gt; unarchiver = adoptNS([[NSKeyedUnarchiver alloc] initForReadingWithData:(NSData *)data.get()]);
+    [unarchiver setRequiresSecureCoding:YES];
+    @try {
+        hitTestResultData.detectedDataActionContext = [unarchiver decodeObjectOfClass:getDDActionContextClass() forKey:@&quot;actionContext&quot;];
+    } @catch (NSException *exception) {
+        LOG_ERROR(&quot;Failed to decode DDActionContext: %@&quot;, exception);
+        return false;
+    }
+    
+    [unarchiver finishDecoding];
+
+    if (!decoder.decode(hitTestResultData.detectedDataBoundingBox))
+        return false;
+
+    if (!decoder.decode(hitTestResultData.detectedDataOriginatingPageOverlay))
+        return false;
+
+    bool hasDetectedDataTextIndicator;
+    if (!decoder.decode(hasDetectedDataTextIndicator))
+        return false;
+
+    if (hasDetectedDataTextIndicator) {
+        WebCore::TextIndicatorData indicatorData;
+        if (!decoder.decode(indicatorData))
+            return false;
+
+        hitTestResultData.detectedDataTextIndicator = WebCore::TextIndicator::create(indicatorData);
+    }
+
+    return true;
+}
+
+} // namespace WebKit
+
+#endif // PLATFORM(MAC)
</ins></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPImacWKViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -35,7 +35,6 @@
</span><span class="cx"> 
</span><span class="cx"> #import &quot;APILegacyContextHistoryClient.h&quot;
</span><span class="cx"> #import &quot;APIPageConfiguration.h&quot;
</span><del>-#import &quot;ActionMenuHitTestResult.h&quot;
</del><span class="cx"> #import &quot;AttributedString.h&quot;
</span><span class="cx"> #import &quot;ColorSpaceData.h&quot;
</span><span class="cx"> #import &quot;DataReference.h&quot;
</span><span class="lines">@@ -68,6 +67,7 @@
</span><span class="cx"> #import &quot;WKViewPrivate.h&quot;
</span><span class="cx"> #import &quot;WebBackForwardList.h&quot;
</span><span class="cx"> #import &quot;WebEventFactory.h&quot;
</span><ins>+#import &quot;WebHitTestResult.h&quot;
</ins><span class="cx"> #import &quot;WebInspectorProxy.h&quot;
</span><span class="cx"> #import &quot;WebKit2Initialize.h&quot;
</span><span class="cx"> #import &quot;WebPage.h&quot;
</span><span class="lines">@@ -3931,10 +3931,10 @@
</span><span class="cx">     [_data-&gt;_actionMenuController didCloseMenu:menu withEvent:event];
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-- (void)_didPerformActionMenuHitTest:(const ActionMenuHitTestResult&amp;)hitTestResult forImmediateAction:(BOOL)forImmediateAction userData:(API::Object*)userData
</del><ins>+- (void)_didPerformActionMenuHitTest:(const WebHitTestResult::Data&amp;)hitTestResult forImmediateAction:(BOOL)forImmediateAction contentPreventsDefault:(BOOL)contentPreventsDefault userData:(API::Object*)userData
</ins><span class="cx"> {
</span><span class="cx">     if (forImmediateAction)
</span><del>-        [_data-&gt;_immediateActionController didPerformActionMenuHitTest:hitTestResult userData:userData];
</del><ins>+        [_data-&gt;_immediateActionController didPerformActionMenuHitTest:hitTestResult contentPreventsDefault:contentPreventsDefault userData:userData];
</ins><span class="cx">     else
</span><span class="cx">         [_data-&gt;_actionMenuController didPerformActionMenuHitTest:hitTestResult userData:userData];
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPImacWKViewInternalh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/mac/WKViewInternal.h (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/mac/WKViewInternal.h        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/API/mac/WKViewInternal.h        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -29,6 +29,7 @@
</span><span class="cx"> #import &quot;PluginComplexTextInputState.h&quot;
</span><span class="cx"> #import &quot;SameDocumentNavigationType.h&quot;
</span><span class="cx"> #import &quot;WebFindOptions.h&quot;
</span><ins>+#import &quot;WebHitTestResult.h&quot;
</ins><span class="cx"> #import &lt;wtf/Forward.h&gt;
</span><span class="cx"> #import &lt;wtf/RetainPtr.h&gt;
</span><span class="cx"> #import &lt;wtf/Vector.h&gt;
</span><span class="lines">@@ -55,7 +56,6 @@
</span><span class="cx"> class LayerTreeContext;
</span><span class="cx"> class ViewSnapshot;
</span><span class="cx"> class WebProcessPool;
</span><del>-struct ActionMenuHitTestResult;
</del><span class="cx"> struct ColorSpaceData;
</span><span class="cx"> struct EditorState;
</span><span class="cx"> struct WebPageConfiguration;
</span><span class="lines">@@ -140,7 +140,7 @@
</span><span class="cx"> - (void)_closeFullScreenWindowController;
</span><span class="cx"> 
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101000
</span><del>-- (void)_didPerformActionMenuHitTest:(const WebKit::ActionMenuHitTestResult&amp;)hitTestResult forImmediateAction:(BOOL)forImmediateAction userData:(API::Object*)userData;
</del><ins>+- (void)_didPerformActionMenuHitTest:(const WebKit::WebHitTestResult::Data&amp;)hitTestResult forImmediateAction:(BOOL)forImmediateAction contentPreventsDefault:(BOOL)contentPreventsDefault userData:(API::Object*)userData;
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> @property (nonatomic, retain, setter=_setPrimaryTrackingArea:) NSTrackingArea *_primaryTrackingArea;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessPageClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/PageClient.h (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/PageClient.h        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/PageClient.h        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -65,7 +65,6 @@
</span><span class="cx"> class WebContextMenuProxy;
</span><span class="cx"> class WebEditCommandProxy;
</span><span class="cx"> class WebPopupMenuProxy;
</span><del>-struct ActionMenuHitTestResult;
</del><span class="cx"> 
</span><span class="cx"> #if ENABLE(TOUCH_EVENTS)
</span><span class="cx"> class NativeWebTouchEvent;
</span><span class="lines">@@ -322,7 +321,7 @@
</span><span class="cx">     virtual void didChangeBackgroundColor() = 0;
</span><span class="cx"> 
</span><span class="cx"> #if PLATFORM(MAC)
</span><del>-    virtual void didPerformActionMenuHitTest(const ActionMenuHitTestResult&amp;, bool forImmediateAction, API::Object*) = 0;
</del><ins>+    virtual void didPerformActionMenuHitTest(const WebHitTestResult::Data&amp;, bool forImmediateAction, bool contentPreventsDefault, API::Object*) = 0;
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(WIRELESS_PLAYBACK_TARGET) &amp;&amp; !PLATFORM(IOS)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -5645,9 +5645,9 @@
</span><span class="cx">     m_process-&gt;send(Messages::WebPage::ImmediateActionDidComplete(), m_pageID);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void WebPageProxy::didPerformActionMenuHitTest(const ActionMenuHitTestResult&amp; result, bool forImmediateAction, const UserData&amp; userData)
</del><ins>+void WebPageProxy::didPerformActionMenuHitTest(const WebHitTestResult::Data&amp; result, bool forImmediateAction, bool contentPreventsDefault, const UserData&amp; userData)
</ins><span class="cx"> {
</span><del>-    m_pageClient.didPerformActionMenuHitTest(result, forImmediateAction, m_process-&gt;transformHandlesToObjects(userData.object()).get());
</del><ins>+    m_pageClient.didPerformActionMenuHitTest(result, forImmediateAction, contentPreventsDefault, m_process-&gt;transformHandlesToObjects(userData.object()).get());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebPageProxy::installViewStateChangeCompletionHandler(void (^completionHandler)())
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxyh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.h (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.h        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.h        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -190,7 +190,6 @@
</span><span class="cx"> class WebUserContentControllerProxy;
</span><span class="cx"> class WebWheelEvent;
</span><span class="cx"> class WebsiteDataStore;
</span><del>-struct ActionMenuHitTestResult;
</del><span class="cx"> struct AttributedString;
</span><span class="cx"> struct ColorSpaceData;
</span><span class="cx"> struct DictionaryPopupInfo;
</span><span class="lines">@@ -1413,7 +1412,7 @@
</span><span class="cx">     void viewDidEnterWindow();
</span><span class="cx"> 
</span><span class="cx"> #if PLATFORM(MAC)
</span><del>-    void didPerformActionMenuHitTest(const ActionMenuHitTestResult&amp;, bool forImmediateAction, const UserData&amp;);
</del><ins>+    void didPerformActionMenuHitTest(const WebHitTestResult::Data&amp;, bool forImmediateAction, bool contentPreventsDefault, const UserData&amp;);
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     void handleAutoFillButtonClick(const UserData&amp;);
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxymessagesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -424,7 +424,7 @@
</span><span class="cx">     IsPlayingAudioDidChange(bool newIsPlayingAudio)
</span><span class="cx"> 
</span><span class="cx"> #if PLATFORM(MAC)
</span><del>-    DidPerformActionMenuHitTest(struct WebKit::ActionMenuHitTestResult result, bool forImmediateAction, WebKit::UserData userData)
</del><ins>+    DidPerformActionMenuHitTest(struct WebKit::WebHitTestResult::Data result, bool forImmediateAction, bool contentPreventsDefault, WebKit::UserData userData)
</ins><span class="cx"> #endif
</span><span class="cx">     HandleMessage(String messageName, WebKit::UserData messageBody) WantsConnection
</span><span class="cx">     HandleSynchronousMessage(String messageName, WebKit::UserData messageBody) -&gt; (WebKit::UserData returnData) WantsConnection
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacPageClientImplh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -195,7 +195,7 @@
</span><span class="cx">     virtual void didSameDocumentNavigationForMainFrame(SameDocumentNavigationType) override;
</span><span class="cx">     virtual void removeNavigationGestureSnapshot() override;
</span><span class="cx"> 
</span><del>-    virtual void didPerformActionMenuHitTest(const ActionMenuHitTestResult&amp;, bool forImmediateAction, API::Object*) override;
</del><ins>+    virtual void didPerformActionMenuHitTest(const WebHitTestResult::Data&amp;, bool forImmediateAction, bool contentPreventsDefault, API::Object*) override;
</ins><span class="cx">     virtual void showPlatformContextMenu(NSMenu *, WebCore::IntPoint) override;
</span><span class="cx"> 
</span><span class="cx">     virtual void didChangeBackgroundColor() override;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacPageClientImplmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -792,10 +792,10 @@
</span><span class="cx">     return [windowContentLayer convertRect:layer.bounds fromLayer:layer];
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void PageClientImpl::didPerformActionMenuHitTest(const ActionMenuHitTestResult&amp; result, bool forImmediateAction, API::Object* userData)
</del><ins>+void PageClientImpl::didPerformActionMenuHitTest(const WebHitTestResult::Data&amp; result, bool forImmediateAction, bool contentPreventsDefault, API::Object* userData)
</ins><span class="cx"> {
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101000
</span><del>-    [m_wkView _didPerformActionMenuHitTest:result forImmediateAction:forImmediateAction userData:userData];
</del><ins>+    [m_wkView _didPerformActionMenuHitTest:result forImmediateAction:forImmediateAction contentPreventsDefault:contentPreventsDefault userData:userData];
</ins><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWKActionMenuControllerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WKActionMenuController.h (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WKActionMenuController.h        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/mac/WKActionMenuController.h        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -28,9 +28,9 @@
</span><span class="cx"> 
</span><span class="cx"> #if PLATFORM(MAC) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101000
</span><span class="cx"> 
</span><del>-#import &quot;ActionMenuHitTestResult.h&quot;
</del><span class="cx"> #import &quot;WKActionMenuItemTypes.h&quot;
</span><span class="cx"> #import &quot;WKActionMenuTypes.h&quot;
</span><ins>+#import &quot;WebHitTestResult.h&quot;
</ins><span class="cx"> #import &lt;AppKit/NSSharingService.h&gt;
</span><span class="cx"> #import &lt;wtf/RetainPtr.h&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -54,7 +54,7 @@
</span><span class="cx">     WKView *_wkView;
</span><span class="cx"> 
</span><span class="cx">     WebKit::ActionMenuState _state;
</span><del>-    WebKit::ActionMenuHitTestResult _hitTestResult;
</del><ins>+    WebKit::WebHitTestResult::Data _hitTestResultData;
</ins><span class="cx">     RefPtr&lt;API::Object&gt; _userData;
</span><span class="cx">     _WKActionMenuType _type;
</span><span class="cx">     RetainPtr&lt;NSSharingServicePicker&gt; _sharingServicePicker;
</span><span class="lines">@@ -72,7 +72,7 @@
</span><span class="cx"> - (void)didCloseMenu:(NSMenu *)menu withEvent:(NSEvent *)event;
</span><span class="cx"> - (void)wkView:(WKView *)wkView willHandleMouseDown:(NSEvent *)event;
</span><span class="cx"> 
</span><del>-- (void)didPerformActionMenuHitTest:(const WebKit::ActionMenuHitTestResult&amp;)hitTestResult userData:(API::Object*)userData;
</del><ins>+- (void)didPerformActionMenuHitTest:(const WebKit::WebHitTestResult::Data&amp;)hitTestResult userData:(API::Object*)userData;
</ins><span class="cx"> 
</span><span class="cx"> @end
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWKActionMenuControllermm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WKActionMenuController.mm (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WKActionMenuController.mm        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/mac/WKActionMenuController.mm        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -85,7 +85,7 @@
</span><span class="cx"> {
</span><span class="cx">     _page = nullptr;
</span><span class="cx">     _wkView = nil;
</span><del>-    _hitTestResult = ActionMenuHitTestResult();
</del><ins>+    _hitTestResultData = WebHitTestResult::Data();
</ins><span class="cx">     _currentActionContext = nil;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -161,18 +161,18 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     _state = ActionMenuState::None;
</span><del>-    _hitTestResult = ActionMenuHitTestResult();
</del><ins>+    _hitTestResultData = WebHitTestResult::Data();
</ins><span class="cx">     _type = kWKActionMenuNone;
</span><span class="cx">     _sharingServicePicker = nil;
</span><span class="cx">     _currentActionContext = nil;
</span><span class="cx">     _userData = nil;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-- (void)didPerformActionMenuHitTest:(const ActionMenuHitTestResult&amp;)hitTestResult userData:(API::Object*)userData
</del><ins>+- (void)didPerformActionMenuHitTest:(const WebHitTestResult::Data&amp;)hitTestResult userData:(API::Object*)userData
</ins><span class="cx"> {
</span><span class="cx">     // FIXME: This needs to use the WebKit2 callback mechanism to avoid out-of-order replies.
</span><span class="cx">     _state = ActionMenuState::Ready;
</span><del>-    _hitTestResult = hitTestResult;
</del><ins>+    _hitTestResultData = hitTestResult;
</ins><span class="cx">     _userData = userData;
</span><span class="cx"> 
</span><span class="cx">     [self _updateActionMenuItems];
</span><span class="lines">@@ -239,13 +239,13 @@
</span><span class="cx"> 
</span><span class="cx"> #pragma mark Image actions
</span><span class="cx"> 
</span><del>-- (NSImage *)_hitTestResultImage
</del><ins>+- (NSImage *)_hitTestResultDataImage
</ins><span class="cx"> {
</span><del>-    RefPtr&lt;SharedMemory&gt; imageSharedMemory = _hitTestResult.imageSharedMemory;
</del><ins>+    RefPtr&lt;SharedMemory&gt; imageSharedMemory = _hitTestResultData.imageSharedMemory;
</ins><span class="cx">     if (!imageSharedMemory)
</span><span class="cx">         return nil;
</span><span class="cx"> 
</span><del>-    RetainPtr&lt;NSImage&gt; nsImage = adoptNS([[NSImage alloc] initWithData:[NSData dataWithBytes:imageSharedMemory-&gt;data() length:_hitTestResult.imageSize]]);
</del><ins>+    RetainPtr&lt;NSImage&gt; nsImage = adoptNS([[NSImage alloc] initWithData:[NSData dataWithBytes:imageSharedMemory-&gt;data() length:_hitTestResultData.imageSize]]);
</ins><span class="cx">     return nsImage.autorelease();
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -258,14 +258,14 @@
</span><span class="cx">     else
</span><span class="cx">         addToPhotosItem = [NSMenuItem separatorItem];
</span><span class="cx">     RetainPtr&lt;NSMenuItem&gt; saveToDownloadsItem = [self _createActionMenuItemForTag:kWKContextActionItemTagSaveImageToDownloads];
</span><del>-    RetainPtr&lt;NSMenuItem&gt; shareItem = [self _createShareActionMenuItemForTag:kWKContextActionItemTagShareImage withItems:@[ [self _hitTestResultImage] ]];
</del><ins>+    RetainPtr&lt;NSMenuItem&gt; shareItem = [self _createShareActionMenuItemForTag:kWKContextActionItemTagShareImage withItems:@[ [self _hitTestResultDataImage] ]];
</ins><span class="cx"> 
</span><span class="cx">     return @[ copyImageItem.get(), addToPhotosItem.get(), saveToDownloadsItem.get(), shareItem.get() ];
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> - (void)_copyImage:(id)sender
</span><span class="cx"> {
</span><del>-    RetainPtr&lt;NSImage&gt; image = [self _hitTestResultImage];
</del><ins>+    RetainPtr&lt;NSImage&gt; image = [self _hitTestResultDataImage];
</ins><span class="cx">     if (!image)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="lines">@@ -334,12 +334,12 @@
</span><span class="cx">     if (![self _canAddMediaToPhotos])
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    RefPtr&lt;SharedMemory&gt; imageSharedMemory = _hitTestResult.imageSharedMemory;
-    if (!imageSharedMemory-&gt;data() || _hitTestResult.imageExtension.isEmpty() || !_hitTestResult.imageSize)
</del><ins>+    RefPtr&lt;SharedMemory&gt; imageSharedMemory = _hitTestResultData.imageSharedMemory;
+    if (!imageSharedMemory-&gt;data() || _hitTestResultData.imageExtension.isEmpty() || !_hitTestResultData.imageSize)
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    RetainPtr&lt;NSData&gt; imageData = adoptNS([[NSData alloc] initWithBytes:imageSharedMemory-&gt;data() length:_hitTestResult.imageSize]);
-    RetainPtr&lt;NSString&gt; suggestedFilename = [[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:_hitTestResult.imageExtension];
</del><ins>+    RetainPtr&lt;NSData&gt; imageData = adoptNS([[NSData alloc] initWithBytes:imageSharedMemory-&gt;data() length:_hitTestResultData.imageSize]);
+    RetainPtr&lt;NSString&gt; suggestedFilename = [[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:_hitTestResultData.imageExtension];
</ins><span class="cx"> 
</span><span class="cx">     dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
</span><span class="cx">         NSString *filePath = pathToPhotoOnDisk(suggestedFilename.get());
</span><span class="lines">@@ -360,7 +360,7 @@
</span><span class="cx"> 
</span><span class="cx"> - (NSArray *)_defaultMenuItemsForDataDetectedText
</span><span class="cx"> {
</span><del>-    DDActionContext *actionContext = _hitTestResult.actionContext.get();
</del><ins>+    DDActionContext *actionContext = _hitTestResultData.detectedDataActionContext.get();
</ins><span class="cx">     if (!actionContext)
</span><span class="cx">         return @[ ];
</span><span class="cx"> 
</span><span class="lines">@@ -372,19 +372,19 @@
</span><span class="cx"> 
</span><span class="cx">     // Ref our WebPageProxy for use in the blocks below.
</span><span class="cx">     RefPtr&lt;WebPageProxy&gt; page = _page;
</span><del>-    PageOverlay::PageOverlayID overlayID = _hitTestResult.detectedDataOriginatingPageOverlay;
</del><ins>+    PageOverlay::PageOverlayID overlayID = _hitTestResultData.detectedDataOriginatingPageOverlay;
</ins><span class="cx">     _currentActionContext = [actionContext contextForView:_wkView altMode:YES interactionStartedHandler:^() {
</span><span class="cx">         page-&gt;send(Messages::WebPage::DataDetectorsDidPresentUI(overlayID));
</span><span class="cx">     } interactionChangedHandler:^() {
</span><del>-        if (_hitTestResult.detectedDataTextIndicator)
-            page-&gt;setTextIndicator(_hitTestResult.detectedDataTextIndicator-&gt;data(), false);
</del><ins>+        if (_hitTestResultData.detectedDataTextIndicator)
+            page-&gt;setTextIndicator(_hitTestResultData.detectedDataTextIndicator-&gt;data(), false);
</ins><span class="cx">         page-&gt;send(Messages::WebPage::DataDetectorsDidChangeUI(overlayID));
</span><span class="cx">     } interactionStoppedHandler:^() {
</span><span class="cx">         page-&gt;send(Messages::WebPage::DataDetectorsDidHideUI(overlayID));
</span><span class="cx">         page-&gt;clearTextIndicator();
</span><span class="cx">     }];
</span><span class="cx"> 
</span><del>-    [_currentActionContext setHighlightFrame:[_wkView.window convertRectToScreen:[_wkView convertRect:_hitTestResult.detectedDataBoundingBox toView:nil]]];
</del><ins>+    [_currentActionContext setHighlightFrame:[_wkView.window convertRectToScreen:[_wkView convertRect:_hitTestResultData.detectedDataBoundingBox toView:nil]]];
</ins><span class="cx"> 
</span><span class="cx">     NSArray *menuItems = [[getDDActionsManagerClass() sharedManager] menuItemsForResult:[_currentActionContext mainResult] actionContext:_currentActionContext.get()];
</span><span class="cx">     return menuItems;
</span><span class="lines">@@ -409,16 +409,16 @@
</span><span class="cx"> 
</span><span class="cx"> - (NSArray *)_defaultMenuItemsForEditableTextWithSuggestions
</span><span class="cx"> {
</span><del>-    if (_hitTestResult.lookupText.isEmpty())
</del><ins>+    if (_hitTestResultData.lookupText.isEmpty())
</ins><span class="cx">         return @[ ];
</span><span class="cx"> 
</span><span class="cx">     Vector&lt;TextCheckingResult&gt; results;
</span><del>-    _page-&gt;checkTextOfParagraph(_hitTestResult.lookupText, NSTextCheckingTypeSpelling, results);
</del><ins>+    _page-&gt;checkTextOfParagraph(_hitTestResultData.lookupText, NSTextCheckingTypeSpelling, results);
</ins><span class="cx">     if (results.isEmpty())
</span><span class="cx">         return @[ ];
</span><span class="cx"> 
</span><span class="cx">     Vector&lt;String&gt; guesses;
</span><del>-    _page-&gt;getGuessesForWord(_hitTestResult.lookupText, String(), guesses);
</del><ins>+    _page-&gt;getGuessesForWord(_hitTestResultData.lookupText, String(), guesses);
</ins><span class="cx">     if (guesses.isEmpty())
</span><span class="cx">         return @[ ];
</span><span class="cx"> 
</span><span class="lines">@@ -484,7 +484,7 @@
</span><span class="cx">     } interactionStoppedHandler:^() {
</span><span class="cx">     }];
</span><span class="cx"> 
</span><del>-    [_currentActionContext setHighlightFrame:[_wkView.window convertRectToScreen:[_wkView convertRect:_hitTestResult.detectedDataBoundingBox toView:nil]]];
</del><ins>+    [_currentActionContext setHighlightFrame:[_wkView.window convertRectToScreen:[_wkView convertRect:_hitTestResultData.detectedDataBoundingBox toView:nil]]];
</ins><span class="cx"> 
</span><span class="cx">     return [[getDDActionsManagerClass() sharedManager] menuItemsForTargetURL:hitTestResult-&gt;absoluteLinkURL() actionContext:_currentActionContext.get()];
</span><span class="cx"> }
</span><span class="lines">@@ -650,7 +650,7 @@
</span><span class="cx"> {
</span><span class="cx">     RefPtr&lt;WebHitTestResult&gt; hitTestResult;
</span><span class="cx">     if (_state == ActionMenuState::Ready)
</span><del>-        hitTestResult = WebHitTestResult::create(_hitTestResult.hitTestResult);
</del><ins>+        hitTestResult = WebHitTestResult::create(_hitTestResultData);
</ins><span class="cx">     else
</span><span class="cx">         hitTestResult = _page-&gt;lastMouseMoveHitTestResult();
</span><span class="cx"> 
</span><span class="lines">@@ -688,7 +688,7 @@
</span><span class="cx">         return [self _defaultMenuItemsForVideo];
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    if (!hitTestResult-&gt;absoluteImageURL().isEmpty() &amp;&amp; _hitTestResult.imageSharedMemory &amp;&amp; !_hitTestResult.imageExtension.isEmpty()) {
</del><ins>+    if (!hitTestResult-&gt;absoluteImageURL().isEmpty() &amp;&amp; _hitTestResultData.imageSharedMemory &amp;&amp; !_hitTestResultData.imageExtension.isEmpty()) {
</ins><span class="cx">         _type = kWKActionMenuImage;
</span><span class="cx">         return [self _defaultMenuItemsForImage];
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWKImmediateActionControllerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.h (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.h        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.h        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -28,8 +28,8 @@
</span><span class="cx"> 
</span><span class="cx"> #if PLATFORM(MAC) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101000
</span><span class="cx"> 
</span><del>-#import &quot;ActionMenuHitTestResult.h&quot;
</del><span class="cx"> #import &quot;WKImmediateActionTypes.h&quot;
</span><ins>+#import &quot;WebHitTestResult.h&quot;
</ins><span class="cx"> #import &lt;WebCore/NSImmediateActionGestureRecognizerSPI.h&gt;
</span><span class="cx"> #import &lt;wtf/RetainPtr.h&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -54,7 +54,8 @@
</span><span class="cx">     WKView *_wkView;
</span><span class="cx"> 
</span><span class="cx">     WebKit::ImmediateActionState _state;
</span><del>-    WebKit::ActionMenuHitTestResult _hitTestResult;
</del><ins>+    WebKit::WebHitTestResult::Data _hitTestResultData;
+    BOOL _contentPreventsDefault;
</ins><span class="cx">     RefPtr&lt;API::Object&gt; _userData;
</span><span class="cx">     _WKImmediateActionType _type;
</span><span class="cx">     RetainPtr&lt;NSImmediateActionGestureRecognizer&gt; _immediateActionRecognizer;
</span><span class="lines">@@ -68,7 +69,7 @@
</span><span class="cx"> 
</span><span class="cx"> - (instancetype)initWithPage:(WebKit::WebPageProxy&amp;)page view:(WKView *)wkView recognizer:(NSImmediateActionGestureRecognizer *)immediateActionRecognizer;
</span><span class="cx"> - (void)willDestroyView:(WKView *)view;
</span><del>-- (void)didPerformActionMenuHitTest:(const WebKit::ActionMenuHitTestResult&amp;)hitTestResult userData:(API::Object*)userData;
</del><ins>+- (void)didPerformActionMenuHitTest:(const WebKit::WebHitTestResult::Data&amp;)hitTestResult contentPreventsDefault:(BOOL)contentPreventsDefault userData:(API::Object*)userData;
</ins><span class="cx"> - (void)dismissContentRelativeChildWindows;
</span><span class="cx"> - (BOOL)hasActiveImmediateAction;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWKImmediateActionControllermm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -82,8 +82,9 @@
</span><span class="cx"> {
</span><span class="cx">     _page = nullptr;
</span><span class="cx">     _wkView = nil;
</span><del>-    _hitTestResult = ActionMenuHitTestResult();
-
</del><ins>+    _hitTestResultData = WebHitTestResult::Data();
+    _contentPreventsDefault = NO;
+    
</ins><span class="cx">     id animationController = [_immediateActionRecognizer animationController];
</span><span class="cx">     if ([animationController isKindOfClass:NSClassFromString(@&quot;QLPreviewMenuItem&quot;)]) {
</span><span class="cx">         QLPreviewMenuItem *menuItem = (QLPreviewMenuItem *)animationController;
</span><span class="lines">@@ -121,7 +122,8 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     _state = ImmediateActionState::None;
</span><del>-    _hitTestResult = ActionMenuHitTestResult();
</del><ins>+    _hitTestResultData = WebHitTestResult::Data();
+    _contentPreventsDefault = NO;
</ins><span class="cx">     _type = kWKImmediateActionNone;
</span><span class="cx">     _currentActionContext = nil;
</span><span class="cx">     _userData = nil;
</span><span class="lines">@@ -129,7 +131,7 @@
</span><span class="cx">     _hasActiveImmediateAction = NO;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-- (void)didPerformActionMenuHitTest:(const ActionMenuHitTestResult&amp;)hitTestResult userData:(API::Object*)userData
</del><ins>+- (void)didPerformActionMenuHitTest:(const WebHitTestResult::Data&amp;)hitTestResult contentPreventsDefault:(BOOL)contentPreventsDefault userData:(API::Object*)userData
</ins><span class="cx"> {
</span><span class="cx">     // If we've already given up on this gesture (either because it was canceled or the
</span><span class="cx">     // willBeginAnimation timeout expired), we shouldn't build a new animationController for it.
</span><span class="lines">@@ -138,7 +140,8 @@
</span><span class="cx"> 
</span><span class="cx">     // FIXME: This needs to use the WebKit2 callback mechanism to avoid out-of-order replies.
</span><span class="cx">     _state = ImmediateActionState::Ready;
</span><del>-    _hitTestResult = hitTestResult;
</del><ins>+    _hitTestResultData = hitTestResult;
+    _contentPreventsDefault = contentPreventsDefault;
</ins><span class="cx">     _userData = userData;
</span><span class="cx"> 
</span><span class="cx">     [self _updateImmediateActionItem];
</span><span class="lines">@@ -213,7 +216,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     _page-&gt;immediateActionDidUpdate();
</span><del>-    if (_hitTestResult.contentPreventsDefault)
</del><ins>+    if (_contentPreventsDefault)
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     _page-&gt;setTextIndicatorAnimationProgress([immediateActionRecognizer animationProgress]);
</span><span class="lines">@@ -249,7 +252,7 @@
</span><span class="cx"> {
</span><span class="cx">     RefPtr&lt;WebHitTestResult&gt; hitTestResult;
</span><span class="cx">     if (_state == ImmediateActionState::Ready)
</span><del>-        hitTestResult = WebHitTestResult::create(_hitTestResult.hitTestResult);
</del><ins>+        hitTestResult = WebHitTestResult::create(_hitTestResultData);
</ins><span class="cx">     else
</span><span class="cx">         hitTestResult = _page-&gt;lastMouseMoveHitTestResult();
</span><span class="cx"> 
</span><span class="lines">@@ -260,7 +263,7 @@
</span><span class="cx"> 
</span><span class="cx"> - (id &lt;NSImmediateActionAnimationController&gt;)_defaultAnimationController
</span><span class="cx"> {
</span><del>-    if (_hitTestResult.contentPreventsDefault) {
</del><ins>+    if (_contentPreventsDefault) {
</ins><span class="cx">         RetainPtr&lt;WebAnimationController&gt; dummyController = [[WebAnimationController alloc] init];
</span><span class="cx">         return dummyController.get();
</span><span class="cx">     }
</span><span class="lines">@@ -274,7 +277,7 @@
</span><span class="cx">     if (!absoluteLinkURL.isEmpty() &amp;&amp; WebCore::protocolIsInHTTPFamily(absoluteLinkURL)) {
</span><span class="cx">         _type = kWKImmediateActionLinkPreview;
</span><span class="cx"> 
</span><del>-        if (TextIndicator *textIndicator = _hitTestResult.linkTextIndicator.get())
</del><ins>+        if (TextIndicator *textIndicator = _hitTestResultData.linkTextIndicator.get())
</ins><span class="cx">             _page-&gt;setTextIndicator(textIndicator-&gt;data(), false);
</span><span class="cx"> 
</span><span class="cx">         RetainPtr&lt;QLPreviewMenuItem&gt; qlPreviewLinkItem = [NSMenuItem standardQuickLookMenuItem];
</span><span class="lines">@@ -305,7 +308,7 @@
</span><span class="cx"> 
</span><span class="cx">     id &lt;NSImmediateActionAnimationController&gt; defaultAnimationController = [self _defaultAnimationController];
</span><span class="cx"> 
</span><del>-    if (_hitTestResult.contentPreventsDefault) {
</del><ins>+    if (_contentPreventsDefault) {
</ins><span class="cx">         [_immediateActionRecognizer.get() setAnimationController:defaultAnimationController];
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="lines">@@ -373,7 +376,7 @@
</span><span class="cx"> 
</span><span class="cx"> - (NSMenuItem *)_menuItemForDataDetectedText
</span><span class="cx"> {
</span><del>-    DDActionContext *actionContext = _hitTestResult.actionContext.get();
</del><ins>+    DDActionContext *actionContext = _hitTestResultData.detectedDataActionContext.get();
</ins><span class="cx">     if (!actionContext)
</span><span class="cx">         return nil;
</span><span class="cx"> 
</span><span class="lines">@@ -385,19 +388,19 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     RefPtr&lt;WebPageProxy&gt; page = _page;
</span><del>-    PageOverlay::PageOverlayID overlayID = _hitTestResult.detectedDataOriginatingPageOverlay;
</del><ins>+    PageOverlay::PageOverlayID overlayID = _hitTestResultData.detectedDataOriginatingPageOverlay;
</ins><span class="cx">     _currentActionContext = [actionContext contextForView:_wkView altMode:YES interactionStartedHandler:^() {
</span><span class="cx">         page-&gt;send(Messages::WebPage::DataDetectorsDidPresentUI(overlayID));
</span><span class="cx">     } interactionChangedHandler:^() {
</span><del>-        if (_hitTestResult.detectedDataTextIndicator)
-            page-&gt;setTextIndicator(_hitTestResult.detectedDataTextIndicator-&gt;data(), false);
</del><ins>+        if (_hitTestResultData.detectedDataTextIndicator)
+            page-&gt;setTextIndicator(_hitTestResultData.detectedDataTextIndicator-&gt;data(), false);
</ins><span class="cx">         page-&gt;send(Messages::WebPage::DataDetectorsDidChangeUI(overlayID));
</span><span class="cx">     } interactionStoppedHandler:^() {
</span><span class="cx">         page-&gt;send(Messages::WebPage::DataDetectorsDidHideUI(overlayID));
</span><span class="cx">         [self _clearImmediateActionState];
</span><span class="cx">     }];
</span><span class="cx"> 
</span><del>-    [_currentActionContext setHighlightFrame:[_wkView.window convertRectToScreen:[_wkView convertRect:_hitTestResult.detectedDataBoundingBox toView:nil]]];
</del><ins>+    [_currentActionContext setHighlightFrame:[_wkView.window convertRectToScreen:[_wkView convertRect:_hitTestResultData.detectedDataBoundingBox toView:nil]]];
</ins><span class="cx"> 
</span><span class="cx">     NSArray *menuItems = [[getDDActionsManagerClass() sharedManager] menuItemsForResult:[_currentActionContext mainResult] actionContext:_currentActionContext.get()];
</span><span class="cx"> 
</span><span class="lines">@@ -417,7 +420,7 @@
</span><span class="cx">     if (!getLULookupDefinitionModuleClass())
</span><span class="cx">         return nil;
</span><span class="cx"> 
</span><del>-    DictionaryPopupInfo dictionaryPopupInfo = _hitTestResult.dictionaryPopupInfo;
</del><ins>+    DictionaryPopupInfo dictionaryPopupInfo = _hitTestResultData.dictionaryPopupInfo;
</ins><span class="cx">     if (!dictionaryPopupInfo.attributedString.string)
</span><span class="cx">         return nil;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2WebKit2xcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -600,8 +600,6 @@
</span><span class="cx">                 2D2ADF0916362DD500197E47 /* PDFPluginTextAnnotation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D2ADF0616362DC700197E47 /* PDFPluginTextAnnotation.mm */; };
</span><span class="cx">                 2D2ADF0B16362DDB00197E47 /* PDFPluginAnnotation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D2ADF031636243500197E47 /* PDFPluginAnnotation.mm */; };
</span><span class="cx">                 2D2ADF1016364D8200197E47 /* PDFPluginChoiceAnnotation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D2ADF0E16364D8200197E47 /* PDFPluginChoiceAnnotation.mm */; };
</span><del>-                2D353B1219F8305D000EEACD /* ActionMenuHitTestResult.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D353B1019F8305D000EEACD /* ActionMenuHitTestResult.mm */; };
-                2D353B1319F8305D000EEACD /* ActionMenuHitTestResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D353B1119F8305D000EEACD /* ActionMenuHitTestResult.h */; };
</del><span class="cx">                 2D3A65DA1A7C3A1F00CAC637 /* WKNavigationActionRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D3A65D81A7C3A1F00CAC637 /* WKNavigationActionRef.cpp */; };
</span><span class="cx">                 2D3A65DB1A7C3A1F00CAC637 /* WKNavigationActionRef.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D3A65D91A7C3A1F00CAC637 /* WKNavigationActionRef.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 2D3A65DE1A7C3A7D00CAC637 /* WKNavigationResponseRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D3A65DC1A7C3A7D00CAC637 /* WKNavigationResponseRef.cpp */; };
</span><span class="lines">@@ -1008,6 +1006,7 @@
</span><span class="cx">                 51ACBB82127A8BAD00D203B9 /* WebContextMenuProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 51ACBB81127A8BAD00D203B9 /* WebContextMenuProxy.h */; };
</span><span class="cx">                 51ACBBA0127A8F2C00D203B9 /* WebContextMenuProxyMac.h in Headers */ = {isa = PBXBuildFile; fileRef = 51ACBB9E127A8F2C00D203B9 /* WebContextMenuProxyMac.h */; };
</span><span class="cx">                 51ACBBA1127A8F2C00D203B9 /* WebContextMenuProxyMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51ACBB9F127A8F2C00D203B9 /* WebContextMenuProxyMac.mm */; };
</span><ins>+                51AD35731AD2F3940057B38E /* WebHitTestResult.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51AD35721AD2F3750057B38E /* WebHitTestResult.mm */; };
</ins><span class="cx">                 51B15A8413843A3900321AD8 /* EnvironmentUtilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51B15A8213843A3900321AD8 /* EnvironmentUtilities.cpp */; };
</span><span class="cx">                 51B15A8513843A3900321AD8 /* EnvironmentUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 51B15A8313843A3900321AD8 /* EnvironmentUtilities.h */; };
</span><span class="cx">                 51BA24441858EE3000EA2811 /* AsyncTask.h in Headers */ = {isa = PBXBuildFile; fileRef = 51BA24431858EE3000EA2811 /* AsyncTask.h */; };
</span><span class="lines">@@ -2758,8 +2757,6 @@
</span><span class="cx">                 2D2ADF0C16363DEC00197E47 /* PDFLayerControllerDetails.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PDFLayerControllerDetails.h; path = PDF/PDFLayerControllerDetails.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 2D2ADF0D16364D8200197E47 /* PDFPluginChoiceAnnotation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PDFPluginChoiceAnnotation.h; path = PDF/PDFPluginChoiceAnnotation.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 2D2ADF0E16364D8200197E47 /* PDFPluginChoiceAnnotation.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PDFPluginChoiceAnnotation.mm; path = PDF/PDFPluginChoiceAnnotation.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                2D353B1019F8305D000EEACD /* ActionMenuHitTestResult.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ActionMenuHitTestResult.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
-                2D353B1119F8305D000EEACD /* ActionMenuHitTestResult.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionMenuHitTestResult.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 2D3A65D81A7C3A1F00CAC637 /* WKNavigationActionRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKNavigationActionRef.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 2D3A65D91A7C3A1F00CAC637 /* WKNavigationActionRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKNavigationActionRef.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 2D3A65DC1A7C3A7D00CAC637 /* WKNavigationResponseRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKNavigationResponseRef.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -3204,6 +3201,7 @@
</span><span class="cx">                 51ACBB9F127A8F2C00D203B9 /* WebContextMenuProxyMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebContextMenuProxyMac.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 51ACC9341628064800342550 /* NetworkProcessMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NetworkProcessMessageReceiver.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 51ACC9351628064800342550 /* NetworkProcessMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetworkProcessMessages.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><ins>+                51AD35721AD2F3750057B38E /* WebHitTestResult.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WebHitTestResult.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</ins><span class="cx">                 51B15A8213843A3900321AD8 /* EnvironmentUtilities.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = EnvironmentUtilities.cpp; path = unix/EnvironmentUtilities.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 51B15A8313843A3900321AD8 /* EnvironmentUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EnvironmentUtilities.h; path = unix/EnvironmentUtilities.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 51BA24431858EE3000EA2811 /* AsyncTask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AsyncTask.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -6522,8 +6520,6 @@
</span><span class="cx">                 BC111B5A112F628200337BAB /* mac */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><del>-                                2D353B1119F8305D000EEACD /* ActionMenuHitTestResult.h */,
-                                2D353B1019F8305D000EEACD /* ActionMenuHitTestResult.mm */,
</del><span class="cx">                                 E179FD9B134D38060015B883 /* ArgumentCodersMac.h */,
</span><span class="cx">                                 E179FD9E134D38250015B883 /* ArgumentCodersMac.mm */,
</span><span class="cx">                                 E1A31731134CEA6C007C9A4F /* AttributedString.h */,
</span><span class="lines">@@ -6571,6 +6567,7 @@
</span><span class="cx">                                 BCE23262122C6CF300D5C35A /* WebCoreArgumentCodersMac.mm */,
</span><span class="cx">                                 BC111B5B112F629800337BAB /* WebEventFactory.h */,
</span><span class="cx">                                 BC111B5C112F629800337BAB /* WebEventFactory.mm */,
</span><ins>+                                51AD35721AD2F3750057B38E /* WebHitTestResult.mm */,
</ins><span class="cx">                                 905620E512BC2476000799B6 /* WebMemorySampler.mac.mm */,
</span><span class="cx">                         );
</span><span class="cx">                         path = mac;
</span><span class="lines">@@ -7607,7 +7604,6 @@
</span><span class="cx">                                 75A8D2C8187CCFAB00C39C9E /* _WKWebsiteDataStore.h in Headers */,
</span><span class="cx">                                 75A8D2D6187D1C0E00C39C9E /* _WKWebsiteDataStoreInternal.h in Headers */,
</span><span class="cx">                                 A115DC72191D82DA00DA8072 /* _WKWebViewPrintFormatter.h in Headers */,
</span><del>-                                2D353B1319F8305D000EEACD /* ActionMenuHitTestResult.h in Headers */,
</del><span class="cx">                                 A7D792D81767CCA300881CBE /* ActivityAssertion.h in Headers */,
</span><span class="cx">                                 BC64697011DBE603006455B0 /* APIArray.h in Headers */,
</span><span class="cx">                                 1A3DD206125E5A2F004515E6 /* APIClient.h in Headers */,
</span><span class="lines">@@ -9378,7 +9374,6 @@
</span><span class="cx">                                 1A81B38018BD66AD0007FDAC /* _WKVisitedLinkProvider.mm in Sources */,
</span><span class="cx">                                 75A8D2C9187CCFAF00C39C9E /* _WKWebsiteDataStore.mm in Sources */,
</span><span class="cx">                                 A115DC71191D82D700DA8072 /* _WKWebViewPrintFormatter.mm in Sources */,
</span><del>-                                2D353B1219F8305D000EEACD /* ActionMenuHitTestResult.mm in Sources */,
</del><span class="cx">                                 A7D792D61767CB6E00881CBE /* ActivityAssertion.cpp in Sources */,
</span><span class="cx">                                 8372DB281A67562800C697C5 /* WebPageDiagnosticLoggingClient.cpp in Sources */,
</span><span class="cx">                                 BC64696F11DBE603006455B0 /* APIArray.cpp in Sources */,
</span><span class="lines">@@ -9766,6 +9761,7 @@
</span><span class="cx">                                 31A505F91680025500A930EB /* WebContextClient.cpp in Sources */,
</span><span class="cx">                                 BC09B8F8147460F7005F5625 /* WebContextConnectionClient.cpp in Sources */,
</span><span class="cx">                                 BCDE059C11CDA8AE00E41AF1 /* WebContextInjectedBundleClient.cpp in Sources */,
</span><ins>+                                51AD35731AD2F3940057B38E /* WebHitTestResult.mm in Sources */,
</ins><span class="cx">                                 51871B5B127CB89D00F76232 /* WebContextMenu.cpp in Sources */,
</span><span class="cx">                                 BC111A5B112F4FBB00337BAB /* WebContextMenuClient.cpp in Sources */,
</span><span class="cx">                                 51021E9C12B16788005C033C /* WebContextMenuClientMac.mm in Sources */,
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPagemacWebPageMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm (182441 => 182442)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm        2015-04-06 22:27:09 UTC (rev 182441)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm        2015-04-06 22:33:57 UTC (rev 182442)
</span><span class="lines">@@ -28,7 +28,6 @@
</span><span class="cx"> 
</span><span class="cx"> #if PLATFORM(MAC)
</span><span class="cx"> 
</span><del>-#import &quot;ActionMenuHitTestResult.h&quot;
</del><span class="cx"> #import &quot;AttributedString.h&quot;
</span><span class="cx"> #import &quot;DataReference.h&quot;
</span><span class="cx"> #import &quot;DictionaryPopupInfo.h&quot;
</span><span class="lines">@@ -45,6 +44,7 @@
</span><span class="cx"> #import &quot;WebEvent.h&quot;
</span><span class="cx"> #import &quot;WebEventConversion.h&quot;
</span><span class="cx"> #import &quot;WebFrame.h&quot;
</span><ins>+#import &quot;WebHitTestResult.h&quot;
</ins><span class="cx"> #import &quot;WebImage.h&quot;
</span><span class="cx"> #import &quot;WebInspector.h&quot;
</span><span class="cx"> #import &quot;WebPageOverlay.h&quot;
</span><span class="lines">@@ -1017,7 +1017,7 @@
</span><span class="cx"> 
</span><span class="cx">     MainFrame&amp; mainFrame = corePage()-&gt;mainFrame();
</span><span class="cx">     if (!mainFrame.view() || !mainFrame.view()-&gt;renderView()) {
</span><del>-        send(Messages::WebPageProxy::DidPerformActionMenuHitTest(ActionMenuHitTestResult(), forImmediateAction, UserData()));
</del><ins>+        send(Messages::WebPageProxy::DidPerformActionMenuHitTest(WebHitTestResult::Data(), forImmediateAction, false, UserData()));
</ins><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -1033,10 +1033,8 @@
</span><span class="cx">             m_lastActionMenuHitTestPreventsDefault = element-&gt;dispatchMouseForceWillBegin();
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    ActionMenuHitTestResult actionMenuResult;
</del><ins>+    WebHitTestResult::Data actionMenuResult(hitTestResult);
</ins><span class="cx">     actionMenuResult.hitTestLocationInViewCooordinates = locationInViewCooordinates;
</span><del>-    actionMenuResult.hitTestResult = WebHitTestResult::Data(hitTestResult);
-    actionMenuResult.contentPreventsDefault = m_lastActionMenuHitTestPreventsDefault;
</del><span class="cx"> 
</span><span class="cx">     RefPtr&lt;Range&gt; selectionRange = corePage()-&gt;focusController().focusedOrMainFrame().selection().selection().firstRange();
</span><span class="cx"> 
</span><span class="lines">@@ -1086,7 +1084,7 @@
</span><span class="cx">             continue;
</span><span class="cx"> 
</span><span class="cx">         pageOverlayDidOverrideDataDetectors = true;
</span><del>-        actionMenuResult.actionContext = actionContext;
</del><ins>+        actionMenuResult.detectedDataActionContext = actionContext;
</ins><span class="cx"> 
</span><span class="cx">         Vector&lt;FloatQuad&gt; quads;
</span><span class="cx">         mainResultRange-&gt;textQuads(quads);
</span><span class="lines">@@ -1107,8 +1105,8 @@
</span><span class="cx">     if (!pageOverlayDidOverrideDataDetectors &amp;&amp; hitTestResult.innerNode() &amp;&amp; hitTestResult.innerNode()-&gt;isTextNode()) {
</span><span class="cx">         FloatRect detectedDataBoundingBox;
</span><span class="cx">         RefPtr&lt;Range&gt; detectedDataRange;
</span><del>-        actionMenuResult.actionContext = DataDetection::detectItemAroundHitTestResult(hitTestResult, detectedDataBoundingBox, detectedDataRange);
-        if (actionMenuResult.actionContext &amp;&amp; detectedDataRange) {
</del><ins>+        actionMenuResult.detectedDataActionContext = DataDetection::detectItemAroundHitTestResult(hitTestResult, detectedDataBoundingBox, detectedDataRange);
+        if (actionMenuResult.detectedDataActionContext &amp;&amp; detectedDataRange) {
</ins><span class="cx">             actionMenuResult.detectedDataBoundingBox = detectedDataBoundingBox;
</span><span class="cx">             actionMenuResult.detectedDataTextIndicator = TextIndicator::createWithRange(*detectedDataRange, textIndicatorTransitionForActionMenu(selectionRange.get(), *detectedDataRange, forImmediateAction, true));
</span><span class="cx">             m_lastActionMenuRangeForSelection = detectedDataRange;
</span><span class="lines">@@ -1118,7 +1116,7 @@
</span><span class="cx">     RefPtr&lt;API::Object&gt; userData;
</span><span class="cx">     injectedBundleContextMenuClient().prepareForActionMenu(*this, hitTestResult, userData);
</span><span class="cx"> 
</span><del>-    send(Messages::WebPageProxy::DidPerformActionMenuHitTest(actionMenuResult, forImmediateAction, UserData(WebProcess::singleton().transformObjectsToHandles(userData.get()).get())));
</del><ins>+    send(Messages::WebPageProxy::DidPerformActionMenuHitTest(actionMenuResult, forImmediateAction, m_lastActionMenuHitTestPreventsDefault, UserData(WebProcess::singleton().transformObjectsToHandles(userData.get()).get())));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> PassRefPtr&lt;WebCore::Range&gt; WebPage::lookupTextAtLocation(FloatPoint locationInViewCooordinates, NSDictionary **options)
</span></span></pre>
</div>
</div>

</body>
</html>