<!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>[188817] trunk</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/188817">188817</a></dd>
<dt>Author</dt> <dd>commit-queue@webkit.org</dd>
<dt>Date</dt> <dd>2015-08-21 19:32:41 -0700 (Fri, 21 Aug 2015)</dd>
</dl>
<h3>Log Message</h3>
<pre>Unreviewed, rolling out <a href="http://trac.webkit.org/projects/webkit/changeset/188807">r188807</a>, <a href="http://trac.webkit.org/projects/webkit/changeset/188813">r188813</a>, and <a href="http://trac.webkit.org/projects/webkit/changeset/188815">r188815</a>.
https://bugs.webkit.org/show_bug.cgi?id=148349
lots of 32-bit build problems, better to resolve separately
and try again (Requested by thorton on #webkit).
Reverted changesets:
"WebKitTestRunner should use WKWebView on OS X and iOS"
https://bugs.webkit.org/show_bug.cgi?id=143743
http://trac.webkit.org/changeset/188807
"Stop building WebKitTestRunner for 32-bit platforms"
https://bugs.webkit.org/show_bug.cgi?id=143743
http://trac.webkit.org/changeset/188813
"Stop building WebKitTestRunner for 32-bit platforms"
https://bugs.webkit.org/show_bug.cgi?id=143743
http://trac.webkit.org/changeset/188815</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharedWebPreferencesDefinitionsh">trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h</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="#trunkSourceWebKit2WebProcessInjectedBundleAPIcWKBundlePagecpp">trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessInjectedBundleAPIcWKBundlePagePrivateh">trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPagecpp">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPageh">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h</a></li>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsWebKitTestRunnerConfigurationsDebugReleasexcconfig">trunk/Tools/WebKitTestRunner/Configurations/DebugRelease.xcconfig</a></li>
<li><a href="#trunkToolsWebKitTestRunnerInjectedBundleInjectedBundlecpp">trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp</a></li>
<li><a href="#trunkToolsWebKitTestRunnerInjectedBundleTestRunnercpp">trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp</a></li>
<li><a href="#trunkToolsWebKitTestRunnerPlatformWebViewh">trunk/Tools/WebKitTestRunner/PlatformWebView.h</a></li>
<li><a href="#trunkToolsWebKitTestRunnerTestControllercpp">trunk/Tools/WebKitTestRunner/TestController.cpp</a></li>
<li><a href="#trunkToolsWebKitTestRunnerTestControllerh">trunk/Tools/WebKitTestRunner/TestController.h</a></li>
<li><a href="#trunkToolsWebKitTestRunnerTestInvocationcpp">trunk/Tools/WebKitTestRunner/TestInvocation.cpp</a></li>
<li><a href="#trunkToolsWebKitTestRunnerWebKitTestRunnerxcodeprojprojectpbxproj">trunk/Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkToolsWebKitTestRunnereflTestControllerEflcpp">trunk/Tools/WebKitTestRunner/efl/TestControllerEfl.cpp</a></li>
<li><a href="#trunkToolsWebKitTestRunnergtkTestControllerGtkcpp">trunk/Tools/WebKitTestRunner/gtk/TestControllerGtk.cpp</a></li>
<li><a href="#trunkToolsWebKitTestRunneriosPlatformWebViewIOSmm">trunk/Tools/WebKitTestRunner/ios/PlatformWebViewIOS.mm</a></li>
<li><a href="#trunkToolsWebKitTestRunneriosTestControllerIOSmm">trunk/Tools/WebKitTestRunner/ios/TestControllerIOS.mm</a></li>
<li><a href="#trunkToolsWebKitTestRunnermacEventSenderProxymm">trunk/Tools/WebKitTestRunner/mac/EventSenderProxy.mm</a></li>
<li><a href="#trunkToolsWebKitTestRunnermacPlatformWebViewMacmm">trunk/Tools/WebKitTestRunner/mac/PlatformWebViewMac.mm</a></li>
<li><a href="#trunkToolsWebKitTestRunnermacTestControllerMacmm">trunk/Tools/WebKitTestRunner/mac/TestControllerMac.mm</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkToolsWebKitTestRunnercocoaTestControllerCocoamm">trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Source/WebKit2/ChangeLog        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -1,3 +1,25 @@
</span><ins>+2015-08-21 Commit Queue <commit-queue@webkit.org>
+
+ Unreviewed, rolling out r188807, r188813, and r188815.
+ https://bugs.webkit.org/show_bug.cgi?id=148349
+
+ lots of 32-bit build problems, better to resolve separately
+ and try again (Requested by thorton on #webkit).
+
+ Reverted changesets:
+
+ "WebKitTestRunner should use WKWebView on OS X and iOS"
+ https://bugs.webkit.org/show_bug.cgi?id=143743
+ http://trac.webkit.org/changeset/188807
+
+ "Stop building WebKitTestRunner for 32-bit platforms"
+ https://bugs.webkit.org/show_bug.cgi?id=143743
+ http://trac.webkit.org/changeset/188813
+
+ "Stop building WebKitTestRunner for 32-bit platforms"
+ https://bugs.webkit.org/show_bug.cgi?id=143743
+ http://trac.webkit.org/changeset/188815
+
</ins><span class="cx"> 2015-08-21 Timothy Horton <timothy_horton@apple.com>
</span><span class="cx">
</span><span class="cx"> WebKitTestRunner should use WKWebView on OS X and iOS
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedWebPreferencesDefinitionsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -180,6 +180,7 @@
</span><span class="cx"> macro(ThreadedScrollingEnabled, threadedScrollingEnabled, Bool, bool, true) \
</span><span class="cx"> macro(SimpleLineLayoutEnabled, simpleLineLayoutEnabled, Bool, bool, true) \
</span><span class="cx"> macro(SubpixelCSSOMElementMetricsEnabled, subpixelCSSOMElementMetricsEnabled, Bool, bool, false) \
</span><ins>+ macro(BackgroundShouldExtendBeyondPage, backgroundShouldExtendBeyondPage, Bool, bool, false) \
</ins><span class="cx"> macro(MediaStreamEnabled, mediaStreamEnabled, Bool, bool, false) \
</span><span class="cx"> macro(UseLegacyTextAlignPositionedElementBehavior, useLegacyTextAlignPositionedElementBehavior, Bool, bool, false) \
</span><span class="cx"> macro(SpatialNavigationEnabled, spatialNavigationEnabled, Bool, bool, false) \
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoaWKWebViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -3083,16 +3083,6 @@
</span><span class="cx"> return [_wkView _topContentInset];
</span><span class="cx"> }
</span><span class="cx">
</span><del>-- (BOOL)_windowOcclusionDetectionEnabled
-{
- return [_wkView windowOcclusionDetectionEnabled];
-}
-
-- (void)_setWindowOcclusionDetectionEnabled:(BOOL)flag
-{
- [_wkView setWindowOcclusionDetectionEnabled:flag];
-}
-
</del><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000
</span><span class="cx">
</span><span class="cx"> - (void)_setAutomaticallyAdjustsContentInsets:(BOOL)automaticallyAdjustsContentInsets
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoaWKWebViewPrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -173,9 +173,6 @@
</span><span class="cx">
</span><span class="cx"> // Default value is 0. A value of 0 means the window's backing scale factor will be used and automatically update when the window moves screens.
</span><span class="cx"> @property (nonatomic, setter=_setOverrideDeviceScaleFactor:) CGFloat _overrideDeviceScaleFactor WK_AVAILABLE(WK_MAC_TBA, NA);
</span><del>-
-@property (nonatomic, setter=_setWindowOcclusionDetectionEnabled:) BOOL _windowOcclusionDetectionEnabled;
-
</del><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> - (void)_killWebContentProcessAndResetState;
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessInjectedBundleAPIcWKBundlePagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -615,18 +615,3 @@
</span><span class="cx"> if (returnDataRef)
</span><span class="cx"> *returnDataRef = toAPI(returnData.release().leakRef());
</span><span class="cx"> }
</span><del>-
-void WKBundlePageAddUserScript(WKBundlePageRef pageRef, WKStringRef source, _WKUserScriptInjectionTime injectionTime, WKUserContentInjectedFrames injectedFrames)
-{
- toImpl(pageRef)->addUserScript(toWTFString(source), toUserContentInjectedFrames(injectedFrames), toUserScriptInjectionTime(injectionTime));
-}
-
-void WKBundlePageAddUserStyleSheet(WKBundlePageRef pageRef, WKStringRef source, WKUserContentInjectedFrames injectedFrames)
-{
- toImpl(pageRef)->addUserStyleSheet(toWTFString(source), toUserContentInjectedFrames(injectedFrames));
-}
-
-void WKBundlePageRemoveAllUserContent(WKBundlePageRef pageRef)
-{
- toImpl(pageRef)->removeAllUserContent();
-}
</del></span></pre></div>
<a id="trunkSourceWebKit2WebProcessInjectedBundleAPIcWKBundlePagePrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -29,8 +29,6 @@
</span><span class="cx"> #include <WebKit/WKBase.h>
</span><span class="cx"> #include <WebKit/WKEvent.h>
</span><span class="cx"> #include <WebKit/WKGeometry.h>
</span><del>-#include <WebKit/WKUserContentInjectedFrames.h>
-#include <WebKit/WKUserScriptInjectionTime.h>
</del><span class="cx">
</span><span class="cx"> #ifdef __cplusplus
</span><span class="cx"> extern "C" {
</span><span class="lines">@@ -95,11 +93,6 @@
</span><span class="cx"> WK_EXPORT WKRenderingSuppressionToken WKBundlePageExtendIncrementalRenderingSuppression(WKBundlePageRef);
</span><span class="cx"> WK_EXPORT void WKBundlePageStopExtendingIncrementalRenderingSuppression(WKBundlePageRef, WKRenderingSuppressionToken);
</span><span class="cx">
</span><del>-// UserContent API (compatible with Modern API, for WKTR)
-WK_EXPORT void WKBundlePageAddUserScript(WKBundlePageRef page, WKStringRef source, _WKUserScriptInjectionTime injectionTime, WKUserContentInjectedFrames injectedFrames);
-WK_EXPORT void WKBundlePageAddUserStyleSheet(WKBundlePageRef page, WKStringRef source, WKUserContentInjectedFrames injectedFrames);
-WK_EXPORT void WKBundlePageRemoveAllUserContent(WKBundlePageRef page);
-
</del><span class="cx"> #if TARGET_OS_IPHONE
</span><span class="cx"> WK_EXPORT void WKBundlePageSetUseTestingViewportConfiguration(WKBundlePageRef, bool);
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -5006,30 +5006,4 @@
</span><span class="cx"> send(Messages::WebPageProxy::ImageOrMediaDocumentSizeChanged(newSize));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebPage::addUserScript(const String& source, WebCore::UserContentInjectedFrames injectedFrames, WebCore::UserScriptInjectionTime injectionTime)
-{
- ASSERT(m_userContentController);
-
- WebCore::UserScript userScript(source, WebCore::blankURL(), Vector<String>(), Vector<String>(), injectionTime, injectedFrames);
-
- m_userContentController->userContentController().addUserScript(mainThreadNormalWorld(), std::make_unique<WebCore::UserScript>(userScript));
-}
-
-void WebPage::addUserStyleSheet(const String& source, WebCore::UserContentInjectedFrames injectedFrames)
-{
- ASSERT(m_userContentController);
-
- WebCore::UserStyleSheet userStyleSheet(source, WebCore::blankURL(), Vector<String>(), Vector<String>(), injectedFrames, UserStyleUserLevel);
-
- m_userContentController->userContentController().addUserStyleSheet(mainThreadNormalWorld(), std::make_unique<WebCore::UserStyleSheet>(userStyleSheet), InjectInExistingDocuments);
-}
-
-void WebPage::removeAllUserContent()
-{
- if (!m_userContentController)
- return;
-
- m_userContentController->userContentController().removeAllUserContent();
-}
-
</del><span class="cx"> } // namespace WebKit
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -63,8 +63,6 @@
</span><span class="cx"> #include <WebCore/TextChecking.h>
</span><span class="cx"> #include <WebCore/TextIndicator.h>
</span><span class="cx"> #include <WebCore/UserActivity.h>
</span><del>-#include <WebCore/UserContentTypes.h>
-#include <WebCore/UserScriptTypes.h>
</del><span class="cx"> #include <WebCore/ViewState.h>
</span><span class="cx"> #include <WebCore/ViewportConfiguration.h>
</span><span class="cx"> #include <WebCore/WebCoreKeyboardUIMode.h>
</span><span class="lines">@@ -916,10 +914,6 @@
</span><span class="cx"> #endif
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- void addUserScript(const String& source, WebCore::UserContentInjectedFrames, WebCore::UserScriptInjectionTime);
- void addUserStyleSheet(const String& source, WebCore::UserContentInjectedFrames);
- void removeAllUserContent();
-
</del><span class="cx"> private:
</span><span class="cx"> WebPage(uint64_t pageID, const WebPageCreationParameters&);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/ChangeLog        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -1,3 +1,25 @@
</span><ins>+2015-08-21 Commit Queue <commit-queue@webkit.org>
+
+ Unreviewed, rolling out r188807, r188813, and r188815.
+ https://bugs.webkit.org/show_bug.cgi?id=148349
+
+ lots of 32-bit build problems, better to resolve separately
+ and try again (Requested by thorton on #webkit).
+
+ Reverted changesets:
+
+ "WebKitTestRunner should use WKWebView on OS X and iOS"
+ https://bugs.webkit.org/show_bug.cgi?id=143743
+ http://trac.webkit.org/changeset/188807
+
+ "Stop building WebKitTestRunner for 32-bit platforms"
+ https://bugs.webkit.org/show_bug.cgi?id=143743
+ http://trac.webkit.org/changeset/188813
+
+ "Stop building WebKitTestRunner for 32-bit platforms"
+ https://bugs.webkit.org/show_bug.cgi?id=143743
+ http://trac.webkit.org/changeset/188815
+
</ins><span class="cx"> 2015-08-21 Tim Horton <timothy_horton@apple.com>
</span><span class="cx">
</span><span class="cx"> Stop building WebKitTestRunner for 32-bit platforms
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerConfigurationsDebugReleasexcconfig"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/Configurations/DebugRelease.xcconfig (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/Configurations/DebugRelease.xcconfig        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/Configurations/DebugRelease.xcconfig        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -24,7 +24,7 @@
</span><span class="cx"> #include "../../../../Internal/Configurations/HaveInternalSDK.xcconfig"
</span><span class="cx"> #include "Base.xcconfig"
</span><span class="cx">
</span><del>-VALID_ARCHS[sdk=macosx*] = $(ARCHS_STANDARD_64_BIT);
</del><ins>+ARCHS = $(ARCHS_STANDARD_32_64_BIT);
</ins><span class="cx">
</span><span class="cx"> ONLY_ACTIVE_ARCH = YES;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerInjectedBundleInjectedBundlecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -261,7 +261,7 @@
</span><span class="cx"> WKBundleSetPluginsEnabled(m_bundle, m_pageGroup, true);
</span><span class="cx"> WKBundleSetPopupBlockingEnabled(m_bundle, m_pageGroup, false);
</span><span class="cx">
</span><del>- WKBundlePageRemoveAllUserContent(page()->page());
</del><ins>+ WKBundleRemoveAllUserContent(m_bundle, m_pageGroup);
</ins><span class="cx">
</span><span class="cx"> m_testRunner->setShouldDumpFrameLoadCallbacks(booleanForKey(settings, "DumpFrameLoadDelegates"));
</span><span class="cx"> m_testRunner->setUserStyleSheetEnabled(false);
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerInjectedBundleTestRunnercpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -172,8 +172,10 @@
</span><span class="cx"> void TestRunner::addUserScript(JSStringRef source, bool runAtStart, bool allFrames)
</span><span class="cx"> {
</span><span class="cx"> WKRetainPtr<WKStringRef> sourceWK = toWK(source);
</span><ins>+ WKRetainPtr<WKBundleScriptWorldRef> scriptWorld(AdoptWK, WKBundleScriptWorldCreateWorld());
</ins><span class="cx">
</span><del>- WKBundlePageAddUserScript(InjectedBundle::singleton().page()->page(), sourceWK.get(),
</del><ins>+ auto& injectedBundle = InjectedBundle::singleton();
+ WKBundleAddUserScript(injectedBundle.bundle(), injectedBundle.pageGroup(), scriptWorld.get(), sourceWK.get(), 0, 0, 0,
</ins><span class="cx"> (runAtStart ? kWKInjectAtDocumentStart : kWKInjectAtDocumentEnd),
</span><span class="cx"> (allFrames ? kWKInjectInAllFrames : kWKInjectInTopFrameOnly));
</span><span class="cx"> }
</span><span class="lines">@@ -181,8 +183,10 @@
</span><span class="cx"> void TestRunner::addUserStyleSheet(JSStringRef source, bool allFrames)
</span><span class="cx"> {
</span><span class="cx"> WKRetainPtr<WKStringRef> sourceWK = toWK(source);
</span><ins>+ WKRetainPtr<WKBundleScriptWorldRef> scriptWorld(AdoptWK, WKBundleScriptWorldCreateWorld());
</ins><span class="cx">
</span><del>- WKBundlePageAddUserStyleSheet(InjectedBundle::singleton().page()->page(), sourceWK.get(),
</del><ins>+ auto& injectedBundle = InjectedBundle::singleton();
+ WKBundleAddUserStyleSheet(injectedBundle.bundle(), injectedBundle.pageGroup(), scriptWorld.get(), sourceWK.get(), 0, 0, 0,
</ins><span class="cx"> (allFrames ? kWKInjectInAllFrames : kWKInjectInTopFrameOnly));
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerPlatformWebViewh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/PlatformWebView.h (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/PlatformWebView.h        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/PlatformWebView.h        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -29,14 +29,15 @@
</span><span class="cx"> #include "ViewOptions.h"
</span><span class="cx"> #include <WebKit/WKRetainPtr.h>
</span><span class="cx">
</span><del>-#if PLATFORM(COCOA)
-OBJC_CLASS NSView;
-OBJC_CLASS UIView;
-OBJC_CLASS WKWebView;
-OBJC_CLASS WKWebViewConfiguration;
-OBJC_CLASS WebKitTestRunnerWindow;
-
-typedef WKWebView* PlatformWKView;
</del><ins>+#if defined(__APPLE__) && __APPLE__
+#ifdef __OBJC__
+@class WKView;
+@class WebKitTestRunnerWindow;
+#else
+class WKView;
+class WebKitTestRunnerWindow;
+#endif
+typedef WKView* PlatformWKView;
</ins><span class="cx"> typedef WebKitTestRunnerWindow* PlatformWindow;
</span><span class="cx"> #elif defined(BUILDING_GTK__)
</span><span class="cx"> typedef struct _GtkWidget GtkWidget;
</span><span class="lines">@@ -51,11 +52,7 @@
</span><span class="cx">
</span><span class="cx"> class PlatformWebView {
</span><span class="cx"> public:
</span><del>-#if PLATFORM(COCOA)
- PlatformWebView(WKWebViewConfiguration*, const ViewOptions&);
-#else
</del><span class="cx"> PlatformWebView(WKPageConfigurationRef, const ViewOptions&);
</span><del>-#endif
</del><span class="cx"> ~PlatformWebView();
</span><span class="cx">
</span><span class="cx"> WKPageRef page();
</span><span class="lines">@@ -64,6 +61,9 @@
</span><span class="cx"> void resizeTo(unsigned width, unsigned height);
</span><span class="cx"> void focus();
</span><span class="cx">
</span><ins>+ // Window snapshot is always enabled by default on all other platform.
+ static bool windowSnapshotEnabled() { return true; }
+
</ins><span class="cx"> WKRect windowFrame();
</span><span class="cx"> void setWindowFrame(WKRect);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerTestControllercpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/TestController.cpp        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/TestController.cpp        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -197,11 +197,11 @@
</span><span class="cx"> TestController::singleton().handleUserMediaPermissionRequest(permissionRequest);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-WKPageRef TestController::createOtherPage(WKPageRef oldPage, WKPageConfigurationRef configuration, WKNavigationActionRef navigationAction, WKWindowFeaturesRef windowFeatures, const void *clientInfo)
</del><ins>+WKPageRef TestController::createOtherPage(WKPageRef oldPpage, WKPageConfigurationRef configuration, WKNavigationActionRef navigationAction, WKWindowFeaturesRef windowFeatures, const void *clientInfo)
</ins><span class="cx"> {
</span><span class="cx"> PlatformWebView* parentView = static_cast<PlatformWebView*>(const_cast<void*>(clientInfo));
</span><span class="cx">
</span><del>- PlatformWebView* view = platformCreateOtherPage(parentView, configuration, parentView->options());
</del><ins>+ PlatformWebView* view = new PlatformWebView(configuration, parentView->options());
</ins><span class="cx"> WKPageRef newPage = view->page();
</span><span class="cx">
</span><span class="cx"> view->resizeTo(800, 600);
</span><span class="lines">@@ -310,6 +310,7 @@
</span><span class="cx"> return platformLibraryPathForTesting();
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+
</ins><span class="cx"> void TestController::initialize(int argc, const char* argv[])
</span><span class="cx"> {
</span><span class="cx"> platformInitialize();
</span><span class="lines">@@ -371,8 +372,8 @@
</span><span class="cx"> WKContextConfigurationSetWebSQLDatabaseDirectory(configuration.get(), toWK(temporaryFolder + separator + "Databases" + separator + "WebSQL").get());
</span><span class="cx"> WKContextConfigurationSetMediaKeysStorageDirectory(configuration.get(), toWK(temporaryFolder + separator + "MediaKeys").get());
</span><span class="cx"> }
</span><del>- m_context = platformAdjustContext(adoptWK(WKContextCreateWithConfiguration(configuration.get())).get(), configuration.get());
</del><span class="cx">
</span><ins>+ m_context = adoptWK(WKContextCreateWithConfiguration(configuration.get()));
</ins><span class="cx"> m_geolocationProvider = std::make_unique<GeolocationProviderMock>(m_context.get());
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(EFL)
</span><span class="lines">@@ -434,7 +435,6 @@
</span><span class="cx"> m_configuration = adoptWK(WKPageConfigurationCreate());
</span><span class="cx"> WKPageConfigurationSetContext(m_configuration.get(), m_context.get());
</span><span class="cx"> WKPageConfigurationSetPageGroup(m_configuration.get(), m_pageGroup.get());
</span><del>- WKPageConfigurationSetUserContentController(m_configuration.get(), adoptWK(WKUserContentControllerCreate()).get());
</del><span class="cx">
</span><span class="cx"> // Some preferences (notably mock scroll bars setting) currently cannot be re-applied to an existing view, so we need to set them now.
</span><span class="cx"> resetPreferencesToConsistentValues();
</span><span class="lines">@@ -442,7 +442,7 @@
</span><span class="cx">
</span><span class="cx"> void TestController::createWebViewWithOptions(const ViewOptions& options)
</span><span class="cx"> {
</span><del>- platformCreateWebView(m_configuration.get(), options);
</del><ins>+ m_mainWebView = std::make_unique<PlatformWebView>(m_configuration.get(), options);
</ins><span class="cx"> WKPageUIClientV6 pageUIClient = {
</span><span class="cx"> { 6, m_mainWebView.get() },
</span><span class="cx"> 0, // createNewPage_deprecatedForUseWithV0
</span><span class="lines">@@ -568,7 +568,7 @@
</span><span class="cx"> void TestController::resetPreferencesToConsistentValues()
</span><span class="cx"> {
</span><span class="cx"> // Reset preferences
</span><del>- WKPreferencesRef preferences = platformPreferences();
</del><ins>+ WKPreferencesRef preferences = WKPageGroupGetPreferences(m_pageGroup.get());
</ins><span class="cx"> WKPreferencesResetTestRunnerOverrides(preferences);
</span><span class="cx"> WKPreferencesSetPageVisibilityBasedProcessSuppressionEnabled(preferences, false);
</span><span class="cx"> WKPreferencesSetOfflineWebApplicationCacheEnabled(preferences, true);
</span><span class="lines">@@ -622,8 +622,6 @@
</span><span class="cx"> WKPreferencesSetHiddenPageCSSAnimationSuspensionEnabled(preferences, false);
</span><span class="cx">
</span><span class="cx"> WKPreferencesSetAcceleratedDrawingEnabled(preferences, m_shouldUseAcceleratedDrawing);
</span><del>- // FIXME: We should be testing the default.
- WKPreferencesSetStorageBlockingPolicy(preferences, kWKAllowAllStorage);
</del><span class="cx">
</span><span class="cx"> WKCookieManagerDeleteAllCookies(WKContextGetCookieManager(m_context.get()));
</span><span class="cx">
</span><span class="lines">@@ -636,11 +634,6 @@
</span><span class="cx">
</span><span class="cx"> m_beforeUnloadReturnValue = true;
</span><span class="cx">
</span><del>- // This setting differs between the antique and modern Mac WebKit2 API.
- // For now, maintain the antique behavior, because some tests depend on it!
- // FIXME: We should be testing the default.
- WKPageSetBackgroundExtendsBeyondPage(m_mainWebView->page(), false);
-
</del><span class="cx"> WKRetainPtr<WKStringRef> messageName = adoptWK(WKStringCreateWithUTF8CString("Reset"));
</span><span class="cx"> WKRetainPtr<WKMutableDictionaryRef> resetMessageBody = adoptWK(WKMutableDictionaryCreate());
</span><span class="cx">
</span><span class="lines">@@ -675,7 +668,7 @@
</span><span class="cx"> WKTextCheckerContinuousSpellCheckingEnabledStateChanged(true);
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- // In the case that a test using the chrome input field failed, be sure to clean up for the next test.
</del><ins>+ // in the case that a test using the chrome input field failed, be sure to clean up for the next test
</ins><span class="cx"> m_mainWebView->removeChromeInputField();
</span><span class="cx"> m_mainWebView->focus();
</span><span class="cx">
</span><span class="lines">@@ -717,10 +710,10 @@
</span><span class="cx">
</span><span class="cx"> m_shouldLogHistoryClientCallbacks = false;
</span><span class="cx">
</span><ins>+ WKPageGroupRemoveAllUserContentFilters(WKPageGetPageGroup(m_mainWebView->page()));
+
</ins><span class="cx"> setHidden(false);
</span><span class="cx">
</span><del>- platformResetStateToConsistentValues();
-
</del><span class="cx"> // Reset main page back to about:blank
</span><span class="cx"> m_doneResetting = false;
</span><span class="cx">
</span><span class="lines">@@ -1600,36 +1593,4 @@
</span><span class="cx"> m_currentInvocation->outputText(String::format("WebView updated the title for history URL \"%s\" to \"%s\".\n", toSTD(urlStringWK).c_str(), toSTD(title).c_str()));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#if !PLATFORM(COCOA)
-void TestController::platformWillRunTest(const TestInvocation&)
-{
-}
-
-WKPreferencesRef TestController::platformPreferences()
-{
- WKRetainPtr<WKPageConfigurationRef> configuration = adoptWK(WKPageCopyPageConfiguration(m_mainWebView->page()));
- return WKPageConfigurationGetPreferences(configuration.get());
-}
-
-void TestController::platformCreateWebView(WKPageConfigurationRef configuration, const ViewOptions& options)
-{
- m_mainWebView = std::make_unique<PlatformWebView>(configuration, options);
-}
-
-PlatformWebView* TestController::platformCreateOtherPage(PlatformWebView* parentView, WKPageConfigurationRef configuration, const ViewOptions& options)
-{
- return new PlatformWebView(configuration, options);
-}
-
-WKContextRef TestController::platformAdjustContext(WKContextRef context, WKContextConfigurationRef contextConfiguration)
-{
- return context;
-}
-
-void TestController::platformResetStateToConsistentValues()
-{
-
-}
-#endif
-
</del><span class="cx"> } // namespace WTR
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerTestControllerh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/TestController.h (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/TestController.h        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/TestController.h        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -34,8 +34,6 @@
</span><span class="cx"> #include <vector>
</span><span class="cx"> #include <wtf/Vector.h>
</span><span class="cx">
</span><del>-OBJC_CLASS WKWebViewConfiguration;
-
</del><span class="cx"> namespace WTR {
</span><span class="cx">
</span><span class="cx"> class TestInvocation;
</span><span class="lines">@@ -134,17 +132,12 @@
</span><span class="cx">
</span><span class="cx"> void platformInitialize();
</span><span class="cx"> void platformDestroy();
</span><del>- WKContextRef platformAdjustContext(WKContextRef, WKContextConfigurationRef);
</del><span class="cx"> void platformInitializeContext();
</span><del>- void platformCreateWebView(WKPageConfigurationRef, const ViewOptions&);
- static PlatformWebView* platformCreateOtherPage(PlatformWebView* parentView, WKPageConfigurationRef, const ViewOptions&);
</del><span class="cx"> void platformResetPreferencesToConsistentValues();
</span><del>- void platformResetStateToConsistentValues();
</del><span class="cx"> void platformConfigureViewForTest(const TestInvocation&);
</span><span class="cx"> void platformWillRunTest(const TestInvocation&);
</span><span class="cx"> void platformRunUntil(bool& done, double timeout);
</span><span class="cx"> void platformDidCommitLoadForFrame(WKPageRef, WKFrameRef);
</span><del>- WKPreferencesRef platformPreferences();
</del><span class="cx"> void initializeInjectedBundlePath();
</span><span class="cx"> void initializeTestPluginDirectory();
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerTestInvocationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/TestInvocation.cpp (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/TestInvocation.cpp        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/TestInvocation.cpp        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -268,13 +268,15 @@
</span><span class="cx"> dumpAudio(m_audioResult.get());
</span><span class="cx">
</span><span class="cx"> if (m_dumpPixels && m_pixelResult) {
</span><del>- m_gotRepaint = false;
- WKPageForceRepaint(TestController::singleton().mainWebView()->page(), this, TestInvocation::forceRepaintDoneCallback);
- TestController::singleton().runUntil(m_gotRepaint, TestController::shortTimeout);
- if (!m_gotRepaint) {
- m_errorMessage = "Timed out waiting for pre-pixel dump repaint\n";
- m_webProcessIsUnresponsive = true;
- return;
</del><ins>+ if (PlatformWebView::windowSnapshotEnabled()) {
+ m_gotRepaint = false;
+ WKPageForceRepaint(TestController::singleton().mainWebView()->page(), this, TestInvocation::forceRepaintDoneCallback);
+ TestController::singleton().runUntil(m_gotRepaint, TestController::shortTimeout);
+ if (!m_gotRepaint) {
+ m_errorMessage = "Timed out waiting for pre-pixel dump repaint\n";
+ m_webProcessIsUnresponsive = true;
+ return;
+ }
</ins><span class="cx"> }
</span><span class="cx"> dumpPixelsAndCompareWithExpected(m_pixelResult.get(), m_repaintRects.get());
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnerWebKitTestRunnerxcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -40,8 +40,6 @@
</span><span class="cx">                 29A8FCDD145F0337009045A6 /* JSAccessibilityTextMarkerRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29A8FCE1345E7021006AA5A6 /* JSAccessibilityTextMarkerRange.cpp */; };
</span><span class="cx">                 29A8FCE2145F037B009045A6 /* AccessibilityTextMarkerRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29A8FCE1145F037B009045A6 /* AccessibilityTextMarkerRange.cpp */; };
</span><span class="cx">                 29A8FCE5145F0464009045A6 /* AccessibilityTextMarkerRangeMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 29A8FCE4145F0464009045A6 /* AccessibilityTextMarkerRangeMac.mm */; };
</span><del>-                2DCE2CD31B8452F800C7F832 /* TestControllerCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DCE2CD11B84524500C7F832 /* TestControllerCocoa.mm */; };
-                2DCE2CD41B84530A00C7F832 /* TestControllerCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DCE2CD11B84524500C7F832 /* TestControllerCocoa.mm */; };
</del><span class="cx">                 2E34C90018B68808000067BB /* WebKitTestRunnerInjectedBundle.bundle in Resources */ = {isa = PBXBuildFile; fileRef = BC25186211D15D54002EBC01 /* WebKitTestRunnerInjectedBundle.bundle */; };
</span><span class="cx">                 2E63ED8A1891AD7E002A7AFC /* AccessibilityControllerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E63ED751891ACE9002A7AFC /* AccessibilityControllerIOS.mm */; };
</span><span class="cx">                 2E63ED8B1891AD7E002A7AFC /* AccessibilityTextMarkerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E63ED771891ACE9002A7AFC /* AccessibilityTextMarkerIOS.mm */; };
</span><span class="lines">@@ -173,7 +171,6 @@
</span><span class="cx">                 29A8FCE1345E7021006AA5A6 /* JSAccessibilityTextMarkerRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = JSAccessibilityTextMarkerRange.cpp; path = DerivedSources/WebKitTestRunner/JSAccessibilityTextMarkerRange.cpp; sourceTree = BUILT_PRODUCTS_DIR; };
</span><span class="cx">                 29A8FCE1345E7021006AA5A7 /* JSAccessibilityTextMarkerRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = JSAccessibilityTextMarkerRange.h; path = DerivedSources/WebKitTestRunner/JSAccessibilityTextMarkerRange.h; sourceTree = BUILT_PRODUCTS_DIR; };
</span><span class="cx">                 29A8FCE4145F0464009045A6 /* AccessibilityTextMarkerRangeMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityTextMarkerRangeMac.mm; sourceTree = "<group>"; };
</span><del>-                2DCE2CD11B84524500C7F832 /* TestControllerCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TestControllerCocoa.mm; path = cocoa/TestControllerCocoa.mm; sourceTree = "<group>"; };
</del><span class="cx">                 2E63ED751891ACE9002A7AFC /* AccessibilityControllerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityControllerIOS.mm; sourceTree = "<group>"; };
</span><span class="cx">                 2E63ED761891ACE9002A7AFC /* AccessibilityNotificationHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilityNotificationHandler.h; sourceTree = "<group>"; };
</span><span class="cx">                 2E63ED771891ACE9002A7AFC /* AccessibilityTextMarkerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityTextMarkerIOS.mm; sourceTree = "<group>"; };
</span><span class="lines">@@ -400,7 +397,6 @@
</span><span class="cx">                         children = (
</span><span class="cx">                                 0FEB90A21905BC6A000FDBF3 /* CrashReporterInfo.h */,
</span><span class="cx">                                 0FEB90A31905BC6A000FDBF3 /* CrashReporterInfo.mm */,
</span><del>-                                2DCE2CD11B84524500C7F832 /* TestControllerCocoa.mm */,
</del><span class="cx">                         );
</span><span class="cx">                         name = cocoa;
</span><span class="cx">                         sourceTree = "<group>";
</span><span class="lines">@@ -790,7 +786,6 @@
</span><span class="cx">                                 2E63ED971891ADC7002A7AFC /* PixelDumpSupport.cpp in Sources */,
</span><span class="cx">                                 2E63ED981891ADC7002A7AFC /* TestController.cpp in Sources */,
</span><span class="cx">                                 2E63ED921891ADAD002A7AFC /* TestControllerIOS.mm in Sources */,
</span><del>-                                2DCE2CD31B8452F800C7F832 /* TestControllerCocoa.mm in Sources */,
</del><span class="cx">                                 0FEB90A81905C537000FDBF3 /* CrashReporterInfo.mm in Sources */,
</span><span class="cx">                                 2E63ED991891ADC7002A7AFC /* TestInvocation.cpp in Sources */,
</span><span class="cx">                                 2E63EDA51891BD8E002A7AFC /* TestInvocationCG.cpp in Sources */,
</span><span class="lines">@@ -810,7 +805,6 @@
</span><span class="cx">                                 E1C642C317CBCC7300D66A3C /* PoseAsClass.mm in Sources */,
</span><span class="cx">                                 E132AA3D17CE776F00611DF0 /* WebKitTestRunnerEvent.mm in Sources */,
</span><span class="cx">                                 5670B8281386FCA5002EB355 /* EventSenderProxy.mm in Sources */,
</span><del>-                                2DCE2CD41B84530A00C7F832 /* TestControllerCocoa.mm in Sources */,
</del><span class="cx">                                 26D758E7160BECDD00268472 /* GeolocationProviderMock.cpp in Sources */,
</span><span class="cx">                                 BC793400118F7C84005EA8E2 /* main.mm in Sources */,
</span><span class="cx">                                 5322FB4613FDA0EA0041ABCC /* PixelDumpSupport.cpp in Sources */,
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnercocoaTestControllerCocoamm"></a>
<div class="delfile"><h4>Deleted: trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -1,110 +0,0 @@
</span><del>-/*
- * Copyright (C) 2015 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#import "config.h"
-#import "TestController.h"
-
-#import "CrashReporterInfo.h"
-#import "PlatformWebView.h"
-#import "TestInvocation.h"
-#import <Foundation/Foundation.h>
-#import <WebKit/WKContextConfigurationRef.h>
-#import <WebKit/WKPreferencesRefPrivate.h>
-#import <WebKit/WKProcessPoolPrivate.h>
-#import <WebKit/WKStringCF.h>
-#import <WebKit/WKUserContentControllerPrivate.h>
-#import <WebKit/WKWebView.h>
-#import <WebKit/WKWebViewConfiguration.h>
-#import <WebKit/WKWebViewConfigurationPrivate.h>
-#import <WebKit/_WKProcessPoolConfiguration.h>
-#import <WebKit/_WKUserContentExtensionStore.h>
-#import <WebKit/_WKUserContentExtensionStorePrivate.h>
-#import <wtf/MainThread.h>
-
-namespace WTR {
-
-static WKWebViewConfiguration *globalWebViewConfiguration;
-
-void initializeWebViewConfiguration(const char* libraryPath, WKStringRef injectedBundlePath, WKContextRef context, WKContextConfigurationRef contextConfiguration)
-{
- ASSERT(!globalWebViewConfiguration);
- globalWebViewConfiguration = [[WKWebViewConfiguration alloc] init];
-
- globalWebViewConfiguration.processPool = [[WKProcessPool alloc] _initWithConfiguration:(_WKProcessPoolConfiguration *)contextConfiguration];
- globalWebViewConfiguration.websiteDataStore = (WKWebsiteDataStore *)WKContextGetWebsiteDataStore(context);
-}
-
-WKPreferencesRef TestController::platformPreferences()
-{
- return (WKPreferencesRef)globalWebViewConfiguration.preferences;
-}
-
-void TestController::platformCreateWebView(WKPageConfigurationRef, const ViewOptions& options)
-{
- m_mainWebView = std::make_unique<PlatformWebView>(globalWebViewConfiguration, options);
-}
-
-PlatformWebView* TestController::platformCreateOtherPage(PlatformWebView* parentView, WKPageConfigurationRef, const ViewOptions& options)
-{
- WKWebViewConfiguration *newConfiguration = [[globalWebViewConfiguration copy] autorelease];
- newConfiguration._relatedWebView = static_cast<WKWebView*>(parentView->platformView());
- return new PlatformWebView(newConfiguration, options);
-}
-
-WKContextRef TestController::platformAdjustContext(WKContextRef context, WKContextConfigurationRef contextConfiguration)
-{
- initializeWebViewConfiguration(libraryPathForTesting(), injectedBundlePath(), context, contextConfiguration);
- return (WKContextRef)globalWebViewConfiguration.processPool;
-}
-
-void TestController::platformRunUntil(bool& done, double timeout)
-{
- NSDate *endDate = (timeout > 0) ? [NSDate dateWithTimeIntervalSinceNow:timeout] : [NSDate distantFuture];
-
- while (!done && [endDate compare:[NSDate date]] == NSOrderedDescending)
- [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:endDate];
-}
-
-void TestController::platformResetStateToConsistentValues()
-{
-#if WK_API_ENABLED
- __block bool doneRemoving = false;
- [[_WKUserContentExtensionStore defaultStore] removeContentExtensionForIdentifier:@"TestContentExtensions" completionHandler:^(NSError *error) {
- doneRemoving = true;
- }];
- platformRunUntil(doneRemoving, 0);
- [[_WKUserContentExtensionStore defaultStore] _removeAllContentExtensions];
-#endif
-
- if (PlatformWebView* webView = mainWebView())
- [webView->platformView().configuration.userContentController _removeAllUserContentFilters];
-}
-
-void TestController::platformWillRunTest(const TestInvocation& testInvocation)
-{
- setCrashReportApplicationSpecificInformationToURL(testInvocation.url());
-}
-
-} // namespace WTR
</del></span></pre></div>
<a id="trunkToolsWebKitTestRunnereflTestControllerEflcpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/efl/TestControllerEfl.cpp (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/efl/TestControllerEfl.cpp        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/efl/TestControllerEfl.cpp        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -64,6 +64,10 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+void TestController::platformWillRunTest(const TestInvocation&)
+{
+}
+
</ins><span class="cx"> void TestController::platformRunUntil(bool& condition, double timeout)
</span><span class="cx"> {
</span><span class="cx"> if (timeout <= 0) {
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnergtkTestControllerGtkcpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/gtk/TestControllerGtk.cpp (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/gtk/TestControllerGtk.cpp        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/gtk/TestControllerGtk.cpp        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -52,6 +52,10 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+void TestController::platformWillRunTest(const TestInvocation&)
+{
+}
+
</ins><span class="cx"> void TestController::platformRunUntil(bool&, double timeout)
</span><span class="cx"> {
</span><span class="cx"> if (timeout > 0) {
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunneriosPlatformWebViewIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/ios/PlatformWebViewIOS.mm (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/ios/PlatformWebViewIOS.mm        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/ios/PlatformWebViewIOS.mm        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -28,15 +28,10 @@
</span><span class="cx"> #include "TestController.h"
</span><span class="cx">
</span><span class="cx"> #import <WebKit/WKImageCG.h>
</span><ins>+#import <WebKit/WKViewPrivate.h>
</ins><span class="cx"> #import <WebKit/WKPreferencesPrivate.h>
</span><del>-#import <WebKit/WKWebViewConfiguration.h>
-#import <WebKit/WKWebViewPrivate.h>
</del><span class="cx"> #import <wtf/RetainPtr.h>
</span><span class="cx">
</span><del>-@interface WKWebView (Details)
-- (WKPageRef)_pageForTesting;
-@end
-
</del><span class="cx"> @interface WebKitTestRunnerWindow : UIWindow {
</span><span class="cx"> WTR::PlatformWebView* _platformWebView;
</span><span class="cx"> CGPoint _fakeOrigin;
</span><span class="lines">@@ -45,6 +40,33 @@
</span><span class="cx"> @property (nonatomic, assign) WTR::PlatformWebView* platformWebView;
</span><span class="cx"> @end
</span><span class="cx">
</span><ins>+@interface TestRunnerWKView : WKView {
+ BOOL _useTiledDrawing;
+}
+
+@property (nonatomic, assign) BOOL useTiledDrawing;
+@end
+
+@implementation TestRunnerWKView
+
+@synthesize useTiledDrawing = _useTiledDrawing;
+
+- (id)initWithFrame:(CGRect)frame configurationRef:(WKPageConfigurationRef)configuration useTiledDrawing:(BOOL)useTiledDrawing
+{
+ if (!(self = [super initWithFrame:frame configurationRef:configuration]))
+ return nil;
+
+ _useTiledDrawing = useTiledDrawing;
+ return self;
+}
+
+- (BOOL)_shouldUseTiledDrawingArea
+{
+ return _useTiledDrawing;
+}
+
+@end
+
</ins><span class="cx"> @implementation WebKitTestRunnerWindow
</span><span class="cx"> @synthesize platformWebView = _platformWebView;
</span><span class="cx">
</span><span class="lines">@@ -100,13 +122,18 @@
</span><span class="cx">
</span><span class="cx"> namespace WTR {
</span><span class="cx">
</span><del>-PlatformWebView::PlatformWebView(WKWebViewConfiguration* configuration, const ViewOptions& options)
</del><ins>+PlatformWebView::PlatformWebView(WKPageConfigurationRef configuration, const ViewOptions& options)
</ins><span class="cx"> : m_windowIsKey(true)
</span><span class="cx"> , m_options(options)
</span><span class="cx"> {
</span><span class="cx"> CGRect rect = CGRectMake(0, 0, TestController::viewWidth, TestController::viewHeight);
</span><del>- m_view = [[WKWebView alloc] initWithFrame:rect configuration:configuration];
</del><ins>+ m_view = [[TestRunnerWKView alloc] initWithFrame:rect configurationRef:configuration useTiledDrawing:m_options.useTiledDrawing];
</ins><span class="cx">
</span><ins>+ WKPageGroupRef pageGroupRef = WKPageConfigurationGetPageGroup(configuration);
+
+ WKPreferencesSetCompositingBordersVisible(WKPageGroupGetPreferences(pageGroupRef), YES);
+ WKPreferencesSetCompositingRepaintCountersVisible(WKPageGroupGetPreferences(pageGroupRef), YES);
+
</ins><span class="cx"> CGRect windowRect = rect;
</span><span class="cx"> m_window = [[WebKitTestRunnerWindow alloc] initWithFrame:windowRect];
</span><span class="cx"> m_window.platformWebView = this;
</span><span class="lines">@@ -126,18 +153,19 @@
</span><span class="cx"> PlatformWebView::~PlatformWebView()
</span><span class="cx"> {
</span><span class="cx"> m_window.platformWebView = 0;
</span><ins>+// [m_window close];
</ins><span class="cx"> [m_view release];
</span><span class="cx"> [m_window release];
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WKPageRef PlatformWebView::page()
</span><span class="cx"> {
</span><del>- return [m_view _pageForTesting];
</del><ins>+ return [m_view pageRef];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::focus()
</span><span class="cx"> {
</span><del>- makeWebViewFirstResponder();
</del><ins>+// [m_window makeFirstResponder:m_view]; // FIXME: iOS equivalent?
</ins><span class="cx"> setWindowIsKey(true);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -156,7 +184,7 @@
</span><span class="cx"> void PlatformWebView::setWindowFrame(WKRect frame)
</span><span class="cx"> {
</span><span class="cx"> [m_window setFrame:CGRectMake(frame.origin.x, frame.origin.y, frame.size.width, frame.size.height)];
</span><del>- [platformView() setFrame:CGRectMake(0, 0, frame.size.width, frame.size.height)];
</del><ins>+ [m_view setFrame:CGRectMake(0, 0, frame.size.width, frame.size.height)];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::didInitializeClients()
</span><span class="lines">@@ -187,8 +215,7 @@
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::makeWebViewFirstResponder()
</span><span class="cx"> {
</span><del>- // FIXME: iOS equivalent?
- // [m_window makeFirstResponder:m_view];
</del><ins>+// [m_window makeFirstResponder:m_view];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::changeWindowScaleIfNeeded(float)
</span><span class="lines">@@ -198,12 +225,14 @@
</span><span class="cx">
</span><span class="cx"> WKRetainPtr<WKImageRef> PlatformWebView::windowSnapshotImage()
</span><span class="cx"> {
</span><del>- // FIXME: Need an implementation of this, or we're depending on software paints!
- return nullptr;
</del><ins>+ return 0; // FIXME for iOS?
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool PlatformWebView::viewSupportsOptions(const ViewOptions& options) const
</span><span class="cx"> {
</span><ins>+ if (m_options.useTiledDrawing != options.useTiledDrawing)
+ return false;
+
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunneriosTestControllerIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/ios/TestControllerIOS.mm (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/ios/TestControllerIOS.mm        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/ios/TestControllerIOS.mm        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -26,16 +26,12 @@
</span><span class="cx"> #import "config.h"
</span><span class="cx"> #import "TestController.h"
</span><span class="cx">
</span><ins>+#import "CrashReporterInfo.h"
+#import <Foundation/Foundation.h>
</ins><span class="cx"> #import "PlatformWebView.h"
</span><span class="cx"> #import "TestInvocation.h"
</span><del>-#import <Foundation/Foundation.h>
</del><span class="cx"> #import <WebKit/WKPreferencesRefPrivate.h>
</span><del>-#import <WebKit/WKProcessPoolPrivate.h>
</del><span class="cx"> #import <WebKit/WKStringCF.h>
</span><del>-#import <WebKit/WKUserContentControllerPrivate.h>
-#import <WebKit/WKWebView.h>
-#import <WebKit/WKWebViewConfiguration.h>
-#import <WebKit/WKWebViewConfigurationPrivate.h>
</del><span class="cx"> #import <wtf/MainThread.h>
</span><span class="cx">
</span><span class="cx"> namespace WTR {
</span><span class="lines">@@ -74,6 +70,11 @@
</span><span class="cx"> m_testPluginDirectory.adopt(WKStringCreateWithCFString((CFStringRef)[[NSBundle mainBundle] bundlePath]));
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+void TestController::platformWillRunTest(const TestInvocation& testInvocation)
+{
+ setCrashReportApplicationSpecificInformationToURL(testInvocation.url());
+}
+
</ins><span class="cx"> static bool shouldMakeViewportFlexible(const TestInvocation& test)
</span><span class="cx"> {
</span><span class="cx"> return test.urlContains("viewport/");
</span><span class="lines">@@ -81,7 +82,7 @@
</span><span class="cx">
</span><span class="cx"> void TestController::platformResetPreferencesToConsistentValues()
</span><span class="cx"> {
</span><del>- WKPreferencesRef preferences = platformPreferences();
</del><ins>+ WKPreferencesRef preferences = WKPageGroupGetPreferences(m_pageGroup.get());
</ins><span class="cx"> // Note that WKPreferencesSetTextAutosizingEnabled has no effect on iOS.
</span><span class="cx"> WKPreferencesSetMinimumZoomFontSize(preferences, 0);
</span><span class="cx"> }
</span><span class="lines">@@ -101,6 +102,14 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+void TestController::platformRunUntil(bool& done, double timeout)
+{
+ NSDate *endDate = (timeout > 0) ? [NSDate dateWithTimeIntervalSinceNow:timeout] : [NSDate distantFuture];
+
+ while (!done && [endDate compare:[NSDate date]] == NSOrderedDescending)
+ [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:endDate];
+}
+
</ins><span class="cx"> void TestController::platformInitializeContext()
</span><span class="cx"> {
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnermacEventSenderProxymm"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/mac/EventSenderProxy.mm (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/mac/EventSenderProxy.mm        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/mac/EventSenderProxy.mm        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -33,7 +33,6 @@
</span><span class="cx"> #import <Carbon/Carbon.h>
</span><span class="cx"> #import <WebKit/WKString.h>
</span><span class="cx"> #import <WebKit/WKPagePrivate.h>
</span><del>-#import <WebKit/WKWebView.h>
</del><span class="cx"> #import <wtf/RetainPtr.h>
</span><span class="cx">
</span><span class="cx"> @interface NSApplication (Details)
</span><span class="lines">@@ -269,17 +268,7 @@
</span><span class="cx"> // FIXME: Silly hack to teach WKTR to respect capturing mouse events outside the WKView.
</span><span class="cx"> // The right solution is just to use NSApplication's built-in event sending methods,
</span><span class="cx"> // instead of rolling our own algorithm for selecting an event target.
</span><del>- // FIXME: This is even worse now, because we need to hit the WKWebView's inner WKView
- // when using the modern API, so the level of fakery and horror increases.
- if (!targetView) {
- targetView = m_testController->mainWebView()->platformView();
- for (NSView *wkWebViewChild in targetView.subviews) {
- if ([wkWebViewChild isKindOfClass:[WKView class]]) {
- targetView = wkWebViewChild;
- break;
- }
- }
- }
</del><ins>+ targetView = targetView ? targetView : m_testController->mainWebView()->platformView();
</ins><span class="cx"> ASSERT(targetView);
</span><span class="cx"> [NSApp _setCurrentEvent:event];
</span><span class="cx"> [targetView mouseUp:event];
</span><span class="lines">@@ -412,27 +401,28 @@
</span><span class="cx"> void EventSenderProxy::mouseMoveTo(double x, double y)
</span><span class="cx"> {
</span><span class="cx"> NSView *view = m_testController->mainWebView()->platformView();
</span><del>- NSPoint position = [view convertPoint:NSMakePoint(x, view.frame.size.height - y) toView:nil];
</del><ins>+ NSPoint position = [view convertPoint:NSMakePoint(x, y) toView:nil];
</ins><span class="cx"> m_position.x = position.x;
</span><span class="cx"> m_position.y = position.y;
</span><span class="cx"> NSEvent *event = [NSEvent mouseEventWithType:(m_leftMouseButtonDown ? NSLeftMouseDragged : NSMouseMoved)
</span><span class="cx"> location:position
</span><span class="cx"> modifierFlags:0
</span><span class="cx"> timestamp:absoluteTimeForEventTime(currentEventTime())
</span><del>- windowNumber:view.window.windowNumber
</del><ins>+ windowNumber:[[view window] windowNumber]
</ins><span class="cx"> context:[NSGraphicsContext currentContext]
</span><span class="cx"> eventNumber:++eventNumber
</span><span class="cx"> clickCount:(m_leftMouseButtonDown ? m_clickCount : 0)
</span><del>- pressure:0];
</del><ins>+ pressure:0.0];
</ins><span class="cx">
</span><del>- NSPoint windowLocation = event.locationInWindow;
- NSView *targetView = [m_testController->mainWebView()->platformView() hitTest:windowLocation];
</del><ins>+ NSView *targetView = [m_testController->mainWebView()->platformView() hitTest:[event locationInWindow]];
</ins><span class="cx"> if (targetView) {
</span><span class="cx"> [NSApp _setCurrentEvent:event];
</span><span class="cx"> [targetView mouseMoved:event];
</span><span class="cx"> [NSApp _setCurrentEvent:nil];
</span><del>- } else
</del><ins>+ } else {
+ NSPoint windowLocation = [event locationInWindow];
</ins><span class="cx"> WTFLogAlways("mouseMoveTo failed to find a target view at %f,%f\n", windowLocation.x, windowLocation.y);
</span><ins>+ }
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void EventSenderProxy::leapForward(int milliseconds)
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnermacPlatformWebViewMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/mac/PlatformWebViewMac.mm (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/mac/PlatformWebViewMac.mm        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/mac/PlatformWebViewMac.mm        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -30,14 +30,9 @@
</span><span class="cx"> #import "WebKitTestRunnerDraggingInfo.h"
</span><span class="cx"> #import <WebKit/WKImageCG.h>
</span><span class="cx"> #import <WebKit/WKPreferencesPrivate.h>
</span><del>-#import <WebKit/WKWebViewConfiguration.h>
-#import <WebKit/WKWebViewPrivate.h>
</del><ins>+#import <WebKit/WKViewPrivate.h>
</ins><span class="cx"> #import <wtf/RetainPtr.h>
</span><span class="cx">
</span><del>-@interface WKWebView (Details)
-- (WKPageRef)_pageForTesting;
-@end
-
</del><span class="cx"> using namespace WTR;
</span><span class="cx">
</span><span class="cx"> enum {
</span><span class="lines">@@ -51,11 +46,26 @@
</span><span class="cx"> @property (nonatomic, assign) PlatformWebView* platformWebView;
</span><span class="cx"> @end
</span><span class="cx">
</span><del>-@interface TestRunnerWKWebView : WKWebView
</del><ins>+@interface TestRunnerWKView : WKView {
+ BOOL _useThreadedScrolling;
+}
+
+@property (nonatomic, assign) BOOL useThreadedScrolling;
</ins><span class="cx"> @end
</span><span class="cx">
</span><del>-@implementation TestRunnerWKWebView
</del><ins>+@implementation TestRunnerWKView
</ins><span class="cx">
</span><ins>+@synthesize useThreadedScrolling = _useThreadedScrolling;
+
+- (id)initWithFrame:(NSRect)frame configurationRef:(WKPageConfigurationRef)configuration useThreadedScrolling:(BOOL)useThreadedScrolling
+{
+ if (!(self = [super initWithFrame:frame configurationRef:configuration]))
+ return nil;
+
+ _useThreadedScrolling = useThreadedScrolling;
+ return self;
+}
+
</ins><span class="cx"> - (void)dragImage:(NSImage *)anImage at:(NSPoint)viewLocation offset:(NSSize)initialOffset event:(NSEvent *)event pasteboard:(NSPasteboard *)pboard source:(id)sourceObj slideBack:(BOOL)slideFlag
</span><span class="cx"> {
</span><span class="cx"> RetainPtr<WebKitTestRunnerDraggingInfo> draggingInfo = adoptNS([[WebKitTestRunnerDraggingInfo alloc] initWithImage:anImage offset:initialOffset pasteboard:pboard source:sourceObj]);
</span><span class="lines">@@ -110,20 +120,23 @@
</span><span class="cx">
</span><span class="cx"> namespace WTR {
</span><span class="cx">
</span><del>-PlatformWebView::PlatformWebView(WKWebViewConfiguration* configuration, const ViewOptions& options)
</del><ins>+PlatformWebView::PlatformWebView(WKPageConfigurationRef configuration, const ViewOptions& options)
</ins><span class="cx"> : m_windowIsKey(true)
</span><span class="cx"> , m_options(options)
</span><span class="cx"> {
</span><ins>+ WKPageGroupRef pageGroupRef = WKPageConfigurationGetPageGroup(configuration);
+
+ // The tiled drawing specific tests also depend on threaded scrolling.
+ WKPreferencesRef preferences = WKPageGroupGetPreferences(pageGroupRef);
+ WKPreferencesSetThreadedScrollingEnabled(preferences, m_options.useThreadedScrolling);
+
</ins><span class="cx"> // FIXME: Not sure this is the best place for this; maybe we should have API to set this so we can do it from TestController?
</span><span class="cx"> if (m_options.useRemoteLayerTree)
</span><span class="cx"> [[NSUserDefaults standardUserDefaults] setValue:@YES forKey:@"WebKit2UseRemoteLayerTreeDrawingArea"];
</span><span class="cx">
</span><del>- RetainPtr<WKWebViewConfiguration> copiedConfiguration = adoptNS([configuration copy]);
- WKPreferencesSetThreadedScrollingEnabled((WKPreferencesRef)[copiedConfiguration preferences], m_options.useThreadedScrolling);
-
</del><span class="cx"> NSRect rect = NSMakeRect(0, 0, TestController::viewWidth, TestController::viewHeight);
</span><del>- m_view = [[TestRunnerWKWebView alloc] initWithFrame:rect configuration:copiedConfiguration.get()];
- [m_view _setWindowOcclusionDetectionEnabled:NO];
</del><ins>+ m_view = [[TestRunnerWKView alloc] initWithFrame:rect configurationRef:configuration useThreadedScrolling:options.useThreadedScrolling];
+ [m_view setWindowOcclusionDetectionEnabled:NO];
</ins><span class="cx">
</span><span class="cx"> NSScreen *firstScreen = [[NSScreen screens] objectAtIndex:0];
</span><span class="cx"> NSRect windowRect = m_options.shouldShowWebView ? NSOffsetRect(rect, 100, 100) : NSOffsetRect(rect, -10000, [firstScreen frame].size.height - rect.size.height + 10000);
</span><span class="lines">@@ -157,12 +170,12 @@
</span><span class="cx">
</span><span class="cx"> WKPageRef PlatformWebView::page()
</span><span class="cx"> {
</span><del>- return [m_view _pageForTesting];
</del><ins>+ return [m_view pageRef];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::focus()
</span><span class="cx"> {
</span><del>- [m_window makeFirstResponder:platformView()];
</del><ins>+ [m_window makeFirstResponder:m_view];
</ins><span class="cx"> setWindowIsKey(true);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -181,7 +194,7 @@
</span><span class="cx"> void PlatformWebView::setWindowFrame(WKRect frame)
</span><span class="cx"> {
</span><span class="cx"> [m_window setFrame:NSMakeRect(frame.origin.x, frame.origin.y, frame.size.width, frame.size.height) display:YES];
</span><del>- [platformView() setFrame:NSMakeRect(0, 0, frame.size.width, frame.size.height)];
</del><ins>+ [m_view setFrame:NSMakeRect(0, 0, frame.size.width, frame.size.height)];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::didInitializeClients()
</span><span class="lines">@@ -192,19 +205,18 @@
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::addChromeInputField()
</span><span class="cx"> {
</span><del>- NSTextField *textField = [[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 100, 20)];
</del><ins>+ NSTextField* textField = [[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 100, 20)];
</ins><span class="cx"> textField.tag = 1;
</span><span class="cx"> [[m_window contentView] addSubview:textField];
</span><span class="cx"> [textField release];
</span><span class="cx">
</span><del>- NSView *view = platformView();
- [textField setNextKeyView:view];
- [view setNextKeyView:textField];
</del><ins>+ [textField setNextKeyView:m_view];
+ [m_view setNextKeyView:textField];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::removeChromeInputField()
</span><span class="cx"> {
</span><del>- NSView *textField = [[m_window contentView] viewWithTag:1];
</del><ins>+ NSView* textField = [[m_window contentView] viewWithTag:1];
</ins><span class="cx"> if (textField) {
</span><span class="cx"> [textField removeFromSuperview];
</span><span class="cx"> makeWebViewFirstResponder();
</span><span class="lines">@@ -213,12 +225,12 @@
</span><span class="cx">
</span><span class="cx"> void PlatformWebView::makeWebViewFirstResponder()
</span><span class="cx"> {
</span><del>- [m_window makeFirstResponder:platformView()];
</del><ins>+ [m_window makeFirstResponder:m_view];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WKRetainPtr<WKImageRef> PlatformWebView::windowSnapshotImage()
</span><span class="cx"> {
</span><del>- [platformView() display];
</del><ins>+ [m_view display];
</ins><span class="cx"> CGWindowImageOption options = kCGWindowImageBoundsIgnoreFraming | kCGWindowImageShouldBeOpaque;
</span><span class="cx">
</span><span class="cx"> if ([m_window backingScaleFactor] == 1)
</span></span></pre></div>
<a id="trunkToolsWebKitTestRunnermacTestControllerMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WebKitTestRunner/mac/TestControllerMac.mm (188816 => 188817)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WebKitTestRunner/mac/TestControllerMac.mm        2015-08-22 02:27:23 UTC (rev 188816)
+++ trunk/Tools/WebKitTestRunner/mac/TestControllerMac.mm        2015-08-22 02:32:41 UTC (rev 188817)
</span><span class="lines">@@ -26,19 +26,15 @@
</span><span class="cx"> #import "config.h"
</span><span class="cx"> #import "TestController.h"
</span><span class="cx">
</span><ins>+#import "CrashReporterInfo.h"
</ins><span class="cx"> #import "PlatformWebView.h"
</span><span class="cx"> #import "PoseAsClass.h"
</span><span class="cx"> #import "TestInvocation.h"
</span><span class="cx"> #import "WebKitTestRunnerPasteboard.h"
</span><span class="cx"> #import <WebKit/WKContextPrivate.h>
</span><span class="cx"> #import <WebKit/WKPageGroup.h>
</span><del>-#import <WebKit/WKProcessPoolPrivate.h>
</del><span class="cx"> #import <WebKit/WKStringCF.h>
</span><span class="cx"> #import <WebKit/WKURLCF.h>
</span><del>-#import <WebKit/WKUserContentControllerPrivate.h>
-#import <WebKit/WKWebView.h>
-#import <WebKit/WKWebViewConfiguration.h>
-#import <WebKit/WKWebViewConfigurationPrivate.h>
</del><span class="cx"> #import <WebKit/_WKUserContentExtensionStore.h>
</span><span class="cx"> #import <WebKit/_WKUserContentExtensionStorePrivate.h>
</span><span class="cx"> #import <mach-o/dyld.h>
</span><span class="lines">@@ -77,6 +73,11 @@
</span><span class="cx"> m_testPluginDirectory.adopt(WKStringCreateWithCFString((CFStringRef)[[NSBundle mainBundle] bundlePath]));
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+void TestController::platformWillRunTest(const TestInvocation& testInvocation)
+{
+ setCrashReportApplicationSpecificInformationToURL(testInvocation.url());
+}
+
</ins><span class="cx"> static bool shouldUseThreadedScrolling(const TestInvocation& test)
</span><span class="cx"> {
</span><span class="cx"> return test.urlContains("tiled-drawing/");
</span><span class="lines">@@ -84,6 +85,15 @@
</span><span class="cx">
</span><span class="cx"> void TestController::platformResetPreferencesToConsistentValues()
</span><span class="cx"> {
</span><ins>+#if WK_API_ENABLED
+ __block bool doneRemoving = false;
+ [[_WKUserContentExtensionStore defaultStore] removeContentExtensionForIdentifier:@"TestContentExtensions" completionHandler:^(NSError *error)
+ {
+ doneRemoving = true;
+ }];
+ platformRunUntil(doneRemoving, 0);
+ [[_WKUserContentExtensionStore defaultStore] _removeAllContentExtensions];
+#endif
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void TestController::updatePlatformSpecificViewOptionsForTest(ViewOptions& viewOptions, const TestInvocation& test) const
</span><span class="lines">@@ -111,7 +121,7 @@
</span><span class="cx"> [[_WKUserContentExtensionStore defaultStore] compileContentExtensionForIdentifier:@"TestContentExtensions" encodedContentExtension:contentExtensionString completionHandler:^(_WKUserContentFilter *filter, NSError *error)
</span><span class="cx"> {
</span><span class="cx"> if (!error)
</span><del>- [mainWebView()->platformView().configuration.userContentController _addUserContentFilter:filter];
</del><ins>+ WKPageGroupAddUserContentFilter(WKPageGetPageGroup(TestController::singleton().mainWebView()->page()), (__bridge WKUserContentFilterRef)filter);
</ins><span class="cx"> else
</span><span class="cx"> NSLog(@"%@", [error helpAnchor]);
</span><span class="cx"> doneCompiling = true;
</span><span class="lines">@@ -120,6 +130,14 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+void TestController::platformRunUntil(bool& done, double timeout)
+{
+ NSDate *endDate = (timeout > 0) ? [NSDate dateWithTimeIntervalSinceNow:timeout] : [NSDate distantFuture];
+
+ while (!done && [endDate compare:[NSDate date]] == NSOrderedDescending)
+ [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:endDate];
+}
+
</ins><span class="cx"> #if ENABLE(PLATFORM_FONT_LOOKUP)
</span><span class="cx"> static NSSet *allowedFontFamilySet()
</span><span class="cx"> {
</span></span></pre>
</div>
</div>
</body>
</html>