<!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>[178630] 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/178630">178630</a></dd>
<dt>Author</dt> <dd>cdumez@apple.com</dd>
<dt>Date</dt> <dd>2015-01-17 17:41:15 -0800 (Sat, 17 Jan 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>[WK2][iOS] Add Cocoa delegate for logging diagnostic messages
https://bugs.webkit.org/show_bug.cgi?id=140410

Reviewed by Sam Weinig.

Add Cocoa delegate for logging diagnostic messages.

* UIProcess/API/APIDiagnosticLoggingClient.h: Copied from Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h.
(API::DiagnosticLoggingClient::~DiagnosticLoggingClient):
(API::DiagnosticLoggingClient::logDiagnosticMessage):
(API::DiagnosticLoggingClient::logDiagnosticMessageWithResult):
(API::DiagnosticLoggingClient::logDiagnosticMessageWithValue):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageDiagnosticLoggingClient):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView _diagnosticLoggingDelegate]):
(-[WKWebView _setDiagnosticLoggingDelegate:]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
* UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h: Copied from Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h.
* UIProcess/Cocoa/DiagnosticLoggingClient.h: Copied from Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h.
* UIProcess/Cocoa/DiagnosticLoggingClient.mm: Added.
(WebKit::DiagnosticLoggingClient::DiagnosticLoggingClient):
(WebKit::DiagnosticLoggingClient::delegate):
(WebKit::DiagnosticLoggingClient::setDelegate):
(WebKit::DiagnosticLoggingClient::logDiagnosticMessage):
(WebKit::DiagnosticLoggingClient::logDiagnosticMessageWithResult):
(WebKit::DiagnosticLoggingClient::logDiagnosticMessageWithValue):
* UIProcess/WebPageDiagnosticLoggingClient.cpp:
(WebKit::WebPageDiagnosticLoggingClient::WebPageDiagnosticLoggingClient):
* UIProcess/WebPageDiagnosticLoggingClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setDiagnosticLoggingClient):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::logDiagnosticMessage):
(WebKit::WebPageProxy::logDiagnosticMessageWithResult):
(WebKit::WebPageProxy::logDiagnosticMessageWithValue):
(WebKit::WebPageProxy::initializeDiagnosticLoggingClient): Deleted.
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::diagnosticLoggingClient):
* WebKit2.xcodeproj/project.pbxproj:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICWKPagecpp">trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICocoaWKWebViewmm">trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICocoaWKWebViewPrivateh">trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageDiagnosticLoggingClientcpp">trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageDiagnosticLoggingClienth">trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.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="#trunkSourceWebKit2WebKit2xcodeprojprojectpbxproj">trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2UIProcessAPIAPIDiagnosticLoggingClienth">trunk/Source/WebKit2/UIProcess/API/APIDiagnosticLoggingClient.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICocoa_WKDiagnosticLoggingDelegateh">trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessCocoaDiagnosticLoggingClienth">trunk/Source/WebKit2/UIProcess/Cocoa/DiagnosticLoggingClient.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessCocoaDiagnosticLoggingClientmm">trunk/Source/WebKit2/UIProcess/Cocoa/DiagnosticLoggingClient.mm</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/ChangeLog        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -1,3 +1,48 @@
</span><ins>+2015-01-17  Chris Dumez  &lt;cdumez@apple.com&gt;
+
+        [WK2][iOS] Add Cocoa delegate for logging diagnostic messages
+        https://bugs.webkit.org/show_bug.cgi?id=140410
+
+        Reviewed by Sam Weinig.
+
+        Add Cocoa delegate for logging diagnostic messages.
+
+        * UIProcess/API/APIDiagnosticLoggingClient.h: Copied from Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h.
+        (API::DiagnosticLoggingClient::~DiagnosticLoggingClient):
+        (API::DiagnosticLoggingClient::logDiagnosticMessage):
+        (API::DiagnosticLoggingClient::logDiagnosticMessageWithResult):
+        (API::DiagnosticLoggingClient::logDiagnosticMessageWithValue):
+        * UIProcess/API/C/WKPage.cpp:
+        (WKPageSetPageDiagnosticLoggingClient):
+        * UIProcess/API/Cocoa/WKWebView.mm:
+        (-[WKWebView initWithFrame:configuration:]):
+        (-[WKWebView _diagnosticLoggingDelegate]):
+        (-[WKWebView _setDiagnosticLoggingDelegate:]):
+        * UIProcess/API/Cocoa/WKWebViewPrivate.h:
+        * UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h: Copied from Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h.
+        * UIProcess/Cocoa/DiagnosticLoggingClient.h: Copied from Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h.
+        * UIProcess/Cocoa/DiagnosticLoggingClient.mm: Added.
+        (WebKit::DiagnosticLoggingClient::DiagnosticLoggingClient):
+        (WebKit::DiagnosticLoggingClient::delegate):
+        (WebKit::DiagnosticLoggingClient::setDelegate):
+        (WebKit::DiagnosticLoggingClient::logDiagnosticMessage):
+        (WebKit::DiagnosticLoggingClient::logDiagnosticMessageWithResult):
+        (WebKit::DiagnosticLoggingClient::logDiagnosticMessageWithValue):
+        * UIProcess/WebPageDiagnosticLoggingClient.cpp:
+        (WebKit::WebPageDiagnosticLoggingClient::WebPageDiagnosticLoggingClient):
+        * UIProcess/WebPageDiagnosticLoggingClient.h:
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::WebPageProxy):
+        (WebKit::WebPageProxy::setDiagnosticLoggingClient):
+        (WebKit::WebPageProxy::close):
+        (WebKit::WebPageProxy::logDiagnosticMessage):
+        (WebKit::WebPageProxy::logDiagnosticMessageWithResult):
+        (WebKit::WebPageProxy::logDiagnosticMessageWithValue):
+        (WebKit::WebPageProxy::initializeDiagnosticLoggingClient): Deleted.
+        * UIProcess/WebPageProxy.h:
+        (WebKit::WebPageProxy::diagnosticLoggingClient):
+        * WebKit2.xcodeproj/project.pbxproj:
+
</ins><span class="cx"> 2015-01-17  David Kilzer  &lt;ddkilzer@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         REGRESSION (r178618): Change to WKWebViewConfiguration broke iOS build
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPIAPIDiagnosticLoggingClienthfromrev178629trunkSourceWebKit2UIProcessWebPageDiagnosticLoggingClienth"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebKit2/UIProcess/API/APIDiagnosticLoggingClient.h (from rev 178629, trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h) (0 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/APIDiagnosticLoggingClient.h                                (rev 0)
+++ trunk/Source/WebKit2/UIProcess/API/APIDiagnosticLoggingClient.h        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -0,0 +1,50 @@
</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.
+ */
+
+#ifndef APIDiagnosticLoggingClient_h
+#define APIDiagnosticLoggingClient_h
+
+#include &lt;WebCore/DiagnosticLoggingResultType.h&gt;
+#include &lt;wtf/text/WTFString.h&gt;
+
+namespace WebKit {
+class WebPageProxy;
+}
+
+namespace API {
+
+class DiagnosticLoggingClient {
+public:
+    virtual ~DiagnosticLoggingClient() { }
+
+    virtual void logDiagnosticMessage(WebKit::WebPageProxy*, const WTF::String&amp; message, const WTF::String&amp; description) { UNUSED_PARAM(message); UNUSED_PARAM(description); }
+    virtual void logDiagnosticMessageWithResult(WebKit::WebPageProxy*, const WTF::String&amp; message, const WTF::String&amp; description, WebCore::DiagnosticLoggingResultType) { UNUSED_PARAM(message); UNUSED_PARAM(description); }
+    virtual void logDiagnosticMessageWithValue(WebKit::WebPageProxy*, const WTF::String&amp; message, const WTF::String&amp; description, const WTF::String&amp; value) { UNUSED_PARAM(message); UNUSED_PARAM(description); UNUSED_PARAM(value); }
+};
+
+} // namespace API
+
+#endif // APIDiagnosticLoggingClient_h
+
</ins></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICWKPagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -729,7 +729,7 @@
</span><span class="cx"> 
</span><span class="cx"> void WKPageSetPageDiagnosticLoggingClient(WKPageRef pageRef, const WKPageDiagnosticLoggingClientBase* wkClient)
</span><span class="cx"> {
</span><del>-    toImpl(pageRef)-&gt;initializeDiagnosticLoggingClient(wkClient);
</del><ins>+    toImpl(pageRef)-&gt;setDiagnosticLoggingClient(std::make_unique&lt;WebPageDiagnosticLoggingClient&gt;(wkClient));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WKPageSetPageFindClient(WKPageRef pageRef, const WKPageFindClientBase* wkClient)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoaWKWebViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -31,6 +31,7 @@
</span><span class="cx"> #import &quot;APIFormClient.h&quot;
</span><span class="cx"> #import &quot;APISerializedScriptValue.h&quot;
</span><span class="cx"> #import &quot;CompletionHandlerCallChecker.h&quot;
</span><ins>+#import &quot;DiagnosticLoggingClient.h&quot;
</ins><span class="cx"> #import &quot;FindClient.h&quot;
</span><span class="cx"> #import &quot;LegacySessionStateCoding.h&quot;
</span><span class="cx"> #import &quot;NavigationState.h&quot;
</span><span class="lines">@@ -66,6 +67,7 @@
</span><span class="cx"> #import &quot;WebPreferencesKeys.h&quot;
</span><span class="cx"> #import &quot;WebProcessPool.h&quot;
</span><span class="cx"> #import &quot;WebProcessProxy.h&quot;
</span><ins>+#import &quot;_WKDiagnosticLoggingDelegate.h&quot;
</ins><span class="cx"> #import &quot;_WKFindDelegate.h&quot;
</span><span class="cx"> #import &quot;_WKFormDelegate.h&quot;
</span><span class="cx"> #import &quot;_WKRemoteObjectRegistryInternal.h&quot;
</span><span class="lines">@@ -362,6 +364,7 @@
</span><span class="cx">     _page-&gt;setUIClient(_uiDelegate-&gt;createUIClient());
</span><span class="cx"> 
</span><span class="cx">     _page-&gt;setFindClient(std::make_unique&lt;WebKit::FindClient&gt;(self));
</span><ins>+    _page-&gt;setDiagnosticLoggingClient(std::make_unique&lt;WebKit::DiagnosticLoggingClient&gt;(self));
</ins><span class="cx"> 
</span><span class="cx">     pageToViewMap().add(_page.get(), self);
</span><span class="cx"> 
</span><span class="lines">@@ -1970,6 +1973,16 @@
</span><span class="cx">     _page-&gt;setPageZoomFactor(zoomFactor);
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+- (id &lt;_WKDiagnosticLoggingDelegate&gt;)_diagnosticLoggingDelegate
+{
+    return [static_cast&lt;WebKit::DiagnosticLoggingClient&amp;&gt;(_page-&gt;diagnosticLoggingClient()).delegate().leakRef() autorelease];
+}
+
+- (void)_setDiagnosticLoggingDelegate:(id&lt;_WKDiagnosticLoggingDelegate&gt;)diagnosticLoggingDelegate
+{
+    static_cast&lt;WebKit::DiagnosticLoggingClient&amp;&gt;(_page-&gt;diagnosticLoggingClient()).setDelegate(diagnosticLoggingDelegate);
+}
+
</ins><span class="cx"> - (id &lt;_WKFindDelegate&gt;)_findDelegate
</span><span class="cx"> {
</span><span class="cx">     return [static_cast&lt;WebKit::FindClient&amp;&gt;(_page-&gt;findClient()).delegate().leakRef() autorelease];
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoaWKWebViewPrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -55,6 +55,7 @@
</span><span class="cx"> @class _WKWebViewPrintFormatter;
</span><span class="cx"> 
</span><span class="cx"> @protocol WKHistoryDelegatePrivate;
</span><ins>+@protocol _WKDiagnosticLoggingDelegate;
</ins><span class="cx"> @protocol _WKFindDelegate;
</span><span class="cx"> @protocol _WKFormDelegate;
</span><span class="cx"> 
</span><span class="lines">@@ -175,6 +176,7 @@
</span><span class="cx"> @property (nonatomic, setter=_setTextZoomFactor:) double _textZoomFactor;
</span><span class="cx"> @property (nonatomic, setter=_setPageZoomFactor:) double _pageZoomFactor;
</span><span class="cx"> 
</span><ins>+@property (nonatomic, weak, setter=_setDiagnosticLoggingDelegate:) id &lt;_WKDiagnosticLoggingDelegate&gt; _diagnosticLoggingDelegate WK_AVAILABLE(WK_MAC_TBA, WK_IOS_TBA);
</ins><span class="cx"> @property (nonatomic, weak, setter=_setFindDelegate:) id &lt;_WKFindDelegate&gt; _findDelegate;
</span><span class="cx"> - (void)_findString:(NSString *)string options:(_WKFindOptions)options maxCount:(NSUInteger)maxCount;
</span><span class="cx"> - (void)_countStringMatches:(NSString *)string options:(_WKFindOptions)options maxCount:(NSUInteger)maxCount;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoa_WKDiagnosticLoggingDelegatehfromrev178629trunkSourceWebKit2UIProcessWebPageDiagnosticLoggingClienth"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h (from rev 178629, trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h) (0 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h                                (rev 0)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -0,0 +1,43 @@
</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 &lt;WebKit/WKFoundation.h&gt;
+
+#if WK_API_ENABLED
+
+#import &lt;Foundation/Foundation.h&gt;
+#import &lt;WebKit/WKDiagnosticLoggingResultType.h&gt;
+
+@protocol _WKDiagnosticLoggingDelegate &lt;NSObject&gt;
+@optional
+
+- (void)_webView:(WKWebView *)webView logDiagnosticMessage:(NSString *)message description:(NSString *)description;
+- (void)_webView:(WKWebView *)webView logDiagnosticMessageWithResult:(NSString *)message description:(NSString *)description result:(WKDiagnosticLoggingResultType)result;
+- (void)_webView:(WKWebView *)webView logDiagnosticMessageWithValue:(NSString *)message description:(NSString *)description value:(NSString *) value;
+
+@end
+
+#endif // WK_API_ENABLED
+
</ins></span></pre></div>
<a id="trunkSourceWebKit2UIProcessCocoaDiagnosticLoggingClienthfromrev178629trunkSourceWebKit2UIProcessWebPageDiagnosticLoggingClienth"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebKit2/UIProcess/Cocoa/DiagnosticLoggingClient.h (from rev 178629, trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h) (0 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Cocoa/DiagnosticLoggingClient.h                                (rev 0)
+++ trunk/Source/WebKit2/UIProcess/Cocoa/DiagnosticLoggingClient.h        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -0,0 +1,70 @@
</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.
+ */
+
+#ifndef DiagnosticLoggingClient_h
+#define DiagnosticLoggingClient_h
+
+#import &quot;WKFoundation.h&quot;
+
+#if WK_API_ENABLED
+
+#import &quot;APIDiagnosticLoggingClient.h&quot;
+#import &quot;WeakObjCPtr.h&quot;
+#import &lt;WebCore/DiagnosticLoggingResultType.h&gt;
+
+@class WKWebView;
+@protocol _WKDiagnosticLoggingDelegate;
+
+namespace WebKit {
+
+class DiagnosticLoggingClient final : public API::DiagnosticLoggingClient {
+public:
+    explicit DiagnosticLoggingClient(WKWebView *);
+
+    RetainPtr&lt;id &lt;_WKDiagnosticLoggingDelegate&gt;&gt; delegate();
+    void setDelegate(id &lt;_WKDiagnosticLoggingDelegate&gt;);
+
+private:
+    // From API::DiagnosticLoggingClient
+    virtual void logDiagnosticMessage(WebPageProxy*, const String&amp; message, const String&amp; description) override;
+    virtual void logDiagnosticMessageWithResult(WebPageProxy*, const String&amp; message, const String&amp; description, WebCore::DiagnosticLoggingResultType) override;
+    virtual void logDiagnosticMessageWithValue(WebPageProxy*, const String&amp; message, const String&amp; description, const String&amp; value) override;
+
+    WKWebView *m_webView;
+    WeakObjCPtr&lt;id &lt;_WKDiagnosticLoggingDelegate&gt;&gt; m_delegate;
+
+    struct {
+        unsigned webviewLogDiagnosticMessage : 1;
+        unsigned webviewLogDiagnosticMessageWithResult : 1;
+        unsigned webviewLogDiagnosticMessageWithValue : 1;
+    } m_delegateMethods;
+};
+
+} // WebKit
+
+#endif // WK_API_ENABLED
+
+#endif // DiagnosticLoggingClient_h
+
</ins></span></pre></div>
<a id="trunkSourceWebKit2UIProcessCocoaDiagnosticLoggingClientmm"></a>
<div class="addfile"><h4>Added: trunk/Source/WebKit2/UIProcess/Cocoa/DiagnosticLoggingClient.mm (0 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Cocoa/DiagnosticLoggingClient.mm                                (rev 0)
+++ trunk/Source/WebKit2/UIProcess/Cocoa/DiagnosticLoggingClient.mm        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -0,0 +1,75 @@
</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;DiagnosticLoggingClient.h&quot;
+
+#if WK_API_ENABLED
+
+#import &quot;WKSharedAPICast.h&quot;
+#import &quot;_WKDiagnosticLoggingDelegate.h&quot;
+
+namespace WebKit {
+
+DiagnosticLoggingClient::DiagnosticLoggingClient(WKWebView *webView)
+    : m_webView(webView)
+{
+}
+
+RetainPtr&lt;id &lt;_WKDiagnosticLoggingDelegate&gt;&gt; DiagnosticLoggingClient::delegate()
+{
+    return m_delegate.get();
+}
+
+void DiagnosticLoggingClient::setDelegate(id &lt;_WKDiagnosticLoggingDelegate&gt; delegate)
+{
+    m_delegate = delegate;
+
+    m_delegateMethods.webviewLogDiagnosticMessage = [delegate respondsToSelector:@selector(_webView:logDiagnosticMessage:description:)];
+    m_delegateMethods.webviewLogDiagnosticMessageWithResult = [delegate respondsToSelector:@selector(_webView:logDiagnosticMessageWithResult:description:result:)];
+    m_delegateMethods.webviewLogDiagnosticMessageWithValue = [delegate respondsToSelector:@selector(_webView:logDiagnosticMessageWithValue:description:value:)];
+}
+
+void DiagnosticLoggingClient::logDiagnosticMessage(WebKit::WebPageProxy*, const WTF::String&amp; message, const WTF::String&amp; description)
+{
+    if (m_delegateMethods.webviewLogDiagnosticMessage)
+        [m_delegate.get() _webView:m_webView logDiagnosticMessage:message description:description];
+}
+
+void DiagnosticLoggingClient::logDiagnosticMessageWithResult(WebKit::WebPageProxy*, const WTF::String&amp; message, const WTF::String&amp; description, WebCore::DiagnosticLoggingResultType result)
+{
+    if (m_delegateMethods.webviewLogDiagnosticMessageWithResult)
+        [m_delegate.get() _webView:m_webView logDiagnosticMessageWithResult:message description:description result:toAPI(result)];
+}
+
+void DiagnosticLoggingClient::logDiagnosticMessageWithValue(WebKit::WebPageProxy*, const WTF::String&amp; message, const WTF::String&amp; description, const WTF::String&amp; value)
+{
+    if (m_delegateMethods.webviewLogDiagnosticMessageWithValue)
+        [m_delegate.get() _webView:m_webView logDiagnosticMessageWithValue:message description:description value:value];
+}
+
+} // namespace WebKit
+
+#endif // WK_API_ENABLED
</ins></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageDiagnosticLoggingClientcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.cpp (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.cpp        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.cpp        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -32,6 +32,11 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> 
</span><ins>+WebPageDiagnosticLoggingClient::WebPageDiagnosticLoggingClient(const WKPageDiagnosticLoggingClientBase* client)
+{
+    initialize(client);
+}
+
</ins><span class="cx"> void WebPageDiagnosticLoggingClient::logDiagnosticMessage(WebPageProxy* page, const String&amp; message, const String&amp; description)
</span><span class="cx"> {
</span><span class="cx">     if (!m_client.logDiagnosticMessage)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageDiagnosticLoggingClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/UIProcess/WebPageDiagnosticLoggingClient.h        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -27,6 +27,7 @@
</span><span class="cx"> #define WebPageDiagnosticLoggingClient_h
</span><span class="cx"> 
</span><span class="cx"> #include &quot;APIClient.h&quot;
</span><ins>+#include &quot;APIDiagnosticLoggingClient.h&quot;
</ins><span class="cx"> #include &quot;WKPage.h&quot;
</span><span class="cx"> #include &lt;WebCore/DiagnosticLoggingResultType.h&gt;
</span><span class="cx"> #include &lt;wtf/Forward.h&gt;
</span><span class="lines">@@ -43,11 +44,13 @@
</span><span class="cx"> 
</span><span class="cx"> class WebPageProxy;
</span><span class="cx"> 
</span><del>-class WebPageDiagnosticLoggingClient : public API::Client&lt;WKPageDiagnosticLoggingClientBase&gt; {
</del><ins>+class WebPageDiagnosticLoggingClient final : public API::Client&lt;WKPageDiagnosticLoggingClientBase&gt;, public API::DiagnosticLoggingClient {
</ins><span class="cx"> public:
</span><del>-    void logDiagnosticMessage(WebPageProxy*, const String&amp; message, const String&amp; description);
-    void logDiagnosticMessageWithResult(WebPageProxy*, const String&amp; message, const String&amp; description, WebCore::DiagnosticLoggingResultType);
-    void logDiagnosticMessageWithValue(WebPageProxy*, const String&amp; message, const String&amp; description, const String&amp; value);
</del><ins>+    explicit WebPageDiagnosticLoggingClient(const WKPageDiagnosticLoggingClientBase*);
+
+    virtual void logDiagnosticMessage(WebPageProxy*, const String&amp; message, const String&amp; description) override;
+    virtual void logDiagnosticMessageWithResult(WebPageProxy*, const String&amp; message, const String&amp; description, WebCore::DiagnosticLoggingResultType) override;
+    virtual void logDiagnosticMessageWithValue(WebPageProxy*, const String&amp; message, const String&amp; description, const String&amp; value) override;
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> } // namespace WebKit
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -264,6 +264,7 @@
</span><span class="cx">     , m_formClient(std::make_unique&lt;API::FormClient&gt;())
</span><span class="cx">     , m_uiClient(std::make_unique&lt;API::UIClient&gt;())
</span><span class="cx">     , m_findClient(std::make_unique&lt;API::FindClient&gt;())
</span><ins>+    , m_diagnosticLoggingClient(std::make_unique&lt;API::DiagnosticLoggingClient&gt;())
</ins><span class="cx">     , m_navigationState(std::make_unique&lt;WebNavigationState&gt;())
</span><span class="cx">     , m_process(process)
</span><span class="cx">     , m_pageGroup(*configuration.pageGroup)
</span><span class="lines">@@ -553,9 +554,14 @@
</span><span class="cx">     m_findMatchesClient.initialize(client);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void WebPageProxy::initializeDiagnosticLoggingClient(const WKPageDiagnosticLoggingClientBase* client)
</del><ins>+void WebPageProxy::setDiagnosticLoggingClient(std::unique_ptr&lt;API::DiagnosticLoggingClient&gt; diagnosticLoggingClient)
</ins><span class="cx"> {
</span><del>-    m_diagnosticLoggingClient.initialize(client);
</del><ins>+    if (!diagnosticLoggingClient) {
+        m_diagnosticLoggingClient = std::make_unique&lt;API::DiagnosticLoggingClient&gt;();
+        return;
+    }
+
+    m_diagnosticLoggingClient = WTF::move(diagnosticLoggingClient);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(CONTEXT_MENUS)
</span><span class="lines">@@ -716,7 +722,7 @@
</span><span class="cx"> #endif
</span><span class="cx">     m_findClient = std::make_unique&lt;API::FindClient&gt;();
</span><span class="cx">     m_findMatchesClient.initialize(nullptr);
</span><del>-    m_diagnosticLoggingClient.initialize(nullptr);
</del><ins>+    m_diagnosticLoggingClient = std::make_unique&lt;API::DiagnosticLoggingClient&gt;();
</ins><span class="cx"> #if ENABLE(CONTEXT_MENUS)
</span><span class="cx">     m_contextMenuClient.initialize(nullptr);
</span><span class="cx"> #endif
</span><span class="lines">@@ -4391,17 +4397,17 @@
</span><span class="cx"> 
</span><span class="cx"> void WebPageProxy::logDiagnosticMessage(const String&amp; message, const String&amp; description)
</span><span class="cx"> {
</span><del>-    m_diagnosticLoggingClient.logDiagnosticMessage(this, message, description);
</del><ins>+    m_diagnosticLoggingClient-&gt;logDiagnosticMessage(this, message, description);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebPageProxy::logDiagnosticMessageWithResult(const String&amp; message, const String&amp; description, uint32_t result)
</span><span class="cx"> {
</span><del>-    m_diagnosticLoggingClient.logDiagnosticMessageWithResult(this, message, description, static_cast&lt;WebCore::DiagnosticLoggingResultType&gt;(result));
</del><ins>+    m_diagnosticLoggingClient-&gt;logDiagnosticMessageWithResult(this, message, description, static_cast&lt;WebCore::DiagnosticLoggingResultType&gt;(result));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebPageProxy::logDiagnosticMessageWithValue(const String&amp; message, const String&amp; description, const String&amp; value)
</span><span class="cx"> {
</span><del>-    m_diagnosticLoggingClient.logDiagnosticMessageWithValue(this, message, description, value);
</del><ins>+    m_diagnosticLoggingClient-&gt;logDiagnosticMessageWithValue(this, message, description, value);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebPageProxy::rectForCharacterRangeCallback(const IntRect&amp; rect, const EditingRange&amp; actualRange, uint64_t callbackID)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxyh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.h (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.h        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.h        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -311,8 +311,9 @@
</span><span class="cx"> #endif
</span><span class="cx">     API::FindClient&amp; findClient() { return *m_findClient; }
</span><span class="cx">     void setFindClient(std::unique_ptr&lt;API::FindClient&gt;);
</span><ins>+    API::DiagnosticLoggingClient&amp; diagnosticLoggingClient() { return *m_diagnosticLoggingClient; }
+    void setDiagnosticLoggingClient(std::unique_ptr&lt;API::DiagnosticLoggingClient&gt;);
</ins><span class="cx">     void initializeFindMatchesClient(const WKPageFindMatchesClientBase*);
</span><del>-    void initializeDiagnosticLoggingClient(const WKPageDiagnosticLoggingClientBase*);
</del><span class="cx">     void setFormClient(std::unique_ptr&lt;API::FormClient&gt;);
</span><span class="cx">     void setLoaderClient(std::unique_ptr&lt;API::LoaderClient&gt;);
</span><span class="cx">     void setPolicyClient(std::unique_ptr&lt;API::PolicyClient&gt;);
</span><span class="lines">@@ -1367,7 +1368,7 @@
</span><span class="cx"> #endif
</span><span class="cx">     std::unique_ptr&lt;API::FindClient&gt; m_findClient;
</span><span class="cx">     WebFindMatchesClient m_findMatchesClient;
</span><del>-    WebPageDiagnosticLoggingClient m_diagnosticLoggingClient;
</del><ins>+    std::unique_ptr&lt;API::DiagnosticLoggingClient&gt; m_diagnosticLoggingClient;
</ins><span class="cx"> #if ENABLE(CONTEXT_MENUS)
</span><span class="cx">     WebPageContextMenuClient m_contextMenuClient;
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2WebKit2xcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj (178629 => 178630)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj        2015-01-18 00:20:49 UTC (rev 178629)
+++ trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj        2015-01-18 01:41:15 UTC (rev 178630)
</span><span class="lines">@@ -1119,6 +1119,10 @@
</span><span class="cx">                 8372DB281A67562800C697C5 /* WebPageDiagnosticLoggingClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8372DB261A67562800C697C5 /* WebPageDiagnosticLoggingClient.cpp */; };
</span><span class="cx">                 8372DB291A67562800C697C5 /* WebPageDiagnosticLoggingClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 8372DB271A67562800C697C5 /* WebPageDiagnosticLoggingClient.h */; };
</span><span class="cx">                 8372DB2F1A677D4A00C697C5 /* WKDiagnosticLoggingResultType.h in Headers */ = {isa = PBXBuildFile; fileRef = 8372DB2E1A677D4A00C697C5 /* WKDiagnosticLoggingResultType.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><ins>+                83891B631A68B3420030F386 /* APIDiagnosticLoggingClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 83891B621A68B3420030F386 /* APIDiagnosticLoggingClient.h */; };
+                83891B691A68BEBC0030F386 /* _WKDiagnosticLoggingDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 83891B681A68BEBC0030F386 /* _WKDiagnosticLoggingDelegate.h */; settings = {ATTRIBUTES = (Private, ); }; };
+                83891B6C1A68C30B0030F386 /* DiagnosticLoggingClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 83891B6A1A68C30B0030F386 /* DiagnosticLoggingClient.h */; };
+                83891B6D1A68C30B0030F386 /* DiagnosticLoggingClient.mm in Sources */ = {isa = PBXBuildFile; fileRef = 83891B6B1A68C30B0030F386 /* DiagnosticLoggingClient.mm */; };
</ins><span class="cx">                 84477853176FCC0800CDC7BB /* InjectedBundleHitTestResultMediaType.h in Headers */ = {isa = PBXBuildFile; fileRef = 84477851176FCAC100CDC7BB /* InjectedBundleHitTestResultMediaType.h */; };
</span><span class="cx">                 868160D0187645570021E79D /* WindowServerConnection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 868160CF187645370021E79D /* WindowServerConnection.mm */; };
</span><span class="cx">                 86E67A251910B9D100004AB7 /* ProcessThrottler.h in Headers */ = {isa = PBXBuildFile; fileRef = 86E67A21190F411800004AB7 /* ProcessThrottler.h */; };
</span><span class="lines">@@ -3241,6 +3245,10 @@
</span><span class="cx">                 8372DB261A67562800C697C5 /* WebPageDiagnosticLoggingClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebPageDiagnosticLoggingClient.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 8372DB271A67562800C697C5 /* WebPageDiagnosticLoggingClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPageDiagnosticLoggingClient.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 8372DB2E1A677D4A00C697C5 /* WKDiagnosticLoggingResultType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKDiagnosticLoggingResultType.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><ins>+                83891B621A68B3420030F386 /* APIDiagnosticLoggingClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = APIDiagnosticLoggingClient.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                83891B681A68BEBC0030F386 /* _WKDiagnosticLoggingDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKDiagnosticLoggingDelegate.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                83891B6A1A68C30B0030F386 /* DiagnosticLoggingClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DiagnosticLoggingClient.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+                83891B6B1A68C30B0030F386 /* DiagnosticLoggingClient.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DiagnosticLoggingClient.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</ins><span class="cx">                 84477851176FCAC100CDC7BB /* InjectedBundleHitTestResultMediaType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundleHitTestResultMediaType.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 868160CD18763D4B0021E79D /* WindowServerConnection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WindowServerConnection.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 868160CF187645370021E79D /* WindowServerConnection.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WindowServerConnection.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -4730,6 +4738,8 @@
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><span class="cx">                                 517DD5BB180DA7C40081660B /* Databases */,
</span><ins>+                                83891B6A1A68C30B0030F386 /* DiagnosticLoggingClient.h */,
+                                83891B6B1A68C30B0030F386 /* DiagnosticLoggingClient.mm */,
</ins><span class="cx">                                 A1DF631118E0B7C8003A3E2A /* DownloadClient.h */,
</span><span class="cx">                                 A1DF631018E0B7C8003A3E2A /* DownloadClient.mm */,
</span><span class="cx">                                 00B9661818E25AE100CE1F88 /* FindClient.h */,
</span><span class="lines">@@ -5131,6 +5141,7 @@
</span><span class="cx">                                 37A5E01218BBF937000A081E /* _WKActivatedElementInfo.h */,
</span><span class="cx">                                 37A5E01118BBF937000A081E /* _WKActivatedElementInfo.mm */,
</span><span class="cx">                                 379A873518BBFA4300588AF2 /* _WKActivatedElementInfoInternal.h */,
</span><ins>+                                83891B681A68BEBC0030F386 /* _WKDiagnosticLoggingDelegate.h */,
</ins><span class="cx">                                 A1A4FE5718DCE9FA00B5EA8A /* _WKDownload.h */,
</span><span class="cx">                                 A1A4FE5818DCE9FA00B5EA8A /* _WKDownload.mm */,
</span><span class="cx">                                 A1A4FE6018DD54A400B5EA8A /* _WKDownloadDelegate.h */,
</span><span class="lines">@@ -6069,6 +6080,7 @@
</span><span class="cx">                                 BC8A501311765F4500757573 /* cpp */,
</span><span class="cx">                                 2DA944771884E3AB00ED86DB /* ios */,
</span><span class="cx">                                 BC111B47112F616900337BAB /* mac */,
</span><ins>+                                83891B621A68B3420030F386 /* APIDiagnosticLoggingClient.h */,
</ins><span class="cx">                                 1F7D36C018DA513F00D9D659 /* APIDownloadClient.h */,
</span><span class="cx">                                 00B9661518E24CBA00CE1F88 /* APIFindClient.h */,
</span><span class="cx">                                 37E25D6D18FDE5D6005D3A00 /* APIFormClient.h */,
</span><span class="lines">@@ -7429,6 +7441,7 @@
</span><span class="cx">                                 1A64229A12DD029200CAAE2C /* DrawingAreaMessages.h in Headers */,
</span><span class="cx">                                 BC2652171182608100243E12 /* DrawingAreaProxy.h in Headers */,
</span><span class="cx">                                 1A64230912DD09EB00CAAE2C /* DrawingAreaProxyMessages.h in Headers */,
</span><ins>+                                83891B6C1A68C30B0030F386 /* DiagnosticLoggingClient.h in Headers */,
</ins><span class="cx">                                 5DA6ED0A1490606900B41D12 /* DynamicLinkerEnvironmentExtractor.h in Headers */,
</span><span class="cx">                                 E105FE5418D7B9DE008F57A8 /* EditingRange.h in Headers */,
</span><span class="cx">                                 1AA41AB512C02EC4002BE67B /* EditorState.h in Headers */,
</span><span class="lines">@@ -7737,6 +7750,7 @@
</span><span class="cx">                                 51834593134532E90092B696 /* WebIconDatabaseClient.h in Headers */,
</span><span class="cx">                                 51D02F6A132EC73700BEAA96 /* WebIconDatabaseMessages.h in Headers */,
</span><span class="cx">                                 511B24A7132E095700065A0C /* WebIconDatabaseProxy.h in Headers */,
</span><ins>+                                83891B691A68BEBC0030F386 /* _WKDiagnosticLoggingDelegate.h in Headers */,
</ins><span class="cx">                                 51D02F6C132EC73700BEAA96 /* WebIconDatabaseProxyMessages.h in Headers */,
</span><span class="cx">                                 51E351F6180F5C7500E53BE9 /* WebIDBFactoryBackend.h in Headers */,
</span><span class="cx">                                 51290993183ACEAF005522A6 /* WebIDBServerConnection.h in Headers */,
</span><span class="lines">@@ -7983,6 +7997,7 @@
</span><span class="cx">                                 BC4075FE124FF0270068F20A /* WKMutableArray.h in Headers */,
</span><span class="cx">                                 BC407600124FF0270068F20A /* WKMutableDictionary.h in Headers */,
</span><span class="cx">                                 C09AE5E9125257C20025825D /* WKNativeEvent.h in Headers */,
</span><ins>+                                83891B631A68B3420030F386 /* APIDiagnosticLoggingClient.h in Headers */,
</ins><span class="cx">                                 1A5B1C511898606F004FCF9B /* WKNavigation.h in Headers */,
</span><span class="cx">                                 1A256E3818A1A788006FB922 /* WKNavigationAction.h in Headers */,
</span><span class="cx">                                 1A256E3A18A1A7DF006FB922 /* WKNavigationActionInternal.h in Headers */,
</span><span class="lines">@@ -9711,6 +9726,7 @@
</span><span class="cx">                                 37BF2F071947DEB400723C48 /* WKNSURLRequest.mm in Sources */,
</span><span class="cx">                                 BC407601124FF0270068F20A /* WKNumber.cpp in Sources */,
</span><span class="cx">                                 7CD5EBB81746A15B000C1C45 /* WKObjCTypeWrapperRef.mm in Sources */,
</span><ins>+                                83891B6D1A68C30B0030F386 /* DiagnosticLoggingClient.mm in Sources */,
</ins><span class="cx">                                 374436881820E7240049579F /* WKObject.mm in Sources */,
</span><span class="cx">                                 BC85806312B8505700EDEB2E /* WKOpenPanelParameters.cpp in Sources */,
</span><span class="cx">                                 BC85806212B8505700EDEB2E /* WKOpenPanelResultListener.cpp in Sources */,
</span></span></pre>
</div>
</div>

</body>
</html>