WebKit-https.git
2 years agoChange architecture for ios-ews queue to arm64.
ryanhaddad@apple.com [Fri, 22 Sep 2017 00:16:55 +0000 (00:16 +0000)]
Change architecture for ios-ews queue to arm64.
https://bugs.webkit.org/show_bug.cgi?id=177332

Reviewed by Alexey Proskuryakov.

* Scripts/webkitpy/common/config/ews.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222370 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemove the need for SetterMayThrowException
commit-queue@webkit.org [Thu, 21 Sep 2017 23:37:08 +0000 (23:37 +0000)]
Remove the need for SetterMayThrowException
https://bugs.webkit.org/show_bug.cgi?id=177099

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-21
Reviewed by Sam Weinig.

No change of behavior.
Introducing AttributeSetter to handle exception raising attribute setters,
based on the C++ class method instead of SetterMayThrowException.
A follow-up patch should remove SetterMayThrowException from the IDLs

* bindings/js/JSDOMAttribute.h:
(WebCore::AttributeSetter<ExceptionOr<void>>::call):
(WebCore::AttributeSetter<void>::call):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateAttributeSetterBodyDefinition):
* bindings/scripts/test/JS/JSTestCEReactions.cpp:
* bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
* bindings/scripts/test/JS/JSTestCallTracer.cpp:
* bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
* bindings/scripts/test/JS/JSTestGlobalObject.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
* bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestSerialization.cpp:
* bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
* bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222365 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUse 'ninja' from the SDK if it exists
timothy_horton@apple.com [Thu, 21 Sep 2017 23:30:27 +0000 (23:30 +0000)]
Use 'ninja' from the SDK if it exists
https://bugs.webkit.org/show_bug.cgi?id=177330

Reviewed by Alex Christensen.

* Scripts/webkitdirs.pm:
(canUseNinja):
Check for ninja with xcrun in addition to commandExists() for Cocoa platforms.

(generateBuildSystemFromCMakeProject):
(canUseNinjaGenerator): Deleted.
Remove canUseNinjaGenerator; as noted in bug 177057, the Ninja generator
is available in all versions of CMake supported by WebKit.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222364 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoDataTransfer.items should contain text/html and text/uri-list
rniwa@webkit.org [Thu, 21 Sep 2017 23:10:33 +0000 (23:10 +0000)]
DataTransfer.items should contain text/html and text/uri-list
https://bugs.webkit.org/show_bug.cgi?id=176772
<rdar://problem/34386899>

Reviewed by Darin Adler.

Source/WebCore:

Expose text/html and text/uri-list in dataTransfer.items.

Tests: editing/pasteboard/datatransfer-items-copy-html.html
       editing/pasteboard/datatransfer-items-copy-url.html

* dom/DataTransferItemList.cpp:
(WebCore::isSupportedType): Added both MIME types.
(WebCore::DataTransferItemList::add): Fixed the bug that new data transfer item was using
the original type string instead of the lowercased one.

LayoutTests:

Added tests for copying text/html and text/uri-list, and updated the existing test for
coping & pasting plain text to explicitly set only text/plain now that
the data transfer item list can contain HTML markup.

* editing/pasteboard/datatransfer-items-copy-html-expected.txt: Added.
* editing/pasteboard/datatransfer-items-copy-html.html: Added.
* editing/pasteboard/datatransfer-items-copy-url-expected.txt: Added.
* editing/pasteboard/datatransfer-items-copy-url.html: Added.
* editing/pasteboard/datatransfer-items-paste-plaintext.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222363 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoAdd missing expectation file.
ryanhaddad@apple.com [Thu, 21 Sep 2017 23:07:27 +0000 (23:07 +0000)]
Add missing expectation file.
https://bugs.webkit.org/show_bug.cgi?id=170713

Unreviewed test gardening.

* web-platform-tests/IndexedDB/nested-cloning-large-multiple-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222362 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoLayoutTest platform/mac/webrtc/captureCanvas-webrtc-software-encoder.html is a flaky...
commit-queue@webkit.org [Thu, 21 Sep 2017 23:06:19 +0000 (23:06 +0000)]
LayoutTest platform/mac/webrtc/captureCanvas-webrtc-software-encoder.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=173741

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-21
Reviewed by Alex Christensen.

Making the test more robust by getting the reference canvas to compare with each time a new comparison is done.
Previously, this was done at the start of the comparison.
Also increasing the threshold since we are going from 0 to 255 or vice-versa.

* platform/mac/webrtc/captureCanvas-webrtc-software-encoder.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222361 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[Win] Compile error, PALHeaderDetection.h not found.
pvollan@apple.com [Thu, 21 Sep 2017 23:06:07 +0000 (23:06 +0000)]
[Win] Compile error, PALHeaderDetection.h not found.
https://bugs.webkit.org/show_bug.cgi?id=177309

Reviewed by Brent Fulgham.

Copy PAL header files to WebCore forwarding headers folder.

* PlatformWin.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222360 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWeb Inspector: Add autocompletion suggestions for CSS functions (constant(), linear...
commit-queue@webkit.org [Thu, 21 Sep 2017 23:05:22 +0000 (23:05 +0000)]
Web Inspector: Add autocompletion suggestions for CSS functions (constant(), linear-gradient(), etc)
https://bugs.webkit.org/show_bug.cgi?id=177264

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2017-09-21
Reviewed by Matt Baker.

* UserInterface/Controllers/CodeMirrorCompletionController.js:
(WI.CodeMirrorCompletionController.prototype._generateCSSCompletions):
Detect when we are inside of functions and provide completion suggestions
for the relevant function.

* UserInterface/Models/CSSCompletions.js:
Syntax highlight "constant()" like we do for "var()".

* UserInterface/Models/CSSKeywordCompletions.js:
(WI.CSSKeywordCompletions.forProperty):
Always suggest "constant()" everywhere, like we do for "var()".

(WI.CSSKeywordCompletions.forFunction):
Provide suggestions for some CSS functions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222359 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[Win] Compile error, generate-webkitversion.pl script not found.
pvollan@apple.com [Thu, 21 Sep 2017 23:03:30 +0000 (23:03 +0000)]
[Win] Compile error, generate-webkitversion.pl script not found.
https://bugs.webkit.org/show_bug.cgi?id=177310

Reviewed by Brent Fulgham.

The script is located using the WebKitLegacy folder cmake variable, which needs
to be set in the project file.

* WebKitLegacy.vcxproj/WebKitLegacy.proj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222358 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoTry to fix Apple internal builds with the iOS 11.0 SDK.
mitz@apple.com [Thu, 21 Sep 2017 22:43:57 +0000 (22:43 +0000)]
Try to fix Apple internal builds with the iOS 11.0 SDK.

* Configurations/WebKit.xcconfig: Disable framework header postprocessing for iOS 11.0.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222357 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWeb Inspector: Remove support for CSS Regions
commit-queue@webkit.org [Thu, 21 Sep 2017 22:32:49 +0000 (22:32 +0000)]
Web Inspector: Remove support for CSS Regions
https://bugs.webkit.org/show_bug.cgi?id=177287

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2017-09-21
Reviewed by Matt Baker.

Source/JavaScriptCore:

* inspector/protocol/CSS.json:
* inspector/protocol/OverlayTypes.json:

Source/WebCore:

* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getNamedFlowCollection): Deleted.
* inspector/InspectorCSSAgent.h:
* inspector/InspectorOverlay.cpp:
(WebCore::buildRendererHighlight):
(WebCore::buildNodeHighlight):
(WebCore::InspectorOverlay::getHighlight const):
(WebCore::buildArrayForRendererFragments):
(WebCore::buildQuadObjectForCSSRegionContentClip): Deleted.
* inspector/InspectorOverlayPage.js:
(_createElementTitle):
(_drawElementTitle):
(_drawFragmentHighlight):
(drawNodeHighlight):
(_drawRegionNumber): Deleted.
(_quadMidPoint): Deleted.
(_drawRegionLink): Deleted.
(_drawRegionsHighlight): Deleted.

Source/WebInspectorUI:

* UserInterface/Protocol/CSSObserver.js:
(WI.CSSObserver.prototype.namedFlowCreated):
(WI.CSSObserver.prototype.namedFlowRemoved):
(WI.CSSObserver.prototype.regionLayoutUpdated):
(WI.CSSObserver.prototype.regionOversetChanged):
(WI.CSSObserver.prototype.registeredNamedFlowContentElement):
(WI.CSSObserver.prototype.unregisteredNamedFlowContentElement):
Leave observer functions in for older backends that will send
these messages, but we just ignore them.

* UserInterface/Base/Main.js:
* UserInterface/Controllers/DOMTreeManager.js:
(WI.DOMTreeManager):
(WI.DOMTreeManager.prototype._unbind):
(WI.DOMTreeManager._flowPayloadHashKey): Deleted.
(WI.DOMTreeManager.prototype._createContentFlowFromPayload): Deleted.
(WI.DOMTreeManager.prototype._updateContentFlowFromPayload): Deleted.
(WI.DOMTreeManager.prototype.getNamedFlowCollection.onNamedFlowCollectionAvailable): Deleted.
(WI.DOMTreeManager.prototype.getNamedFlowCollection): Deleted.
(WI.DOMTreeManager.prototype.namedFlowCreated): Deleted.
(WI.DOMTreeManager.prototype.namedFlowRemoved): Deleted.
(WI.DOMTreeManager.prototype._sendNamedFlowUpdateEvents): Deleted.
(WI.DOMTreeManager.prototype.regionOversetChanged): Deleted.
(WI.DOMTreeManager.prototype.registeredNamedFlowContentElement): Deleted.
(WI.DOMTreeManager.prototype._removeContentNodeFromFlowIfNeeded): Deleted.
(WI.DOMTreeManager.prototype.unregisteredNamedFlowContentElement): Deleted.
(WI.DOMTreeManager.prototype._coerceRemoteArrayOfDOMNodes.nodeRequested): Deleted.
(WI.DOMTreeManager.prototype._coerceRemoteArrayOfDOMNodes): Deleted.
(WI.DOMTreeManager.prototype.getNodeContentFlowInfo.regionNodesAvailable): Deleted.
(WI.DOMTreeManager.prototype.getNodeContentFlowInfo.remoteObjectPropertiesAvailable): Deleted.
(WI.DOMTreeManager.prototype.getNodeContentFlowInfo.inspectedPage_node_getFlowInfo.getComputedProperty): Deleted.
(WI.DOMTreeManager.prototype.getNodeContentFlowInfo.inspectedPage_node_getFlowInfo.getContentFlowName): Deleted.
(WI.DOMTreeManager.prototype.getNodeContentFlowInfo): Deleted.
* UserInterface/Images/ContentFlow.svg: Removed.
* UserInterface/Images/gtk/ContentFlow.svg: Removed.
* UserInterface/Main.html:
* UserInterface/Models/Collection.js:
* UserInterface/Models/ContentFlow.js: Removed.
* UserInterface/Models/DOMTree.js:
(WI.DOMTree):
(WI.DOMTree.prototype.get frame):
(WI.DOMTree.prototype._framePageExecutionContextChanged):
(WI.DOMTree.prototype.get contentFlowCollection): Deleted.
(WI.DOMTree.prototype.requestContentFlowList): Deleted.
(WI.DOMTree.prototype._isContentFlowInCurrentDocument): Deleted.
(WI.DOMTree.prototype._contentFlowListWasUpdated): Deleted.
(WI.DOMTree.prototype._contentFlowWasAdded): Deleted.
(WI.DOMTree.prototype._contentFlowWasRemoved): Deleted.
* UserInterface/Test.html:
* UserInterface/Views/CollectionContentView.js:
(WI.CollectionContentView):
* UserInterface/Views/ComputedStyleDetailsPanel.css:
(.details-section > .content > .group > .row.simple.content-flow-link > .value > span > .icon): Deleted.
* UserInterface/Views/ComputedStyleDetailsPanel.js:
(WI.ComputedStyleDetailsPanel.prototype.refresh):
(WI.ComputedStyleDetailsPanel.prototype.initialLayout):
(WI.ComputedStyleDetailsPanel.prototype._handleVariablesSectionCollapsedStateChanged):
(WI.ComputedStyleDetailsPanel):
(WI.ComputedStyleDetailsPanel.prototype.get regionFlow): Deleted.
(WI.ComputedStyleDetailsPanel.prototype.set regionFlow): Deleted.
(WI.ComputedStyleDetailsPanel.prototype.get contentFlow): Deleted.
(WI.ComputedStyleDetailsPanel.prototype.set contentFlow): Deleted.
(WI.ComputedStyleDetailsPanel.prototype.get containerRegions): Deleted.
(WI.ComputedStyleDetailsPanel.prototype.set containerRegions): Deleted.
(WI.ComputedStyleDetailsPanel.prototype.sizeDidChange): Deleted.
(WI.ComputedStyleDetailsPanel.prototype._updateFlowNamesSectionVisibility): Deleted.
(WI.ComputedStyleDetailsPanel.prototype._resetFlowDetails): Deleted.
(WI.ComputedStyleDetailsPanel.prototype._refreshFlowDetails.contentFlowInfoReady): Deleted.
(WI.ComputedStyleDetailsPanel.prototype._refreshFlowDetails): Deleted.
(WI.ComputedStyleDetailsPanel.prototype._goToRegionFlowArrowWasClicked): Deleted.
(WI.ComputedStyleDetailsPanel.prototype._goToContentFlowArrowWasClicked): Deleted.
* UserInterface/Views/ContentFlowDOMTreeContentView.js: Removed.
* UserInterface/Views/ContentFlowIcon.css: Removed.
* UserInterface/Views/ContentFlowTreeElement.js: Removed.
* UserInterface/Views/ContentView.js:
(WI.ContentView.createFromRepresentedObject):
(WI.ContentView.isViewable):
* UserInterface/Views/FrameTreeElement.js:
(WI.FrameTreeElement.prototype.onpopulate):
(WI.FrameTreeElement.prototype.onexpand):
(WI.FrameTreeElement.prototype._childContentFlowWasAdded): Deleted.
(WI.FrameTreeElement.prototype._childContentFlowWasRemoved): Deleted.
(WI.FrameTreeElement.prototype._rootDOMNodeInvalidated): Deleted.
* UserInterface/Views/ResourceSidebarPanel.js:
(WI.ResourceSidebarPanel.prototype._treeSelectionDidChange):
* UserInterface/Views/ResourcesTabContentView.js:
(WI.ResourcesTabContentView):
(WI.ResourcesTabContentView.prototype.canShowRepresentedObject):

LayoutTests:

* inspector/dom/content-flow-content-nodes-expected.txt: Removed.
* inspector/dom/content-flow-content-nodes.html: Removed.
* inspector/dom/content-flow-content-removal-expected.txt: Removed.
* inspector/dom/content-flow-content-removal.html: Removed.
* inspector/dom/content-flow-list-expected.txt: Removed.
* inspector/dom/content-flow-list.html: Removed.
* inspector/dom/content-node-region-info-expected.txt: Removed.
* inspector/dom/content-node-region-info.html: Removed.
* inspector/dom/highlight-flow-with-no-region-expected.txt: Removed.
* inspector/dom/highlight-flow-with-no-region.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222356 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRegression(r222308): new API tests are failing for !NETWORK_SESSION
cdumez@apple.com [Thu, 21 Sep 2017 22:08:39 +0000 (22:08 +0000)]
Regression(r222308): new API tests are failing for !NETWORK_SESSION
https://bugs.webkit.org/show_bug.cgi?id=177321

Reviewed by Alex Christensen.

Source/WebKit:

When a load is redirected and then converted into a download, CFNetwork
seems to call [NSURLDownloadDelegate willSendRequest:] on the download
with a non-nil redirectResponse, which was unexpected.

To address the issue, we now ignore the willSendRequest call if the
new request's URL is the same as the redirectResponse one.

* NetworkProcess/Downloads/mac/DownloadMac.mm:
(-[WKDownloadAsDelegate download:willSendRequest:redirectResponse:]):

Tools:

Unskip API tests now that they pass everywhere.

* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222355 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoSkip new hanging test262 tests.
joepeck@webkit.org [Thu, 21 Sep 2017 21:58:39 +0000 (21:58 +0000)]
Skip new hanging test262 tests.
https://bugs.webkit.org/show_bug.cgi?id=177326

Unreviewed test gardening.

* test262.yaml:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222354 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, fix ability to run tests in browser.
fpizlo@apple.com [Thu, 21 Sep 2017 21:45:05 +0000 (21:45 +0000)]
Unreviewed, fix ability to run tests in browser.

* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/index.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222353 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agowebkitpy: Ignore failure to get updated selenium version
jbedard@apple.com [Thu, 21 Sep 2017 21:37:04 +0000 (21:37 +0000)]
webkitpy: Ignore failure to get updated selenium version
https://bugs.webkit.org/show_bug.cgi?id=177205
<rdar://problem/34531669>

Reviewed by Lucas Forschler.

Sometime asking PyPI for the latest version of Selenium fails. We should try and
fallback to, at a minimum, version 3.5.0 or a newer installed version.

* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook.greater_than_equal_to_version): Return true if the second
version string is greater than or equal to the first version string.
(AutoinstallImportHook._install_selenium): If we can't get the latest PyPI url,
fallback to version 3.5.0 or a newer installed version.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222352 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWSL should have some post-instantiation type checking
fpizlo@apple.com [Thu, 21 Sep 2017 21:35:47 +0000 (21:35 +0000)]
WSL should have some post-instantiation type checking
https://bugs.webkit.org/show_bug.cgi?id=177303

Reviewed by Keith Miller.

This patch removes the Primitive protocol! Yay!

The Primitive protocol was an attempt to handle the fact that Metal wouldn't allow us to point a
non-thread pointer at data structures that have pointers. This type checking rule interacts badly with
generics. I was able to get it to mostly work by making Primitive into a dynamic protocol - a type
belongs to it if it happens to be isPrimitive.

But that was a mistake, since it makes it hard to create pointers that are generic over address space.
Also, it's not an appropriate rule for targeting SPIR-V logical mode. That rule will be different, and
possibly more complicated.

All of these kinds of rules are easier to implement of we run them after instantiation, since then they
don't get in the way of generics. That's what this patch does.

This means that we get all of the same type checking power as before, and we still can catch the errors
that Metal requires us to check for. It's easier to do those checks now.

Finally, this removes the shader type checker's incomplete reimplementation of isPrimitive (which was
called NonNumericSearcher). The shader type checker calls isPrimitive now.

* WebGPUShadingLanguageRI/AddressSpace.js:
(needsPrimitiveProtocol): Deleted.
(protocolSuffix): Deleted.
* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype._checkShaderType):
(Checker.prototype._checkShaderType.NonNumericSearcher): Deleted.
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType): Deleted.
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType): Deleted.
(Checker.prototype.visitReferenceType): Deleted.
* WebGPUShadingLanguageRI/FuncInstantiator.js:
(FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
* WebGPUShadingLanguageRI/Inline.js:
(_inlineFunction):
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics):
* WebGPUShadingLanguageRI/LateChecker.js: Added.
(LateChecker):
(LateChecker.prototype.visitReferenceType):
(LateChecker.prototype._checkShaderType):
(LateChecker.prototype.visitFuncDef):
* WebGPUShadingLanguageRI/LexerToken.js:
(LexerToken.prototype.get isInternal): Deleted.
* WebGPUShadingLanguageRI/NativeType.js:
(NativeType):
(NativeType.prototype.get name):
(NativeType.prototype.get isPrimitive):
(NativeType.prototype.set isPrimitive):
(NativeType.prototype.toString):
* WebGPUShadingLanguageRI/Parse.js:
(parseNative):
* WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js:
(programWithUnnecessaryThingsRemoved):
* WebGPUShadingLanguageRI/ProtocolDecl.js:
* WebGPUShadingLanguageRI/ReferenceType.js:
(ReferenceType.prototype.get elementType):
(ReferenceType.prototype.get isPrimitive): Deleted.
* WebGPUShadingLanguageRI/StandardLibrary.js:
* WebGPUShadingLanguageRI/StatementCloner.js:
(StatementCloner.prototype.visitNativeType):
* WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
(synthesizeStructAccessors):
* WebGPUShadingLanguageRI/Test.js:
(TEST_passNullAndNotNullFullPoly):
(TEST_passNullAndNotNullFullPolyReverse):
(TEST_nullTypeVariableUnify):
(TEST_chainStructNewlyValid):
(TEST_chainStructDevice):
(TEST_chainStructInvalid): Deleted.
* WebGPUShadingLanguageRI/Type.js:
(Type.prototype.get isPrimitive):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222351 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemove some more code from RenderFlowThread
antti@apple.com [Thu, 21 Sep 2017 21:11:03 +0000 (21:11 +0000)]
Remove some more code from RenderFlowThread
https://bugs.webkit.org/show_bug.cgi?id=177320

Reviewed by David Hyatt.

More dead code related to named flows.

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
(WebCore::RenderFlowThread::invalidateRegions):
(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):
(WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
(WebCore::RenderFlowThread::addForcedRegionBreak):
(WebCore::RenderFlowThread::offsetFromLogicalTopOfFirstRegion const):
(WebCore::RenderFlowThread::hasCachedOffsetFromLogicalTopOfFirstRegion const): Deleted.
(WebCore::RenderFlowThread::cachedOffsetFromLogicalTopOfFirstRegion const): Deleted.
(WebCore::RenderFlowThread::setOffsetFromLogicalTopOfFirstRegion): Deleted.
(WebCore::RenderFlowThread::clearOffsetFromLogicalTopOfFirstRegion): Deleted.
(WebCore::RenderFlowThread::currentActiveRenderBox const): Deleted.
(WebCore::RenderFlowThread::pushFlowThreadLayoutState): Deleted.
(WebCore::RenderFlowThread::popFlowThreadLayoutState): Deleted.
* rendering/RenderFlowThread.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222350 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, drop assertion added in r222308.
cdumez@apple.com [Thu, 21 Sep 2017 20:58:28 +0000 (20:58 +0000)]
Unreviewed, drop assertion added in r222308.

The assertion is hit by a couple of tests still but there is no bad effect
to the vector not being empty at this point since we clear it right after.

* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::didStartProvisionalLoad):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222349 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoeventInitDict parameter to GamepadEvent constructor should be optional
cdumez@apple.com [Thu, 21 Sep 2017 20:46:53 +0000 (20:46 +0000)]
eventInitDict parameter to GamepadEvent constructor should be optional
https://bugs.webkit.org/show_bug.cgi?id=177308

Reviewed by Sam Weinig.

Source/WebCore:

eventInitDict parameter to GamepadEvent constructor should be optional to match Firefox
and Chrome. Having such dictionary parameter is also not valid Web IDL:
"""
If the type of an argument is a dictionary type (or a union type that has a dictionary as one
of its flattened member types), and that dictionary type and its ancestors have no required
members, and the argument is either the final argument or is followed only by optional arguments,
then the argument must be specified as optional. Such arguments are always considered to have a
default value of an empty dictionary, unless otherwise specified.
"""

Test: gamepad/gamepad-event.html

* Modules/gamepad/GamepadEvent.idl:

LayoutTests:

Add layout test coverage.

* gamepad/gamepad-event-expected.txt: Added.
* gamepad/gamepad-event.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222348 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMark imported/w3c/web-platform-tests/FileAPI/historical.https.html as flaky on El...
ryanhaddad@apple.com [Thu, 21 Sep 2017 20:45:19 +0000 (20:45 +0000)]
Mark imported/w3c/web-platform-tests/FileAPI/historical.https.html as flaky on El Capitan Debug WK2.
https://bugs.webkit.org/show_bug.cgi?id=177214

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222347 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMake StringBuilder movable
achristensen@apple.com [Thu, 21 Sep 2017 20:44:59 +0000 (20:44 +0000)]
Make StringBuilder movable
https://bugs.webkit.org/show_bug.cgi?id=177311

Reviewed by Chris Dumez.

* wtf/text/StringBuilder.h:
(WTF::StringBuilder::StringBuilder):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222346 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMark webrtc/peer-connection-audio-mute.html as flaky.
ryanhaddad@apple.com [Thu, 21 Sep 2017 20:40:11 +0000 (20:40 +0000)]
Mark webrtc/peer-connection-audio-mute.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=172649

Unreviewed test gardening.

* TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222345 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMark imported/w3c/web-platform-tests/fetch/security/embedded-credentials.tentative...
ryanhaddad@apple.com [Thu, 21 Sep 2017 20:26:58 +0000 (20:26 +0000)]
Mark imported/w3c/web-platform-tests/fetch/security/embedded-credentials.tentative.sub.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177323

Unreviewed test gardening.

* platform/mac/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222344 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, temporarily disable new API tests introduced in r222308 until they pass...
cdumez@apple.com [Thu, 21 Sep 2017 20:19:57 +0000 (20:19 +0000)]
Unreviewed, temporarily disable new API tests introduced in r222308 until they pass on El Capitan

* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222343 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWeb Inspector: Add details sidebar to Layers tab.
commit-queue@webkit.org [Thu, 21 Sep 2017 20:18:01 +0000 (20:18 +0000)]
Web Inspector: Add details sidebar to Layers tab.
https://bugs.webkit.org/show_bug.cgi?id=177115

Patch by Ross Kirsling <ross.kirsling@sony.com> on 2017-09-21
Reviewed by Devin Rousso.

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Main.html:
* UserInterface/Views/LayerDetailsSidebarPanel.css: Added.
* UserInterface/Views/LayerDetailsSidebarPanel.js: Added.
New files and strings for sidebar.

* UserInterface/Base/Utilities.js:
Add global identifier for "×" character.

* UserInterface/Models/Layer.js: Added.
Add a model class for layers so that we can instanceof-check them.

* UserInterface/Controllers/LayerTreeManager.js:
(WI.LayerTreeManager.prototype.layersForNode):
Utilize model class WI.Layer.

* UserInterface/Views/Layers3DContentView.js:
(WI.Layers3DContentView):
(WI.Layers3DContentView.prototype.get supplementalRepresentedObjects):
(WI.Layers3DContentView.prototype.layout):
(WI.Layers3DContentView.prototype._addLayer):
Pass layer data to sidebar and utilize model class WI.Layer.

* UserInterface/Views/LayersTabContentView.js:
(WI.LayersTabContentView):
Attach details sidebar.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222342 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMark imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-elemen...
ryanhaddad@apple.com [Thu, 21 Sep 2017 20:16:52 +0000 (20:16 +0000)]
Mark imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/parsing.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177322

Unreviewed test gardening.

* platform/mac/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222341 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMark imported/w3c/web-platform-tests/html/semantics/forms/the-form-element/form-eleme...
ryanhaddad@apple.com [Thu, 21 Sep 2017 19:49:44 +0000 (19:49 +0000)]
Mark imported/w3c/web-platform-tests/html/semantics/forms/the-form-element/form-elements-filter.html as failing.
https://bugs.webkit.org/show_bug.cgi?id=177319

Unreviewed test gardening.

* platform/mac-wk1/TestExpectations:
* platform/mac/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222340 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, rolling out r222272.
commit-queue@webkit.org [Thu, 21 Sep 2017 19:17:21 +0000 (19:17 +0000)]
Unreviewed, rolling out r222272.
https://bugs.webkit.org/show_bug.cgi?id=177316

This patch broke builds on some Win EWS bots. (Requested by
perarne on #webkit).

Reverted changeset:

"[Win] Cygwin 64-bit EWS process cannot find Visual Studio
installation."
https://bugs.webkit.org/show_bug.cgi?id=177244
http://trac.webkit.org/changeset/222272

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222339 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWeb Inspector: keyboard shortcut for "Reload page from origin" doesn't match Safari...
bburg@apple.com [Thu, 21 Sep 2017 19:04:30 +0000 (19:04 +0000)]
Web Inspector: keyboard shortcut for "Reload page from origin" doesn't match Safari, and doesn't work
https://bugs.webkit.org/show_bug.cgi?id=177010
<rdar://problem/33134548>

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

Use "reload from origin" nomenclature instead of "reload ignoring cache".

* inspector/protocol/Page.json: Improve the comment, but don't change the
parameter name since this would be a divergence from legacy protocols.

Source/WebCore:

Use "reload from origin" nomenclature instead of "reload ignoring cache".

* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::reload):
* inspector/InspectorPageAgent.h:

Source/WebInspectorUI:

I seem to have broken reload from origin via Web Inspector in a previous
patch, because the parameter is 'ignoreCache' instead of 'shouldIgnoreCache'.

* Localizations/en.lproj/localizedStrings.js:
Modernize tooltip text.

* UserInterface/Base/Main.js:
(WI.contentLoaded):
Disambiguate two locals with the same name. Modernize the tooltip.
Make the shortcut Cmd-Opt-R to match Safari. Fix wrong parameter usage.

* UserInterface/Test/FrontendTestHarness.js:
(FrontendTestHarness.prototype.reloadPage):
Fix wrong parameter.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222338 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoAdd long press and drag test
megan_gardner@apple.com [Thu, 21 Sep 2017 18:48:08 +0000 (18:48 +0000)]
Add long press and drag test
https://bugs.webkit.org/show_bug.cgi?id=177289

Reviewed by Simon Fraser and Tim Horton.

Adding a test to test the long press and then drag functionality of selection.
Also add additional helper functions to basic gestures, and clarified the existing function
names, as to be more clear in what behavior to expect from them.

* fast/events/touch/ios/long-press-then-drag-to-select-text-expected.txt: Added.
* fast/events/touch/ios/long-press-then-drag-to-select-text.html: Added.
* fast/events/touch/ios/resources/basic-gestures.js:
(touchAndDragFromPointToPoint):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222337 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agotest262: test262/test/annexB/built-ins/RegExp/prototype/flags/order-after-compile...
joepeck@webkit.org [Thu, 21 Sep 2017 18:43:35 +0000 (18:43 +0000)]
test262: test262/test/annexB/built-ins/RegExp/prototype/flags/order-after-compile.js ASSERTs
https://bugs.webkit.org/show_bug.cgi?id=177307

Reviewed by Michael Saboff.

* runtime/RegExpPrototype.cpp:
In r221160 we added support for the new RegExp flag (dotAll).
We needed to make space for it in FlagsString.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222336 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemove RenderNamedFlowFragment
antti@apple.com [Thu, 21 Sep 2017 18:29:47 +0000 (18:29 +0000)]
Remove RenderNamedFlowFragment
https://bugs.webkit.org/show_bug.cgi?id=177299

Reviewed by David Hyatt.

Remove the remaining named flow rendering code.

The feature is already disabled, no functional changes.

* WebCore.xcodeproj/project.pbxproj:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::nodeAtPoint):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::insertedIntoTree):
(WebCore::RenderBlockFlow::willBeDestroyed):
(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::styleDidChange):
(WebCore::RenderBlockFlow::updateLogicalHeight):
(WebCore::RenderBlockFlow::positionForPoint):
(WebCore::RenderBlockFlow::createRenderNamedFlowFragmentIfNeeded): Deleted.
(WebCore::RenderBlockFlow::canHaveChildren const): Deleted.
(WebCore::RenderBlockFlow::canHaveGeneratedChildren const): Deleted.
(WebCore::RenderBlockFlow::namedFlowFragmentNeedsUpdate const): Deleted.
(WebCore::RenderBlockFlow::setRenderNamedFlowFragment): Deleted.
* rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
(WebCore::RenderBlockFlow::renderNamedFlowFragment const): Deleted.
(WebCore::RenderElement::isRenderNamedFlowFragmentContainer const): Deleted.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::nodeAtPoint):
(WebCore::RenderBox::paintBoxDecorations):
(WebCore::RenderBox::pushContentsClip):
(WebCore::RenderBox::mapLocalToContainer const):
(WebCore::RenderBox::isUnsplittableForPagination const):
(WebCore::RenderBox::overflowRectForPaintRejection const):
* rendering/RenderBox.h:
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
* rendering/RenderBoxModelObject.h:
* rendering/RenderElement.h:
(WebCore::RenderElement::generatingElement const):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
(WebCore::RenderFlowThread::invalidateRegions):
(WebCore::RenderFlowThread::validateRegions):
(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent const):
(WebCore::RenderFlowThread::clearRenderBoxRegionInfoAndCustomStyle):
(WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
(WebCore::RenderFlowThread::addForcedRegionBreak):
(WebCore::RenderFlowThread::hasCompositingRegionDescendant const): Deleted.
(WebCore::RenderFlowThread::getLayerListForRegion const): Deleted.
(WebCore::RenderFlowThread::regionForCompositedLayer const): Deleted.
(WebCore::RenderFlowThread::cachedRegionForCompositedLayer const): Deleted.
(WebCore::RenderFlowThread::updateLayerToRegionMappings): Deleted.
(WebCore::RenderFlowThread::updateAllLayerToRegionMappings): Deleted.
(WebCore::RenderFlowThread::collectsGraphicsLayersUnderRegions const): Deleted.
(WebCore::RenderFlowThread::isAutoLogicalHeightRegionsCountConsistent const): Deleted.
(WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight): Deleted.
(WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout): Deleted.
(WebCore::RenderFlowThread::incrementAutoLogicalHeightRegions): Deleted.
(WebCore::RenderFlowThread::decrementAutoLogicalHeightRegions): Deleted.
* rendering/RenderFlowThread.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintList):
(WebCore::isHitCandidate):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestList):
(WebCore::RenderLayer::calculateClipRects const):
(WebCore::expandClipRectForRegionAndReflection): Deleted.
(WebCore::RenderLayer::isFlowThreadCollectingGraphicsLayersUnderRegions const): Deleted.
(WebCore::RenderLayer::mapLayerClipRectsToFragmentationLayer const): Deleted.
* rendering/RenderLayer.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::shouldClipCompositedBounds const):
(WebCore::RenderLayerBacking::computeParentGraphicsLayerRect const):
(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer const):
(WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread const): Deleted.
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason const):
(WebCore::RenderLayerCompositor::styleChangeMayAffectIndirectCompositingReasons):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition const):
(WebCore::RenderLayerCompositor::computeRegionCompositingRequirements): Deleted.
(WebCore::RenderLayerCompositor::rebuildRegionCompositingLayerTree): Deleted.
* rendering/RenderLayerCompositor.h:
* rendering/RenderNamedFlowFragment.cpp: Removed.
* rendering/RenderNamedFlowFragment.h: Removed.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::containerForRepaint const):
(WebCore::RenderObject::fixedPositionedWithNamedFlowContainingBlock const): Deleted.
(WebCore::hasFixedPosInNamedFlowContainingBlock): Deleted.
(WebCore::RenderObject::currentRenderNamedFlowFragment const): Deleted.
* rendering/RenderObject.h:
(WebCore::RenderObject::isRenderRegion const):
(WebCore::RenderObject::isAnonymousBlock const):
(WebCore::RenderObject::isRenderNamedFlowFragment const): Deleted.
* rendering/RenderRegion.cpp:
* rendering/RenderRegion.h:
(WebCore::RenderRegion::hasAutoLogicalHeight const): Deleted.
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::shouldPaint):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::overflowClipRect):
(WebCore::RenderTable::nodeAtPoint):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::nodeAtPoint):
* rendering/RenderTreeAsText.cpp:
(WebCore::writeLayers):
* rendering/RenderView.cpp:
(WebCore::RenderView::layout):
(WebCore::RenderView::pushLayoutState):
(WebCore::RenderView::pushLayoutStateForPaginationIfNeeded):
(WebCore::RenderView::layoutContentInAutoLogicalHeightRegions): Deleted.
(WebCore::RenderView::checkTwoPassLayoutForAutoHeightRegions const): Deleted.
(WebCore::RenderView::pushLayoutStateForCurrentFlowThread): Deleted.
(WebCore::RenderView::popLayoutStateForCurrentFlowThread): Deleted.
* rendering/RenderView.h:
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::paint):
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::paintReplaced):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222335 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[WK2] Add API to get the redirect chain of a WKDownload
cdumez@apple.com [Thu, 21 Sep 2017 18:20:03 +0000 (18:20 +0000)]
[WK2] Add API to get the redirect chain of a WKDownload
https://bugs.webkit.org/show_bug.cgi?id=176628
<rdar://problem/34338279>

Reviewed by Alex Christensen.

Re-enable assertion initially added in r222308 and later disabled in
r222320. The assertion was hit because we failed to clear the redirect
chain in WebFrameProxy::didFailProvisionalLoad().

* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::didStartProvisionalLoad):
(WebKit::WebFrameProxy::didFailProvisionalLoad):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222334 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMark 6 test262 tests as passing.
ryanhaddad@apple.com [Thu, 21 Sep 2017 18:16:56 +0000 (18:16 +0000)]
Mark 6 test262 tests as passing.
https://bugs.webkit.org/show_bug.cgi?id=177307

Unreviewed test gardening.

* test262.yaml:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222333 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRebaseline some tests for macOS.
ryanhaddad@apple.com [Thu, 21 Sep 2017 18:02:49 +0000 (18:02 +0000)]
Rebaseline some tests for macOS.

Unreviewed test gardening.

* platform/mac-wk1/compositing/repaint/iframes/composited-iframe-with-fixed-background-doc-repaint-expected.txt: Added.
* platform/mac-wk2/js/dom/global-constructors-attributes-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222332 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, fix a bug in the interactive app that was introduced by bad merging.
fpizlo@apple.com [Thu, 21 Sep 2017 17:51:07 +0000 (17:51 +0000)]
Unreviewed, fix a bug in the interactive app that was introduced by bad merging.

* WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
(FlattenedStructOffsetGatherer.prototype.visitTypeRef):
(FlattenedStructOffsetGatherer):
* WebGPUShadingLanguageRI/index.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222331 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWSL should support switch
fpizlo@apple.com [Thu, 21 Sep 2017 17:47:40 +0000 (17:47 +0000)]
WSL should support switch
https://bugs.webkit.org/show_bug.cgi?id=176978

Reviewed by Keith Miller.

This adds fairly complete support for switch statements. This includes things like verifying
whether or not a default statement is needed. This even works when the programmer lists all of
the values of an integer type.

To test that last part, this patch adds uint8 support. It's easy add it, but of course it
meant adding a lot of tests.

This also fixes enum bugs, since switch does things to enums that we previously didn't test.

* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype.visitSwitchStatement):
* WebGPUShadingLanguageRI/EnumLiteral.js:
(EnumLiteral.prototype.get valueForSelectedType):
* WebGPUShadingLanguageRI/EnumType.js:
(EnumType.prototype.allValues):
(EnumType.prototype.valuesEqual):
* WebGPUShadingLanguageRI/Evaluator.js:
(Evaluator.prototype.visitSwitchStatement):
* WebGPUShadingLanguageRI/Inliner.js:
(Inliner.prototype.visitCallExpression):
(Inliner):
(Inliner.prototype.visitCastExpression): Deleted.
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics.):
(Intrinsics):
* WebGPUShadingLanguageRI/LoopChecker.js:
(LoopChecker):
(LoopChecker.prototype.visitFuncDef):
(LoopChecker.prototype.visitWhileLoop):
(LoopChecker.prototype.visitDoWhileLoop):
(LoopChecker.prototype.visitForLoop):
(LoopChecker.prototype.visitSwitchStatement):
(LoopChecker.prototype.visitBreak):
(LoopChecker.prototype.visitContinue):
* WebGPUShadingLanguageRI/Node.js:
(Node.prototype.commit):
* WebGPUShadingLanguageRI/Parse.js:
(parseSwitchCase):
(parseSwitchStatement):
(parseStatement):
(parseBlockBody):
(parseBlock):
* WebGPUShadingLanguageRI/Prepare.js:
(let.prepare):
* WebGPUShadingLanguageRI/ReturnChecker.js:
(ReturnChecker.prototype._mergeReturnStyle):
(ReturnChecker.prototype.visitIfStatement):
(ReturnChecker.prototype.visitWhileLoop):
(ReturnChecker.prototype.visitDoWhileLoop):
(ReturnChecker.prototype.visitForLoop):
(ReturnChecker.prototype.visitSwitchStatement):
(ReturnChecker.prototype.visitContinue):
(ReturnChecker):
* WebGPUShadingLanguageRI/Rewriter.js:
(Rewriter.prototype.visitSwitchStatement):
(Rewriter.prototype.visitSwitchCase):
* WebGPUShadingLanguageRI/StandardLibrary.js:
(uint8.operator):
(bool.operator):
(_generateSwizzle):
* WebGPUShadingLanguageRI/SwitchCase.js: Added.
(SwitchCase):
(SwitchCase.prototype.get origin):
(SwitchCase.prototype.get isDefault):
(SwitchCase.prototype.get value):
(SwitchCase.prototype.get body):
(SwitchCase.prototype.toString):
* WebGPUShadingLanguageRI/SwitchStatement.js: Added.
(SwitchStatement):
(SwitchStatement.prototype.get origin):
(SwitchStatement.prototype.get value):
(SwitchStatement.prototype.add):
(SwitchStatement.prototype.get switchCases):
(SwitchStatement.prototype.toString):
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(makeUint8):
(makeEnum):
(checkUint8):
(TEST_uint8SimpleMath):
(TEST_equality):
(TEST_notEquality):
(TEST_uint8BitAnd):
(TEST_uint8BitOr):
(TEST_uint8BitXor):
(TEST_uint8BitNot):
(TEST_uint8LShift):
(TEST_uint8RShift):
(TEST_enumWithExplicitIntBase):
(TEST_enumWithUintBase):
(TEST_enumFloatBase):
(TEST_enumStructBase):
(TEST_simpleSwitch):
(TEST_exhaustiveUint8Switch):
(TEST_notQuiteExhaustiveUint8Switch):
(TEST_switchFallThrough):
(TEST_switchBreak):
(TEST_enumSwitchBreakExhaustive):
(TEST_enumSwitchBreakNotQuiteExhaustive):
(doTest):
* WebGPUShadingLanguageRI/UnificationContext.js:
(UnificationContext):
(UnificationContext.prototype.addExtraNode):
(UnificationContext.prototype.get nodes):
* WebGPUShadingLanguageRI/Visitor.js:
(Visitor.prototype.visitProtocolDecl):
* WebGPUShadingLanguageRI/index.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222330 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoFix all builds after r222325
achristensen@apple.com [Thu, 21 Sep 2017 17:43:07 +0000 (17:43 +0000)]
Fix all builds after r222325

* loader/DocumentLoader.h:
WebKit needs this, too.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222329 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWSL needs a way to verify that structs are not cyclic
fpizlo@apple.com [Thu, 21 Sep 2017 17:41:11 +0000 (17:41 +0000)]
WSL needs a way to verify that structs are not cyclic
https://bugs.webkit.org/show_bug.cgi?id=177044

Reviewed by Myles Maxfield.

This adds a recursive type checking phase. Even before adding this phase, the compiler would
successfully detect recursive types - but at the cost of also rejecting programs that had
recursive types indirectly through pointers. To make both things work, I had to change Visitor
to no longer visit TypeRef.type by default. This resulted in some other changes in a few other
parts of the code that previously relied on that behavior.

* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/CheckRecursiveTypes.js: Added.
(checkRecursiveTypes):
* WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType):
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType):
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitTypeRef):
(Checker.prototype._checkShaderType.NonNumericSearcher):
(Checker.prototype._checkShaderType):
(Checker.prototype.visitTypeRef):
* WebGPUShadingLanguageRI/NameResolver.js:
(NameResolver.prototype.visitProtocolDecl):
* WebGPUShadingLanguageRI/Prepare.js:
(let.prepare):
* WebGPUShadingLanguageRI/RecursiveTypeChecker.js: Added.
(RecursiveTypeChecker):
(RecursiveTypeChecker.prototype.visitFuncDef):
(RecursiveTypeChecker.prototype.visitNativeFunc):
(RecursiveTypeChecker.prototype.visitStructType):
(RecursiveTypeChecker.prototype.visitReferenceType):
(RecursiveTypeChecker.prototype.visitTypeRef):
* WebGPUShadingLanguageRI/StructLayoutBuilder.js:
(StructLayoutBuilder.prototype.visitTypeRef):
(StructLayoutBuilder):
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(TEST_simpleRecursiveStruct):
* WebGPUShadingLanguageRI/TypeDefResolver.js:
(TypeDefResolver.prototype.visitTypeRef):
(TypeDefResolver):
* WebGPUShadingLanguageRI/Visitor.js:
(Visitor.prototype.visitProtocolDecl):
* WebGPUShadingLanguageRI/index.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222328 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoJSC should use unified sources for platform specific files.
keith_miller@apple.com [Thu, 21 Sep 2017 17:35:18 +0000 (17:35 +0000)]
JSC should use unified sources for platform specific files.
https://bugs.webkit.org/show_bug.cgi?id=177290

Reviewed by Michael Saboff.

.:

Change WEBKIT_COMPUTE_SOURCES CMake macro to look for platform
specific unified source lists. This is done in the same way that
we look for port specific configuration files. For example, if I
were building for the Mac port WEBKIT_COMPUTE_SOURCES would add
the Sources.txt and SourcesMac.txt source lists to the list of
unified sources.

* Source/cmake/WebKitMacros.cmake:

Source/JavaScriptCore:

Add a list of platform specific source files and update the
Generate Unified Sources phase of the Xcode build. I skipped WPE
since that seems to have failed for some reason that I didn't
fully understand. See:
https://webkit-queues.webkit.org/results/4611260

Also, fix duplicate symbols in Glib remote inspector files.

* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* PlatformGTK.cmake:
* PlatformMac.cmake:
* SourcesGTK.txt: Added.
* SourcesMac.txt: Added.
* inspector/remote/glib/RemoteInspectorServer.cpp:
(Inspector::RemoteInspectorServer::interfaceInfo):
(Inspector::RemoteInspectorServer::setTargetList):
(Inspector::RemoteInspectorServer::setupInspectorClient):
(Inspector::RemoteInspectorServer::setup):
(Inspector::RemoteInspectorServer::close):
(Inspector::RemoteInspectorServer::connectionClosed):
(Inspector::RemoteInspectorServer::sendMessageToBackend):
(Inspector::RemoteInspectorServer::sendMessageToFrontend):
(Inspector::dbusConnectionCallAsyncReadyCallback): Deleted.

Source/WTF:

The unified source bundler script can now handle more than one
list of sources. Sources will not be bundled across source file
lists. We want to ensure that changing one platform's sources
doesn't break another platform's build, as much as
possible. Additionally, it means that there won't be weird
performance changes when files are added to an unrelated platform.

Remove stale reference to generate-unified-source-bundles.rb script
from Xcode.

* Scripts/generate-unified-source-bundles.rb:
* WTF.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222327 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[PAL] Move MediaTimeAVFoundation into PAL
commit-queue@webkit.org [Thu, 21 Sep 2017 17:33:52 +0000 (17:33 +0000)]
[PAL] Move MediaTimeAVFoundation into PAL
https://bugs.webkit.org/show_bug.cgi?id=177222

Patch by Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com> on 2017-09-21
Reviewed by Myles C. Maxfield.

Source/WebCore:

No new tests. No change in behavior..

* Configurations/WebCore.unexp:
* PlatformAppleWin.cmake:
* WebCore.xcodeproj/project.pbxproj:
* platform/audio/mac/AudioSampleDataSource.mm:
(WebCore::AudioSampleDataSource::pushSamples):
* platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm:
(WebCore::AudioSourceProviderAVFObjC::process):
* platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::InbandTextTrackPrivateAVF::readNativeSampleBuffer):
* platform/graphics/avfoundation/MediaSampleAVFObjC.h:
* platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.cpp:
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::MediaPlayerPrivateAVFoundationCF::platformDuration const):
(WebCore::MediaPlayerPrivateAVFoundationCF::currentMediaTime const):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformBufferedTimeRanges const):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMinTimeSeekable const):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeSeekable const):
(WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeLoaded const):
(WebCore::AVFWrapper::seekToTime):
(WebCore::AVFWrapper::legibleOutputCallback):
(WebCore::AVFWrapper::createImageForTimeInRect):
* platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.mm:
(WebCore::ImageDecoderAVFObjC::readSampleMetadata):
(WebCore::ImageDecoderAVFObjC::storeSampleBuffer):
(WebCore::ImageDecoderAVFObjC::createFrameImageAtIndex):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::currentMediaTime const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::seekToTime):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformBufferedTimeRanges const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformMinTimeSeekable const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeSeekable const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeLoaded const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::metadataDidArrive):
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]):
(-[WebCoreAVFMovieObserver legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime:]):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentMediaTime const):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::sizeWillChangeAtTime):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::calculateTimelineOffset):
* platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm:
(WebCore::MediaSampleAVFObjC::presentationTime const):
(WebCore::MediaSampleAVFObjC::outputPresentationTime const):
(WebCore::MediaSampleAVFObjC::decodeTime const):
(WebCore::MediaSampleAVFObjC::duration const):
(WebCore::MediaSampleAVFObjC::outputDuration const):
(WebCore::MediaSampleAVFObjC::offsetTimestampsBy):
(WebCore::MediaSampleAVFObjC::setTimestamps):
(WebCore::MediaSampleAVFObjC::divide):
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset):
* platform/graphics/cocoa/WebCoreDecompressionSession.mm:
(WebCore::WebCoreDecompressionSession::handleDecompressionOutput):
(WebCore::WebCoreDecompressionSession::automaticDequeue):
(WebCore::WebCoreDecompressionSession::enqueueDecodedSample):
(WebCore::WebCoreDecompressionSession::imageForTime):
* platform/mac/PlatformClockCM.mm:
(PlatformClockCM::setCurrentMediaTime):
(PlatformClockCM::currentMediaTime const):
* platform/mac/PlaybackSessionInterfaceMac.mm:
(WebCore::timeRangesToArray):
* platform/mac/VideoFullscreenInterfaceMac.mm:
* platform/mediastream/mac/CoreAudioCaptureSource.cpp:
* platform/mediastream/mac/MockRealtimeAudioSourceMac.mm:
(WebCore::MockRealtimeAudioSourceMac::emitSampleBuffers):
* platform/mediastream/mac/RealtimeIncomingAudioSource.cpp:
(WebCore::RealtimeIncomingAudioSource::OnData):
* platform/mediastream/mac/WebAudioSourceProviderAVFObjC.mm:

Source/WebCore/PAL:

* config.h:
Include PALHeaderDetection.h.
Define AVFOUNDATION-releavant definitions.

* pal/PlatformWin.cmake:
Add PAL dereived sources directory to include paths.

* PAL.xcodeproj/project.pbxproj:
* pal/CMakeLists.txt:
* pal/PlatformAppleWin.cmake:
* pal/avfoundation/MediaTimeAVFoundation.cpp: Renamed from Source/WebCore/platform/graphics/avfoundation/MediaTimeAVFoundation.cpp.
* pal/avfoundation/MediaTimeAVFoundation.h: Renamed from Source/WebCore/platform/graphics/avfoundation/MediaTimeAVFoundation.h.
* pal/cf/CoreMediaSoftLink.cpp: Added.
* pal/cf/CoreMediaSoftLink.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222326 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoFix ASAN build after r222306
achristensen@apple.com [Thu, 21 Sep 2017 17:12:24 +0000 (17:12 +0000)]
Fix ASAN build after r222306
https://bugs.webkit.org/show_bug.cgi?id=177255

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::setCustomHeaderFields):
* loader/DocumentLoader.h:
(WebCore::DocumentLoader::setCustomHeaderFields): Deleted.
Moving a Vector of a type requires more than just a forward declaration of the type, but only in ASAN builds.  Weird.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222325 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUpdate TestResultsServer for iOS 11 queues.
ryanhaddad@apple.com [Thu, 21 Sep 2017 16:47:55 +0000 (16:47 +0000)]
Update TestResultsServer for iOS 11 queues.
https://bugs.webkit.org/show_bug.cgi?id=177285

Reviewed by Alexey Proskuryakov.

* TestResultServer/static-dashboards/builders.jsonp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222323 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoREGRESSION(r221465) WKWebViews without WebGL delegate callbacks crash when WebGL...
achristensen@apple.com [Thu, 21 Sep 2017 16:41:11 +0000 (16:41 +0000)]
REGRESSION(r221465) WKWebViews without WebGL delegate callbacks crash when WebGL contexts are created
https://bugs.webkit.org/show_bug.cgi?id=177306
<rdar://problem/34351988>

Reviewed by Chris Dumez.

Source/WebKit:

* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::NavigationClient::webGLLoadPolicy const):
(WebKit::NavigationState::NavigationClient::resolveWebGLLoadPolicy const):
I forgot to early return after calling the default completion handler if there's no delegate selector.

Tools:

* TestWebKitAPI/Tests/WebKitCocoa/WebGLPolicy.mm:
(-[WebGLTestDelegate webView:startURLSchemeTask:]):
(-[DelegateWithoutWebGL webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222322 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoIn regular block layout, the width of a child's margin box should always be equal...
commit-queue@webkit.org [Thu, 21 Sep 2017 16:28:35 +0000 (16:28 +0000)]
In regular block layout, the width of a child's margin box should always be equal to that of its containing block
Merge from Blink https://bugs.chromium.org/p/chromium/issues/detail?id=708751
https://bugs.webkit.org/show_bug.cgi?id=176620

Patch by Zhifei FANG <facetothefate@gmail.com> on 2017-09-21
Reviewed by Zalan Bujtas.

Source/WebCore:

Test: fast/block/over-constrained-auto-margin.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeLogicalWidthInRegion const):

LayoutTests:

* fast/block/over-constrained-auto-margin-expected.txt: Added.
* fast/block/over-constrained-auto-margin.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222321 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, temporarily disable assertion added in r222308 while I investigate.
cdumez@apple.com [Thu, 21 Sep 2017 16:03:11 +0000 (16:03 +0000)]
Unreviewed, temporarily disable assertion added in r222308 while I investigate.

* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::didStartProvisionalLoad):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222320 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[WPE] Mark wrapKey_unwrapKey.worker.html as flaky.
Ms2ger@igalia.com [Thu, 21 Sep 2017 14:55:32 +0000 (14:55 +0000)]
[WPE] Mark wrapKey_unwrapKey.worker.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177301

Unreviewed test gardening.

* platform/wpe/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222319 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnpredictable selection when dragging out of float elements children of in-flow block...
jfernandez@igalia.com [Thu, 21 Sep 2017 13:43:28 +0000 (13:43 +0000)]
Unpredictable selection when dragging out of float elements children of in-flow block-level box
https://bugs.webkit.org/show_bug.cgi?id=176096

Reviewed by David Hyatt.

Source/WebCore:

In order to improve Selection across float elements we need to
consider them as HitTest candidates.  Additionally, since
out-of-flow elements must not affect how in-flow elements are
rendered we have to deal with some special cases when implementing
the positionForPoint logic.

This patch addresses the issues caused by the fact that an in-flow
box's logicalBottom does not consider the out-of-flow children, as
they don't affect its height. Hence, we should add the lowest float
logical bottom to figure out the box the point is actually hitting.

Tests: editing/selection/select-out-of-floated-non-editable-01.html
       editing/selection/select-out-of-floated-non-editable-02.html
       editing/selection/select-out-of-floated-non-editable-03.html
       editing/selection/select-out-of-floated-non-editable-04.html
       editing/selection/select-out-of-floated-non-editable-05.html
       editing/selection/select-out-of-floated-non-editable-06.html
       editing/selection/select-out-of-floated-non-editable-07.html
       editing/selection/select-out-of-floated-non-editable-08.html
       editing/selection/select-out-of-floated-non-editable-09.html
       editing/selection/select-out-of-floated-non-editable-10.html
       editing/selection/select-out-of-floated-non-editable-11.html
       editing/selection/select-out-of-floated-non-editable-12.html

* rendering/RenderBlock.cpp:
(WebCore::isChildHitTestCandidate):
(WebCore::RenderBlock::positionForPoint):

LayoutTests:

Tests defining several cases of selection with floats, children of
a block-level box, so they behave as regular HitTest candidates
and don't mess the selection boundaries.

* editing/selection/resources/select-out-of-floated-non-editable.js: Added.
(clearLog):
(log):
(else.window.onmouseup):
(runTest):
(checkSelection):
* editing/selection/select-out-of-floated-non-editable-01-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-01.html: Added.
* editing/selection/select-out-of-floated-non-editable-02-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-02.html: Added.
* editing/selection/select-out-of-floated-non-editable-03-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-03.html: Added.
* editing/selection/select-out-of-floated-non-editable-04-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-04.html: Added.
* editing/selection/select-out-of-floated-non-editable-05-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-05.html: Added.
* editing/selection/select-out-of-floated-non-editable-06-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-06.html: Added.
* editing/selection/select-out-of-floated-non-editable-07-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-07.html: Added.
* editing/selection/select-out-of-floated-non-editable-08-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-08.html: Added.
* editing/selection/select-out-of-floated-non-editable-09-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-09.html: Added.
* editing/selection/select-out-of-floated-non-editable-10-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-10.html: Added.
* editing/selection/select-out-of-floated-non-editable-11-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-11.html: Added.
* editing/selection/select-out-of-floated-non-editable-12-expected.txt: Added.
* editing/selection/select-out-of-floated-non-editable-12.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222317 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[WebCrypto] Support Elliptic Curve P-521
zandobersek@gmail.com [Thu, 21 Sep 2017 09:51:47 +0000 (09:51 +0000)]
[WebCrypto] Support Elliptic Curve P-521
https://bugs.webkit.org/show_bug.cgi?id=169231
<rdar://problem/30881703>

Reviewed by Jiewen Tan.

Add support for the P-521 elliptic curve to the CryptoKeyEC class, but
allow the underlying platform-specific implementations to opt out of
supporting this feature.

This is achieved with the platformSupportedCurve() static function that
each platform has to implement, returning true if the passed-in curve
type is supported. The function is called at each CryptoKeyEC entrypoint,
that is in each static function that could generate a new CryptoKeyEC
object. These functions return a NotSupportedError exception in case the
platformSupportedCurve() call returns false.

While the libgcrypt-based implementation will support P-521 curves in
the near future, the CommonCrypto-based implementation might not. The use
of platformSupportedCurve() ensures that the implementations that don't
support EC P-521 continue to return the NotSupportedError exception at
these entrypoints, instead of the OperationError exception that's returned
when the platform-specific extensions of these entrypoints fail due to the
specified elliptic curve not being supported.

Both libgcrypt-based and CommonCrypto-based implementations mark P-256 and
P-384 curves as supported. Switch statements handling NamedCurve values
must now also handle the NamedCurve::P521 value, but both implementations
treat that as an unreachable case since support is not indicated in
platformSupportedCurve(), and all CryptoKeyEC operations should have
returned with an NotSupportedError exception before entering
platform-specific code. The common CryptoKeyEC constructor similarly asserts
that the specified curve is supported by the underlying implementation.

CryptoAlgorithmECDSA is modified to now also support 'ES512' as the algorithm
identifier, matching it against the 'P-521' curve value.

No new tests -- tests covering EC P-521 already exist, but no platform
runs them yet due to missing implementations.

* crypto/algorithms/CryptoAlgorithmECDSA.cpp:
(WebCore::CryptoAlgorithmECDSA::importKey):
* crypto/gcrypt/CryptoKeyECGCrypt.cpp:
(WebCore::curveName):
(WebCore::curveIdentifier):
(WebCore::curveSize):
(WebCore::curveUncompressedFieldElementSize):
(WebCore::CryptoKeyEC::platformSupportedCurve):
* crypto/keys/CryptoKeyEC.cpp:
(WebCore::toNamedCurve):
(WebCore::CryptoKeyEC::CryptoKeyEC):
(WebCore::CryptoKeyEC::generatePair):
(WebCore::CryptoKeyEC::importRaw):
(WebCore::CryptoKeyEC::importJwk):
(WebCore::CryptoKeyEC::importSpki):
(WebCore::CryptoKeyEC::importPkcs8):
(WebCore::CryptoKeyEC::exportJwk const):
(WebCore::CryptoKeyEC::namedCurveString const):
(WebCore::CryptoKeyEC::algorithm const):
* crypto/keys/CryptoKeyEC.h:
* crypto/mac/CryptoKeyECMac.cpp:
(WebCore::doesUncompressedPointMatchNamedCurve):
(WebCore::doesFieldElementMatchNamedCurve):
(WebCore::getKeySizeFromNamedCurve):
(WebCore::CryptoKeyEC::platformSupportedCurve):
(WebCore::getOID):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222316 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed GTK+ gardening. Update expectations and rebaseline several tests failing...
magomez@igalia.com [Thu, 21 Sep 2017 09:33:40 +0000 (09:33 +0000)]
Unreviewed GTK+ gardening. Update expectations and rebaseline several tests failing at r222312.

* platform/gtk/TestExpectations:
* platform/gtk/fast/text/atsui-rtl-override-selection-expected.txt:
* platform/gtk/fast/text/hyphenate-limit-lines-expected.txt:
* platform/gtk/fast/text/selection-in-initial-advance-region-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222315 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoinspector/dom/content-node-region-info.html and inspector/dom/content-flow tests...
antti@apple.com [Thu, 21 Sep 2017 06:49:54 +0000 (06:49 +0000)]
inspector/dom/content-node-region-info.html and inspector/dom/content-flow tests crashing
https://bugs.webkit.org/show_bug.cgi?id=177249
<rdar://problem/34559968>

Unreviewed.

* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getNamedFlowCollection):

    Fix crashing by adding a few lines of removed code back.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222314 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed follow-up to r222311.
joepeck@webkit.org [Thu, 21 Sep 2017 03:36:29 +0000 (03:36 +0000)]
Unreviewed follow-up to r222311.

* test262/harness/sta.js:
* test262/test/built-ins/Array/from/calling-from-valid-1-noStrict.js:
* test262/test/built-ins/Array/from/calling-from-valid-1-onlyStrict.js:
* test262/test/built-ins/Array/from/calling-from-valid-2.js:
* test262/test/built-ins/Array/from/elements-added-after.js:
* test262/test/built-ins/Array/from/elements-deleted-after.js:
* test262/test/built-ins/Array/from/elements-updated-after.js:
* test262/test/built-ins/Array/from/from-array.js:
* test262/test/built-ins/Array/from/mapfn-is-not-callable-typeerror.js:
* test262/test/built-ins/Array/from/mapfn-throws-exception.js:
* test262/test/built-ins/Array/from/source-array-boundary.js:
* test262/test/built-ins/Array/from/source-object-constructor.js:
* test262/test/built-ins/Array/from/source-object-iterator-1.js:
* test262/test/built-ins/Array/from/source-object-iterator-2.js:
* test262/test/built-ins/Array/from/source-object-length.js:
* test262/test/built-ins/Array/from/source-object-missing.js:
* test262/test/built-ins/Array/from/source-object-without.js:
* test262/test/built-ins/Array/from/this-null.js:
* test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js:
* test262/test/language/line-terminators/S7.3_A3.2_T1.js:
* test262/test/language/literals/numeric/7.8.3-1gs.js:
* test262/test/language/literals/numeric/7.8.3-2gs.js:
* test262/test/language/literals/numeric/7.8.3-3gs.js:
* test262/test/language/literals/regexp/7.8.5-1gs.js:
* test262/test/language/literals/string/7.8.4-1gs.js:
Fix some files that I failed to update when I applied my patch.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222312 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUpdate test262 tests
joepeck@webkit.org [Thu, 21 Sep 2017 03:23:17 +0000 (03:23 +0000)]
Update test262 tests
https://bugs.webkit.org/show_bug.cgi?id=177220

Reviewed by Saam Barati and Yusuke Suzuki.

JSTests:

* test262.yaml:
* test262/test262-Revision.txt:
New rebaselined expectations for all tests.

* test262/*:
Updated.

Tools:

* Scripts/import-test262-tests:
- better detect upstream git repository url from import location
- update JSTest test262 resources when importing from repository
- take seconds instead of 20+ minutes to write yaml with --failures
- update "negative" command to only include just the exception type

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222311 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemove redundant SelectionSubtreeData functions.
zalan@apple.com [Thu, 21 Sep 2017 03:05:13 +0000 (03:05 +0000)]
Remove redundant SelectionSubtreeData functions.
https://bugs.webkit.org/show_bug.cgi?id=177288

Reviewed by Simon Fraser.

No change in functionality.

* rendering/SelectionSubtreeRoot.h:
(WebCore::SelectionSubtreeRoot::SelectionSubtreeData::SelectionSubtreeData):
(WebCore::SelectionSubtreeRoot::SelectionSubtreeData::selectionEndPos const):
(WebCore::SelectionSubtreeRoot::SelectionSubtreeData::selectionClear const): Deleted.
(WebCore::SelectionSubtreeRoot::SelectionSubtreeData::setSelectionStart): Deleted.
(WebCore::SelectionSubtreeRoot::SelectionSubtreeData::setSelectionStartPos): Deleted.
(WebCore::SelectionSubtreeRoot::SelectionSubtreeData::setSelectionEnd): Deleted.
(WebCore::SelectionSubtreeRoot::SelectionSubtreeData::setSelectionEndPos): Deleted.
(): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222310 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[Win] WTF: Add alias for process id to use in place of direct uses of pid_t
commit-queue@webkit.org [Thu, 21 Sep 2017 02:55:06 +0000 (02:55 +0000)]
[Win] WTF: Add alias for process id to use in place of direct uses of pid_t
https://bugs.webkit.org/show_bug.cgi?id=177017

Patch by Stephan Szabo <stephan.szabo@sony.com> on 2017-09-20
Reviewed by Alex Christensen.

Source/JavaScriptCore:

* API/JSRemoteInspector.cpp:
(JSRemoteInspectorSetParentProcessInformation):
* API/JSRemoteInspector.h:
* inspector/remote/RemoteInspector.h:

Source/WebKit:

* NetworkProcess/NetworkProcessCreationParameters.h:
* Shared/WebProcessCreationParameters.h:
* UIProcess/API/APIProcessPoolConfiguration.h:
* UIProcess/API/C/WKContext.cpp:
(WKContextGetNetworkProcessIdentifier):
(WKContextGetDatabaseProcessIdentifier):
* UIProcess/API/C/WKContextPrivate.h:
* UIProcess/API/C/WKPage.cpp:
(WKPageGetProcessIdentifier):
* UIProcess/API/C/WKPagePrivate.h:
* UIProcess/ChildProcessProxy.h:
(WebKit::ChildProcessProxy::processIdentifier const):
* UIProcess/Launcher/ProcessLauncher.cpp:
(WebKit::ProcessLauncher::didFinishLaunchingProcess):
* UIProcess/Launcher/ProcessLauncher.h:
(WebKit::ProcessLauncher::processIdentifier const):
* UIProcess/ProcessAssertion.cpp:
(WebKit::ProcessAssertion::ProcessAssertion):
(WebKit::ProcessAndUIAssertion::ProcessAndUIAssertion):
* UIProcess/ProcessAssertion.h:
(WebKit::ProcessAssertion::ProcessAssertion):
* UIProcess/ProcessThrottler.cpp:
(WebKit::ProcessThrottler::didConnectToProcess):
* UIProcess/ProcessThrottler.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::processIdentifier const):
* UIProcess/WebPageProxy.h:
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::networkProcessIdentifier):
(WebKit::WebProcessPool::storageProcessIdentifier):
* UIProcess/WebProcessPool.h:

Source/WTF:

* wtf/ProcessID.h:
(WTF::getCurrentProcessID):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222309 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[WK2] Add API to get the redirect chain of a WKDownload
cdumez@apple.com [Thu, 21 Sep 2017 02:48:38 +0000 (02:48 +0000)]
[WK2] Add API to get the redirect chain of a WKDownload
https://bugs.webkit.org/show_bug.cgi?id=176628
<rdar://problem/34338279>

Reviewed by Alex Christensen.

Source/WebKit:

Add API to get the redirect chain of a WKDwnload. The redirect chain includes redirects
that happened during initial load, before the load was converted into a download.

* UIProcess/API/C/WKDownload.cpp:
(WKDownloadCopyRedirectChain):
* UIProcess/API/C/WKDownload.h:
* UIProcess/API/Cocoa/_WKDownload.h:
* UIProcess/API/Cocoa/_WKDownload.mm:
(-[_WKDownload originatingWebView]):
(-[_WKDownload redirectChain]):
* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::willSendRequest):
* UIProcess/Downloads/DownloadProxy.h:
(WebKit::DownloadProxy::setRedirectChain):
(WebKit::DownloadProxy::redirectChain const):
* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::didStartProvisionalLoad):
(WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad):
* UIProcess/WebFrameProxy.h:
(WebKit::WebFrameProxy::redirectChain const):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::receivedPolicyDecision):

Tools:

Add API test coverage for the 2 cases:
1. Download started as a download and is redirected while
   downloading.
2. Download started as a load and was redirected during the
   initial load.

* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[RedirectedDownloadDelegate _download:didReceiveServerRedirectToURL:]):
(-[RedirectedDownloadDelegate _downloadDidFinish:]):
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222308 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRefresh WPT tests up to f65af411d63ec13ee8fe208b4effd730a4a8b7fe
commit-queue@webkit.org [Thu, 21 Sep 2017 01:34:12 +0000 (01:34 +0000)]
Refresh WPT tests up to f65af411d63ec13ee8fe208b4effd730a4a8b7fe
https://bugs.webkit.org/show_bug.cgi?id=170713

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-20
Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

* resources/TestRepositories:
* resources/import-expectations.json:
* resources/resource-files.json:
* web-platform-tests: Refreshed by importer.

LayoutTests:

Rebasing tests and marking some tests as failing.

* TestExpectations:
* platform/gtk/TestExpectations:
* platform/ios-wk2/TestExpectations:
* platform/mac/TestExpectations:
* platform/mac/imported/w3c/web-platform-tests/WebCryptoAPI/wrapKey_unwrapKey/test_wrapKey_unwrapKey.https-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/WebCryptoAPI/wrapKey_unwrapKey/wrapKey_unwrapKey.worker-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/XMLHttpRequest/send-blob-with-no-mime-type-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/fetch/api/basic/request-headers.any-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/fetch/api/basic/request-headers.any.worker-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/location_hash-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/media-source/interfaces-expected.txt:
* tests-options.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222307 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoAdd infrastructure for adding custom headers to requests per website
achristensen@apple.com [Thu, 21 Sep 2017 01:15:23 +0000 (01:15 +0000)]
Add infrastructure for adding custom headers to requests per website
https://bugs.webkit.org/show_bug.cgi?id=177255

Reviewed by Geoffrey Garen.

Source/WebCore:

Covered by API tests.

* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* loader/DocumentLoader.cpp:
* loader/DocumentLoader.h:
(WebCore::DocumentLoader::setCustomHeaderFields):
* loader/HTTPHeaderField.cpp: Added.
(WebCore::RFC7230::isTokenCharacter):
(WebCore::RFC7230::isDelimiter):
(WebCore::RFC7230::isVisibleCharacter):
(WebCore::RFC7230::isWhitespace):
(WebCore::RFC7230::isInRange):
(WebCore::RFC7230::isOBSText):
(WebCore::RFC7230::isQuotedTextCharacter):
(WebCore::RFC7230::isQuotedPairSecondOctet):
(WebCore::RFC7230::isCommentText):
(WebCore::RFC7230::isValidName):
(WebCore::RFC7230::isValidValue):
(WebCore::HTTPHeaderField::HTTPHeaderField):
* loader/HTTPHeaderField.h: Added.
(WebCore::HTTPHeaderField::encode const):
(WebCore::HTTPHeaderField::decode):

Source/WebKit:

* Shared/WebsitePolicies.cpp: Added.
* Shared/WebsitePolicies.h:
(WebKit::WebsitePolicies::encode const):
(WebKit::WebsitePolicies::decode):
* UIProcess/API/APIWebsitePolicies.h:
* UIProcess/API/C/WKWebsitePolicies.cpp:
(WKWebsitePoliciesCopyCustomHeaderFields):
(WKWebsitePoliciesSetCustomHeaderFields):
* UIProcess/API/C/WKWebsitePolicies.h:
* UIProcess/API/Cocoa/_WKWebsitePolicies.h:
* UIProcess/API/Cocoa/_WKWebsitePolicies.mm:
(-[_WKWebsitePolicies customHeaderFields]):
(-[_WKWebsitePolicies setCustomHeaderFields:]):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/HTTPHeaderField.cpp: Added.
(shouldRemainUnchanged):
(shouldBeInvalid):
(shouldBecome):
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222306 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRename source list file to Sources.txt
keith_miller@apple.com [Thu, 21 Sep 2017 01:10:47 +0000 (01:10 +0000)]
Rename source list file to Sources.txt
https://bugs.webkit.org/show_bug.cgi?id=177283

Reviewed by Saam Barati.

* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Sources.txt: Renamed from Source/JavaScriptCore/sources.txt.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222305 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoREGRESSION(r191731): SVGPatternElement can only reference another SVGPatternElement...
said@apple.com [Thu, 21 Sep 2017 00:35:41 +0000 (00:35 +0000)]
REGRESSION(r191731): SVGPatternElement can only reference another SVGPatternElement in the same SVG document
https://bugs.webkit.org/show_bug.cgi?id=176221

Reviewed by Tim Horton.

Source/WebCore:

According to the specs:

https://www.w3.org/TR/SVG11/filters.html#FilterElementHrefAttribute
https://www.w3.org/TR/SVG11/pservers.html#LinearGradientElementHrefAttribute
https://www.w3.org/TR/SVG11/pservers.html#RadialGradientElementHrefAttribute
https://www.w3.org/TR/SVG11/pservers.html#PatternElementHrefAttribute

The xlink:href attribute of the SVG filter, gradient and pattern elements
must reference another element within the current SVG of the same type.

In r191731, the code of SVGPatternElement::collectPatternAttributes() was
removed and replaced by RenderSVGResourcePattern::collectPatternAttributes()
to avoid cyclic reference in the pattern element. The problem is the old
code used to check whether the referenced element is<SVGPatternElement>
before casting it. This code was not copied to the new function. So we
now allow the SVGPatternElement to reference any SVG resource element.

To fix this issue, we need to prevent SVGResources from chaining an incorrect
type of element to the SVG filter, gradient and pattern elements.

We also need to use the SVGResources for getting the referenced element
when collecting the attributes for the gradient elements. SVGResources solves
the cyclic referencing issue so there is no need to repeat the same code
in many places. Also, from now on the SVGResources will have valid linked
resource only. So casting the referenced element should always be valid.

Tests: svg/custom/pattern-invalid-content-inheritance.svg

* rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::collectPatternAttributes const): Asserts
the linkedResource is of type RenderSVGResourcePattern.
* rendering/svg/SVGResources.cpp:
(WebCore::SVGResources::SVGResources):
(WebCore::isChainableResource): Ensure that an SVG resource can reference
only an SVG resource with the valid type.
(WebCore::SVGResources::buildCachedResources):
* rendering/svg/SVGResources.h:

LayoutTests:

* svg/custom/pattern-invalid-content-inheritance-expected.svg: Added.
* svg/custom/pattern-invalid-content-inheritance.svg: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222304 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMark transitions/transition-display-property.html as flaky on Windows.
pvollan@apple.com [Thu, 21 Sep 2017 00:30:17 +0000 (00:30 +0000)]
Mark transitions/transition-display-property.html as flaky on Windows.
https://bugs.webkit.org/show_bug.cgi?id=177284

Unreviewed test gardening.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222303 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMark http/wpt/resource-timing/rt-resource-errors.html as flaky on Windows.
pvollan@apple.com [Thu, 21 Sep 2017 00:21:25 +0000 (00:21 +0000)]
Mark http/wpt/resource-timing/rt-resource-errors.html as flaky on Windows.
https://bugs.webkit.org/show_bug.cgi?id=177282

Unreviewed test gardening.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222302 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, fix string capitalization
keith_miller@apple.com [Thu, 21 Sep 2017 00:11:09 +0000 (00:11 +0000)]
Unreviewed, fix string capitalization

* JavaScriptCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222301 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoSpelling and grammar dots should not overlap
dbates@webkit.org [Wed, 20 Sep 2017 23:13:27 +0000 (23:13 +0000)]
Spelling and grammar dots should not overlap
https://bugs.webkit.org/show_bug.cgi?id=177265
<rdar://problem/34556424>

Reviewed by David Hyatt.

Source/WebCore:

A line may contain both spelling and grammar errors such that these errors overlap.
For example, "to mooof or not to mooof.". It is more pleasing aesthetically to
paint spelling and grammar dots such that they do not overlap. This also matches
AppKit's behavior.

A side benefit of this change is that it adds support infrastructure towards
implementing the CSS Pseudo-Elements Module Level 4 pseudo elements ::spelling-error
and ::grammar-error (see <https://bugs.webkit.org/show_bug.cgi?id=175784>).
It will also make it straightforward to add ::inactive-selection and allow us
to make ::selection conform to CSS Pseudo-Elements Module Level 4.

* CMakeLists.txt: Add file MarkerSubrange.cpp.
* WebCore.xcodeproj/project.pbxproj: Add files MarkerSubrange.{cpp, h}.
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintDocumentMarker): Modified to take a const MarkerSubrange&
instead of a RenderedDocumentMarker&.
(WebCore::InlineTextBox::paintTextMatchMarker): Modified to take a const MarkerSubrange&
instead of a RenderedDocumentMarker& and take a boolean as to whether the text match is active.
(WebCore::InlineTextBox::paintDocumentMarkers): Collect the subranges that need to be
painted, subdivide them preserving only the frontmost subrange when two or more subranges
overlap and paint the resulting subranges.
(WebCore::lineStyleForMarkerType): Deleted; converted to a lambda function inlined
in paintDocumentMarker() as this is the only place we made use of this function.
* rendering/InlineTextBox.h:
* rendering/MarkerSubrange.cpp: Added.
(WebCore::subdivide): Subdivides the specified list of subranges and returns a list of non-overlapping
subranges in paint order. The implementation of subdivide() is derived from an algorithm that
Said Abou-Hallawa came up with.
* rendering/MarkerSubrange.h: Added.
(WebCore::MarkerSubrange::MarkerSubrange):

Tools:

Add unit tests for the subdivision algorithm.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp: Added.
(WebCore::operator<<):
(WebCore::operator==):
(TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222298 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoJSC Xcode build should use unified sources for platform independent files
keith_miller@apple.com [Wed, 20 Sep 2017 23:08:50 +0000 (23:08 +0000)]
JSC Xcode build should use unified sources for platform independent files
https://bugs.webkit.org/show_bug.cgi?id=177190

Reviewed by Saam Barati.

.:

Add a macro for collecting the set of "header" source files and adding the bundle
files to the "sources" list.

* Source/cmake/WebKitMacros.cmake:

Source/JavaScriptCore:

This patch changes the Xcode build to use unified sources. The
main difference from a development perspective is that instead of
added source files to Xcode they need to be added to the shared
sources.txt. For now, platform specific files are still added
to the JavaScriptCore target.

Because Xcode needs to know about all the files before we generate
them all the unified source files need to be added to the
JavaScriptCore framework target. As a result, if we run out of
bundle files more will need to be added to the project. Currently,
there are no spare files. If adding more bundle files becomes
problematic we can change this.

LowLevelInterpreter.cpp can't be added to the unified source list yet
due to a clang bug.

* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* sources.txt: Added.

Source/WTF:

Add a new directory for build scripts that are forwarded to subsequent framework builds.

* Scripts/generate-unified-source-bundles.rb: Renamed from Source/WTF/generate-unified-source-bundles.rb.
* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222297 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoREGRESSION(r222194) [WPE] Library and executable output names broken
mcatanzaro@igalia.com [Wed, 20 Sep 2017 23:05:24 +0000 (23:05 +0000)]
REGRESSION(r222194) [WPE] Library and executable output names broken
https://bugs.webkit.org/show_bug.cgi?id=177273

Reviewed by Carlos Alberto Lopez Perez.

.:

Move the WebKit2 output name variables from here to Source/WebKit.

* Source/cmake/OptionsWPE.cmake:

Source/WebKit:

Move the WebKit2 output name variables to here from Source/cmake, since this is a better
place and where they are set on all other ports. Update them for the changes in r222194.

* PlatformWPE.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222296 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWSL should not type-check functions in the standard library that it does not use
fpizlo@apple.com [Wed, 20 Sep 2017 22:41:01 +0000 (22:41 +0000)]
WSL should not type-check functions in the standard library that it does not use
https://bugs.webkit.org/show_bug.cgi?id=177269

Reviewed by JS Bastien.

Once we added all of the swizzling operators, the size of the standard library ballooned to the point
where it's just not practical to compile anything anymore. If you want to compile
"int foo(int x) { return x}" then it will take some ridiculous amount of time (many seconds) because WSL
will have to type check all of those swizzling operators.

This change makes it so that after parsing the whole program, we remove the things that we aren't using.
We can make a really good estimate of what we need even before doing any name resolution. In practice,
this change removes almost all of the things from Program before we get to the hard work of type
checking. That's true because the standard library contains _many_ things and you'd have to try very
hard to use all of them.

This is a 13x speed-up for Test.js. It went from 155 seconds to 12 seconds on my machine.

* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/ConstexprTypeParameter.js:
(ConstexprTypeParameter.prototype.get origin):
* WebGPUShadingLanguageRI/Intrinsics.js:
* WebGPUShadingLanguageRI/Lexer.js:
(Lexer):
(Lexer.prototype.get originKind):
* WebGPUShadingLanguageRI/LexerToken.js:
(LexerToken.prototype.get lexer):
(LexerToken.prototype.get origin):
(LexerToken.prototype.get originKind):
(LexerToken.prototype.get isInternal):
* WebGPUShadingLanguageRI/NameContext.js:
(isWildcardKind):
(NameContext.prototype.add):
(NameContext.prototype.get let):
(NameContext.prototype.mapFor): Deleted.
* WebGPUShadingLanguageRI/NameFinder.js: Added.
(NameFinder):
(NameFinder.get worklist):
* WebGPUShadingLanguageRI/NameResolver.js:
(NameResolver.prototype.visitProtocolDecl):
* WebGPUShadingLanguageRI/OriginKind.js: Added.
(isOriginKind):
* WebGPUShadingLanguageRI/Prepare.js:
(let.prepare):
* WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js: Added.
(programWithUnnecessaryThingsRemoved):
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(doTest):
* WebGPUShadingLanguageRI/index.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222295 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemove ActionType::CSSDisplayNoneStyleSheet
achristensen@apple.com [Wed, 20 Sep 2017 22:27:23 +0000 (22:27 +0000)]
Remove ActionType::CSSDisplayNoneStyleSheet
https://bugs.webkit.org/show_bug.cgi?id=177275

Reviewed by Andy Estes.

Source/WebCore:

It not a real action type anyways.  It was a fake action type
that stored a String indicating which ContentRuleLists had not triggered
an ignore-previous-rules action, so we should apply the default stylesheet,
which is the css-display-none selectors that match everything.

No change in behaviour.  Covered by existing tests.

* contentextensions/ContentExtensionActions.h:
* contentextensions/ContentExtensionCompiler.cpp:
(WebCore::ContentExtensions::serializeActions):
* contentextensions/ContentExtensionRule.cpp:
(WebCore::ContentExtensions::Action::deserialize):
(WebCore::ContentExtensions::Action::deserializeType):
(WebCore::ContentExtensions::Action::serializedLength):
* contentextensions/ContentExtensionRule.h:
(WebCore::ContentExtensions::Action::Action):
* contentextensions/ContentExtensionsBackend.cpp:
(WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad const):
(WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForLoad):
(WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForPingLoad):
* contentextensions/ContentExtensionsBackend.h:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::open):
* page/UserContentProvider.cpp:
(WebCore::UserContentProvider::actionsForResourceLoad):
* page/UserContentProvider.h:

Tools:

* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(WebCore::ContentExtensions::operator<<):
(TestWebKitAPI::testRequest):
(TestWebKitAPI::TEST_F):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222294 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoDevice iOS 11 builds fail with FileProvider linker errors
jbedard@apple.com [Wed, 20 Sep 2017 22:08:29 +0000 (22:08 +0000)]
Device iOS 11 builds fail with FileProvider linker errors
https://bugs.webkit.org/show_bug.cgi?id=177272
<rdar://problem/34557680>

Reviewed by David Kilzer.

For iOS device and simulator, the SYSTEM_LIBRARY_DIR should never
be on the framework search path as neither platform should ever link
with Mac frameworks.

* DumpRenderTree/mac/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222293 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoFloatingObject should not hold a raw pointer to RootInlineBox.
zalan@apple.com [Wed, 20 Sep 2017 22:03:06 +0000 (22:03 +0000)]
FloatingObject should not hold a raw pointer to RootInlineBox.
https://bugs.webkit.org/show_bug.cgi?id=177266

Reviewed by Simon Fraser.

FloatingObject and RootInlineBox objects' lifetimes are very much independent from each other.

Not testable.

* rendering/FloatingObjects.cpp:
(WebCore::FloatingObjects::clearLineBoxTreePointers):
* rendering/FloatingObjects.h:
(WebCore::FloatingObject::originatingLine const):
(WebCore::FloatingObject::clearOriginatingLine):
(WebCore::FloatingObject::setOriginatingLine):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::removeFloatingObject):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::appendFloatingObjectToLastLine):
(WebCore::RenderBlockFlow::reattachCleanLineFloats):
(WebCore::RenderBlockFlow::determineStartPosition):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::RootInlineBox):
* rendering/RootInlineBox.h:
(WebCore::RootInlineBox::createWeakPtr):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222292 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoDrop legacy DOMError type
cdumez@apple.com [Wed, 20 Sep 2017 21:59:19 +0000 (21:59 +0000)]
Drop legacy DOMError type
https://bugs.webkit.org/show_bug.cgi?id=177207

Reviewed by Eric Carlson.

Drop legacy DOMError type. It has been removed from the Web standards,
is no longer used by our implementation and was not exposed to the
Web in WebKit (i.e. marked as [NoInterfaceObject]).

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* Modules/mediastream/MediaEndpointSessionDescription.h:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSDOMPromiseDeferred.cpp:
* dom/DOMAllInOne.cpp:
* dom/DOMError.cpp: Removed.
* dom/DOMError.h: Removed.
* dom/DOMError.idl: Removed.
* platform/mock/RTCNotifiersMock.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222291 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoVersioning.
jmarcell@apple.com [Wed, 20 Sep 2017 21:28:48 +0000 (21:28 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222289 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[Win] Cannot find script to generate unified sources.
pvollan@apple.com [Wed, 20 Sep 2017 21:09:06 +0000 (21:09 +0000)]
[Win] Cannot find script to generate unified sources.
https://bugs.webkit.org/show_bug.cgi?id=177014

Reviewed by Keith Miller.

Source/JavaScriptCore:

The ruby script can now be found in WTF/Scripts in the forwarding headers folder.

* CMakeLists.txt:
* JavaScriptCore.vcxproj/JavaScriptCore.proj:

Source/WTF:

Copy the ruby script to WTF/Scripts in the forwarding headers folder.

* wtf/CMakeLists.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222287 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, rolling out r222254.
commit-queue@webkit.org [Wed, 20 Sep 2017 21:00:43 +0000 (21:00 +0000)]
Unreviewed, rolling out r222254.
https://bugs.webkit.org/show_bug.cgi?id=177267

Caused fast/images/animated-gif-webkit-transform.html to time
out, and possible perf regression (Requested by smfr on
#webkit).

Reverted changeset:

"Simplify compositing layer updating"
https://bugs.webkit.org/show_bug.cgi?id=176196
http://trac.webkit.org/changeset/222254

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222285 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUpstream googletest framework
commit-queue@webkit.org [Wed, 20 Sep 2017 20:54:57 +0000 (20:54 +0000)]
Upstream googletest framework
https://bugs.webkit.org/show_bug.cgi?id=177252

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-20
Reviewed by Alex Christensen.

This is used by libwebrtc.

* Source/third_party/googletest: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222284 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemove ActionType::InvalidAction
achristensen@apple.com [Wed, 20 Sep 2017 20:46:18 +0000 (20:46 +0000)]
Remove ActionType::InvalidAction
https://bugs.webkit.org/show_bug.cgi?id=177262

Reviewed by Tim Horton.

Source/WebCore:

This was needed before r213322 because we needed to have a default constructor.
With all these cool new C++14/17 types, we don't need this any more.

No change in behaviour.

* contentextensions/ContentExtensionActions.h:
* contentextensions/ContentExtensionCompiler.cpp:
(WebCore::ContentExtensions::serializeActions):
* contentextensions/ContentExtensionRule.cpp:
(WebCore::ContentExtensions::Action::deserialize):
(WebCore::ContentExtensions::Action::deserializeType):
(WebCore::ContentExtensions::Action::serializedLength):
* contentextensions/ContentExtensionRule.h:
* contentextensions/ContentExtensionsBackend.cpp:
(WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForLoad):
(WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForPingLoad):

Tools:

* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(WebCore::ContentExtensions::operator<<):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222283 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRenderedDocumentMarker.h should include DocumentMarker.h
dbates@webkit.org [Wed, 20 Sep 2017 20:38:18 +0000 (20:38 +0000)]
RenderedDocumentMarker.h should include DocumentMarker.h
https://bugs.webkit.org/show_bug.cgi?id=177263

Reviewed by Andy Estes.

RenderedDocumentMarker extends DocumentMarker. RenderedDocumentMarker.h should
include DocumentMarker.h. Otherwise, both DocumentMarker.h and RenderedDocumentMarker.h
must be explicitly included.

* dom/RenderedDocumentMarker.h:
* rendering/RenderText.cpp:
* testing/Internals.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222282 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoUnreviewed, rolling out r222278.
ryanhaddad@apple.com [Wed, 20 Sep 2017 20:09:23 +0000 (20:09 +0000)]
Unreviewed, rolling out r222278.

This needs more work before it can be landed.

Reverted changeset:

"Work towards: Move test expectations from 'ios-11' to 'ios'
directory"
https://bugs.webkit.org/show_bug.cgi?id=177167
http://trac.webkit.org/changeset/222278

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222281 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMake a playground where people can try WSL
mmaxfield@apple.com [Wed, 20 Sep 2017 20:07:07 +0000 (20:07 +0000)]
Make a playground where people can try WSL
https://bugs.webkit.org/show_bug.cgi?id=177125

Reviewed by Filip Pizlo.

This patch creates a webpage, index.html, which lets users type in a WSL program and
run it, and see the results.

* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/CallFunction.js:
(callFunction):
* WebGPUShadingLanguageRI/Checker.js:
(Checker):
(Checker.prototype._checkShaderType.NonNumericSearcher):
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType):
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType):
(Checker.prototype._checkShaderType):
(Checker.prototype.visitFuncDef):
(Checker.prototype._requireBool):
* WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js: Copied from Tools/WebGPUShadingLanguageRI/CallFunction.js.
(FlattenedStructOffsetGatherer):
(FlattenedStructOffsetGatherer.prototype.get result):
(FlattenedStructOffsetGatherer.prototype.visitReferenceType):
(FlattenedStructOffsetGatherer.prototype.visitField):
(FlattenedStructOffsetGatherer.prototype.visitNativeType):
* WebGPUShadingLanguageRI/Func.js:
(Func.prototype.toDeclString):
* WebGPUShadingLanguageRI/Inline.js:
(resolveInlinedFunction):
* WebGPUShadingLanguageRI/NameContext.js:
(NameContext.prototype.get let):
* WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
(resolveOverloadImpl):
* WebGPUShadingLanguageRI/StandardLibrary.js:
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(TEST_shaderTypes):
* WebGPUShadingLanguageRI/index.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222280 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[WSL] Restrict vertex and fragment entry points according to WSL.md
mmaxfield@apple.com [Wed, 20 Sep 2017 20:03:22 +0000 (20:03 +0000)]
[WSL] Restrict vertex and fragment entry points according to WSL.md
https://bugs.webkit.org/show_bug.cgi?id=177253

Reviewed by Filip Pizlo.

Entry points can't have template arguments, and their argument/return types need to be restricted.

* WebGPUShadingLanguageRI/Checker.js:
(Checker):
(Checker.prototype._checkShaderType.NonNumericSearcher):
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType):
(Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType):
(Checker.prototype._checkShaderType):
(Checker.prototype.visitFuncDef):
(Checker.prototype._requireBool):
* WebGPUShadingLanguageRI/Func.js:
(Func.prototype.toDeclString):
* WebGPUShadingLanguageRI/Test.js:
(TEST_shaderTypes):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222279 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWork towards: Move test expectations from 'ios-11' to 'ios' directory
ryanhaddad@apple.com [Wed, 20 Sep 2017 19:38:59 +0000 (19:38 +0000)]
Work towards: Move test expectations from 'ios-11' to 'ios' directory
https://bugs.webkit.org/show_bug.cgi?id=177167

Unreviewed test gardening.

* platform/ios-11/TestExpectations: Removed.
* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222278 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoClean up content extensions code in preparation for more actions with string arguments
achristensen@apple.com [Wed, 20 Sep 2017 19:37:58 +0000 (19:37 +0000)]
Clean up content extensions code in preparation for more actions with string arguments
https://bugs.webkit.org/show_bug.cgi?id=177258

Reviewed by Tim Horton.

No change in behaviour.  Covered by existing tests.

* contentextensions/ContentExtensionCompiler.cpp:
(WebCore::ContentExtensions::serializeString):
(WebCore::ContentExtensions::resolvePendingDisplayNoneActions):
(WebCore::ContentExtensions::serializeActions):
(WebCore::ContentExtensions::serializeSelector): Deleted.
* contentextensions/ContentExtensionParser.cpp:
(WebCore::ContentExtensions::loadAction):
(WebCore::ContentExtensions::loadRule):
* contentextensions/ContentExtensionRule.cpp:
(WebCore::ContentExtensions::deserializeString):
(WebCore::ContentExtensions::Action::deserialize):
(WebCore::ContentExtensions::Action::deserializeType):
(WebCore::ContentExtensions::Action::serializedLength):
* contentextensions/ContentExtensionRule.h:
(WebCore::ContentExtensions::Action::Action):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222277 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[ATK] atk_table_get_n_rows() and atk_table_get_n_columns() should return values of...
jdiggs@igalia.com [Wed, 20 Sep 2017 19:30:15 +0000 (19:30 +0000)]
[ATK] atk_table_get_n_rows() and atk_table_get_n_columns() should return values of aria-rowcount and aria-colcount, if present
https://bugs.webkit.org/show_bug.cgi?id=171172

Reviewed by Chris Fleizach.

Source/WebCore:

Modify webKitAccessibleTableGetNColumns() and webkitAccessibleTableGetNRows()
to prefer the ARIA value over the DOM-based value.

No new tests needed: We already have coverage through aria-table-attributes.html.
Platform expectations for this test were updated.

* accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
(webkitAccessibleTableGetNColumns):
(webkitAccessibleTableGetNRows):

LayoutTests:

Generated platform-specific expectations to reflect the new behavior.

* accessibility/aria-table-attributes.html: Modified to handle platform differences.
* platform/gtk/accessibility/aria-table-attributes-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222276 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoFix HPPA and Alpha builds
berto@igalia.com [Wed, 20 Sep 2017 19:04:05 +0000 (19:04 +0000)]
Fix HPPA and Alpha builds
https://bugs.webkit.org/show_bug.cgi?id=177224

Reviewed by Alex Christensen.

.:

* CMakeLists.txt:

Source/JavaScriptCore:

* CMakeLists.txt:

Source/WTF:

* wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222275 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRename CacheStorage to DOMCacheStorage
commit-queue@webkit.org [Wed, 20 Sep 2017 19:04:00 +0000 (19:04 +0000)]
Rename CacheStorage to DOMCacheStorage
https://bugs.webkit.org/show_bug.cgi?id=177025

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-20
Reviewed by Chris Dumez.

No change of behavior, just renaming CacheStorage class and files to DOMCacheStorage.

* CMakeLists.txt:
* DerivedSources.make:
* Modules/cache/DOMCacheStorage.cpp: Renamed from Source/WebCore/Modules/cache/CacheStorage.cpp.
(WebCore::DOMCacheStorage::DOMCacheStorage):
(WebCore::DOMCacheStorage::origin const):
(WebCore::doSequentialMatch):
(WebCore::startSequentialMatch):
(WebCore::copyCaches):
(WebCore::DOMCacheStorage::match):
(WebCore::DOMCacheStorage::has):
(WebCore::DOMCacheStorage::retrieveCaches):
(WebCore::logConsolePersistencyError):
(WebCore::DOMCacheStorage::open):
(WebCore::DOMCacheStorage::remove):
(WebCore::DOMCacheStorage::keys):
(WebCore::DOMCacheStorage::stop):
(WebCore::DOMCacheStorage::activeDOMObjectName const):
(WebCore::DOMCacheStorage::canSuspendForDocumentSuspension const):
* Modules/cache/DOMCacheStorage.h: Renamed from Source/WebCore/Modules/cache/CacheStorage.h.
(WebCore::DOMCacheStorage::create):
* Modules/cache/DOMCacheStorage.idl: Renamed from Source/WebCore/Modules/cache/CacheStorage.idl.
* Modules/cache/DOMWindowCaches.cpp:
(WebCore::DOMWindowCaches::caches):
(WebCore::DOMWindowCaches::caches const):
* Modules/cache/DOMWindowCaches.h:
* Modules/cache/DOMWindowCaches.idl:
* Modules/cache/WorkerGlobalScopeCaches.cpp:
(WebCore::WorkerGlobalScopeCaches::caches):
(WebCore::WorkerGlobalScopeCaches::caches const):
* Modules/cache/WorkerGlobalScopeCaches.h:
* Modules/cache/WorkerGlobalScopeCaches.idl:
* WebCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222274 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoMake webrtc replace track tests less flaky
commit-queue@webkit.org [Wed, 20 Sep 2017 18:10:56 +0000 (18:10 +0000)]
Make webrtc replace track tests less flaky
https://bugs.webkit.org/show_bug.cgi?id=172645
<rdar://problem/34118218>

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-20
Reviewed by Eric Carlson.

Improving stability of tests by retrying tests every 50 ms instead of once.
Doing some refactoring to put more helper routines in routine.js
Relaxing black pixel check as compression may introduce some uncertainty.
It is now considered black if RGB < (30, 30, 30).

* TestExpectations: Marking video-mute.html as Pass/Fail instead of Fail.
* webrtc/routines.js:
* webrtc/video-mute.html:
* webrtc/video-replace-muted-track.html:
* webrtc/video-replace-track-expected.txt:
* webrtc/video-replace-track-to-null.html:
* webrtc/video-replace-track.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222273 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[Win] Cygwin 64-bit EWS process cannot find Visual Studio installation.
pvollan@apple.com [Wed, 20 Sep 2017 18:04:44 +0000 (18:04 +0000)]
[Win] Cygwin 64-bit EWS process cannot find Visual Studio installation.
https://bugs.webkit.org/show_bug.cgi?id=177244

Reviewed by Alex Christensen.

The 64-bit EWS shell process should try to find Visual Studio in the 32-bit program files folder.

* EWSTools/start-queue-win.sh:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222272 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoSwitch PeerConnection to release logging
eric.carlson@apple.com [Wed, 20 Sep 2017 17:55:27 +0000 (17:55 +0000)]
Switch PeerConnection to release logging
https://bugs.webkit.org/show_bug.cgi?id=177193
<rdar://problem/34529014>

Reviewed by Youenn Fablet.

* Modules/mediastream/PeerConnectionBackend.cpp:
(WebCore::PeerConnectionBackend::PeerConnectionBackend):
(WebCore::PeerConnectionBackend::createOfferSucceeded):
(WebCore::PeerConnectionBackend::createOfferFailed):
(WebCore::PeerConnectionBackend::createAnswerSucceeded):
(WebCore::PeerConnectionBackend::createAnswerFailed):
(WebCore::PeerConnectionBackend::setLocalDescriptionSucceeded):
(WebCore::PeerConnectionBackend::setLocalDescriptionFailed):
(WebCore::PeerConnectionBackend::setRemoteDescriptionSucceeded):
(WebCore::PeerConnectionBackend::setRemoteDescriptionFailed):
(WebCore::PeerConnectionBackend::addIceCandidateSucceeded):
(WebCore::PeerConnectionBackend::addIceCandidateFailed):
(WebCore::PeerConnectionBackend::newICECandidate):
(WebCore::PeerConnectionBackend::doneGatheringCandidates):
(WebCore::PeerConnectionBackend::logChannel const):
* Modules/mediastream/PeerConnectionBackend.h:
(WebCore::PeerConnectionBackend::PeerConnectionBackend): Deleted.

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::RTCPeerConnection):
(WebCore::RTCPeerConnection::~RTCPeerConnection):
(WebCore::RTCPeerConnection::addTrack):
(WebCore::RTCPeerConnection::removeTrack):
(WebCore::RTCPeerConnection::addTransceiver):
(WebCore::RTCPeerConnection::queuedCreateOffer):
(WebCore::RTCPeerConnection::queuedCreateAnswer):
(WebCore::RTCPeerConnection::queuedSetLocalDescription):
(WebCore::RTCPeerConnection::queuedSetRemoteDescription):
(WebCore::RTCPeerConnection::queuedAddIceCandidate):
(WebCore::RTCPeerConnection::initializeConfiguration):
(WebCore::RTCPeerConnection::setConfiguration):
(WebCore::RTCPeerConnection::createDataChannel):
(WebCore::RTCPeerConnection::setSignalingState):
(WebCore::RTCPeerConnection::updateIceGatheringState):
(WebCore::RTCPeerConnection::updateIceConnectionState):
(WebCore::RTCPeerConnection::updateConnectionState):
(WebCore::RTCPeerConnection::replaceTrack):
(WebCore::RTCPeerConnection::dispatchEvent):
(WebCore::RTCPeerConnection::logChannel const):
(WebCore::rtcIceGatheringStateToString): Deleted.
(WebCore::rtcIceConnectionStateToString): Deleted.
* Modules/mediastream/RTCPeerConnection.h:

* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::LibWebRTCMediaEndpoint):
(WebCore::LibWebRTCMediaEndpoint::OnStatsDelivered):
(WebCore::LibWebRTCMediaEndpoint::startLoggingStats):
(WebCore::LibWebRTCMediaEndpoint::logChannel const):
(WebCore::LibWebRTCMediaEndpoint::statsLogInterval const):
* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h:
(PAL::LogArgument<webrtc::RTCStats>::toString):

* platform/mediastream/RTCIceConnectionState.h:
(PAL::LogArgument<WebCore::RTCIceConnectionState>::toString):

* platform/mediastream/RTCIceGatheringState.h:
(PAL::LogArgument<WebCore::RTCIceGatheringState>::toString):

* platform/mediastream/RTCPeerConnectionState.h:
(PAL::LogArgument<WebCore::RTCPeerConnectionState>::toString):

* platform/mediastream/RTCSignalingState.h:
(PAL::LogArgument<WebCore::RTCSignalingState>::toString):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222271 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoVideo errors should be instances of Error
cdumez@apple.com [Wed, 20 Sep 2017 17:38:28 +0000 (17:38 +0000)]
Video errors should be instances of Error
https://bugs.webkit.org/show_bug.cgi?id=174573
<rdar://problem/34445494>

Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

Rebaseline tests now that output has changed slightly.

* web-platform-tests/html/semantics/embedded-content/media-elements/event_pause_noautoplay-expected.txt:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_play_noautoplay-expected.txt:
* web-platform-tests/html/semantics/embedded-content/media-elements/paused_true_during_pause-expected.txt:

Source/WebCore:

Video errors should be instances of DOMException and Error as per:
- https://html.spec.whatwg.org/multipage/media.html#reject-pending-play-promises
- https://html.spec.whatwg.org/multipage/media.html#loading-the-media-resource:reject-pending-play-promises-2
- https://html.spec.whatwg.org/multipage/media.html#loading-the-media-resource:reject-pending-play-promises-3
- https://html.spec.whatwg.org/multipage/media.html#playing-the-media-resource:reject-pending-play-promises-3
- https://html.spec.whatwg.org/multipage/media.html#playing-the-media-resource:reject-pending-play-promises

No new tests, extended existing test.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::rejectPendingPlayPromises):
(WebCore::HTMLMediaElement::noneSupported):
(WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks):
(WebCore::HTMLMediaElement::pauseInternal):
* html/HTMLMediaElement.h:

LayoutTests:

* http/tests/security/video-cross-origin-caching-expected.txt:
Rebaseline test now that output has changed slightly.

* media/media-play-promise-reject-load-abort-expected.txt:
* media/media-play-promise-reject-load-abort.html:
Extend test coverage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222270 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[Curl] improve the implementation of FormDataStream
commit-queue@webkit.org [Wed, 20 Sep 2017 17:31:06 +0000 (17:31 +0000)]
[Curl] improve the implementation of FormDataStream
https://bugs.webkit.org/show_bug.cgi?id=177111

Patch by Basuke Suzuki <Basuke.Suzuki@sony.com> on 2017-09-20
Reviewed by Alex Christensen.

* platform/network/curl/FormDataStreamCurl.cpp:
(WebCore::FormDataStream::read):
(WebCore::FormDataStream::hasMoreElements const):
* platform/network/curl/FormDataStreamCurl.h:
(WebCore::FormDataStream::setHTTPBody):
(WebCore::FormDataStream::FormDataStream): Deleted.
* platform/network/curl/ResourceHandleCurlDelegate.cpp:
(WebCore::ResourceHandleCurlDelegate::ResourceHandleCurlDelegate):
(WebCore::ResourceHandleCurlDelegate::prepareSendData):
(WebCore::ResourceHandleCurlDelegate::didFinish):
(WebCore::ResourceHandleCurlDelegate::didFail):
(WebCore::ResourceHandleCurlDelegate::setupFormData):
* platform/network/curl/ResourceHandleCurlDelegate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222269 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoSkip inspector tests that crash after r222259.
ryanhaddad@apple.com [Wed, 20 Sep 2017 17:21:19 +0000 (17:21 +0000)]
Skip inspector tests that crash after r222259.
https://bugs.webkit.org/show_bug.cgi?id=177249

Unreviewed test gardening.

* platform/mac/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222268 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoCreate vector swizzle operators in WSL's standard library
mmaxfield@apple.com [Wed, 20 Sep 2017 16:44:14 +0000 (16:44 +0000)]
Create vector swizzle operators in WSL's standard library
https://bugs.webkit.org/show_bug.cgi?id=177116

Reviewed by Filip Pizlo.

Because there are 481 possible swizzling operators, StandardLibrary.js generates them
instead of including them by hand.

Adding so many functions slows down the compiler quite a bit.

* WebGPUShadingLanguageRI/Prepare.js:
(prepare):
* WebGPUShadingLanguageRI/StandardLibrary.js:
(intToString):
(_generateSwizzle):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222267 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoWeb Inspector: WebView indication highlights sticks around for WebKitLegacy views
commit-queue@webkit.org [Wed, 20 Sep 2017 16:19:05 +0000 (16:19 +0000)]
Web Inspector: WebView indication highlights sticks around for WebKitLegacy views
https://bugs.webkit.org/show_bug.cgi?id=177101
<rdar://problem/34500648>

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2017-09-20
Reviewed by Brian Burg.

* WebInspector/WebNodeHighlight.mm:
Ensure we close the window that we have just removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222266 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemoved nullable from UIDragItem property
jbedard@apple.com [Wed, 20 Sep 2017 16:16:51 +0000 (16:16 +0000)]
Removed nullable from UIDragItem property
https://bugs.webkit.org/show_bug.cgi?id=176264
<rdar://problem/31144674>

Unreviewed build fix

When a nullable annotation is used in a header file,
the Objective-C compiler forces annotations on the entire
file. Remove an unneeded annotation in UIKitSPI.h so that
we can build in iOS 11.

* Platform/spi/ios/UIKitSPI.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222265 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[GTK] Completely garbled display in GMail
magomez@igalia.com [Wed, 20 Sep 2017 16:02:51 +0000 (16:02 +0000)]
[GTK] Completely garbled display in GMail
https://bugs.webkit.org/show_bug.cgi?id=168964

Reviewed by Carlos Garcia Campos.

Do not try to decode images that are bigger than 32768 pixels, as cairo won't be able to render them,
and they will break the rendering of the rest of the page.

Covered by existent tests.

* platform/graphics/ImageBackingStore.h:
(WebCore::ImageBackingStore::isOverSize):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222264 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemove RenderNamedFlowThread and FlowThreadController
antti@apple.com [Wed, 20 Sep 2017 15:37:23 +0000 (15:37 +0000)]
Remove RenderNamedFlowThread and FlowThreadController
https://bugs.webkit.org/show_bug.cgi?id=177229

Reviewed by Andreas Kling.

Get rid of some parts of the rendering code for CSS Regions.

The feature is disabled, no functional changes.

* WebCore.xcodeproj/project.pbxproj:
* rendering/FlowThreadController.cpp: Removed.
* rendering/FlowThreadController.h: Removed.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintObject):
(WebCore::canComputeRegionRangeForBox):
(WebCore::RenderBlock::childBoxIsUnsplittableForFragmentation const):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::determineLogicalLeftPositionForChild):
(WebCore::RenderBlockFlow::applyBeforeBreak):
(WebCore::RenderBlockFlow::applyAfterBreak):
(WebCore::RenderBlockFlow::logicalHeightForChildForFragmentation const):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::borderBoxRectInRegion const):
(WebCore::RenderBox::scroll):
(WebCore::RenderBox::renderBoxRegionInfo const):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing const):
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned const):
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned const):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent const):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::willBeDestroyed):
(WebCore::RenderElement::hoverAncestor const):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent const):
(WebCore::RenderFlowThread::incrementAutoLogicalHeightRegions):
(WebCore::RenderFlowThread::decrementAutoLogicalHeightRegions):
(WebCore::RenderFlowThread::addRegionsOverflowFromChild):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::updateAlwaysCreateLineBoxes):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::calculateClipRects const):
(WebCore::RenderLayer::paintFixedLayersInNamedFlows): Deleted.
(WebCore::RenderLayer::hitTestFixedLayersInNamedFlows): Deleted.
* rendering/RenderLayer.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateCompositingLayers):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::computeCompositingRequirementsForNamedFlowFixed): Deleted.
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTreeForNamedFlowFixed): Deleted.
* rendering/RenderLayerCompositor.h:
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::checkRegionStyle):
(WebCore::RenderNamedFlowFragment::namedFlowThread const): Deleted.
* rendering/RenderNamedFlowFragment.h:
* rendering/RenderNamedFlowThread.cpp: Removed.
* rendering/RenderNamedFlowThread.h: Removed.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::selectionRoot const):
(WebCore::RenderObject::offsetParent const):
(WebCore::RenderObject::currentRenderNamedFlowFragment const):
* rendering/RenderObject.h:
(WebCore::RenderObject::isRenderGrid const):
(WebCore::RenderObject::isRenderNamedFlowThread const): Deleted.
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::RenderRegion):
(WebCore::RenderRegion::attachRegion):
* rendering/RenderRegion.h:
(WebCore::RenderRegion::parentNamedFlowThread const): Deleted.
* rendering/RenderTreeAsText.cpp:
(WebCore::writeLayers):
(WebCore::writeRenderRegionList): Deleted.
(WebCore::writeRenderNamedFlowThreads): Deleted.
* rendering/RenderView.cpp:
(WebCore::RenderView::layoutContent):
(WebCore::RenderView::layoutContentInAutoLogicalHeightRegions):
(WebCore::RenderView::layout):
(WebCore::RenderView::selectionBounds const):
(WebCore::RenderView::repaintSelection const):
(WebCore::RenderView::setSelection):
(WebCore::RenderView::updateSelectionForSubtrees):
(WebCore::RenderView::styleDidChange):
(WebCore::RenderView::checkTwoPassLayoutForAutoHeightRegions const):
(WebCore::RenderView::pushLayoutStateForCurrentFlowThread):
(WebCore::RenderView::popLayoutStateForCurrentFlowThread):
(WebCore::RenderView::layoutContentToComputeOverflowInRegions): Deleted.
(WebCore::RenderView::splitSelectionBetweenSubtrees): Deleted.
(WebCore::RenderView::hasRenderNamedFlowThreads const): Deleted.
(WebCore::RenderView::flowThreadController): Deleted.
* rendering/RenderView.h:
* rendering/SelectionSubtreeRoot.cpp:
(WebCore::SelectionSubtreeRoot::adjustForVisibleSelection): Deleted.
* rendering/SelectionSubtreeRoot.h:
(WebCore::SelectionSubtreeRoot::setSelectionData):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222263 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[WPE] Unreviewed test gardening
Ms2ger@igalia.com [Wed, 20 Sep 2017 15:30:07 +0000 (15:30 +0000)]
[WPE] Unreviewed test gardening
https://bugs.webkit.org/show_bug.cgi?id=177233

Unreviewed test gardening.

* TestExpectations:
* platform/wpe/tables/mozilla/marvin/x_th_nowrap-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222262 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoSkip failing resource timing tests on Windows.
pvollan@apple.com [Wed, 20 Sep 2017 14:55:32 +0000 (14:55 +0000)]
Skip failing resource timing tests on Windows.
https://bugs.webkit.org/show_bug.cgi?id=177234

Unreviewed test gardening.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222261 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years ago[WPE] Update fontconfig to 2.12.4.
Ms2ger@igalia.com [Wed, 20 Sep 2017 14:38:52 +0000 (14:38 +0000)]
[WPE] Update fontconfig to 2.12.4.
https://bugs.webkit.org/show_bug.cgi?id=177228

Reviewed by Carlos Garcia Campos.

* wpe/jhbuild.modules:
* wpe/patches/fontconfig-avoid-conflicts-with-integer-width-macros-from-TS-18.patch: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222260 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2 years agoRemove DOM and styling support for CSS Regions
antti@apple.com [Wed, 20 Sep 2017 12:58:45 +0000 (12:58 +0000)]
Remove DOM and styling support for CSS Regions
https://bugs.webkit.org/show_bug.cgi?id=177221

Reviewed by Andreas Kling.

Source/WebCore:

This patch removes all CSS Regions (aka "named flow") related code excluding rendering.

The feature is already disabled so no functional changes.

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSCSSRuleCustom.cpp:
(WebCore::toJSNewlyCreated):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::contentToCSSValue):
(WebCore::ComputedStyleExtractor::propertyValue):
(WebCore::convertToRegionBreak): Deleted.
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator BreakBetween const):
* css/CSSProperties.json:
* css/CSSRule.cpp:
* css/CSSRule.h:
* css/CSSRule.idl:
* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::matchAuthorRules):
(WebCore::ElementRuleCollector::matchUserRules):
(WebCore::ElementRuleCollector::collectMatchingRulesForRegion): Deleted.
* css/ElementRuleCollector.h:
(WebCore::ElementRuleCollector::setSameOriginOnly):
(WebCore::ElementRuleCollector::setRegionForStyling): Deleted.
* css/InspectorCSSOMWrappers.cpp:
(WebCore::InspectorCSSOMWrappers::collect):
* css/RuleSet.cpp:
(WebCore::determinePropertyWhitelistType):
(WebCore::RuleData::RuleData):
(WebCore::RuleSet::addChildRules):
(WebCore::RuleSet::shrinkToFit):
(WebCore::RuleSet::addRegionRule): Deleted.
* css/RuleSet.h:
(WebCore::RuleSet:: const):
(WebCore::RuleSet::regionSelectorsAndRuleSets const): Deleted.
* css/StyleBuilderConverter.h:
(WebCore::StyleBuilderConverter::convertRegionBreakBetween): Deleted.
(WebCore::StyleBuilderConverter::convertRegionBreakInside): Deleted.
* css/StyleProperties.cpp:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::State::clear):
(WebCore::StyleResolver::State::State):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::CascadedProperties::addMatch):
(WebCore::StyleResolver::checkRegionStyle): Deleted.
(WebCore::isValidRegionStyleProperty): Deleted.
* css/StyleResolver.h:
(WebCore::StyleResolver::State::regionForStyling const): Deleted.
(WebCore::checkRegionSelector): Deleted.
* css/StyleRule.cpp:
(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy const):
(WebCore::StyleRuleBase::createCSSOMWrapper const):
(WebCore::StyleRuleRegion::StyleRuleRegion): Deleted.
* css/StyleRule.h:
(WebCore::StyleRuleBase::isStyleRule const):
(WebCore::StyleRuleBase::isRegionRule const): Deleted.
* css/StyleSheetContents.cpp:
(WebCore::traverseSubresourcesInRules):
* css/WebKitCSSRegionRule.cpp: Removed.
* css/WebKitCSSRegionRule.h: Removed.
* css/WebKitCSSRegionRule.idl: Removed.
* css/parser/CSSAtRuleID.cpp:
(WebCore::cssAtRuleID):
* css/parser/CSSAtRuleID.h:
* css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
(WebCore::CSSParserFastPaths::isKeywordPropertyID):
* css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeAtRule):
(WebCore::CSSParserImpl::consumeRegionRule): Deleted.
* css/parser/CSSParserImpl.h:
* css/parser/CSSPropertyParser.cpp:
(WebCore::isLegacyBreakProperty):
(WebCore::CSSPropertyParser::parseSingleValue):
(WebCore::mapFromLegacyBreakProperty):
(WebCore::CSSPropertyParser::consumeLegacyBreakProperty):
(WebCore::consumeFlowProperty): Deleted.
(WebCore::mapFromRegionBreakBetween): Deleted.
* dom/ContainerNode.cpp:
(WebCore::destroyRenderTreeIfNeeded):
* dom/DOMNamedFlowCollection.cpp: Removed.
* dom/DOMNamedFlowCollection.h: Removed.
* dom/DOMNamedFlowCollection.idl: Removed.
* dom/Document.cpp:
(WebCore::Document::updateLayoutIfDimensionsOutOfDate):
(WebCore::Document::webkitGetNamedFlows): Deleted.
(WebCore::Document::namedFlows): Deleted.
* dom/Document.h:
* dom/Document.idl:
* dom/Element.cpp:
(WebCore::Element::~Element):
(WebCore::Element::clearStyleDerivedDataBeforeDetachingRenderer):
(WebCore::Element::unregisterNamedFlowContentElement): Deleted.
(WebCore::Element::setIsNamedFlowContentElement): Deleted.
(WebCore::Element::clearIsNamedFlowContentElement): Deleted.
(WebCore::Element::rareDataIsNamedFlowContentElement const): Deleted.
(WebCore::Element::setRegionOversetState): Deleted.
(WebCore::Element::regionOversetState const): Deleted.
(WebCore::Element::renderNamedFlowFragment const): Deleted.
(WebCore::Element::shouldMoveToFlowThread const): Deleted.
(WebCore::Element::webkitRegionOverset const): Deleted.
(WebCore::Element::webkitGetRegionFlowRanges const): Deleted.
* dom/Element.h:
(WebCore::Element::isNamedFlowContentElement const): Deleted.
* dom/Element.idl:
* dom/ElementRareData.cpp:
* dom/ElementRareData.h:
(WebCore::ElementRareData::ElementRareData):
(WebCore::ElementRareData::regionOversetState const): Deleted.
(WebCore::ElementRareData::setRegionOversetState): Deleted.
(WebCore::ElementRareData::isNamedFlowContentElement const): Deleted.
(WebCore::ElementRareData::setIsNamedFlowContentElement): Deleted.
* dom/EventTargetFactory.in:
* dom/NamedFlowCollection.cpp: Removed.
* dom/NamedFlowCollection.h: Removed.
* dom/PseudoElement.h:
* dom/WebKitNamedFlow.cpp: Removed.
* dom/WebKitNamedFlow.h: Removed.
* dom/WebKitNamedFlow.idl: Removed.
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::resetNonPersistentData):
(WebCore::ChangeRegionOversetTask::ChangeRegionOversetTask): Deleted.
(WebCore::ChangeRegionOversetTask::scheduleFor): Deleted.
(WebCore::ChangeRegionOversetTask::unschedule): Deleted.
(WebCore::ChangeRegionOversetTask::reset): Deleted.
(WebCore::ChangeRegionOversetTask::timerFired): Deleted.
(WebCore::InspectorCSSAgent::didCreateNamedFlow): Deleted.
(WebCore::InspectorCSSAgent::willRemoveNamedFlow): Deleted.
(WebCore::InspectorCSSAgent::didChangeRegionOverset): Deleted.
(WebCore::InspectorCSSAgent::regionOversetChanged): Deleted.
(WebCore::InspectorCSSAgent::didRegisterNamedFlowContentElement): Deleted.
(WebCore::InspectorCSSAgent::didUnregisterNamedFlowContentElement): Deleted.
(WebCore::InspectorCSSAgent::getNamedFlowCollection): Deleted.
(WebCore::InspectorCSSAgent::documentNodeWithRequestedFlowsId): Deleted.
(WebCore::InspectorCSSAgent::buildArrayForRegions): Deleted.
(WebCore::InspectorCSSAgent::buildObjectForNamedFlow): Deleted.
* inspector/InspectorCSSAgent.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didCreateNamedFlowImpl): Deleted.
(WebCore::InspectorInstrumentation::willRemoveNamedFlowImpl): Deleted.
(WebCore::InspectorInstrumentation::didChangeRegionOversetImpl): Deleted.
(WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElementImpl): Deleted.
(WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElementImpl): Deleted.
* inspector/InspectorOverlay.cpp:
(WebCore::buildRendererHighlight):
(WebCore::buildObjectForElementData):
(WebCore::buildObjectForRegion): Deleted.
(WebCore::buildObjectForFlowRegions): Deleted.
* page/EventHandler.cpp:
(WebCore::handleWheelEventInAppropriateEnclosingBox):
* rendering/FlowThreadController.cpp:
(WebCore::FlowThreadController::ensureRenderFlowThreadWithName): Deleted.
* rendering/FlowThreadController.h:
* rendering/RegionOversetState.h: Removed.
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::applyBeforeBreak):
(WebCore::RenderBlockFlow::applyAfterBreak):
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::getRanges const):
(WebCore::RenderNamedFlowFragment::layoutBlock):
(WebCore::RenderNamedFlowFragment::checkRegionStyle):
(WebCore::RenderNamedFlowFragment::computeStyleInRegion const):
(WebCore::RenderNamedFlowFragment::setRegionObjectsRegionStyle):
(WebCore::RenderNamedFlowFragment::setRegionOversetState): Deleted.
(WebCore::RenderNamedFlowFragment::regionOversetState const): Deleted.
(WebCore::RenderNamedFlowFragment::updateOversetState): Deleted.
* rendering/RenderNamedFlowFragment.h:
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
(WebCore::RenderNamedFlowThread::clearContentElements):
(WebCore::RenderNamedFlowThread::registerNamedFlowContentElement):
(WebCore::RenderNamedFlowThread::unregisterNamedFlowContentElement):
(WebCore::RenderNamedFlowThread::hasContentElement const):
(WebCore::RenderNamedFlowThread::flowThreadName const):
(WebCore::RenderNamedFlowThread::dispatchRegionOversetChangeEventIfNeeded):
(WebCore::RenderNamedFlowThread::regionOversetChangeEventTimerFired):
(WebCore::RenderNamedFlowThread::setMarkForDestruction):
(WebCore::RenderNamedFlowThread::resetMarkForDestruction):
(WebCore::RenderNamedFlowThread::isMarkedForDestruction const):
(WebCore::nextNodeInsideContentElement):
* rendering/RenderNamedFlowThread.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::installFlowThread):
* rendering/style/RenderStyleConstants.h:
* rendering/style/WillChangeData.cpp:
(WebCore::WillChangeData::propertyCreatesStackingContext):
* style/RenderTreePosition.cpp:
(WebCore::RenderTreePosition::previousSiblingRenderer const):
(WebCore::RenderTreePosition::nextSiblingRenderer const):
(WebCore::RenderTreePosition::insertionPositionForFlowThread): Deleted.
(WebCore::RenderTreePosition::isRendererReparented): Deleted.
* style/RenderTreePosition.h:
(WebCore::RenderTreePosition::RenderTreePosition):
* style/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::updateElementRenderer):
(WebCore::RenderTreeUpdater::createRenderer):
(WebCore::RenderTreeUpdater::invalidateWhitespaceOnlyTextSiblingsAfterAttachIfNeeded):
(WebCore::registerElementForFlowThreadIfNeeded): Deleted.
* style/RenderTreeUpdaterGeneratedContent.cpp:
(WebCore::createContentRenderers):
* style/StyleChange.cpp:
(WebCore::Style::determineChange):
* style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::styleForElement):
(WebCore::Style::affectsRenderedSubtree):
* svg/SVGElement.cpp:
(WebCore::SVGElement::shouldMoveToFlowThread const): Deleted.
* svg/SVGElement.h:

Source/WebCore/PAL:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit:

* Configurations/FeatureDefines.xcconfig:

Source/WebKitLegacy/mac:

* Configurations/FeatureDefines.xcconfig:
* DOM/DOMCSS.mm:
(kitClass):
* DOM/DOMElement.mm:
(-[DOMElement webkitRegionOverset]): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222259 268f45cc-cd09-0410-ab3c-d52691b4dbfc