[webkit-changes] [203494] trunk

2016-07-20 Thread commit-queue
Title: [203494] trunk








Revision 203494
Author commit-qu...@webkit.org
Date 2016-07-20 23:51:05 -0700 (Wed, 20 Jul 2016)


Log Message
[XHR] Cache response JS object in case of arraybuffer and blob response types
https://bugs.webkit.org/show_bug.cgi?id=128903

Patch by Youenn Fablet  on 2016-07-20
Reviewed by Alex Christensen.

Source/WebCore:

Covered by existing and modified tests.

Making response getter a JS builtin that caches response in @response private slot.
Handling invalidation of cached response with @responseCacheIsValid new private method.
Handling creation of cached response with @retrieveResponse new private method which reuses most of
JSXMLHttpRequest::response previous code.

Caching of responses is activated whenever load ended without any error for blob and arraybuffer response types.

Caching of response for document is also activated in case the response getter is used but not if responseXML getter is used.

* CMakeLists.txt: Adding XMLHttpRequest.js.
* DerivedSources.make: Ditto.
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::retrieveResponse): Implements creation of to-be-cached response.
(WebCore::JSXMLHttpRequest::response): Deleted.
* bindings/js/WebCoreBuiltinNames.h: Adding new private names.
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::didCacheResponse): Renamed from didCacheResponseJSON as all response types are now cached.
(WebCore::XMLHttpRequest::didCacheResponseJSON): Deleted.
* xml/XMLHttpRequest.h:
* xml/XMLHttpRequest.idl:

LayoutTests:

* http/tests/xmlhttprequest/onabort-response-getters-expected.txt:
* http/tests/xmlhttprequest/onabort-response-getters.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/xmlhttprequest/onabort-response-getters-expected.txt
trunk/LayoutTests/http/tests/xmlhttprequest/onabort-response-getters.html
trunk/Source/WebCore/CMakeLists.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/DerivedSources.make
trunk/Source/WebCore/bindings/js/JSXMLHttpRequestCustom.cpp
trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h
trunk/Source/WebCore/xml/XMLHttpRequest.cpp
trunk/Source/WebCore/xml/XMLHttpRequest.h
trunk/Source/WebCore/xml/XMLHttpRequest.idl


Added Paths

trunk/Source/WebCore/xml/XMLHttpRequest.js




Diff

Modified: trunk/LayoutTests/ChangeLog (203493 => 203494)

--- trunk/LayoutTests/ChangeLog	2016-07-21 06:41:43 UTC (rev 203493)
+++ trunk/LayoutTests/ChangeLog	2016-07-21 06:51:05 UTC (rev 203494)
@@ -1,3 +1,13 @@
+2016-07-20  Youenn Fablet  
+
+[XHR] Cache response JS object in case of arraybuffer and blob response types
+https://bugs.webkit.org/show_bug.cgi?id=128903
+
+Reviewed by Alex Christensen.
+
+* http/tests/xmlhttprequest/onabort-response-getters-expected.txt:
+* http/tests/xmlhttprequest/onabort-response-getters.html:
+
 2016-07-19  Filip Pizlo  
 
 Switching on symbols should be fast


Modified: trunk/LayoutTests/http/tests/xmlhttprequest/onabort-response-getters-expected.txt (203493 => 203494)

--- trunk/LayoutTests/http/tests/xmlhttprequest/onabort-response-getters-expected.txt	2016-07-21 06:41:43 UTC (rev 203493)
+++ trunk/LayoutTests/http/tests/xmlhttprequest/onabort-response-getters-expected.txt	2016-07-21 06:51:05 UTC (rev 203494)
@@ -1,6 +1,12 @@
 
 PASS getting arraybuffer response within abort event callback 
+PASS getting arraybuffer response within abort event callback (aborting in loadend) 
 PASS getting blob response within abort event callback 
+PASS getting blob response within abort event callback (aborting in loadend) 
 PASS getting json response within abort event callback 
+PASS getting json response within abort event callback (aborting in loadend) 
 PASS getting document response within abort event callback 
+PASS getting document response within abort event callback (aborting in loadend) 
+PASS getting text response within abort event callback 
+PASS getting text response within abort event callback (aborting in loadend) 
 


Modified: trunk/LayoutTests/http/tests/xmlhttprequest/onabort-response-getters.html (203493 => 203494)

--- trunk/LayoutTests/http/tests/xmlhttprequest/onabort-response-getters.html	2016-07-21 06:41:43 UTC (rev 203493)
+++ trunk/LayoutTests/http/tests/xmlhttprequest/onabort-response-getters.html	2016-07-21 06:51:05 UTC (rev 203494)
@@ -7,6 +7,14 @@
   
 
 
+function checkCachedResponse(client) {
+assert_true(client.response === client.response);
+if (client.responseType == "text")
+assert_true(client.responseText === client.response);
+if (client.responseType == "document")
+assert_true(client.responseXML === client.response);
+}
+
 function runTest(name, fileName, mimeType, setupClient, checkResponse) {
   var test = async_test(name)
   test.step(function() {
@@ -28,6 +36,7 @@


[webkit-changes] [203493] trunk/Source/WebKit2

2016-07-20 Thread carlosgc
Title: [203493] trunk/Source/WebKit2








Revision 203493
Author carlo...@webkit.org
Date 2016-07-20 23:41:43 -0700 (Wed, 20 Jul 2016)


Log Message
[GTK][Threaded Compositor] Web Process crash when the page is closed before the web view is realized
https://bugs.webkit.org/show_bug.cgi?id=159918

Reviewed by Michael Catanzaro.

When the web view is unrealized, we send a sync message to the web process to destroy the native surface handle
for compositing, and then we actually destroy the redirected window. But if the page is closed explicitly before
the web view is unrealized, the drawing area proxy is destroyed so that when the web view is unrealized we can't
notify the web process that keeps trying to render to a now deleted window handle. That produces a BadDrawable
X error and the web process crashes.

* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::pageClosed): Call webkitWebViewBasePageClosed().
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBasePageClosed): If the web view is still realized, destroy the native surface handle and the
redirected window.
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Add webkitWebViewBasePageClosed().

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (203492 => 203493)

--- trunk/Source/WebKit2/ChangeLog	2016-07-21 06:38:32 UTC (rev 203492)
+++ trunk/Source/WebKit2/ChangeLog	2016-07-21 06:41:43 UTC (rev 203493)
@@ -1,3 +1,23 @@
+2016-07-20  Carlos Garcia Campos  
+
+[GTK][Threaded Compositor] Web Process crash when the page is closed before the web view is realized
+https://bugs.webkit.org/show_bug.cgi?id=159918
+
+Reviewed by Michael Catanzaro.
+
+When the web view is unrealized, we send a sync message to the web process to destroy the native surface handle
+for compositing, and then we actually destroy the redirected window. But if the page is closed explicitly before
+the web view is unrealized, the drawing area proxy is destroyed so that when the web view is unrealized we can't
+notify the web process that keeps trying to render to a now deleted window handle. That produces a BadDrawable
+X error and the web process crashes.
+
+* UIProcess/API/gtk/PageClientImpl.cpp:
+(WebKit::PageClientImpl::pageClosed): Call webkitWebViewBasePageClosed().
+* UIProcess/API/gtk/WebKitWebViewBase.cpp:
+(webkitWebViewBasePageClosed): If the web view is still realized, destroy the native surface handle and the
+redirected window.
+* UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Add webkitWebViewBasePageClosed().
+
 2016-07-20  Commit Queue  
 
 Unreviewed, rolling out r203471.


Modified: trunk/Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp (203492 => 203493)

--- trunk/Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp	2016-07-21 06:38:32 UTC (rev 203492)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp	2016-07-21 06:41:43 UTC (rev 203493)
@@ -238,7 +238,7 @@
 
 void PageClientImpl::pageClosed()
 {
-notImplemented();
+webkitWebViewBasePageClosed(WEBKIT_WEB_VIEW_BASE(m_viewWidget));
 }
 
 void PageClientImpl::preferencesDidChange()


Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp (203492 => 203493)

--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp	2016-07-21 06:38:32 UTC (rev 203492)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp	2016-07-21 06:41:43 UTC (rev 203493)
@@ -1630,3 +1630,23 @@
 UNUSED_PARAM(webkitWebViewBase);
 #endif
 }
+
+void webkitWebViewBasePageClosed(WebKitWebViewBase* webkitWebViewBase)
+{
+#if PLATFORM(X11) && USE(TEXTURE_MAPPER)
+if (PlatformDisplay::sharedDisplay().type() != PlatformDisplay::Type::X11)
+return;
+
+if (!gtk_widget_get_realized(GTK_WIDGET(webkitWebViewBase)))
+return;
+
+WebKitWebViewBasePrivate* priv = webkitWebViewBase->priv;
+DrawingAreaProxyImpl* drawingArea = static_cast(priv->pageProxy->drawingArea());
+ASSERT(drawingArea);
+drawingArea->destroyNativeSurfaceHandleForCompositing();
+
+#if USE(REDIRECTED_XCOMPOSITE_WINDOW)
+priv->redirectedWindow = nullptr;
+#endif
+#endif // PLATFORM(X11) && USE(TEXTURE_MAPPER)
+}


Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h (203492 => 203493)

--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h	2016-07-21 06:38:32 UTC (rev 203492)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h	2016-07-21 06:41:43 UTC (rev 203493)
@@ -75,6 +75,7 @@
 void webkitWebViewBaseEnterAcceleratedCompositingMode(WebKitWebViewBase*);
 void webkitWebViewBaseExitAcceleratedCompositingMode(WebKitWebViewBase*);
 void webkitWebViewBaseDidRelaunchWebProcess(WebKit

[webkit-changes] [203491] trunk

2016-07-20 Thread fpizlo
Title: [203491] trunk








Revision 203491
Author fpi...@apple.com
Date 2016-07-20 23:23:10 -0700 (Wed, 20 Jul 2016)


Log Message
Switching on symbols should be fast
https://bugs.webkit.org/show_bug.cgi?id=158892

Reviewed by Keith Miller.
Source/_javascript_Core:


This does two things: fixes some goofs in our lowering of symbol equality and adds a new phase
to B3 to infer switch statements from linear chains of branches.

This changes how we compile equality to Symbols to constant-fold the load of the Symbol's UID.
This is necessary for making switches on Symbols inferrable. This also gives us the ability to
efficiently compile strict equality comparisons of SymbolUse and UntypedUse.

This adds a new phase to B3, which finds chains of branches that test for (in)equality on the
same value and constants, and turns them into a Switch. This can turn O(n) code into
O(log n) code, or even O(1) code if the switch cases are dense.

This can make a big difference in JS. Say you write a switch in which the case statements are
variable resolutions. The bytecode generator cannot use a bytecode switch in this case, since
we're required to evaluate the resolutions in order. But in DFG IR, we will often turn those
variable resolutions into constants, since we do that for any immutable singleton. This means
that B3 will see a chain of Branches: the else case of one Branch will point to a basic block
that does nothing but Branch on equality on the same value as the first Branch.

The inference algorithm is quite simple. The basic building block is the ability to summarize
a block's switch behavior. For a block that ends in a switch, this is just the collection of
switch cases. For a block that ends in a branch, we recognize Branch(Equal(value, const)),
Branch(NotEqual(value, const)), and Branch(value). Each of these are summarized as if they
were one-case switches. We infer a new switch if both some block and its sole predecessor
can be described as switches on the same value, nothing shady is going on (like loops), and
the block in question does no work other than this switch. In that case, the block is killed
and its cases (which we get from the summary) are added to the predecessor's switch. This
algorithm runs to fixpoint.

* CMakeLists.txt:
* _javascript_Core.xcodeproj/project.pbxproj:
* b3/B3Generate.cpp:
(JSC::B3::generateToAir):
* b3/B3InferSwitches.cpp: Added.
(JSC::B3::inferSwitches):
* b3/B3InferSwitches.h: Added.
* b3/B3Procedure.h:
(JSC::B3::Procedure::cfg):
* b3/B3ReduceStrength.cpp:
* b3/B3Value.cpp:
(JSC::B3::Value::performSubstitution):
(JSC::B3::Value::isFree):
(JSC::B3::Value::dumpMeta):
* b3/B3Value.h:
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCheckIdent):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
(JSC::FTL::DFG::LowerDFGToB3::lowSymbol):
(JSC::FTL::DFG::LowerDFGToB3::lowSymbolUID):
(JSC::FTL::DFG::LowerDFGToB3::lowNonNullObject):

LayoutTests:


* js/regress/bigswitch-indirect-expected.txt: Added.
* js/regress/bigswitch-indirect-symbol-expected.txt: Added.
* js/regress/bigswitch-indirect-symbol-or-undefined-expected.txt: Added.
* js/regress/bigswitch-indirect-symbol-or-undefined.html: Added.
* js/regress/bigswitch-indirect-symbol.html: Added.
* js/regress/bigswitch-indirect.html: Added.
* js/regress/implicit-bigswitch-indirect-symbol-expected.txt: Added.
* js/regress/implicit-bigswitch-indirect-symbol.html: Added.
* js/regress/script-tests/bigswitch-indirect-symbol-or-undefined.js: Added.
(foo):
* js/regress/script-tests/bigswitch-indirect-symbol.js: Added.
(foo):
* js/regress/script-tests/bigswitch-indirect.js: Added.
(foo):
* js/regress/script-tests/implicit-bigswitch-indirect-symbol.js: Added.
(foo):

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/_javascript_Core/CMakeLists.txt
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj
trunk/Source/_javascript_Core/b3/B3Generate.cpp
trunk/Source/_javascript_Core/b3/B3IndexMap.h
trunk/Source/_javascript_Core/b3/B3ReduceStrength.cpp
trunk/Source/_javascript_Core/b3/B3Value.cpp
trunk/Source/_javascript_Core/b3/B3Value.h
trunk/Source/_javascript_Core/dfg/DFGFixupPhase.cpp
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.h
trunk/Source/_javascript_Core/ftl/FTLCapabilities.cpp
trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp


Added Paths

trunk/LayoutTests/js/regress/bigswitch-indirect-expected.txt
trunk/LayoutTests/js/regress/bigswitch-indirect-symbol-expected.txt
trunk/LayoutTests/js/regress/bigswitch-indirect-symbol-or-undefined-expected.txt
trunk/LayoutTests/js/regress/bigswitch-indirect-symbol-or-undefined.html
trunk/LayoutTests/js/regress/bigswitch-indirect-symbol.html
trunk/LayoutTests/js/regress/bigswitch-indirect.html
trunk/LayoutTests/js/regress/implicit-bigswitch-indirect-symbol-expected.txt
trunk/LayoutTests/js/regress/implicit-bigswitch-indire

[webkit-changes] [203490] trunk/Source/WebCore

2016-07-20 Thread commit-queue
Title: [203490] trunk/Source/WebCore








Revision 203490
Author commit-qu...@webkit.org
Date 2016-07-20 23:12:13 -0700 (Wed, 20 Jul 2016)


Log Message
Remove crossOriginRequestPolicy from ThreadableLoaderOptions
https://bugs.webkit.org/show_bug.cgi?id=159417

Patch by Youenn Fablet  on 2016-07-20
Reviewed by Alex Christensen.

No observable change.

* Modules/fetch/FetchLoader.cpp:
(WebCore::FetchLoader::start): DenyCrossOriginRequests -> FetchOptions::Mode::SameOrigin.
* fileapi/FileReaderLoader.cpp:
(WebCore::FileReaderLoader::start): DenyCrossOriginRequests -> FetchOptions::Mode::SameOrigin.
* inspector/InspectorNetworkAgent.cpp:
(WebCore::InspectorNetworkAgent::loadResource): AllowCrossOriginRequests -> FetchOptions::Mode::NoCors.
* loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Ditto.
(WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequest): UseAccessControl -> FetchOptions::Mode::Cors.
(WebCore::DocumentThreadableLoader::redirectReceived): Ditto.
(WebCore::DocumentThreadableLoader::didReceiveResponse): Ditto.
(WebCore::DocumentThreadableLoader::loadRequest): Use NoCors as option passed to ResourceLoader. This allows
desactivating ResourceLoader CORS checks as they are done in DocumentThreadableLoader right now. In the future,
these checks should be moved to ResourceLoader and DocumentThreadableLoader should directly pass the fetch mode
option.
(WebCore::DocumentThreadableLoader::isAllowedRedirect): AllowCrossOriginRequests -> FetchOptions::Mode::NoCors.
* loader/ThreadableLoader.cpp:
(WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions): Removing CrossOriginRequestPolicy.
* loader/ThreadableLoader.h: Ditto.
* loader/WorkerThreadableLoader.cpp:
(WebCore::LoaderTaskOptions::LoaderTaskOptions): Ditto.
* page/EventSource.cpp:
(WebCore::EventSource::connect): UseAccessControl -> FetchOptions::Mode::Cors.
* workers/Worker.cpp:
(WebCore::Worker::create): DenyCrossOriginRequests -> FetchOptions::Mode::SameOrigin.
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::importScripts): AllowCrossOriginRequests -> FetchOptions::Mode::NoCors.
* workers/WorkerScriptLoader.cpp:
(WebCore::WorkerScriptLoader::loadSynchronously):
(WebCore::WorkerScriptLoader::loadAsynchronously):
* workers/WorkerScriptLoader.h:
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::createRequest):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/fetch/FetchLoader.cpp
trunk/Source/WebCore/fileapi/FileReaderLoader.cpp
trunk/Source/WebCore/inspector/InspectorNetworkAgent.cpp
trunk/Source/WebCore/loader/DocumentThreadableLoader.cpp
trunk/Source/WebCore/loader/ThreadableLoader.cpp
trunk/Source/WebCore/loader/ThreadableLoader.h
trunk/Source/WebCore/loader/WorkerThreadableLoader.cpp
trunk/Source/WebCore/page/EventSource.cpp
trunk/Source/WebCore/workers/Worker.cpp
trunk/Source/WebCore/workers/WorkerGlobalScope.cpp
trunk/Source/WebCore/workers/WorkerScriptLoader.cpp
trunk/Source/WebCore/workers/WorkerScriptLoader.h
trunk/Source/WebCore/xml/XMLHttpRequest.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (203489 => 203490)

--- trunk/Source/WebCore/ChangeLog	2016-07-21 06:09:56 UTC (rev 203489)
+++ trunk/Source/WebCore/ChangeLog	2016-07-21 06:12:13 UTC (rev 203490)
@@ -1,3 +1,46 @@
+2016-07-20  Youenn Fablet  
+
+Remove crossOriginRequestPolicy from ThreadableLoaderOptions
+https://bugs.webkit.org/show_bug.cgi?id=159417
+
+Reviewed by Alex Christensen.
+
+No observable change.
+
+* Modules/fetch/FetchLoader.cpp:
+(WebCore::FetchLoader::start): DenyCrossOriginRequests -> FetchOptions::Mode::SameOrigin.
+* fileapi/FileReaderLoader.cpp:
+(WebCore::FileReaderLoader::start): DenyCrossOriginRequests -> FetchOptions::Mode::SameOrigin.
+* inspector/InspectorNetworkAgent.cpp:
+(WebCore::InspectorNetworkAgent::loadResource): AllowCrossOriginRequests -> FetchOptions::Mode::NoCors.
+* loader/DocumentThreadableLoader.cpp:
+(WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Ditto.
+(WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequest): UseAccessControl -> FetchOptions::Mode::Cors.
+(WebCore::DocumentThreadableLoader::redirectReceived): Ditto.
+(WebCore::DocumentThreadableLoader::didReceiveResponse): Ditto.
+(WebCore::DocumentThreadableLoader::loadRequest): Use NoCors as option passed to ResourceLoader. This allows
+desactivating ResourceLoader CORS checks as they are done in DocumentThreadableLoader right now. In the future,
+these checks should be moved to ResourceLoader and DocumentThreadableLoader should directly pass the fetch mode
+option.
+(WebCore::DocumentThreadableLoader::isAllowedRedirect): AllowCrossOriginRequests -> FetchOptions::Mode::NoCors.
+* loader/ThreadableLoader.cpp:
+(WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions): Removi

[webkit-changes] [203489] trunk/Tools

2016-07-20 Thread commit-queue
Title: [203489] trunk/Tools








Revision 203489
Author commit-qu...@webkit.org
Date 2016-07-20 23:09:56 -0700 (Wed, 20 Jul 2016)


Log Message
Bots should run built-ins generator tests
https://bugs.webkit.org/show_bug.cgi?id=159971

Patch by Youenn Fablet  on 2016-07-20
Reviewed by Alexey Proskuryakov.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunBuiltinsTests): New step to run built-in generator tests.
(TestFactory.__init__): Adding an additional step for bultin generator tests.
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Rebasing expectations.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js: Adding additional step for proper display.

Modified Paths

trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js
trunk/Tools/ChangeLog




Diff

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg (203488 => 203489)

--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg	2016-07-21 05:24:54 UTC (rev 203488)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg	2016-07-21 06:09:56 UTC (rev 203489)
@@ -560,6 +560,13 @@
 command = ["python", "./Tools/Scripts/run-bindings-tests"]
 
 
+class RunBuiltinsTests(shell.Test):
+name = "builtins-generator-tests"
+description = ["builtins-generator-tests running"]
+descriptionDone = ["builtins-generator-tests"]
+command = ["python", "./Tools/Scripts/run-builtins-generator-tests"]
+
+
 class RunEflAPITests(shell.Test):
 name = "API tests"
 description = ["API tests running"]
@@ -847,6 +854,7 @@
 self.addStep(RunPythonTests())
 self.addStep(RunPerlTests())
 self.addStep(RunBindingsTests())
+self.addStep(RunBuiltinsTests())
 if self.LayoutTestClass:
 self.addStep(ArchiveTestResults())
 self.addStep(UploadTestResults())


Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py (203488 => 203489)

--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py	2016-07-21 05:24:54 UTC (rev 203488)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py	2016-07-21 06:09:56 UTC (rev 203489)
@@ -365,8 +365,8 @@
 
 
 expected_build_steps = {
-'Apple Win 7 Debug (Tests)' : ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'compile', 'download-built-product', 'extract-built-product', 'jscore-test', 'layout-test', 'run-api-tests', 'webkitpy-test', 'webkitperl-test', 'bindings-generation-tests', 'archive-test-results', 'upload', 'MasterShellCommand'],
-'Apple Win 7 Release (Tests)' : ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'compile', 'download-built-product', 'extract-built-product', 'jscore-test', 'layout-test', 'run-api-tests', 'webkitpy-test', 'webkitperl-test', 'bindings-generation-tests', 'archive-test-results', 'upload', 'MasterShellCommand'],
+'Apple Win 7 Debug (Tests)' : ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'compile', 'download-built-product', 'extract-built-product', 'jscore-test', 'layout-test', 'run-api-tests', 'webkitpy-test', 'webkitperl-test', 'bindings-generation-tests', 'builtins-generation-tests', 'archive-test-results', 'upload', 'MasterShellCommand'],
+'Apple Win 7 Release (Tests)' : ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'compile', 'download-built-product', 'extract-built-product', 'jscore-test', 'layout-test', 'run-api-tests', 'webkitpy-test', 'webkitperl-test', 'bindings-generation-tests', 'builtins-generation-tests', 'archive-test-results', 'upload', 'MasterShellCommand'],
 'Apple Win Debug (Build)' : ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'compile', 'compile-webkit', 'archive-built-product', 'upload', 'trigger'],
 'Apple Win Release (Build)' : ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'compile', 'compile-webkit', 'archive-built-product', 'upload', 'trigger'],
 
@@ -374,15 +374,15 @@
 'Apple Yosemite (Leaks)' : ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'download-built-product', 'extract-built-product', 'layout-test', 'archive-test-results', 'upload', 'MasterShellCommand'],
 'Apple Yosemite Debug (Build)' : ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'compile-webkit', 'archive-built-product', 'upload', 'trigger'],
 'App

[webkit-changes] [203488] trunk/Source/JavaScriptCore

2016-07-20 Thread fpizlo
Title: [203488] trunk/Source/_javascript_Core








Revision 203488
Author fpi...@apple.com
Date 2016-07-20 22:24:54 -0700 (Wed, 20 Jul 2016)


Log Message
FTL snippet generators should be able to request a different register for output and input
https://bugs.webkit.org/show_bug.cgi?id=160010
rdar://problem/27439330

Reviewed by Saam Barati.

The BitOr and BitXor snippet generators have problems if the register for the right input is
the same as the register for the result. We could fix those generators, but I'm not convinced
that the other snippet generators don't have this bug. So, the approach that this patch takes
is to teach the FTL to request that B3 to use a different register for the result than for
any input to the snippet patchpoint.

Air already has the ability to let any instruction do an EarlyDef, which means exactly this.
But B3 did not expose this via ValueRep. This patch exposes this in ValueRep as
SomeEarlyRegister. That's most of the change.

This adds a testb3 test for SomeEarlyRegister and a regression test for this particular
problem. The regression test failed on trunk JSC before this.

* b3/B3LowerToAir.cpp:
(JSC::B3::Air::LowerToAir::lower):
* b3/B3PatchpointSpecial.cpp:
(JSC::B3::PatchpointSpecial::forEachArg):
(JSC::B3::PatchpointSpecial::admitsStack):
* b3/B3StackmapSpecial.cpp:
(JSC::B3::StackmapSpecial::forEachArgImpl):
(JSC::B3::StackmapSpecial::isArgValidForRep):
* b3/B3Validate.cpp:
* b3/B3ValueRep.cpp:
(JSC::B3::ValueRep::addUsedRegistersTo):
(JSC::B3::ValueRep::dump):
(WTF::printInternal):
* b3/B3ValueRep.h:
(JSC::B3::ValueRep::ValueRep):
(JSC::B3::ValueRep::reg):
(JSC::B3::ValueRep::isAny):
(JSC::B3::ValueRep::isReg):
(JSC::B3::ValueRep::isSomeRegister): Deleted.
* b3/testb3.cpp:
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::emitBinarySnippet):
(JSC::FTL::DFG::LowerDFGToB3::emitBinaryBitOpSnippet):
(JSC::FTL::DFG::LowerDFGToB3::emitRightShiftSnippet):
* tests/stress/ftl-bit-xor-right-result-interference.js: Added.

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/b3/B3LowerToAir.cpp
trunk/Source/_javascript_Core/b3/B3PatchpointSpecial.cpp
trunk/Source/_javascript_Core/b3/B3StackmapSpecial.cpp
trunk/Source/_javascript_Core/b3/B3Validate.cpp
trunk/Source/_javascript_Core/b3/B3ValueRep.cpp
trunk/Source/_javascript_Core/b3/B3ValueRep.h
trunk/Source/_javascript_Core/b3/testb3.cpp
trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp


Added Paths

trunk/Source/_javascript_Core/tests/stress/ftl-bit-xor-right-result-interference.js




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (203487 => 203488)

--- trunk/Source/_javascript_Core/ChangeLog	2016-07-21 03:30:48 UTC (rev 203487)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-07-21 05:24:54 UTC (rev 203488)
@@ -1,3 +1,50 @@
+2016-07-20  Filip Pizlo  
+
+FTL snippet generators should be able to request a different register for output and input
+https://bugs.webkit.org/show_bug.cgi?id=160010
+rdar://problem/27439330
+
+Reviewed by Saam Barati.
+
+The BitOr and BitXor snippet generators have problems if the register for the right input is
+the same as the register for the result. We could fix those generators, but I'm not convinced
+that the other snippet generators don't have this bug. So, the approach that this patch takes
+is to teach the FTL to request that B3 to use a different register for the result than for
+any input to the snippet patchpoint.
+
+Air already has the ability to let any instruction do an EarlyDef, which means exactly this.
+But B3 did not expose this via ValueRep. This patch exposes this in ValueRep as
+SomeEarlyRegister. That's most of the change.
+
+This adds a testb3 test for SomeEarlyRegister and a regression test for this particular
+problem. The regression test failed on trunk JSC before this.
+
+* b3/B3LowerToAir.cpp:
+(JSC::B3::Air::LowerToAir::lower):
+* b3/B3PatchpointSpecial.cpp:
+(JSC::B3::PatchpointSpecial::forEachArg):
+(JSC::B3::PatchpointSpecial::admitsStack):
+* b3/B3StackmapSpecial.cpp:
+(JSC::B3::StackmapSpecial::forEachArgImpl):
+(JSC::B3::StackmapSpecial::isArgValidForRep):
+* b3/B3Validate.cpp:
+* b3/B3ValueRep.cpp:
+(JSC::B3::ValueRep::addUsedRegistersTo):
+(JSC::B3::ValueRep::dump):
+(WTF::printInternal):
+* b3/B3ValueRep.h:
+(JSC::B3::ValueRep::ValueRep):
+(JSC::B3::ValueRep::reg):
+(JSC::B3::ValueRep::isAny):
+(JSC::B3::ValueRep::isReg):
+(JSC::B3::ValueRep::isSomeRegister): Deleted.
+* b3/testb3.cpp:
+* ftl/FTLLowerDFGToB3.cpp:
+(JSC::FTL::DFG::LowerDFGToB3::emitBinarySnippet):
+(JSC::FTL::DFG::LowerDFGToB3::emitBinaryBitOpSnippet):
+(JSC::FTL::DFG::LowerDFGToB3::emitRightShi

[webkit-changes] [203487] trunk

2016-07-20 Thread cdumez
Title: [203487] trunk








Revision 203487
Author cdu...@apple.com
Date 2016-07-20 20:30:48 -0700 (Wed, 20 Jul 2016)


Log Message
Fix null handling of several Document attributes
https://bugs.webkit.org/show_bug.cgi?id=159997

Reviewed by Ryosuke Niwa.

Source/WebCore:

Fix null handling of the following Document attributes: title, cookie
and domain.

In WebKit, they were all marked as [TreatNullAs=EmptyString], which
does not match the specification:
- https://html.spec.whatwg.org/multipage/dom.html#document

Details for each attribute:
- title: null is now treated as the string "null", thus setting the
  document title to "null". This matches Firefox and Chrome.
- cookie: adds a "null" cookie instead of being a no-op. This matches
  both Firefox and Chrome.
- domain: Calls setDomain(String("null")) instead of
  setDomain(String()). This throws an exception because "null"
  is not a suffix of the effective domain name. The behavior
  is the same in Firefox and Chrome. Previously, we were
  already throwing an exception since setting the domain to
  the empty string throws, as per the specification.

Test: http/tests//dom/document-attributes-null-handling.html

* dom/Document.idl:

LayoutTests:

Add test coverage.

* http/tests/dom/document-attributes-null-handling-expected.txt: Added.
* http/tests/dom/document-attributes-null-handling.html: Added.
* fast/dom/document-attribute-js-null-expected.txt:
* fast/dom/document-attribute-js-null.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/dom/document-attribute-js-null-expected.txt
trunk/LayoutTests/fast/dom/document-attribute-js-null.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Document.idl


Added Paths

trunk/LayoutTests/http/tests/dom/document-attributes-null-handling-expected.txt
trunk/LayoutTests/http/tests/dom/document-attributes-null-handling.html




Diff

Modified: trunk/LayoutTests/ChangeLog (203486 => 203487)

--- trunk/LayoutTests/ChangeLog	2016-07-21 03:25:59 UTC (rev 203486)
+++ trunk/LayoutTests/ChangeLog	2016-07-21 03:30:48 UTC (rev 203487)
@@ -1,3 +1,17 @@
+2016-07-20  Chris Dumez  
+
+Fix null handling of several Document attributes
+https://bugs.webkit.org/show_bug.cgi?id=159997
+
+Reviewed by Ryosuke Niwa.
+
+Add test coverage.
+
+* http/tests/dom/document-attributes-null-handling-expected.txt: Added.
+* http/tests/dom/document-attributes-null-handling.html: Added.
+* fast/dom/document-attribute-js-null-expected.txt:
+* fast/dom/document-attribute-js-null.html:
+
 2016-07-20  Commit Queue  
 
 Unreviewed, rolling out r203471.


Modified: trunk/LayoutTests/fast/dom/document-attribute-js-null-expected.txt (203486 => 203487)

--- trunk/LayoutTests/fast/dom/document-attribute-js-null-expected.txt	2016-07-21 03:25:59 UTC (rev 203486)
+++ trunk/LayoutTests/fast/dom/document-attribute-js-null-expected.txt	2016-07-21 03:30:48 UTC (rev 203487)
@@ -3,7 +3,7 @@
 TEST SUCCEEDED: Got the expected exception (9). [tested Document.xmlVersion]
 TEST SUCCEEDED: The value was null. [tested Document.selectedStylesheetSet]
 
-TEST SUCCEEDED: The value was the empty string. [tested HTMLDocument.title]
+TEST SUCCEEDED: The value was the string 'null'. [tested HTMLDocument.title]
 TEST SUCCEEDED: The value was the empty string. [tested HTMLDocument.cookie]
 TEST SUCCEEDED: The value was the empty string. [tested HTMLDocument.bgColor]
 TEST SUCCEEDED: The value was the empty string. [tested HTMLDocument.fgColor]


Modified: trunk/LayoutTests/fast/dom/document-attribute-js-null.html (203486 => 203487)

--- trunk/LayoutTests/fast/dom/document-attribute-js-null.html	2016-07-21 03:25:59 UTC (rev 203486)
+++ trunk/LayoutTests/fast/dom/document-attribute-js-null.html	2016-07-21 03:30:48 UTC (rev 203487)
@@ -72,7 +72,7 @@
 typeName: 'HTMLDocument',
 docToUse: htmlDoc,
 attributes: [
-{name: 'title', expectedNull: ''},
+{name: 'title', expectedNull: 'null'},
 {name: 'cookie', expectedNull: ''},
 {name: 'bgColor', expectedNull: ''},
 {name: 'fgColor', expectedNull: ''},


Added: trunk/LayoutTests/http/tests/dom/document-attributes-null-handling-expected.txt (0 => 203487)

--- trunk/LayoutTests/http/tests/dom/document-attributes-null-handling-expected.txt	(rev 0)
+++ trunk/LayoutTests/http/tests/dom/document-attributes-null-handling-expected.txt	2016-07-21 03:30:48 UTC (rev 203487)
@@ -0,0 +1,25 @@
+Test null handling of several Document attributes
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+* cookie attribute
+PASS document.cookie is ""
+document.cookie = 'key=value'
+PASS document.cookie is "key=value"
+document.cookie = null
+PASS document.cookie is "key=value; n

[webkit-changes] [203486] trunk/Websites/perf.webkit.org

2016-07-20 Thread rniwa
Title: [203486] trunk/Websites/perf.webkit.org








Revision 203486
Author rn...@webkit.org
Date 2016-07-20 20:25:59 -0700 (Wed, 20 Jul 2016)


Log Message
Perf dashboard always re-generate measurement set JSON
https://bugs.webkit.org/show_bug.cgi?id=159951

Reviewed by Chris Dumez.

The bug was caused by manifest.json reporting the last modified date of a measurement set in floating point,
and a measurement set JSON reporting it as an integer. Fixed the bug by always using an integer.

* public/api/measurement-set.php:
(main): Return 404 when the results is empty.
(MeasurementSetFetcher::execute_query): Use "extract(epoch from commit_time)" like ManifestGenerator to improve
the generation speed. This is ~10% runtime improvement.
(MeasurementSetFetcher::format_map): Updated to reflect the above change.
(MeasurementSetFetcher::parse_revisions_array): Ditto.

* public/include/manifest.php:
(ManifestGenerator::platforms): Fixed the bug by coercing lastModified to integer (instead of float).

* server-tests/api-measurement-set-tests.js: Added a test case for returning empty results, and a test case for
making sure lastModified dates in manifest.json and measurement sets match.

* tools/js/remote.js:
(RemoteAPI.prototype.sendHttpRequest): Reject the promise when HTTP status code is not 200.

Modified Paths

trunk/Websites/perf.webkit.org/ChangeLog
trunk/Websites/perf.webkit.org/public/api/measurement-set.php
trunk/Websites/perf.webkit.org/public/include/manifest.php
trunk/Websites/perf.webkit.org/server-tests/api-measurement-set-tests.js
trunk/Websites/perf.webkit.org/tools/js/remote.js




Diff

Modified: trunk/Websites/perf.webkit.org/ChangeLog (203485 => 203486)

--- trunk/Websites/perf.webkit.org/ChangeLog	2016-07-21 02:09:51 UTC (rev 203485)
+++ trunk/Websites/perf.webkit.org/ChangeLog	2016-07-21 03:25:59 UTC (rev 203486)
@@ -1,3 +1,29 @@
+2016-07-19  Ryosuke Niwa  
+
+Perf dashboard always re-generate measurement set JSON
+https://bugs.webkit.org/show_bug.cgi?id=159951
+
+Reviewed by Chris Dumez.
+
+The bug was caused by manifest.json reporting the last modified date of a measurement set in floating point,
+and a measurement set JSON reporting it as an integer. Fixed the bug by always using an integer.
+
+* public/api/measurement-set.php:
+(main): Return 404 when the results is empty.
+(MeasurementSetFetcher::execute_query): Use "extract(epoch from commit_time)" like ManifestGenerator to improve
+the generation speed. This is ~10% runtime improvement.
+(MeasurementSetFetcher::format_map): Updated to reflect the above change.
+(MeasurementSetFetcher::parse_revisions_array): Ditto.
+
+* public/include/manifest.php:
+(ManifestGenerator::platforms): Fixed the bug by coercing lastModified to integer (instead of float).
+
+* server-tests/api-measurement-set-tests.js: Added a test case for returning empty results, and a test case for
+making sure lastModified dates in manifest.json and measurement sets match.
+
+* tools/js/remote.js:
+(RemoteAPI.prototype.sendHttpRequest): Reject the promise when HTTP status code is not 200.
+
 2016-07-09  Ryosuke Niwa  
 
 Perf dashboard can consume 50-70% of CPU on MacBook even if user is not interacting at all


Modified: trunk/Websites/perf.webkit.org/public/api/measurement-set.php (203485 => 203486)

--- trunk/Websites/perf.webkit.org/public/api/measurement-set.php	2016-07-21 02:09:51 UTC (rev 203485)
+++ trunk/Websites/perf.webkit.org/public/api/measurement-set.php	2016-07-21 03:25:59 UTC (rev 203486)
@@ -31,6 +31,11 @@
 array('platform' => $platform_id, 'metric' => $metric_id));
 }
 
+if ($fetcher->at_end()) {
+header($_SERVER['SERVER_PROTOCOL'] . ' 404 Not Found');
+exit(404);
+}
+
 $cluster_count = 0;
 while (!$fetcher->at_end()) {
 $content = $fetcher->fetch_next_cluster();
@@ -164,9 +169,9 @@
 
 function execute_query($config_id) {
 return $this->db->query('
-SELECT test_runs.*, builds.*,
-array_agg((commit_id, commit_repository, commit_revision, commit_time)) AS revisions,
-max(commit_time) AS revision_time, max(commit_order) AS revision_order
+SELECT test_runs.*, build_id, build_number, build_builder, build_time,
+array_agg((commit_id, commit_repository, commit_revision, extract(epoch from commit_time) * 1000)) AS revisions,
+extract(epoch from max(commit_time)) * 1000 AS revision_time, max(commit_order) AS revision_order
 FROM builds
 LEFT OUTER JOIN build_commits ON commit_build = build_id
 LEFT OUTER JOIN commits ON build_commit = commit_id, test_runs
@@ -181,7 +186,7 @@
 }
 
 private static function format_run(&$run, &$commit_time) {
-$commit_time = Database::to_js_time($run['revision_time']);
+$commit

[webkit-changes] [203485] trunk/Tools

2016-07-20 Thread aakash_jain
Title: [203485] trunk/Tools








Revision 203485
Author aakash_j...@apple.com
Date 2016-07-20 19:09:51 -0700 (Wed, 20 Jul 2016)


Log Message
Revert temporary fix r203417
https://bugs.webkit.org/show_bug.cgi?id=160001

Reviewed by Alexey Proskuryakov.

* EWSTools/start-queue-mac.sh: Revert the temporary fix.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/EWSTools/start-queue-mac.sh




Diff

Modified: trunk/Tools/ChangeLog (203484 => 203485)

--- trunk/Tools/ChangeLog	2016-07-21 00:45:39 UTC (rev 203484)
+++ trunk/Tools/ChangeLog	2016-07-21 02:09:51 UTC (rev 203485)
@@ -1,5 +1,14 @@
 2016-07-20  Aakash Jain  
 
+Revert temporary fix r203417
+https://bugs.webkit.org/show_bug.cgi?id=160001
+
+Reviewed by Alexey Proskuryakov.
+
+* EWSTools/start-queue-mac.sh: Revert the temporary fix.
+
+2016-07-20  Aakash Jain  
+
 REGRESSION(r148588): ews classes might get garbage collected
 https://bugs.webkit.org/show_bug.cgi?id=159990
 


Modified: trunk/Tools/EWSTools/start-queue-mac.sh (203484 => 203485)

--- trunk/Tools/EWSTools/start-queue-mac.sh	2016-07-21 00:45:39 UTC (rev 203484)
+++ trunk/Tools/EWSTools/start-queue-mac.sh	2016-07-21 02:09:51 UTC (rev 203485)
@@ -80,9 +80,6 @@
 # preventing webkit-patch from launching.
 ./Tools/Scripts/test-webkitpy
 
-# Temporary workaround for iOS EWS failing after the fix for bug 159539.
-find ./Tools -name *.pyc -delete
-
 # We use --exit-after-iteration to pick up any changes to webkit-patch, including
 # changes to the contributors.json file.
 ./Tools/Scripts/webkit-patch $QUEUE_NAME --bot-id=$BOT_ID --no-confirm --exit-after-iteration $RESET_AFTER_ITERATION $QUEUE_PARAMS






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203484] trunk

2016-07-20 Thread commit-queue
Title: [203484] trunk








Revision 203484
Author commit-qu...@webkit.org
Date 2016-07-20 17:45:39 -0700 (Wed, 20 Jul 2016)


Log Message
Unreviewed, rolling out r203471.
https://bugs.webkit.org/show_bug.cgi?id=160003

many iOS-simulator tests are failing (Requested by litherum on
#webkit).

Reverted changeset:

"[iPhone] Playing a video on tudou.com plays only sound, no
video"
https://bugs.webkit.org/show_bug.cgi?id=159967
http://trac.webkit.org/changeset/203471

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/media/video-playsinline-expected.txt
trunk/LayoutTests/media/video-playsinline.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/MediaElementSession.cpp
trunk/Source/WebCore/page/Settings.cpp
trunk/Source/WebCore/page/Settings.in
trunk/Source/WebCore/testing/InternalSettings.cpp
trunk/Source/WebCore/testing/InternalSettings.h
trunk/Source/WebCore/testing/InternalSettings.idl
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/WebView/WebPreferenceKeysPrivate.h
trunk/Source/WebKit/mac/WebView/WebPreferences.mm
trunk/Source/WebKit/mac/WebView/WebPreferencesPrivate.h
trunk/Source/WebKit/mac/WebView/WebView.mm
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h
trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp
trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp


Added Paths

trunk/LayoutTests/media/video-webkit-playsinline-expected.txt
trunk/LayoutTests/media/video-webkit-playsinline.html




Diff

Modified: trunk/LayoutTests/ChangeLog (203483 => 203484)

--- trunk/LayoutTests/ChangeLog	2016-07-21 00:36:12 UTC (rev 203483)
+++ trunk/LayoutTests/ChangeLog	2016-07-21 00:45:39 UTC (rev 203484)
@@ -1,3 +1,18 @@
+2016-07-20  Commit Queue  
+
+Unreviewed, rolling out r203471.
+https://bugs.webkit.org/show_bug.cgi?id=160003
+
+many iOS-simulator tests are failing (Requested by litherum on
+#webkit).
+
+Reverted changeset:
+
+"[iPhone] Playing a video on tudou.com plays only sound, no
+video"
+https://bugs.webkit.org/show_bug.cgi?id=159967
+http://trac.webkit.org/changeset/203471
+
 2016-07-20  Jiewen Tan  
 
 Fix timeout of imported/w3c/WebCryptoAPI/idlharness.html


Modified: trunk/LayoutTests/media/video-playsinline-expected.txt (203483 => 203484)

--- trunk/LayoutTests/media/video-playsinline-expected.txt	2016-07-21 00:36:12 UTC (rev 203483)
+++ trunk/LayoutTests/media/video-playsinline-expected.txt	2016-07-21 00:45:39 UTC (rev 203484)
@@ -1,130 +1,26 @@
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithPlaysInlineAttribute(true))
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute(true))
+RUN(internals.settings.setInlineMediaPlaybackRequiresPlaysInlineAttribute(true))
 RUN(video.playsinline = false)
-RUN(video.removeAttribute("webkit-playsinline"))
 EVENT(canplaythrough)
 RUN(video.play())
 EVENT(playing)
 EXPECTED (video.webkitDisplayingFullscreen == 'true') OK
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithPlaysInlineAttribute(true))
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute(true))
-RUN(video.playsinline = false)
-RUN(video.setAttribute("webkit-playsinline"))
-EVENT(canplaythrough)
-RUN(video.play())
-EVENT(playing)
-EXPECTED (video.webkitDisplayingFullscreen == 'false') OK
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithPlaysInlineAttribute(true))
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute(false))
-RUN(video.playsinline = false)
-RUN(video.setAttribute("webkit-playsinline"))
-EVENT(canplaythrough)
-RUN(video.play())
-EVENT(playing)
-EXPECTED (video.webkitDisplayingFullscreen == 'true') OK
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithPlaysInlineAttribute(true))
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute(false))
-RUN(video.playsinline = false)
-RUN(video.removeAttribute("webkit-playsinline"))
-EVENT(canplaythrough)
-RUN(video.play())
-EVENT(playing)
-EXPECTED (video.webkitDisplayingFullscreen == 'true') OK
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithPlaysInlineAttribute(true))
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute(true))
+RUN(internals.settings.setInlineMediaPlaybackRequiresPlaysInlineAttribute(true))
 RUN(video.playsinline = true)
-RUN(video.setAttribute("webkit-playsinline"))
 EVENT(canplaythrough)
 RUN(video.play())
 EVENT(playing)
 EXPECTED (video.webkitDisplayingFullscreen == 'false') OK
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithPlaysInlineAttribute(true))
-RUN(internals.settings.setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute(true)

[webkit-changes] [203483] trunk/Source/WebKit2

2016-07-20 Thread simon . fraser
Title: [203483] trunk/Source/WebKit2








Revision 203483
Author simon.fra...@apple.com
Date 2016-07-20 17:36:12 -0700 (Wed, 20 Jul 2016)


Log Message
REGRESSION (r203189): Webpage snapshots are partially or fully blank when edge swiping back
https://bugs.webkit.org/show_bug.cgi?id=16
rdar://problem/27455589

Reviewed by Zalan Bujtas.

r203189 triggered a call to -_updateContentRectsWithState: in the middle of a swipe,
during which we'd compute the visible rect of the view as having zero width, causing us
to not create tiles.

-_navigationGestureDidBegin already snapshots the visibleContentRect in _frozenVisibleContentRect,
but -_visibleContentRect then clipped that with ancestor views, causing the issue.

Fix by having -_visibleContentRect just return _frozenVisibleContentRect if we have one.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _visibleContentRect]):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (203482 => 203483)

--- trunk/Source/WebKit2/ChangeLog	2016-07-21 00:23:19 UTC (rev 203482)
+++ trunk/Source/WebKit2/ChangeLog	2016-07-21 00:36:12 UTC (rev 203483)
@@ -1,3 +1,23 @@
+2016-07-20  Simon Fraser  
+
+REGRESSION (r203189): Webpage snapshots are partially or fully blank when edge swiping back
+https://bugs.webkit.org/show_bug.cgi?id=16
+rdar://problem/27455589
+
+Reviewed by Zalan Bujtas.
+
+r203189 triggered a call to -_updateContentRectsWithState: in the middle of a swipe,
+during which we'd compute the visible rect of the view as having zero width, causing us
+to not create tiles.
+
+-_navigationGestureDidBegin already snapshots the visibleContentRect in _frozenVisibleContentRect,
+but -_visibleContentRect then clipped that with ancestor views, causing the issue.
+
+Fix by having -_visibleContentRect just return _frozenVisibleContentRect if we have one.
+
+* UIProcess/API/Cocoa/WKWebView.mm:
+(-[WKWebView _visibleContentRect]):
+
 2016-07-20  Myles C. Maxfield  
 
 [iPhone] Playing a video on tudou.com plays only sound, no video


Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (203482 => 203483)

--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2016-07-21 00:23:19 UTC (rev 203482)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2016-07-21 00:36:12 UTC (rev 203483)
@@ -1915,7 +1915,10 @@
 
 - (CGRect)_visibleContentRect
 {
-CGRect visibleRectInContentCoordinates = _frozenVisibleContentRect ? _frozenVisibleContentRect.value() : [self convertRect:self.bounds toView:_contentView.get()];
+if (_frozenVisibleContentRect)
+return _frozenVisibleContentRect.value();
+
+CGRect visibleRectInContentCoordinates = [self convertRect:self.bounds toView:_contentView.get()];
 
 if (UIScrollView *enclosingScroller = [self _scroller]) {
 CGRect viewVisibleRect = [self _visibleRectInEnclosingScrollView:enclosingScroller];






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203482] trunk/Source/WebCore

2016-07-20 Thread rniwa
Title: [203482] trunk/Source/WebCore








Revision 203482
Author rn...@webkit.org
Date 2016-07-20 17:23:19 -0700 (Wed, 20 Jul 2016)


Log Message
iOS: Cannot paste images in RTF content
https://bugs.webkit.org/show_bug.cgi?id=159964


Reviewed by Enrica Casucci.

The bug was caused by setDefersLoading(true) not deferring image loading for the parsed fragment.
Worked around this bug by disabling image loading while parsing the document fragment.

* editing/ios/EditorIOS.mm:
(WebCore::Editor::createFragmentAndAddResources):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/editing/ios/EditorIOS.mm
trunk/Source/WebCore/loader/cache/CachedResourceLoader.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (203481 => 203482)

--- trunk/Source/WebCore/ChangeLog	2016-07-21 00:15:58 UTC (rev 203481)
+++ trunk/Source/WebCore/ChangeLog	2016-07-21 00:23:19 UTC (rev 203482)
@@ -1,3 +1,17 @@
+2016-07-19  Ryosuke Niwa  
+
+iOS: Cannot paste images in RTF content
+https://bugs.webkit.org/show_bug.cgi?id=159964
+
+
+Reviewed by Enrica Casucci.
+
+The bug was caused by setDefersLoading(true) not deferring image loading for the parsed fragment.
+Worked around this bug by disabling image loading while parsing the document fragment.
+
+* editing/ios/EditorIOS.mm:
+(WebCore::Editor::createFragmentAndAddResources):
+
 2016-07-20  Brady Eidson  
 
 Address a small FIXME in IDB code.


Modified: trunk/Source/WebCore/editing/ios/EditorIOS.mm (203481 => 203482)

--- trunk/Source/WebCore/editing/ios/EditorIOS.mm	2016-07-21 00:15:58 UTC (rev 203481)
+++ trunk/Source/WebCore/editing/ios/EditorIOS.mm	2016-07-21 00:23:19 UTC (rev 203482)
@@ -26,9 +26,10 @@
 #include "config.h"
 #include "Editor.h"
 
-#include "CachedImage.h"
 #include "CSSComputedStyleDeclaration.h"
 #include "CSSPrimitiveValueMappings.h"
+#include "CachedImage.h"
+#include "CachedResourceLoader.h"
 #include "DOMRangeInternal.h"
 #include "DataTransfer.h"
 #include "DocumentFragment.h"
@@ -549,10 +550,11 @@
 
 RefPtr Editor::createFragmentAndAddResources(NSAttributedString *string)
 {
-if (!m_frame.page() || !m_frame.document() || !m_frame.document()->isHTMLDocument())
+if (!m_frame.page() || !m_frame.document())
 return nullptr;
 
-if (!string)
+auto& document = *m_frame.document();
+if (!document.isHTMLDocument() || !string)
 return nullptr;
 
 bool wasDeferringCallbacks = m_frame.page()->defersLoading();
@@ -559,6 +561,11 @@
 if (!wasDeferringCallbacks)
 m_frame.page()->setDefersLoading(true);
 
+auto& cachedResourceLoader = document.cachedResourceLoader();
+bool wasImagesEnabled = cachedResourceLoader.imagesEnabled();
+if (wasImagesEnabled)
+cachedResourceLoader.setImagesEnabled(false);
+
 Vector> resources;
 RefPtr fragment = client()->documentFragmentFromAttributedString(string, resources);
 
@@ -569,6 +576,8 @@
 }
 }
 
+if (wasImagesEnabled)
+cachedResourceLoader.setImagesEnabled(true);
 if (!wasDeferringCallbacks)
 m_frame.page()->setDefersLoading(false);
 


Modified: trunk/Source/WebCore/loader/cache/CachedResourceLoader.h (203481 => 203482)

--- trunk/Source/WebCore/loader/cache/CachedResourceLoader.h	2016-07-21 00:15:58 UTC (rev 203481)
+++ trunk/Source/WebCore/loader/cache/CachedResourceLoader.h	2016-07-21 00:23:19 UTC (rev 203482)
@@ -103,6 +103,7 @@
 bool autoLoadImages() const { return m_autoLoadImages; }
 void setAutoLoadImages(bool);
 
+bool imagesEnabled() const { return m_imagesEnabled; }
 void setImagesEnabled(bool);
 
 bool shouldDeferImageLoad(const URL&) const;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203481] trunk/Source/WebCore

2016-07-20 Thread beidson
Title: [203481] trunk/Source/WebCore








Revision 203481
Author beid...@apple.com
Date 2016-07-20 17:15:58 -0700 (Wed, 20 Jul 2016)


Log Message
Address a small FIXME in IDB code.
https://bugs.webkit.org/show_bug.cgi?id=15

Reviewed by Andy Estes.

No new tests (No behavior change).

* Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::IDBRequest):

* Modules/indexeddb/shared/IDBResourceIdentifier.cpp:
(WebCore::IDBResourceIdentifier::IDBResourceIdentifier): Deleted.
* Modules/indexeddb/shared/IDBResourceIdentifier.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp
trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.cpp
trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (203480 => 203481)

--- trunk/Source/WebCore/ChangeLog	2016-07-20 23:28:33 UTC (rev 203480)
+++ trunk/Source/WebCore/ChangeLog	2016-07-21 00:15:58 UTC (rev 203481)
@@ -1,5 +1,21 @@
 2016-07-20  Brady Eidson  
 
+Address a small FIXME in IDB code.
+https://bugs.webkit.org/show_bug.cgi?id=15
+
+Reviewed by Andy Estes.
+
+No new tests (No behavior change).
+
+* Modules/indexeddb/IDBRequest.cpp:
+(WebCore::IDBRequest::IDBRequest):
+
+* Modules/indexeddb/shared/IDBResourceIdentifier.cpp:
+(WebCore::IDBResourceIdentifier::IDBResourceIdentifier): Deleted.
+* Modules/indexeddb/shared/IDBResourceIdentifier.h:
+
+2016-07-20  Brady Eidson  
+
 Remove some "modernFoo"s from IndexedDB code.
 https://bugs.webkit.org/show_bug.cgi?id=159985
 


Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp (203480 => 203481)

--- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp	2016-07-20 23:28:33 UTC (rev 203480)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp	2016-07-21 00:15:58 UTC (rev 203481)
@@ -72,7 +72,7 @@
 
 IDBRequest::IDBRequest(ScriptExecutionContext& context, IDBClient::IDBConnectionProxy& connectionProxy)
 : IDBActiveDOMObject(&context)
-, m_resourceIdentifier(connectionProxy.serverConnectionIdentifier())
+, m_resourceIdentifier(connectionProxy)
 , m_connectionProxy(connectionProxy)
 {
 suspendIfNeeded();


Modified: trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.cpp (203480 => 203481)

--- trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.cpp	2016-07-20 23:28:33 UTC (rev 203480)
+++ trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.cpp	2016-07-21 00:15:58 UTC (rev 203481)
@@ -52,13 +52,6 @@
 {
 }
 
-IDBResourceIdentifier::IDBResourceIdentifier(uint64_t connectionIdentifier)
-: m_idbConnectionIdentifier(connectionIdentifier)
-, m_resourceNumber(nextClientResourceNumber())
-{
-}
-
-
 IDBResourceIdentifier::IDBResourceIdentifier(uint64_t connectionIdentifier, uint64_t resourceIdentifier)
 : m_idbConnectionIdentifier(connectionIdentifier)
 , m_resourceNumber(resourceIdentifier)


Modified: trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.h (203480 => 203481)

--- trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.h	2016-07-20 23:28:33 UTC (rev 203480)
+++ trunk/Source/WebCore/Modules/indexeddb/shared/IDBResourceIdentifier.h	2016-07-21 00:15:58 UTC (rev 203481)
@@ -47,10 +47,6 @@
 IDBResourceIdentifier(const IDBClient::IDBConnectionProxy&, const IDBRequest&);
 explicit IDBResourceIdentifier(const IDBServer::IDBConnectionToClient&);
 
-// FIXME: This constructor will be needed during the development of IDB-in-Workers.
-// It should be removed when no longer necessary.
-explicit IDBResourceIdentifier(uint64_t connectionIdentifier);
-
 static IDBResourceIdentifier deletedValue();
 WEBCORE_EXPORT bool isHashTableDeletedValue() const;
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203480] trunk/Source/WebCore

2016-07-20 Thread beidson
Title: [203480] trunk/Source/WebCore








Revision 203480
Author beid...@apple.com
Date 2016-07-20 16:28:33 -0700 (Wed, 20 Jul 2016)


Log Message
Remove some "modernFoo"s from IndexedDB code.
https://bugs.webkit.org/show_bug.cgi?id=159985

Reviewed by Andy Estes.

No new tests (No known behavior change).

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::IDBCursor):
(WebCore::IDBCursor::~IDBCursor):
(WebCore::IDBCursor::sourcesDeleted):
(WebCore::IDBCursor::effectiveObjectStore):
(WebCore::IDBCursor::transaction):
(WebCore::IDBCursor::direction):
(WebCore::IDBCursor::update):
(WebCore::IDBCursor::advance):
(WebCore::IDBCursor::continueFunction):
(WebCore::IDBCursor::uncheckedIterateCursor):
(WebCore::IDBCursor::deleteFunction):
(WebCore::IDBCursor::setGetResult):

* Modules/indexeddb/IDBIndex.cpp:
(WebCore::IDBIndex::IDBIndex):
(WebCore::IDBIndex::~IDBIndex):
(WebCore::IDBIndex::hasPendingActivity):
(WebCore::IDBIndex::name):
(WebCore::IDBIndex::objectStore):
(WebCore::IDBIndex::keyPath):
(WebCore::IDBIndex::unique):
(WebCore::IDBIndex::multiEntry):
(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::doCount):
(WebCore::IDBIndex::openKeyCursor):
(WebCore::IDBIndex::doGet):
(WebCore::IDBIndex::doGetKey):
(WebCore::IDBIndex::markAsDeleted):
* Modules/indexeddb/IDBIndex.h:

* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::transaction):
(WebCore::IDBObjectStore::deleteFunction): Deleted.
(WebCore::IDBObjectStore::modernDelete): Deleted.
* Modules/indexeddb/IDBObjectStore.h:

* bindings/js/JSIDBIndexCustom.cpp:
(WebCore::JSIDBIndex::visitAdditionalChildren):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/indexeddb/IDBCursor.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBIndex.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBIndex.h
trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.h
trunk/Source/WebCore/bindings/js/JSIDBIndexCustom.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (203479 => 203480)

--- trunk/Source/WebCore/ChangeLog	2016-07-20 23:28:22 UTC (rev 203479)
+++ trunk/Source/WebCore/ChangeLog	2016-07-20 23:28:33 UTC (rev 203480)
@@ -1,3 +1,52 @@
+2016-07-20  Brady Eidson  
+
+Remove some "modernFoo"s from IndexedDB code.
+https://bugs.webkit.org/show_bug.cgi?id=159985
+
+Reviewed by Andy Estes.
+
+No new tests (No known behavior change).
+
+* Modules/indexeddb/IDBCursor.cpp:
+(WebCore::IDBCursor::IDBCursor):
+(WebCore::IDBCursor::~IDBCursor):
+(WebCore::IDBCursor::sourcesDeleted):
+(WebCore::IDBCursor::effectiveObjectStore):
+(WebCore::IDBCursor::transaction):
+(WebCore::IDBCursor::direction):
+(WebCore::IDBCursor::update):
+(WebCore::IDBCursor::advance):
+(WebCore::IDBCursor::continueFunction):
+(WebCore::IDBCursor::uncheckedIterateCursor):
+(WebCore::IDBCursor::deleteFunction):
+(WebCore::IDBCursor::setGetResult):
+
+* Modules/indexeddb/IDBIndex.cpp:
+(WebCore::IDBIndex::IDBIndex):
+(WebCore::IDBIndex::~IDBIndex):
+(WebCore::IDBIndex::hasPendingActivity):
+(WebCore::IDBIndex::name):
+(WebCore::IDBIndex::objectStore):
+(WebCore::IDBIndex::keyPath):
+(WebCore::IDBIndex::unique):
+(WebCore::IDBIndex::multiEntry):
+(WebCore::IDBIndex::openCursor):
+(WebCore::IDBIndex::doCount):
+(WebCore::IDBIndex::openKeyCursor):
+(WebCore::IDBIndex::doGet):
+(WebCore::IDBIndex::doGetKey):
+(WebCore::IDBIndex::markAsDeleted):
+* Modules/indexeddb/IDBIndex.h:
+
+* Modules/indexeddb/IDBObjectStore.cpp:
+(WebCore::IDBObjectStore::transaction):
+(WebCore::IDBObjectStore::deleteFunction): Deleted.
+(WebCore::IDBObjectStore::modernDelete): Deleted.
+* Modules/indexeddb/IDBObjectStore.h:
+
+* bindings/js/JSIDBIndexCustom.cpp:
+(WebCore::JSIDBIndex::visitAdditionalChildren):
+
 2016-07-20  Chris Dumez  
 
 Stop using valueToStringWithNullCheck() in JSCSSStyleDeclaration::putDelegate()


Modified: trunk/Source/WebCore/Modules/indexeddb/IDBCursor.cpp (203479 => 203480)

--- trunk/Source/WebCore/Modules/indexeddb/IDBCursor.cpp	2016-07-20 23:28:22 UTC (rev 203479)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBCursor.cpp	2016-07-20 23:28:33 UTC (rev 203480)
@@ -117,7 +117,7 @@
 , m_info(info)
 , m_objectStore(&objectStore)
 {
-ASSERT(currentThread() == effectiveObjectStore().modernTransaction().database().originThreadID());
+ASSERT(currentThread() == effectiveObjectStore().transaction().database().originThreadID());
 
 suspendIfNeeded();
 }
@@ -127,7 +127,7 @@
 , m_info(info)
 , m_index(&index)
 {
-ASSERT(currentThread() == effectiveObjectStore().modernTransaction().database().originThreadID());
+ASSERT(currentThread() == effecti

[webkit-changes] [203479] trunk/Tools

2016-07-20 Thread aakash_jain
Title: [203479] trunk/Tools








Revision 203479
Author aakash_j...@apple.com
Date 2016-07-20 16:28:22 -0700 (Wed, 20 Jul 2016)


Log Message
REGRESSION(r148588): ews classes might get garbage collected
https://bugs.webkit.org/show_bug.cgi?id=159990

Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/tool/commands/__init__.py: Store the loaded ews classes
in a variable so that they do not get garbage collected.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/tool/commands/__init__.py




Diff

Modified: trunk/Tools/ChangeLog (203478 => 203479)

--- trunk/Tools/ChangeLog	2016-07-20 23:24:15 UTC (rev 203478)
+++ trunk/Tools/ChangeLog	2016-07-20 23:28:22 UTC (rev 203479)
@@ -1,3 +1,13 @@
+2016-07-20  Aakash Jain  
+
+REGRESSION(r148588): ews classes might get garbage collected
+https://bugs.webkit.org/show_bug.cgi?id=159990
+
+Reviewed by Ryosuke Niwa.
+
+* Scripts/webkitpy/tool/commands/__init__.py: Store the loaded ews classes
+in a variable so that they do not get garbage collected.
+
 2016-07-20  Jeremy Jones  
 
 Add API test for layout constraints after exit fullscreen


Modified: trunk/Tools/Scripts/webkitpy/tool/commands/__init__.py (203478 => 203479)

--- trunk/Tools/Scripts/webkitpy/tool/commands/__init__.py	2016-07-20 23:24:15 UTC (rev 203478)
+++ trunk/Tools/Scripts/webkitpy/tool/commands/__init__.py	2016-07-20 23:28:22 UTC (rev 203479)
@@ -22,4 +22,4 @@
 from webkitpy.tool.commands.upload import *
 from webkitpy.tool.commands.suggestnominations import *
 
-AbstractEarlyWarningSystem.load_ews_classes()
+classes = AbstractEarlyWarningSystem.load_ews_classes()






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203478] trunk/Tools

2016-07-20 Thread commit-queue
Title: [203478] trunk/Tools








Revision 203478
Author commit-qu...@webkit.org
Date 2016-07-20 16:24:15 -0700 (Wed, 20 Jul 2016)


Log Message
Add API test for layout constraints after exit fullscreen
https://bugs.webkit.org/show_bug.cgi?id=159900

Patch by Jeremy Jones  on 2016-07-20
Reviewed by Jon Lee.

Added Fullscreen.LaytoutConstraints API test.
Tests fix from https://bugs.webkit.org/show_bug.cgi?id=159731

This test compares layout constraints on the web view before and after fullscreen to make sure
they are preserved.

* TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.mm: Added.
(-[FullscreenStateChangeMessageHandler userContentController:didReceiveScriptMessage:]):
(TestWebKitAPI::TEST):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj


Added Paths

trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.html
trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.mm




Diff

Modified: trunk/Tools/ChangeLog (203477 => 203478)

--- trunk/Tools/ChangeLog	2016-07-20 23:23:56 UTC (rev 203477)
+++ trunk/Tools/ChangeLog	2016-07-20 23:24:15 UTC (rev 203478)
@@ -1,3 +1,21 @@
+2016-07-20  Jeremy Jones  
+
+Add API test for layout constraints after exit fullscreen
+https://bugs.webkit.org/show_bug.cgi?id=159900
+
+Reviewed by Jon Lee.
+
+Added Fullscreen.LaytoutConstraints API test. 
+Tests fix from https://bugs.webkit.org/show_bug.cgi?id=159731
+
+This test compares layout constraints on the web view before and after fullscreen to make sure 
+they are preserved.
+
+* TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.html: Added.
+* TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.mm: Added.
+(-[FullscreenStateChangeMessageHandler userContentController:didReceiveScriptMessage:]):
+(TestWebKitAPI::TEST):
+
 2016-07-20  Ryan Haddad  
 
 Disable two failing API tests.


Modified: trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj (203477 => 203478)

--- trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj	2016-07-20 23:23:56 UTC (rev 203477)
+++ trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj	2016-07-20 23:24:15 UTC (rev 203478)
@@ -65,6 +65,7 @@
 		37D36ED71AF42ECD00BAF5D9 /* LoadAlternateHTMLString.mm in Sources */ = {isa = PBXBuildFile; fileRef = 37D36ED61AF42ECD00BAF5D9 /* LoadAlternateHTMLString.mm */; };
 		37DC6791140D7D7600ABCCDB /* DOMRangeOfString.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 37DC678F140D7D3A00ABCCDB /* DOMRangeOfString.html */; };
 		37E1064C1697681800B78BD0 /* DOMHTMLTableCellElementCellAbove.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 37E1064B169767F700B78BD0 /* DOMHTMLTableCellElementCellAbove.html */; };
+		3FBD1B4A1D3D66AB00E6D6FA /* FullscreenLayoutConstraints.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 3FBD1B491D39D1DB00E6D6FA /* FullscreenLayoutConstraints.html */; };
 		46C519DA1D355AB200DAA51A /* LocalStorageNullEntries.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46C519D81D355A7300DAA51A /* LocalStorageNullEntries.mm */; };
 		46C519E61D3563FD00DAA51A /* LocalStorageNullEntries.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 46C519E21D35629600DAA51A /* LocalStorageNullEntries.html */; };
 		46C519E71D3563FD00DAA51A /* LocalStorageNullEntries.localstorage in Copy Resources */ = {isa = PBXBuildFile; fileRef = 46C519E31D35629600DAA51A /* LocalStorageNullEntries.localstorage */; };
@@ -512,6 +513,7 @@
 51714EB41CF8C78C004723C4 /* WebProcessKillIDBCleanup-1.html in Copy Resources */,
 51714EB51CF8C78C004723C4 /* WebProcessKillIDBCleanup-2.html in Copy Resources */,
 CDE195B51CFE0B880053D256 /* FullscreenTopContentInset.html in Copy Resources */,
+3FBD1B4A1D3D66AB00E6D6FA /* FullscreenLayoutConstraints.html in Copy Resources */,
 93CFA8671CEB9E38000565A8 /* autofocused-text-input.html in Copy Resources */,
 93625D271CD9741C006DC1F1 /* large-video-without-audio.html in Copy Resources */,
 936F72801CD7D9EC0068A0FB /* large-video-with-audio.html in Copy Resources */,
@@ -717,6 +719,8 @@
 		37E1064A1697676400B78BD0 /* DOMHTMLTableCellCellAbove.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMHTMLTableCellCellAbove.mm; sourceTree = ""; };
 		37E1064B169767F700B78BD0 /* DOMHTMLTableCellElementCellAbove.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = DOMHTMLTableCellElementCellAbove.html; sourceTree = ""; };
 		37E38C33169B7D010084C28C /* WebViewDidRemoveFrameFromHierarchy.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebViewDidRemoveFrameFromHierarchy.mm; sourceTree = ""; };
+		3F1B52681D3D7129008D60C4 /*

[webkit-changes] [203477] trunk/Tools

2016-07-20 Thread ryanhaddad
Title: [203477] trunk/Tools








Revision 203477
Author ryanhad...@apple.com
Date 2016-07-20 16:23:56 -0700 (Wed, 20 Jul 2016)


Log Message
Disable two failing API tests.

Unreviewed test gardening.

* TestWebKitAPI/Tests/mac/CandidateTests.mm:
(TestWebKitAPI::TEST):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/mac/CandidateTests.mm




Diff

Modified: trunk/Tools/ChangeLog (203476 => 203477)

--- trunk/Tools/ChangeLog	2016-07-20 23:14:39 UTC (rev 203476)
+++ trunk/Tools/ChangeLog	2016-07-20 23:23:56 UTC (rev 203477)
@@ -1,3 +1,12 @@
+2016-07-20  Ryan Haddad  
+
+Disable two failing API tests.
+
+Unreviewed test gardening.
+
+* TestWebKitAPI/Tests/mac/CandidateTests.mm:
+(TestWebKitAPI::TEST):
+
 2016-07-20  Wenson Hsieh  
 
 Unreviewed iOS build fix.


Modified: trunk/Tools/TestWebKitAPI/Tests/mac/CandidateTests.mm (203476 => 203477)

--- trunk/Tools/TestWebKitAPI/Tests/mac/CandidateTests.mm	2016-07-20 23:14:39 UTC (rev 203476)
+++ trunk/Tools/TestWebKitAPI/Tests/mac/CandidateTests.mm	2016-07-20 23:23:56 UTC (rev 203477)
@@ -84,7 +84,7 @@
 
 namespace TestWebKitAPI {
 
-TEST(CandidateTests, DoNotLeakViewThatLoadsEditableArea)
+TEST(CandidateTests, DISABLED_DoNotLeakViewThatLoadsEditableArea)
 {
 DoNotLeakWebView *webView = [[DoNotLeakWebView alloc] initWithFrame:NSMakeRect(0, 0, 100, 100)];
 DoNotLeakFrameLoadDelegate *delegate = [[DoNotLeakFrameLoadDelegate alloc] init];
@@ -100,7 +100,7 @@
 EXPECT_TRUE(webViewWasDeallocated);
 }
 
-TEST(CandidateTests, RequestCandidatesForTextInput)
+TEST(CandidateTests, DISABLED_RequestCandidatesForTextInput)
 {
 WebView *webView = [[WebView alloc] initWithFrame:NSMakeRect(0, 0, 100, 100)];
 [webView forceRequestCandidatesForTesting];






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203475] trunk

2016-07-20 Thread cdumez
Title: [203475] trunk








Revision 203475
Author cdu...@apple.com
Date 2016-07-20 16:07:30 -0700 (Wed, 20 Jul 2016)


Log Message
Stop using valueToStringWithNullCheck() in JSCSSStyleDeclaration::putDelegate()
https://bugs.webkit.org/show_bug.cgi?id=159982

Reviewed by Ryosuke Niwa.

Source/WebCore:

valueToStringWithNullCheck() treats null as the null String() which is
legacy / non standard behavior. The specification says we should treat
null as the empty string:
- https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-camel-cased-attribute

Therefore, we should be using valueToStringTreatingNullAsEmptyString() instead.

In practice, there is no web-exposed behavior change because
MutableStyleProperties::setProperty() removes the property wether the
value is the null String or the empty String.

This behavior is correct since the specification says that we should
remove the property if the value is the empty string:
- https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-setproperty (step 4)

I added test coverage to make sure we behave according to specification.
This test is passing in Firefox, Chrome and in WebKit (before and after
my change).

Test: fast/css/CSSStyleDeclaration-property-setter.html

* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::JSCSSStyleDeclaration::putDelegate):

LayoutTests:

Add layout test coverage for JSCSSStyleDeclaration::putDelegate(),
covering cases like setting to null or the empty String, to make
sure we behave according to specification.

* fast/css/CSSStyleDeclaration-property-setter-expected.txt: Added.
* fast/css/CSSStyleDeclaration-property-setter.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/bindings/js/JSCSSStyleDeclarationCustom.cpp


Added Paths

trunk/LayoutTests/fast/css/CSSStyleDeclaration-property-setter-expected.txt
trunk/LayoutTests/fast/css/CSSStyleDeclaration-property-setter.html




Diff

Modified: trunk/LayoutTests/ChangeLog (203474 => 203475)

--- trunk/LayoutTests/ChangeLog	2016-07-20 23:06:35 UTC (rev 203474)
+++ trunk/LayoutTests/ChangeLog	2016-07-20 23:07:30 UTC (rev 203475)
@@ -1,5 +1,19 @@
 2016-07-20  Chris Dumez  
 
+Stop using valueToStringWithNullCheck() in JSCSSStyleDeclaration::putDelegate()
+https://bugs.webkit.org/show_bug.cgi?id=159982
+
+Reviewed by Ryosuke Niwa.
+
+Add layout test coverage for JSCSSStyleDeclaration::putDelegate(),
+covering cases like setting to null or the empty String, to make
+sure we behave according to specification.
+
+* fast/css/CSSStyleDeclaration-property-setter-expected.txt: Added.
+* fast/css/CSSStyleDeclaration-property-setter.html: Added.
+
+2016-07-20  Chris Dumez  
+
 Fix null handling of HTMLFrameElement.marginWidth / marginHeight
 https://bugs.webkit.org/show_bug.cgi?id=159987
 


Added: trunk/LayoutTests/fast/css/CSSStyleDeclaration-property-setter-expected.txt (0 => 203475)

--- trunk/LayoutTests/fast/css/CSSStyleDeclaration-property-setter-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/css/CSSStyleDeclaration-property-setter-expected.txt	2016-07-20 23:07:30 UTC (rev 203475)
@@ -0,0 +1,29 @@
+Test that setting CSS properties via CSSStyleDeclaration behaves as expected
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS div.style.cssText is ""
+div.style.backgroundColor = 'red'
+PASS div.style.cssText is "background-color: red;"
+PASS div.style.getPropertyValue('background-color') is "red"
+PASS div.style.length is 1
+
+div.style.backgroundColor = ''
+PASS div.style.cssText is ""
+PASS div.style.getPropertyValue('background-color') is ""
+PASS div.style.length is 0
+
+div.style.backgroundColor = 'red'
+PASS div.style.cssText is "background-color: red;"
+PASS div.style.getPropertyValue('background-color') is "red"
+PASS div.style.length is 1
+
+div.style.backgroundColor = null
+PASS div.style.cssText is ""
+PASS div.style.getPropertyValue('background-color') is ""
+PASS div.style.length is 0
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/fast/css/CSSStyleDeclaration-property-setter.html (0 => 203475)

--- trunk/LayoutTests/fast/css/CSSStyleDeclaration-property-setter.html	(rev 0)
+++ trunk/LayoutTests/fast/css/CSSStyleDeclaration-property-setter.html	2016-07-20 23:07:30 UTC (rev 203475)
@@ -0,0 +1,37 @@
+
+
+
+
+description("Test that setting CSS properties via CSSStyleDeclaration behaves as expected");
+
+var div = document.createElement("div");
+shouldBeEqualToString("div.style.cssText", "");
+evalAndLog("div.style.backgroundColor = 'red'");
+shouldBeEqualToString("div.style.cssText", "background-color: red;");
+shouldBeEqualToString("div.style.getPropertyValue('background-color')", "red");
+shouldBe("div.style.length", "1");
+
+debug("");
+// Setting to empty string should delete the property.
+evalAndLog("div.style.b

[webkit-changes] [203474] trunk

2016-07-20 Thread cdumez
Title: [203474] trunk








Revision 203474
Author cdu...@apple.com
Date 2016-07-20 16:06:35 -0700 (Wed, 20 Jul 2016)


Log Message
Fix null handling of HTMLFrameElement.marginWidth / marginHeight
https://bugs.webkit.org/show_bug.cgi?id=159987

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline now that more checks are passing.

* web-platform-tests/html/dom/reflection-obsolete-expected.txt:

Source/WebCore:

Fix null handling of HTMLFrameElement.marginWidth / marginHeight:
- https://html.spec.whatwg.org/multipage/obsolete.html#htmlframeelement

We are supposed to treat null as the empty string but we treat it as
the string "null".

Firefox and Chrome both match the specification.

No new tests, updated existing tests.

* html/HTMLFrameElement.idl:

LayoutTests:

Update existing test to reflect the expected behavior change.

* fast/dom/element-attribute-js-null-expected.txt:
* fast/dom/element-attribute-js-null.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/dom/element-attribute-js-null-expected.txt
trunk/LayoutTests/fast/dom/element-attribute-js-null.html
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/reflection-obsolete-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLFrameElement.idl




Diff

Modified: trunk/LayoutTests/ChangeLog (203473 => 203474)

--- trunk/LayoutTests/ChangeLog	2016-07-20 22:56:08 UTC (rev 203473)
+++ trunk/LayoutTests/ChangeLog	2016-07-20 23:06:35 UTC (rev 203474)
@@ -1,3 +1,15 @@
+2016-07-20  Chris Dumez  
+
+Fix null handling of HTMLFrameElement.marginWidth / marginHeight
+https://bugs.webkit.org/show_bug.cgi?id=159987
+
+Reviewed by Ryosuke Niwa.
+
+Update existing test to reflect the expected behavior change.
+
+* fast/dom/element-attribute-js-null-expected.txt:
+* fast/dom/element-attribute-js-null.html:
+
 2016-07-20  Myles C. Maxfield  
 
 [iPhone] Playing a video on tudou.com plays only sound, no video


Modified: trunk/LayoutTests/fast/dom/element-attribute-js-null-expected.txt (203473 => 203474)

--- trunk/LayoutTests/fast/dom/element-attribute-js-null-expected.txt	2016-07-20 22:56:08 UTC (rev 203473)
+++ trunk/LayoutTests/fast/dom/element-attribute-js-null-expected.txt	2016-07-20 23:06:35 UTC (rev 203474)
@@ -76,8 +76,8 @@
 TEST SUCCEEDED: The value was the string 'null'. [tested HTMLFormElement.target]
 
 TEST SUCCEEDED: The value was the string 'null'. [tested HTMLFrameElement.frameBorder]
-TEST SUCCEEDED: The value was the string 'null'. [tested HTMLFrameElement.marginHeight]
-TEST SUCCEEDED: The value was the string 'null'. [tested HTMLFrameElement.marginWidth]
+TEST SUCCEEDED: The value was the empty string. [tested HTMLFrameElement.marginHeight]
+TEST SUCCEEDED: The value was the empty string. [tested HTMLFrameElement.marginWidth]
 TEST SUCCEEDED: The value was the string 'null'. [tested HTMLFrameElement.name]
 TEST SUCCEEDED: The value was the string 'null'. [tested HTMLFrameElement.scrolling]
 


Modified: trunk/LayoutTests/fast/dom/element-attribute-js-null.html (203473 => 203474)

--- trunk/LayoutTests/fast/dom/element-attribute-js-null.html	2016-07-20 22:56:08 UTC (rev 203473)
+++ trunk/LayoutTests/fast/dom/element-attribute-js-null.html	2016-07-20 23:06:35 UTC (rev 203474)
@@ -227,8 +227,8 @@
 elementToUse: document.createElement('frame'),
 attributes: [
 {name: 'frameBorder', expectedNull: 'null'},
-{name: 'marginHeight', expectedNull: 'null'},
-{name: 'marginWidth', expectedNull: 'null'},
+{name: 'marginHeight', expectedNull: ''},
+{name: 'marginWidth', expectedNull: ''},
 {name: 'name', expectedNull: 'null'},
 {name: 'scrolling', expectedNull: 'null'},
 ]


Modified: trunk/LayoutTests/imported/w3c/ChangeLog (203473 => 203474)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2016-07-20 22:56:08 UTC (rev 203473)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2016-07-20 23:06:35 UTC (rev 203474)
@@ -1,5 +1,16 @@
 2016-07-20  Chris Dumez  
 
+Fix null handling of HTMLFrameElement.marginWidth / marginHeight
+https://bugs.webkit.org/show_bug.cgi?id=159987
+
+Reviewed by Ryosuke Niwa.
+
+Rebaseline now that more checks are passing.
+
+* web-platform-tests/html/dom/reflection-obsolete-expected.txt:
+
+2016-07-20  Chris Dumez  
+
 Fix null handling of HTMLMediaElement.mediaGroup
 https://bugs.webkit.org/show_bug.cgi?id=159974
 


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/reflection-obsolete-expected.txt (203473 => 203474)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/reflection-obsolete-expected.txt	2016-07-20 22:56:08 UTC (rev 203473)
+++ trunk/LayoutTests/imported/w3c/web

[webkit-changes] [203473] trunk/Source/WebCore

2016-07-20 Thread wenson_hsieh
Title: [203473] trunk/Source/WebCore








Revision 203473
Author wenson_hs...@apple.com
Date 2016-07-20 15:56:08 -0700 (Wed, 20 Jul 2016)


Log Message
Pausing autoplayed media should not remove all restrictions for that media element
https://bugs.webkit.org/show_bug.cgi?id=159988

Reviewed by Jon Lee.

Localizes the removal of behavior restrictions introduced in r203464 upon pausing an
autoplaying video to just affect the hiding or showing of the media controller. This
prevents pages from using _javascript_ to start playing autoplaying videos that have
been paused by the user.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::pause):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLMediaElement.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (203472 => 203473)

--- trunk/Source/WebCore/ChangeLog	2016-07-20 22:45:02 UTC (rev 203472)
+++ trunk/Source/WebCore/ChangeLog	2016-07-20 22:56:08 UTC (rev 203473)
@@ -1,3 +1,18 @@
+2016-07-20  Wenson Hsieh  
+
+Pausing autoplayed media should not remove all restrictions for that media element
+https://bugs.webkit.org/show_bug.cgi?id=159988
+
+Reviewed by Jon Lee.
+
+Localizes the removal of behavior restrictions introduced in r203464 upon pausing an
+autoplaying video to just affect the hiding or showing of the media controller. This
+prevents pages from using _javascript_ to start playing autoplaying videos that have
+been paused by the user.
+
+* html/HTMLMediaElement.cpp:
+(WebCore::HTMLMediaElement::pause):
+
 2016-07-20  Myles C. Maxfield  
 
 [iPhone] Playing a video on tudou.com plays only sound, no video


Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (203472 => 203473)

--- trunk/Source/WebCore/html/HTMLMediaElement.cpp	2016-07-20 22:45:02 UTC (rev 203472)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp	2016-07-20 22:56:08 UTC (rev 203473)
@@ -3156,7 +3156,7 @@
 return;
 
 if (ScriptController::processingUserGestureForMedia())
-removeBehaviorsRestrictionsAfterFirstUserGesture();
+removeBehaviorsRestrictionsAfterFirstUserGesture(MediaElementSession::RequireUserGestureToControlControlsManager);
 
 pauseInternal();
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203472] branches/safari-602-branch/Tools

2016-07-20 Thread bshafiei
Title: [203472] branches/safari-602-branch/Tools








Revision 203472
Author bshaf...@apple.com
Date 2016-07-20 15:45:02 -0700 (Wed, 20 Jul 2016)


Log Message
Merge follow-up patch for rdar://problem/27360961.

Modified Paths

branches/safari-602-branch/Tools/ChangeLog
branches/safari-602-branch/Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig




Diff

Modified: branches/safari-602-branch/Tools/ChangeLog (203471 => 203472)

--- branches/safari-602-branch/Tools/ChangeLog	2016-07-20 22:41:57 UTC (rev 203471)
+++ branches/safari-602-branch/Tools/ChangeLog	2016-07-20 22:45:02 UTC (rev 203472)
@@ -1,3 +1,11 @@
+2016-07-20  Babak Shafiei  
+
+Merge follow-up patch for rdar://problem/27360961.
+
+Reviewed by Chris Dumez.
+
+* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
+
 2016-07-17  Sam Weinig  
 
 [WebKit API] Add SPI to track multiple navigations caused by a single user gesture


Modified: branches/safari-602-branch/Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig (203471 => 203472)

--- branches/safari-602-branch/Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig	2016-07-20 22:41:57 UTC (rev 203471)
+++ branches/safari-602-branch/Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig	2016-07-20 22:45:02 UTC (rev 203472)
@@ -57,7 +57,7 @@
 ENABLE_CSS_BOX_DECORATION_BREAK = ENABLE_CSS_BOX_DECORATION_BREAK;
 ENABLE_CSS_COMPOSITING = ENABLE_CSS_COMPOSITING;
 ENABLE_CSS_DEVICE_ADAPTATION = ;
-ENABLE_CSS_GRID_LAYOUT = ENABLE_CSS_GRID_LAYOUT;
+ENABLE_CSS_GRID_LAYOUT = ;
 ENABLE_CSS_IMAGE_ORIENTATION = ;
 ENABLE_CSS_IMAGE_RESOLUTION = ;
 ENABLE_CSS_REGIONS = ENABLE_CSS_REGIONS;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203471] trunk

2016-07-20 Thread mmaxfield
Title: [203471] trunk








Revision 203471
Author mmaxfi...@apple.com
Date 2016-07-20 15:41:57 -0700 (Wed, 20 Jul 2016)


Log Message
[iPhone] Playing a video on tudou.com plays only sound, no video
https://bugs.webkit.org/show_bug.cgi?id=159967


Reviewed by Jon Lee.

Source/WebCore:

WebKit recently starting honoring the playsinline and webkit-playsinline
attribute on iPhones. However, because these attributes previously did
nothing, some sites (such as Todou) were setting them on their content
and expecting that they are not honored. In this specific case, the
video is absolutely positioned to be 1 pixel x 1 pixel.

Previously, with iOS 9, apps could set the allowsInlineMediaPlayback
property on their WKWebView, which would honor the webkit-playsinline
attribute. Safari on iPhones didn't do this.

In order to not break these existing apps, it's important that the
allowsInlineMediaPlayback preference still allows webkit-playsinline
videos to play inline in apps using WKWebView. However, in Safari, these
videos should play fullscreen. (Todou videos have webkit-playsinline
but not playsinline.)

Therefore, in Safari, videos with playsinline should be inline, but
videos with webkit-playsinline should be fullscreen. In apps using
WKWebViews, if the app sets allowsInlineMediaPlayback, then videos with
playsinline should be inline, and videos with webkit-playsinline should
also be inline. Videos on iPad and Mac should all be inline by default.

We can create some truth tables for the cases which need to be covered:

All apps on Mac / iPad:
Presence of playsinline | Presence of webkit-playsinline | Result
||===
Not present | Not present| Inline
Present | Not present| Inline
Not Present | Present| Inline
Present | Present| Inline

Safari on iPhone:
Presence of playsinline | Presence of webkit-playsinline | Result
||===
Not present | Not present| Fullscreen
Present | Not present| Inline
Not Present | Present| Fullscreen
Present | Present| Inline

App on iPhone which sets allowsInlineMediaPlayback:
Presence of playsinline | Presence of webkit-playsinline | Result
||===
Not present | Not present| Fullscreen
Present | Not present| Inline
Not Present | Present| Inline
Present | Present| Inline

The way to distinguish Safari from another app is to create an SPI
boolean preference which Safari can set. This is already how the
iPhone and iPad are differentiated using the requiresPlayInlineAttribute
which Safari sets but other apps don't. However, this preference is
no longer sufficient because Safari should now be discriminating
between the playsinline and webkit-playsinline attributes. Therefore,
this preference should be extended to two boolean preferences, which
this patch adds:

allowsInlineMediaPlaybackWithPlaysInlineAttribute
allowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute

Safari on iPhone will set
allowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute to true,
and allowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute to
false. Other apps on iPhone will get their defaults values (because they
are SPI) which means they will both be true. On iPad and Mac, apps will
use the defaults values where both are false.

This patch adds support for these two preferences, but does not remove
the existing inlineMediaPlaybackRequiresPlaysInlineAttribute preference.
I will remove the exising preference as soon as I update Safari to migrate
off of it.

Test: media/video-playsinline.html

* html/MediaElementSession.cpp:
(WebCore::MediaElementSession::requiresFullscreenForVideoPlayback):
* page/Settings.cpp:
* page/Settings.in:
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setAllowsInlineMediaPlaybackWithPlaysInlineAttribute):
(WebCore::InternalSettings::setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute):
* testing/InternalSettings.h:
* testing/InternalSettings.idl:

Source/WebKit/mac:

Add the two preferences to WebPreferences.

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences allowsInlineMediaPlaybackWithPlaysInlineAttribute]):
(-[WebPreferences setAllowsInlineMediaPlaybackWithPlaysInlineAttribute:]):
(-[WebPreferences allowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute]):
(-[WebPreferences setAllowsInlineMediaPlaybackW

[webkit-changes] [203470] trunk/Source/WebCore

2016-07-20 Thread cdumez
Title: [203470] trunk/Source/WebCore








Revision 203470
Author cdu...@apple.com
Date 2016-07-20 15:03:36 -0700 (Wed, 20 Jul 2016)


Log Message
Get rid of custom bindings code for XMLHttpRequest.open()
https://bugs.webkit.org/show_bug.cgi?id=159984

Reviewed by Ryosuke Niwa.

Get rid of custom bindings code for XMLHttpRequest.open() as the
bindings generator is able to generate it.

Relevant specification:
- https://xhr.spec.whatwg.org/#xmlhttprequest

The issue is that legacy content prevents treating the 'async' argument
being undefined identical from it being omitted. However, this can be
achieved by using overloading in IDL, like in the specification.

No new tests, already covered by the following tests:
- http/tests/xmlhttprequest/basic-auth.html
- http/tests/xmlhttprequest/open-async-overload.html

* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::SendFunctor::SendFunctor): Deleted.
(WebCore::SendFunctor::line): Deleted.
(WebCore::SendFunctor::column): Deleted.
(WebCore::SendFunctor::url): Deleted.
(WebCore::SendFunctor::operator()): Deleted.
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::open):
* xml/XMLHttpRequest.h:
* xml/XMLHttpRequest.idl:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/bindings/js/JSXMLHttpRequestCustom.cpp
trunk/Source/WebCore/xml/XMLHttpRequest.cpp
trunk/Source/WebCore/xml/XMLHttpRequest.h
trunk/Source/WebCore/xml/XMLHttpRequest.idl




Diff

Modified: trunk/Source/WebCore/ChangeLog (203469 => 203470)

--- trunk/Source/WebCore/ChangeLog	2016-07-20 21:21:21 UTC (rev 203469)
+++ trunk/Source/WebCore/ChangeLog	2016-07-20 22:03:36 UTC (rev 203470)
@@ -1,3 +1,35 @@
+2016-07-20  Chris Dumez  
+
+Get rid of custom bindings code for XMLHttpRequest.open()
+https://bugs.webkit.org/show_bug.cgi?id=159984
+
+Reviewed by Ryosuke Niwa.
+
+Get rid of custom bindings code for XMLHttpRequest.open() as the
+bindings generator is able to generate it.
+
+Relevant specification:
+- https://xhr.spec.whatwg.org/#xmlhttprequest
+
+The issue is that legacy content prevents treating the 'async' argument
+being undefined identical from it being omitted. However, this can be
+achieved by using overloading in IDL, like in the specification.
+
+No new tests, already covered by the following tests:
+- http/tests/xmlhttprequest/basic-auth.html
+- http/tests/xmlhttprequest/open-async-overload.html
+
+* bindings/js/JSXMLHttpRequestCustom.cpp:
+(WebCore::SendFunctor::SendFunctor): Deleted.
+(WebCore::SendFunctor::line): Deleted.
+(WebCore::SendFunctor::column): Deleted.
+(WebCore::SendFunctor::url): Deleted.
+(WebCore::SendFunctor::operator()): Deleted.
+* xml/XMLHttpRequest.cpp:
+(WebCore::XMLHttpRequest::open):
+* xml/XMLHttpRequest.h:
+* xml/XMLHttpRequest.idl:
+
 2016-07-20  Rawinder Singh  
 
 Mark overriden methods in WebCore/svg final classes as final


Modified: trunk/Source/WebCore/bindings/js/JSXMLHttpRequestCustom.cpp (203469 => 203470)

--- trunk/Source/WebCore/bindings/js/JSXMLHttpRequestCustom.cpp	2016-07-20 21:21:21 UTC (rev 203469)
+++ trunk/Source/WebCore/bindings/js/JSXMLHttpRequestCustom.cpp	2016-07-20 22:03:36 UTC (rev 203470)
@@ -71,35 +71,6 @@
 visitor.addOpaqueRoot(responseBlob);
 }
 
-// Custom functions
-JSValue JSXMLHttpRequest::open(ExecState& state)
-{
-if (state.argumentCount() < 2)
-return state.vm().throwException(&state, createNotEnoughArgumentsError(&state));
-
-const URL& url = ""
-String method = state.uncheckedArgument(0).toString(&state)->value(&state);
-
-ExceptionCode ec = 0;
-if (state.argumentCount() >= 3) {
-bool async = state.uncheckedArgument(2).toBoolean(&state);
-if (!state.argument(3).isUndefined()) {
-String user = valueToStringWithNullCheck(&state, state.uncheckedArgument(3));
-
-if (!state.argument(4).isUndefined()) {
-String password = valueToStringWithNullCheck(&state, state.uncheckedArgument(4));
-wrapped().open(method, url, async, user, password, ec);
-} else
-wrapped().open(method, url, async, user, ec);
-} else
-wrapped().open(method, url, async, ec);
-} else
-wrapped().open(method, url, ec);
-
-setDOMException(&state, ec);
-return jsUndefined();
-}
-
 class SendFunctor {
 public:
 SendFunctor()


Modified: trunk/Source/WebCore/xml/XMLHttpRequest.cpp (203469 => 203470)

--- trunk/Source/WebCore/xml/XMLHttpRequest.cpp	2016-07-20 21:21:21 UTC (rev 203469)
+++ trunk/Source/WebCore/xml/XMLHttpRequest.cpp	2016-07-20 22:03:36 UTC (rev 203470)
@@ -421,9 +421,10 @@
 return true;
 }
 
-void XMLHttpRequest::open(const String& method, const URL& url, ExceptionCode& ec)
+void XMLHttpRequest::open(const String& method, const String& url, ExceptionCode& ec)
 {
-o

[webkit-changes] [203468] trunk/Tools

2016-07-20 Thread wenson_hsieh
Title: [203468] trunk/Tools








Revision 203468
Author wenson_hs...@apple.com
Date 2016-07-20 13:28:44 -0700 (Wed, 20 Jul 2016)


Log Message
Fix the build after 41dade3

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm




Diff

Modified: trunk/Tools/ChangeLog (203467 => 203468)

--- trunk/Tools/ChangeLog	2016-07-20 20:03:06 UTC (rev 203467)
+++ trunk/Tools/ChangeLog	2016-07-20 20:28:44 UTC (rev 203468)
@@ -1,5 +1,11 @@
 2016-07-20  Wenson Hsieh  
 
+Unreviewed iOS build fix.
+
+* TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm: Only import Carbon.h on Mac.
+
+2016-07-20  Wenson Hsieh  
+
 Media controls don't appear when pausing a small autoplaying video
 https://bugs.webkit.org/show_bug.cgi?id=159972
 


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm (203467 => 203468)

--- trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm	2016-07-20 20:03:06 UTC (rev 203467)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm	2016-07-20 20:28:44 UTC (rev 203468)
@@ -26,7 +26,11 @@
 #include "config.h"
 
 #import "PlatformUtilities.h"
+
+#if PLATFORM(MAC)
 #import 
+#endif
+
 #import 
 #import 
 #import 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203467] trunk/Source/WebKit2

2016-07-20 Thread changseok
Title: [203467] trunk/Source/WebKit2








Revision 203467
Author changs...@webkit.org
Date 2016-07-20 13:03:06 -0700 (Wed, 20 Jul 2016)


Log Message
Fix a linking failure caused by NetworkCache::Data::~Data()
https://bugs.webkit.org/show_bug.cgi?id=159931

Linking is failed with clang 3.6. It says WebKit::NetworkCache::Data::~Data is undefined.
It is fixed by adding a destructor for NetworkCache::Data.

Reviewed by Alex Christensen.

* NetworkProcess/cache/NetworkCacheData.h:
(WebKit::NetworkCache::Data::~Data):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheData.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (203466 => 203467)

--- trunk/Source/WebKit2/ChangeLog	2016-07-20 20:00:04 UTC (rev 203466)
+++ trunk/Source/WebKit2/ChangeLog	2016-07-20 20:03:06 UTC (rev 203467)
@@ -1,3 +1,16 @@
+2016-07-20  ChangSeok Oh  
+
+Fix a linking failure caused by NetworkCache::Data::~Data()
+https://bugs.webkit.org/show_bug.cgi?id=159931
+
+Linking is failed with clang 3.6. It says WebKit::NetworkCache::Data::~Data is undefined.
+It is fixed by adding a destructor for NetworkCache::Data.
+
+Reviewed by Alex Christensen.
+
+* NetworkProcess/cache/NetworkCacheData.h:
+(WebKit::NetworkCache::Data::~Data):
+
 2016-07-20  Tim Horton  
 
 Explain the default value of WKWebViewConfiguration's ignoresViewportScaleLimits


Modified: trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheData.h (203466 => 203467)

--- trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheData.h	2016-07-20 20:00:04 UTC (rev 203466)
+++ trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheData.h	2016-07-20 20:03:06 UTC (rev 203467)
@@ -106,6 +106,8 @@
 Data() { }
 Data(const uint8_t*, size_t);
 
+~Data() { }
+
 static Data empty();
 static Data adoptMap(void* map, size_t, int fd);
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203466] trunk/Source/WTF

2016-07-20 Thread commit-queue
Title: [203466] trunk/Source/WTF








Revision 203466
Author commit-qu...@webkit.org
Date 2016-07-20 13:00:04 -0700 (Wed, 20 Jul 2016)


Log Message
Remove unnecessary if check from ParkingLot.cpp
https://bugs.webkit.org/show_bug.cgi?id=159961

Patch by Rajeev Misra  on 2016-07-20
Reviewed by Alex Christensen.

A good practice is to have as less conditional statement
or special cases as possible in code. This change
simply removes a unnecessary "if" statement for
condition which was already evaluated by switch/case
and thus there was no need to evaluate again.

* wtf/ParkingLot.cpp:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/ParkingLot.cpp




Diff

Modified: trunk/Source/WTF/ChangeLog (203465 => 203466)

--- trunk/Source/WTF/ChangeLog	2016-07-20 19:42:53 UTC (rev 203465)
+++ trunk/Source/WTF/ChangeLog	2016-07-20 20:00:04 UTC (rev 203466)
@@ -1,3 +1,18 @@
+2016-07-20  Rajeev Misra  
+
+Remove unnecessary if check from ParkingLot.cpp
+https://bugs.webkit.org/show_bug.cgi?id=159961
+
+Reviewed by Alex Christensen.
+
+A good practice is to have as less conditional statement
+or special cases as possible in code. This change
+simply removes a unnecessary "if" statement for
+condition which was already evaluated by switch/case
+and thus there was no need to evaluate again.
+
+* wtf/ParkingLot.cpp:
+
 2016-07-18  Anders Carlsson  
 
 WebKit nightly fails to build on macOS Sierra


Modified: trunk/Source/WTF/wtf/ParkingLot.cpp (203465 => 203466)

--- trunk/Source/WTF/wtf/ParkingLot.cpp	2016-07-20 19:42:53 UTC (rev 203465)
+++ trunk/Source/WTF/wtf/ParkingLot.cpp	2016-07-20 20:00:04 UTC (rev 203466)
@@ -154,8 +154,10 @@
 previous = current;
 currentPtr = &(*currentPtr)->nextInQueue;
 break;
+case DequeueResult::RemoveAndStop:
+shouldContinue = false;
+FALLTHROUGH;
 case DequeueResult::RemoveAndContinue:
-case DequeueResult::RemoveAndStop:
 if (verbose)
 dataLog(toString(currentThread(), ": dequeueing ", RawPointer(current), " from ", RawPointer(this), "\n"));
 if (current == queueTail)
@@ -163,8 +165,6 @@
 didDequeue = true;
 *currentPtr = current->nextInQueue;
 current->nextInQueue = nullptr;
-if (result == DequeueResult::RemoveAndStop)
-shouldContinue = false;
 break;
 }
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203465] trunk/Source/WebCore

2016-07-20 Thread beidson
Title: [203465] trunk/Source/WebCore








Revision 203465
Author beid...@apple.com
Date 2016-07-20 12:42:53 -0700 (Wed, 20 Jul 2016)


Log Message
Transition most IDB interfaces from ScriptExecutionContext to ExecState.
https://bugs.webkit.org/show_bug.cgi?id=159975

Reviewed by Alex Christensen.

No new tests (No known behavior change).

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::continueFunction):
(WebCore::IDBCursor::deleteFunction):
* Modules/indexeddb/IDBCursor.h:
* Modules/indexeddb/IDBCursor.idl:

* Modules/indexeddb/IDBDatabase.idl:

* Modules/indexeddb/IDBFactory.cpp:
(WebCore::IDBFactory::cmp):
* Modules/indexeddb/IDBFactory.h:
* Modules/indexeddb/IDBFactory.idl:

* Modules/indexeddb/IDBIndex.cpp:
(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::count):
(WebCore::IDBIndex::doCount):
(WebCore::IDBIndex::openKeyCursor):
(WebCore::IDBIndex::get):
(WebCore::IDBIndex::doGet):
(WebCore::IDBIndex::getKey):
(WebCore::IDBIndex::doGetKey):
* Modules/indexeddb/IDBIndex.h:
* Modules/indexeddb/IDBIndex.idl:

* Modules/indexeddb/IDBKeyRange.cpp:
(WebCore::IDBKeyRange::only): Deleted.
* Modules/indexeddb/IDBKeyRange.h:

* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::openCursor):
(WebCore::IDBObjectStore::get):
(WebCore::IDBObjectStore::putOrAdd):
(WebCore::IDBObjectStore::deleteFunction):
(WebCore::IDBObjectStore::doDelete):
(WebCore::IDBObjectStore::modernDelete):
(WebCore::IDBObjectStore::clear):
(WebCore::IDBObjectStore::createIndex):
(WebCore::IDBObjectStore::count):
(WebCore::IDBObjectStore::doCount):
* Modules/indexeddb/IDBObjectStore.h:
* Modules/indexeddb/IDBObjectStore.idl:

* Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::requestOpenCursor):
(WebCore::IDBTransaction::doRequestOpenCursor):
(WebCore::IDBTransaction::requestGetRecord):
(WebCore::IDBTransaction::requestGetValue):
(WebCore::IDBTransaction::requestGetKey):
(WebCore::IDBTransaction::requestIndexRecord):
(WebCore::IDBTransaction::requestCount):
(WebCore::IDBTransaction::requestDeleteRecord):
(WebCore::IDBTransaction::requestClearObjectStore):
(WebCore::IDBTransaction::requestPutOrAdd):
* Modules/indexeddb/IDBTransaction.h:

* inspector/InspectorIndexedDBAgent.cpp:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/indexeddb/IDBCursor.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBCursor.h
trunk/Source/WebCore/Modules/indexeddb/IDBCursor.idl
trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.idl
trunk/Source/WebCore/Modules/indexeddb/IDBFactory.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBFactory.h
trunk/Source/WebCore/Modules/indexeddb/IDBFactory.idl
trunk/Source/WebCore/Modules/indexeddb/IDBIndex.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBIndex.h
trunk/Source/WebCore/Modules/indexeddb/IDBIndex.idl
trunk/Source/WebCore/Modules/indexeddb/IDBKeyRange.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBKeyRange.h
trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.h
trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.idl
trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp
trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.h
trunk/Source/WebCore/inspector/InspectorIndexedDBAgent.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (203464 => 203465)

--- trunk/Source/WebCore/ChangeLog	2016-07-20 19:25:16 UTC (rev 203464)
+++ trunk/Source/WebCore/ChangeLog	2016-07-20 19:42:53 UTC (rev 203465)
@@ -1,3 +1,70 @@
+2016-07-20  Brady Eidson  
+
+Transition most IDB interfaces from ScriptExecutionContext to ExecState.
+https://bugs.webkit.org/show_bug.cgi?id=159975
+
+Reviewed by Alex Christensen.
+
+No new tests (No known behavior change).
+
+* Modules/indexeddb/IDBCursor.cpp:
+(WebCore::IDBCursor::continueFunction):
+(WebCore::IDBCursor::deleteFunction):
+* Modules/indexeddb/IDBCursor.h:
+* Modules/indexeddb/IDBCursor.idl:
+
+* Modules/indexeddb/IDBDatabase.idl:
+
+* Modules/indexeddb/IDBFactory.cpp:
+(WebCore::IDBFactory::cmp):
+* Modules/indexeddb/IDBFactory.h:
+* Modules/indexeddb/IDBFactory.idl:
+
+* Modules/indexeddb/IDBIndex.cpp:
+(WebCore::IDBIndex::openCursor):
+(WebCore::IDBIndex::count):
+(WebCore::IDBIndex::doCount):
+(WebCore::IDBIndex::openKeyCursor):
+(WebCore::IDBIndex::get):
+(WebCore::IDBIndex::doGet):
+(WebCore::IDBIndex::getKey):
+(WebCore::IDBIndex::doGetKey):
+* Modules/indexeddb/IDBIndex.h:
+* Modules/indexeddb/IDBIndex.idl:
+
+* Modules/indexeddb/IDBKeyRange.cpp:
+(WebCore::IDBKeyRange::only): Deleted.
+* Modules/indexeddb/IDBKeyRange.h:
+
+* Modules/indexeddb/IDBObjectStore.cpp:
+(WebCore::IDBObjectStore::openCursor):
+(WebCore::IDBObjectStore::get):
+(WebCore::IDBObjectStore::putOrAdd):
+(WebCore::IDBObjectStore::delete

[webkit-changes] [203464] trunk

2016-07-20 Thread wenson_hsieh
Title: [203464] trunk








Revision 203464
Author wenson_hs...@apple.com
Date 2016-07-20 12:25:16 -0700 (Wed, 20 Jul 2016)


Log Message
Media controls don't appear when pausing a small autoplaying video
https://bugs.webkit.org/show_bug.cgi?id=159972


Reviewed by Beth Dakin.

Source/WebCore:

When pausing an autoplaying video, remove behavior restrictions for the
initial user gesture and show media controls.

New WebKit API test. See VideoControlsManagerSingleSmallAutoplayingVideo.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::pause):

Tools:

Adds a new test that verifies media controls show up when pausing a small autoplayed video. Also adds mechanisms
for simulating basic user interaction in VideoControlsManager.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
(-[WKWebView mouseDownAtPoint:]):
(-[DidPlayMessageHandler userContentController:didReceiveScriptMessage:]):
(-[OnLoadMessageHandler initWithWKWebView:handler:]):
(-[OnLoadMessageHandler userContentController:didReceiveScriptMessage:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/autoplaying-video-with-audio.html: Added.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLMediaElement.cpp
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm


Added Paths

trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/autoplaying-video-with-audio.html




Diff

Modified: trunk/Source/WebCore/ChangeLog (203463 => 203464)

--- trunk/Source/WebCore/ChangeLog	2016-07-20 19:21:51 UTC (rev 203463)
+++ trunk/Source/WebCore/ChangeLog	2016-07-20 19:25:16 UTC (rev 203464)
@@ -1,3 +1,19 @@
+2016-07-20  Wenson Hsieh  
+
+Media controls don't appear when pausing a small autoplaying video
+https://bugs.webkit.org/show_bug.cgi?id=159972
+
+
+Reviewed by Beth Dakin.
+
+When pausing an autoplaying video, remove behavior restrictions for the
+initial user gesture and show media controls.
+
+New WebKit API test. See VideoControlsManagerSingleSmallAutoplayingVideo.
+
+* html/HTMLMediaElement.cpp:
+(WebCore::HTMLMediaElement::pause):
+
 2016-07-20  Chris Dumez  
 
 Fix null handling of HTMLMediaElement.mediaGroup


Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (203463 => 203464)

--- trunk/Source/WebCore/html/HTMLMediaElement.cpp	2016-07-20 19:21:51 UTC (rev 203463)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp	2016-07-20 19:25:16 UTC (rev 203464)
@@ -3155,6 +3155,9 @@
 if (!m_mediaSession->playbackPermitted(*this))
 return;
 
+if (ScriptController::processingUserGestureForMedia())
+removeBehaviorsRestrictionsAfterFirstUserGesture();
+
 pauseInternal();
 }
 


Modified: trunk/Tools/ChangeLog (203463 => 203464)

--- trunk/Tools/ChangeLog	2016-07-20 19:21:51 UTC (rev 203463)
+++ trunk/Tools/ChangeLog	2016-07-20 19:25:16 UTC (rev 203464)
@@ -1,3 +1,23 @@
+2016-07-20  Wenson Hsieh  
+
+Media controls don't appear when pausing a small autoplaying video
+https://bugs.webkit.org/show_bug.cgi?id=159972
+
+
+Reviewed by Beth Dakin.
+
+Adds a new test that verifies media controls show up when pausing a small autoplayed video. Also adds mechanisms
+for simulating basic user interaction in VideoControlsManager.
+
+* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
+* TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
+(-[WKWebView mouseDownAtPoint:]):
+(-[DidPlayMessageHandler userContentController:didReceiveScriptMessage:]):
+(-[OnLoadMessageHandler initWithWKWebView:handler:]):
+(-[OnLoadMessageHandler userContentController:didReceiveScriptMessage:]):
+(TestWebKitAPI::TEST):
+* TestWebKitAPI/Tests/WebKit2Cocoa/autoplaying-video-with-audio.html: Added.
+
 2016-07-20  Per Arne Vollan  
 
 [Win] MathML fonts are not found.


Modified: trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj (203463 => 203464)

--- trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj	2016-07-20 19:21:51 UTC (rev 203463)
+++ trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj	2016-07-20 19:25:16 UTC (rev 203464)
@@ -51,6 +51,7 @@
 		2D51A0C71C8BF00C00765C45 /* DOMHTMLVideoElementWrapper.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D51A0C51C8BF00400765C45 /* DOMHTMLVideoElementWrapper.mm */; };
 		2DC4CF771D2D9DD800ECCC94 /* DataDetection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DC4CF761D2D9DD800ECCC94 /* DataDetection.mm */; };
 		2DD7D3AF178227B30026E1E3 /* lots-of-text-vertical-lr.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 2DD7D3AE178227AC0026E1E3 /* lots-of-text-vertical-lr.html */; };
+		2E14A5291D3FE96B0010F35B /* autoplaying-video-with-audio.html in Copy Resources */ 

[webkit-changes] [203463] trunk

2016-07-20 Thread cdumez
Title: [203463] trunk








Revision 203463
Author cdu...@apple.com
Date 2016-07-20 12:21:51 -0700 (Wed, 20 Jul 2016)


Log Message
Fix null handling of HTMLMediaElement.mediaGroup
https://bugs.webkit.org/show_bug.cgi?id=159974

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

Rebaseline now that more checks are passing.

* web-platform-tests/html/dom/reflection-embedded-expected.txt:

Source/WebCore:

Fix null handling of HTMLMediaElement.mediaGroup to match the specification:
- https://www.w3.org/TR/html5/embedded-content-0.html#media-elements

null is supposed to be treated as the String "null". This patch aligns
our behavior with the specification. I tested Firefox and Chrome but both
do not have this attribute on HTMLMediaElement.

Also remove support for [TreatNullAs=LegacyNullString] from our bindings
generator as HTMLMediaElement.mediaGroup was the last user.

No new tests, rebaselined existing test.

* bindings/scripts/CodeGeneratorJS.pm:
(JSValueToNative):
* bindings/scripts/IDLAttributes.txt:
* html/HTMLMediaElement.idl:

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt
trunk/LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
trunk/Source/WebCore/bindings/scripts/IDLAttributes.txt
trunk/Source/WebCore/html/HTMLMediaElement.idl




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (203462 => 203463)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2016-07-20 18:59:22 UTC (rev 203462)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2016-07-20 19:21:51 UTC (rev 203463)
@@ -1,3 +1,14 @@
+2016-07-20  Chris Dumez  
+
+Fix null handling of HTMLMediaElement.mediaGroup
+https://bugs.webkit.org/show_bug.cgi?id=159974
+
+Reviewed by Eric Carlson.
+
+Rebaseline now that more checks are passing.
+
+* web-platform-tests/html/dom/reflection-embedded-expected.txt:
+
 2016-07-19  Chris Dumez  
 
 Fix null handling of several HTMLDocument attributes


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt (203462 => 203463)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt	2016-07-20 18:59:22 UTC (rev 203462)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt	2016-07-20 19:21:51 UTC (rev 203463)
@@ -8596,8 +8596,8 @@
 PASS video.mediaGroup: IDL set to "\0" followed by getAttribute() 
 PASS video.mediaGroup: IDL set to "\0" followed by IDL get 
 PASS video.mediaGroup: IDL set to null should not throw 
-FAIL video.mediaGroup: IDL set to null followed by getAttribute() assert_equals: expected (string) "null" but got (object) null
-FAIL video.mediaGroup: IDL set to null followed by IDL get assert_equals: expected "null" but got ""
+PASS video.mediaGroup: IDL set to null followed by getAttribute() 
+PASS video.mediaGroup: IDL set to null followed by IDL get 
 PASS video.mediaGroup: IDL set to object "test-toString" should not throw 
 PASS video.mediaGroup: IDL set to object "test-toString" followed by getAttribute() 
 PASS video.mediaGroup: IDL set to object "test-toString" followed by IDL get 
@@ -10227,8 +10227,8 @@
 PASS audio.mediaGroup: IDL set to "\0" followed by getAttribute() 
 PASS audio.mediaGroup: IDL set to "\0" followed by IDL get 
 PASS audio.mediaGroup: IDL set to null should not throw 
-FAIL audio.mediaGroup: IDL set to null followed by getAttribute() assert_equals: expected (string) "null" but got (object) null
-FAIL audio.mediaGroup: IDL set to null followed by IDL get assert_equals: expected "null" but got ""
+PASS audio.mediaGroup: IDL set to null followed by getAttribute() 
+PASS audio.mediaGroup: IDL set to null followed by IDL get 
 PASS audio.mediaGroup: IDL set to object "test-toString" should not throw 
 PASS audio.mediaGroup: IDL set to object "test-toString" followed by getAttribute() 
 PASS audio.mediaGroup: IDL set to object "test-toString" followed by IDL get 


Modified: trunk/LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt (203462 => 203463)

--- trunk/LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt	2016-07-20 18:59:22 UTC (rev 203462)
+++ trunk/LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt	2016-07-20 19:21:51 UTC (rev 203463)
@@ -8596,8 +8596,8 @@
 PASS video.mediaGroup: IDL set to "\0" followed by getAttribute() 
 PASS video.mediaGroup: IDL set to "\0" followed by IDL get 
 PASS video.mediaGroup: IDL set to null should not throw 
-FAIL video.mediaGroup: IDL set to null followed by getAttribute() assert_equals: expected (string) "null" but got (object) null
-FAIL video.m

[webkit-changes] [203462] trunk/Source/WebKit2

2016-07-20 Thread timothy_horton
Title: [203462] trunk/Source/WebKit2








Revision 203462
Author timothy_hor...@apple.com
Date 2016-07-20 11:59:22 -0700 (Wed, 20 Jul 2016)


Log Message
Explain the default value of WKWebViewConfiguration's ignoresViewportScaleLimits
https://bugs.webkit.org/show_bug.cgi?id=159978


Reviewed by Dan Bernstein.

* UIProcess/API/Cocoa/WKWebViewConfiguration.h:
This defaults to NO.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (203461 => 203462)

--- trunk/Source/WebKit2/ChangeLog	2016-07-20 18:10:18 UTC (rev 203461)
+++ trunk/Source/WebKit2/ChangeLog	2016-07-20 18:59:22 UTC (rev 203462)
@@ -1,3 +1,14 @@
+2016-07-20  Tim Horton  
+
+Explain the default value of WKWebViewConfiguration's ignoresViewportScaleLimits
+https://bugs.webkit.org/show_bug.cgi?id=159978
+
+
+Reviewed by Dan Bernstein.
+
+* UIProcess/API/Cocoa/WKWebViewConfiguration.h:
+This defaults to NO.
+
 2016-07-20  Carlos Garcia Campos  
 
 [Linux] MemoryPressureMonitor fallback code to get memory available in older linux kernels doesn't work


Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.h (203461 => 203462)

--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.h	2016-07-20 18:10:18 UTC (rev 203461)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.h	2016-07-20 18:59:22 UTC (rev 203462)
@@ -184,6 +184,7 @@
 
 /*! @abstract A Boolean value indicating whether the WKWebView should always allow scaling of the web page, regardless of author intent.
  @discussion This will override the user-scalable property.
+ The default value is NO.
  */
 @property (nonatomic) BOOL ignoresViewportScaleLimits WK_API_AVAILABLE(ios(WK_IOS_TBA));
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203461] releases/Apple

2016-07-20 Thread mitz
Title: [203461] releases/Apple








Revision 203461
Author m...@apple.com
Date 2016-07-20 11:10:18 -0700 (Wed, 20 Jul 2016)


Log Message
Added a tag for Safari Technology Preview release 9.

Added Paths

releases/Apple/Safari Technology Preview 9/
releases/Apple/Safari Technology Preview 9/ANGLE/
releases/Apple/Safari Technology Preview 9/_javascript_Core/
releases/Apple/Safari Technology Preview 9/WTF/
releases/Apple/Safari Technology Preview 9/WebCore/
releases/Apple/Safari Technology Preview 9/WebInspectorUI/
releases/Apple/Safari Technology Preview 9/WebKit/
releases/Apple/Safari Technology Preview 9/WebKit2/
releases/Apple/Safari Technology Preview 9/bmalloc/




Diff
Index: releases/Apple/Safari Technology Preview 9/ANGLE
===
--- tags/Safari-602.1.41/Source/ThirdParty/ANGLE	2016-07-20 18:01:26 UTC (rev 203460)
+++ releases/Apple/Safari Technology Preview 9/ANGLE	2016-07-20 18:10:18 UTC (rev 203461)

Property changes: releases/Apple/Safari Technology Preview 9/ANGLE



Added: allow-tabs
+true
\ No newline at end of property

Added: svn:mergeinfo
+/trunk/Source/ThirdParty/ANGLE:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 9/_javascript_Core
===
--- tags/Safari-602.1.41/Source/_javascript_Core	2016-07-20 18:01:26 UTC (rev 203460)
+++ releases/Apple/Safari Technology Preview 9/_javascript_Core	2016-07-20 18:10:18 UTC (rev 203461)

Property changes: releases/Apple/Safari Technology Preview 9/_javascript_Core



Added: svn:mergeinfo
+/trunk/Source/_javascript_Core:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 9/WTF
===
--- tags/Safari-602.1.41/Source/WTF	2016-07-20 18:01:26 UTC (rev 203460)
+++ releases/Apple/Safari Technology Preview 9/WTF	2016-07-20 18:10:18 UTC (rev 203461)

Property changes: releases/Apple/Safari Technology Preview 9/WTF



Added: svn:mergeinfo
+/trunk/Source/WTF:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 9/WebInspectorUI
===
--- tags/Safari-602.1.41/Source/WebInspectorUI	2016-07-20 18:01:26 UTC (rev 203460)
+++ releases/Apple/Safari Technology Preview 9/WebInspectorUI	2016-07-20 18:10:18 UTC (rev 203461)

Property changes: releases/Apple/Safari Technology Preview 9/WebInspectorUI



Added: svn:mergeinfo
+/trunk/Source/WebInspectorUI:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 9/WebKit2
===
--- tags/Safari-602.1.41/Source/WebKit2	2016-07-20 18:01:26 UTC (rev 203460)
+++ releases/Apple/Safari Technology Preview 9/WebKit2	2016-07-20 18:10:18 UTC (rev 203461)

Property changes: releases/Apple/Safari Technology Preview 9/WebKit2



Added: svn:mergeinfo
+/trunk/Source/WebKit2:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 9/bmalloc
===
--- tags/Safari-602.1.41/Source/bmalloc	2016-07-20 18:01:26 UTC (rev 203460)
+++ releases/Apple/Safari Technology Preview 9/bmalloc	2016-07-20 18:10:18 UTC (rev 203461)

Property changes: releases/Apple/Safari Technology Preview 9/bmalloc



Added: svn:mergeinfo
+/trunk/Source/bmalloc:53455
\ No newline at end of property




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [203460] trunk

2016-07-20 Thread cdumez
Title: [203460] trunk








Revision 203460
Author cdu...@apple.com
Date 2016-07-20 11:01:26 -0700 (Wed, 20 Jul 2016)


Log Message
CSSStyleDeclaration.setProperty() should be able to unset "important" on a property
https://bugs.webkit.org/show_bug.cgi?id=159959

Reviewed by Alexey Proskuryakov.

Source/WebCore:

CSSStyleDeclaration.setProperty() should be able to unsert "important"
on a property as per the latest specification:
- https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-setproperty
- https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-camel-cased-attribute

Firefox and Chrome match the specification here but WebKit was ignoring calls
to setProperty() if there is already an "important" property wit this name
and if the new property does not have the "important" flag set.

This behavior was added a long time ago via Bug 60007. However, it does not
match the latest specification or other browsers.

Test: fast/css/CSSStyleDeclaration-setProperty-unset-important.html

* css/StyleProperties.cpp:
(WebCore::MutableStyleProperties::addParsedProperty):
Drop code that was added via Bug 60007 as this behavior no longer matches the
specification or other browsers. The layout test added in Bug 60007 fails in
other browsers and was updated in this patch to match the specification.

LayoutTests:

* fast/css/CSSStyleDeclaration-setProperty-unset-important-expected.txt: Added.
* fast/css/CSSStyleDeclaration-setProperty-unset-important.html: Added.
Add layout test coverage.

* fast/css/important-js-override.html:
The test covered our 'wrong' behavior and was failing in Firefox / Chrome.
I updated the test to match the behavior in the specification. The test
now passed in Chrome and Firefox.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/css/important-js-override.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/StyleProperties.cpp


Added Paths

trunk/LayoutTests/fast/css/CSSStyleDeclaration-setProperty-unset-important-expected.txt
trunk/LayoutTests/fast/css/CSSStyleDeclaration-setProperty-unset-important.html




Diff

Modified: trunk/LayoutTests/ChangeLog (203459 => 203460)

--- trunk/LayoutTests/ChangeLog	2016-07-20 17:55:53 UTC (rev 203459)
+++ trunk/LayoutTests/ChangeLog	2016-07-20 18:01:26 UTC (rev 203460)
@@ -1,3 +1,19 @@
+2016-07-20  Chris Dumez  
+
+CSSStyleDeclaration.setProperty() should be able to unset "important" on a property
+https://bugs.webkit.org/show_bug.cgi?id=159959
+
+Reviewed by Alexey Proskuryakov.
+
+* fast/css/CSSStyleDeclaration-setProperty-unset-important-expected.txt: Added.
+* fast/css/CSSStyleDeclaration-setProperty-unset-important.html: Added.
+Add layout test coverage.
+
+* fast/css/important-js-override.html:
+The test covered our 'wrong' behavior and was failing in Firefox / Chrome.
+I updated the test to match the behavior in the specification. The test
+now passed in Chrome and Firefox.
+
 2016-07-20  Commit Queue  
 
 Unreviewed, rolling out r203423.


Added: trunk/LayoutTests/fast/css/CSSStyleDeclaration-setProperty-unset-important-expected.txt (0 => 203460)

--- trunk/LayoutTests/fast/css/CSSStyleDeclaration-setProperty-unset-important-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/css/CSSStyleDeclaration-setProperty-unset-important-expected.txt	2016-07-20 18:01:26 UTC (rev 203460)
@@ -0,0 +1,15 @@
+Test that CSSStyleDeclaration.setProperty() can unset the 'important' flag
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+div.style.setProperty('color', 'red', 'important')
+PASS div.style.getPropertyValue('color') is "red"
+PASS div.style.getPropertyPriority('color') is "important"
+div.style.setProperty('color', 'green', null)
+PASS div.style.getPropertyValue('color') is "green"
+PASS div.style.getPropertyPriority('color') is ""
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/fast/css/CSSStyleDeclaration-setProperty-unset-important.html (0 => 203460)

--- trunk/LayoutTests/fast/css/CSSStyleDeclaration-setProperty-unset-important.html	(rev 0)
+++ trunk/LayoutTests/fast/css/CSSStyleDeclaration-setProperty-unset-important.html	2016-07-20 18:01:26 UTC (rev 203460)
@@ -0,0 +1,19 @@
+
+
+
+
+description("Test that CSSStyleDeclaration.setProperty() can unset the 'important' flag");
+
+var div = document.createElement("div");
+evalAndLog("div.style.setProperty('color', 'red', 'important')");
+shouldBeEqualToString("div.style.getPropertyValue('color')", "red");
+shouldBeEqualToString("div.style.getPropertyPriority('color')", "important");
+
+evalAndLog("div.style.setProperty('color', 'green', null)");
+shouldBeEqualToString("div.style.getPropertyValue('color')", "green");
+shouldBeEqualToString("div.style.getPropertyPriority('color')", "");
+
+
+