timothy_horton@apple.com [Fri, 22 Sep 2017 01:08:24 +0000 (01:08 +0000)]
Add some blog post resources
https://bugs.webkit.org/show_bug.cgi?id=177333
Reviewed by Sam Weinig.
* demos/safe-area-insets/1-default.html: Added.
* demos/safe-area-insets/2-viewport-fit.html: Added.
* demos/safe-area-insets/3-safe-area-constants.html: Added.
* demos/safe-area-insets/4-min-max.html: Added.
* demos/safe-area-insets/safe-areas.html: Added.
* demos/safe-area-insets/style.css: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222375
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Fri, 22 Sep 2017 00:42:49 +0000 (00:42 +0000)]
REGRESSION (r221017): iCloud mail logs me out after looking at a few messages
https://bugs.webkit.org/show_bug.cgi?id=177328
Reviewed by Daniel Bates.
<rdar://problem/
34288629>
Reviewed by Dan Bates.
Source/WebCore:
This site was triggering a log-out because the page was loading insecure images. We don't treat that as a security
issue for deciding to display mixed content since it can only affect pixels on screen, not trigger a change in
program logic or persistent storage.
Consequently, we can correct thsi compatibility problem without relaxing the security fix by not blocking Secure cookies
when we have merely displayed mixed content (i.e., encountered 'Inactive' mixed content), as opposed to executing mixed
content (i.e., loaded 'Active' mixed content).
* Modules/geolocation/Geolocation.cpp:
(WebCore::Geolocation::shouldBlockGeolocationRequests): Revise for new API.
* dom/SecurityContext.h:
(WebCore::SecurityContext::foundMixedContent const): Change to return an OptionSet of
mixed content types.
(WebCore::SecurityContext::setFoundMixedContent): Accept an enum stating the type of mixed content found.
* loader/CookieJar.cpp:
(WebCore::cookies): Only block Secure cookies for Active mixed content.
(WebCore::cookieRequestHeaderFieldValue): Ditto.
* loader/MixedContentChecker.cpp:
(WebCore::MixedContentChecker::canDisplayInsecureContent const): Mark the context as having found 'Inactive'
mixed content.
(WebCore::MixedContentChecker::canRunInsecureContent const): Mark the context as having found 'Active'
mixed content.
LayoutTests:
Rebaseline tests for revised behavior.
* http/tests/security/mixedContent/insecure-image-with-securecookie-block-expected.txt:
* http/tests/security/mixedContent/insecure-image-with-securecookie-block.html:
* http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-block-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222374
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Fri, 22 Sep 2017 00:40:47 +0000 (00:40 +0000)]
Clean up RenderLayer z-order traversal code
https://bugs.webkit.org/show_bug.cgi?id=177325
Reviewed by Zalan Bujtas.
Remove isStackingContainer() checks before accessing posZOrderList() or negZOrderList();
we already have assertions in place to ensure that only stacking containers have non-null lists.
Use more auto.
No behavior change.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::update3DTransformedDescendantStatus):
(WebCore::RenderLayer::calculateClipRects const):
* rendering/RenderLayerBacking.cpp:
(WebCore::traverseVisibleNonCompositedDescendantLayers):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
(WebCore::RenderLayerCompositor::recursiveRepaintLayer):
(WebCore::RenderLayerCompositor::layerHas3DContent const):
* rendering/RenderTreeAsText.cpp:
(WebCore::writeLayers):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222373
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pvollan@apple.com [Fri, 22 Sep 2017 00:33:52 +0000 (00:33 +0000)]
Unreviewed Windows build fix after r222360.
* PlatformWin.cmake:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222372
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Fri, 22 Sep 2017 00:19:46 +0000 (00:19 +0000)]
Unreviewed, add the ability to skip a test262 test.
* Scripts/run-jsc-stress-tests:
Other handlers have :skip but a few didn't.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222371
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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