Timeline
Dec 5, 2016:
- 11:59 PM Changeset in webkit [209390] by
-
- 80 edits2 deletes in trunk
[WebIDL] Add support for converting dictionaries to JS
https://bugs.webkit.org/show_bug.cgi?id=165367
Patch by Sam Weinig <sam@webkit.org> on 2016-12-06
Reviewed by Darin Adler and Alex Christensen.
Source/WebCore:
- Adds support for converting dictionary types to JSValues via JSDOMConvert.
- Adopts that functionality to correct the CryptoKeyPair implementation, which is supposed to be a dictionary. (While doing this, I also update places that were passing both a CryptoKey and CryptoKeyPair to use a Variant, since they always only wanted one.)
- Re-works DOMPromise and DeferredPromise to be based on JSDOMConvert and IDLTypes.
- CMakeLists.txt:
- PlatformEfl.cmake:
- PlatformGTK.cmake:
- PlatformMac.cmake:
- WebCore.xcodeproj/project.pbxproj:
Remove JSCryptoKeyPairCustom.cpp and CryptoKeyPair.cpp.
- Modules/encryptedmedia/legacy/WebKitMediaKeys.cpp:
- Modules/mediasource/MediaSource.cpp:
- Modules/mediasource/SourceBuffer.cpp:
- bindings/js/JSMediaDevicesCustom.cpp:
- html/MediaController.cpp:
- html/track/TextTrack.cpp:
Add some missing includes.
- Modules/applepay/ApplePaySession.cpp:
(WebCore::ApplePaySession::canMakePaymentsWithActiveCard):
(WebCore::ApplePaySession::openPaymentSetup):
- Modules/fetch/FetchBody.cpp:
(WebCore::FetchBody::text):
(WebCore::FetchBody::consume):
(WebCore::FetchBody::loadingFailed):
- Modules/fetch/FetchBodyConsumer.cpp:
(WebCore::FetchBodyConsumer::resolveWithData):
(WebCore::FetchBodyConsumer::resolve):
- Modules/fetch/FetchBodyOwner.cpp:
(WebCore::FetchBodyOwner::blob):
(WebCore::FetchBodyOwner::formData):
(WebCore::FetchBodyOwner::text):
- Modules/fetch/FetchResponse.h:
- Modules/mediastream/MediaDevices.h:
- Modules/mediastream/MediaEndpointPeerConnection.cpp:
(WebCore::MediaEndpointPeerConnection::replaceTrack):
(WebCore::MediaEndpointPeerConnection::replaceTrackTask):
- Modules/mediastream/MediaEndpointPeerConnection.h:
- Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::applyConstraints):
- Modules/mediastream/PeerConnectionBackend.cpp:
(WebCore::PeerConnectionBackend::setLocalDescription):
(WebCore::PeerConnectionBackend::setRemoteDescription):
(WebCore::PeerConnectionBackend::addIceCandidate):
- Modules/mediastream/PeerConnectionBackend.h:
- Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::queuedSetLocalDescription):
(WebCore::RTCPeerConnection::queuedSetRemoteDescription):
(WebCore::RTCPeerConnection::queuedAddIceCandidate):
(WebCore::RTCPeerConnection::replaceTrack):
- Modules/mediastream/RTCPeerConnection.h:
- Modules/mediastream/RTCRtpSender.cpp:
(WebCore::RTCRtpSender::replaceTrack):
- Modules/mediastream/RTCRtpSender.h:
- Modules/mediastream/UserMediaRequest.cpp:
(WebCore::UserMediaRequest::deny):
- Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::suspend):
(WebCore::AudioContext::resume):
- bindings/js/JSCustomElementRegistryCustom.cpp:
(WebCore::whenDefinedPromise):
- bindings/js/ScriptModuleLoader.cpp:
(WebCore::ScriptModuleLoader::resolve):
(WebCore::ScriptModuleLoader::notifyFinished):
- css/FontFace.h:
- css/FontFaceSet.cpp:
(WebCore::FontFaceSet::load):
- css/FontFaceSet.h:
- dom/CustomElementRegistry.cpp:
(WebCore::CustomElementRegistry::addElementDefinition):
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::rejectPendingPlayPromises):
- html/HTMLMediaElement.h:
Update to use new IDLType based promises.
- bindings/generic/IDLTypes.h:
Add a new type, ParameterType, to use as the parameter to
DOMPromise/DeferredPromise.
- bindings/js/JSCryptoKeyPairCustom.cpp:
Removed.
- bindings/js/JSDOMConvert.h:
(WebCore::JSConverter<IDLDictionary<T>>::convert):
Add JSConverter specialization for IDLDictionary. Have it simply forward to a generated
convertDictionaryToJS function, following the convention set in place by IDLEnumeration.
- bindings/js/JSDOMPromise.cpp:
- bindings/js/JSDOMPromise.h:
Re-write to be based on IDLTypes and JSDOMConvert, simplifying the implementation.
- bindings/js/JSSubtleCryptoCustom.cpp:
- bindings/js/JSWebKitSubtleCryptoCustom.cpp:
Update for variant based KeyOrKeyPair.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateDictionaryHeaderContent):
(GenerateDictionaryImplementationContent):
Add generation of the convertDictionaryToJS function. I made it require the JSGenerateToJSObject
extended attribute for now, as the majority of dictionaries do not need this code generated for them.
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::convertDictionaryToJS):
- bindings/scripts/test/JS/JSTestObj.h:
- bindings/scripts/test/TestObj.idl:
Add JSGenerateToJSObject to a dictionary to test generation in bindings tests.
- crypto/CryptoAlgorithm.h:
Change KeyOrKeyPairCallback to take a Variant<RefPtr<CryptoKey>, CryptoKeyPair>, rather
than two separate arguments.
- crypto/CryptoKeyPair.cpp:
Removed.
- crypto/CryptoKeyPair.h:
Convert to a struct.
- crypto/CryptoKeyPair.idl:
Convert to a dictionary.
- crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:
(WebCore::CryptoAlgorithmAES_CBC::generateKey):
- crypto/algorithms/CryptoAlgorithmAES_KW.cpp:
(WebCore::CryptoAlgorithmAES_KW::generateKey):
- crypto/algorithms/CryptoAlgorithmHMAC.cpp:
(WebCore::CryptoAlgorithmHMAC::generateKey):
- crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp:
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::generateKey):
- crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::generateKey):
- crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp:
(WebCore::CryptoAlgorithmRSA_OAEP::generateKey):
- crypto/keys/CryptoKeyRSA.h:
- crypto/mac/CryptoKeyRSAMac.cpp:
(WebCore::CryptoKeyRSA::generatePair):
Update for new signature of KeyOrKeyPairCallback.
Source/WebKit2:
- CMakeLists.txt:
Add missing directories to look in for headers.
LayoutTests:
- crypto/subtle/rsa-oaep-generate-key-expected.txt:
- crypto/subtle/rsa-oaep-generate-key.html:
- crypto/subtle/rsaes-pkcs1-v1_5-generate-key-expected.txt:
- crypto/subtle/rsaes-pkcs1-v1_5-generate-key-extractable-expected.txt:
- crypto/subtle/rsaes-pkcs1-v1_5-generate-key-extractable.html:
- crypto/subtle/rsaes-pkcs1-v1_5-generate-key.html:
- crypto/subtle/rsassa-pkcs1-v1_5-generate-key-expected.txt:
- crypto/subtle/rsassa-pkcs1-v1_5-generate-key.html:
- crypto/webkitSubtle/rsa-oaep-generate-non-extractable-key-expected.txt:
- crypto/webkitSubtle/rsa-oaep-generate-non-extractable-key.html:
- crypto/webkitSubtle/rsa-oaep-key-manipulation-expected.txt:
- crypto/webkitSubtle/rsa-oaep-key-manipulation.html:
- crypto/webkitSubtle/rsassa-pkcs1-v1_5-generate-key-expected.txt:
- crypto/webkitSubtle/rsassa-pkcs1-v1_5-generate-key-with-leading-zeroes-in-exponent-expected.txt:
- crypto/webkitSubtle/rsassa-pkcs1-v1_5-generate-key-with-leading-zeroes-in-exponent.html:
- crypto/webkitSubtle/rsassa-pkcs1-v1_5-generate-key.html:
- crypto/workers/subtle/resources/rsa-generate-key.js:
- crypto/workers/subtle/rsa-generate-key-expected.txt:
Update tests and expected results to show that CryptoKeyPair is now a vanilla object, not a platform object.
- 11:34 PM Changeset in webkit [209389] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Reject invalid hex colors on the fast path
https://bugs.webkit.org/show_bug.cgi?id=165461
Reviewed by Zalan Bujtas.
- css/parser/CSSParserFastPaths.cpp:
(WebCore::fastParseColorInternal):
Make sure to check for success. There was even a FIXME in the code about this!
Matches our old parser's behavior.
- 10:55 PM Changeset in webkit [209388] by
-
- 10 edits2 adds in trunk
[Modern Media Controls] Controls bar in fullscreen cannot be dragged
https://bugs.webkit.org/show_bug.cgi?id=165448
Patch by Antoine Quint <Antoine Quint> on 2016-12-05
Reviewed by Simon Fraser.
Source/WebCore:
We weren't listening to mousemove and mouseup events on the right event target, window in the context
of a fullscreen shadow root makes no sense. We now listen to those events on the media controls, which
we size to fit the whole of the media element's bounds. We then apply a transform to the controls bar
to apply the dragging distance.
Test: media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag.html
- Modules/modern-media-controls/controls/controls-bar.js:
(ControlsBar.prototype.get translation):
(ControlsBar.prototype.set translation):
(ControlsBar.prototype.commitProperty):
(ControlsBar): Deleted.
- Modules/modern-media-controls/controls/macos-fullscreen-media-controls.css:
(.media-controls.mac.fullscreen):
(.media-controls.mac.fullscreen > .controls-bar):
- Modules/modern-media-controls/controls/macos-fullscreen-media-controls.js:
(MacOSFullscreenMediaControls.prototype._handleMousedown):
(MacOSFullscreenMediaControls.prototype._handleMousemove):
(MacOSFullscreenMediaControls.prototype._handleMouseup):
LayoutTests:
Add a new test that simulates a dragging interaction of the controls bar in fullscreen.
- media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-containers-styles-expected.txt:
- media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-containers-styles.html:
- media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-controls-bar-styles-expected.txt:
- media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-controls-bar-styles.html:
- media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag-expected.txt: Added.
- media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-drag.html: Added.
- platform/ios-simulator/TestExpectations:
- 9:44 PM Changeset in webkit [209387] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Allow calc in SVG attributes
https://bugs.webkit.org/show_bug.cgi?id=165459
Reviewed by Zalan Bujtas.
- css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeLength):
- 9:39 PM Changeset in webkit [209386] by
-
- 2 edits in trunk/Source/WebCore
Build fix followup to r209379:
STP 19 fails to launch on 16B255
https://bugs.webkit.org/show_bug.cgi?id=165388
-and corresponding-
rdar://problem/29514476
Patch by Brady Eidson <beidson@apple.com> on 2016-12-05
Rubberstamped by Tim Horton.
No new tests (No behavior change).
- platform/spi/cocoa/NSTouchBarSPI.h: Strategically relocate NS_ASSUME_NONNULL* macros.
- 9:34 PM Changeset in webkit [209385] by
-
- 2 edits in trunk/Source/WebCore
Build fix followup to r209379:
STP 19 fails to launch on 16B255
https://bugs.webkit.org/show_bug.cgi?id=165388
-and corresponding-
rdar://problem/29514476
Rubberstamped by Tim Horton.
No new tests (No behavior change).
- platform/spi/cocoa/NSTouchBarSPI.h: Strategically relocate NS_ASSUME_NONNULL* macros.
- 8:46 PM Changeset in webkit [209384] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Fix dashboard region parsing
https://bugs.webkit.org/show_bug.cgi?id=165456
Reviewed by Zalan Bujtas.
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeWebkitDashboardRegion):
Make sure to reject whitespace by itself as well as unclosed dashboard-region functions.
- 8:34 PM Changeset in webkit [209383] by
-
- 4 edits in trunk/Source/WebCore
[CSS Parser] Properly reject large numeric values
https://bugs.webkit.org/show_bug.cgi?id=165455
Reviewed by Zalan Bujtas.
The new parser clamped numeric values in both the slow and fast paths to the max
and min float values. The old parser simply allowed the values to be inf, and then
had std::isinf checks to reject.
Blink rejects also even though it clamps, but I could not discern the mechanism by
which they did so. Therefore I am changing the new parser to exactly match the old
parser. Numeric values are no longer clamped, but instead are allowed to be inf, and
isinf checks now exist in the new parser in the same places they do in the old parser.
- css/parser/CSSParserFastPaths.cpp:
(WebCore::parseSimpleLength):
(WebCore::parseSimpleLengthValue):
- css/parser/CSSParserToken.cpp:
(WebCore::CSSParserToken::CSSParserToken):
- css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeLength):
(WebCore::CSSPropertyParserHelpers::consumePercent):
- 7:37 PM Changeset in webkit [209382] by
-
- 2 edits in tags/Safari-603.1.14.2/Source/WebCore
Merged r209379. rdar://problem/29514476
- 7:35 PM Changeset in webkit [209381] by
-
- 5 edits in tags/Safari-603.1.14.2/Source
Versioning.
- 7:33 PM Changeset in webkit [209380] by
-
- 1 copy in tags/Safari-603.1.14.2
New tag.
- 7:30 PM Changeset in webkit [209379] by
-
- 2 edits in trunk/Source/WebCore
STP 19 fails to launch on 16B255
https://bugs.webkit.org/show_bug.cgi?id=165388
-and corresponding-
rdar://problem/29514476
Reviewed by Tim Horton.
- platform/spi/cocoa/NSTouchBarSPI.h: Re-declare the SPI symbols as weak. The cited crash itself is for a
symbol we weren't handling here, but is part of the same group. Re-declare all four of these symbols to
be safe.
- 7:14 PM Changeset in webkit [209378] by
-
- 2 edits in trunk/Source/WebKit2
Try to fix the iOS Simulator build.
- UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::mapAllIOSurfaceBackingStore):
- 6:43 PM Changeset in webkit [209377] by
-
- 3 edits in trunk/Source/WebKit2
Minor reformat and renames in -didUpdateVisibleRect:
https://bugs.webkit.org/show_bug.cgi?id=165365
Reviewed by Dave Hyatt.
didUpdateVisibleRect:... has lots of parameters. Put one on each line.
Rename the rects to make it clear they are "content" rects (i.e. in document coordinates).
- UIProcess/ios/WKContentView.h:
- UIProcess/ios/WKContentView.mm:
(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:obscuredInset:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:enclosedInScrollableAncestorView:]):
- 6:41 PM Changeset in webkit [209376] by
-
- 2 edits in trunk/LayoutTests
[CSS Parser] Skip more bad tests
https://bugs.webkit.org/show_bug.cgi?id=165449
Reviewed by Zalan Bujtas.
The font tests have illegal declarations where the
ordering of the sub-properties is all wrong. Skip for
now until we can rewrite them.
The negative-calc value test is wrong, since tab-size
takes only positive integers, so a calc that resolves
to a negative number must be rejected. Avoid the test
for now until we can rewrite it.
- 6:37 PM Changeset in webkit [209375] by
-
- 7 edits in trunk
ERROR: post-layout: dirty renderer(s) - Encountered with LayoutTest media/modern-media-controls/media-controller/media-controller-fullscreen-ltr.html
https://bugs.webkit.org/show_bug.cgi?id=165312
Patch by Antoine Quint <Antoine Quint> on 2016-12-05
Reviewed by Simon Fraser.
Source/WebCore:
Reverting part of the code added in https://bugs.webkit.org/show_bug.cgi?id=165287 that triggered
an assertion. We go back to removing previous media controls as we add new ones when the fullscreen
status changes, and simply hide the controls during the animated transition using a CSS pseudo-class.
This also fixes an issue where we wouldn't have removed the previous controls should we have entered
fullscreen in a different way than clicking on the fullscreen button in the media controls.
We restore testing coverage that was fixed due to this assertion.
- Modules/modern-media-controls/controls/media-controls.css:
(:host(:-webkit-animating-full-screen-transition) .media-controls):
- Modules/modern-media-controls/controls/media-controls.js:
(MediaControls.prototype.fadeIn):
(MediaControls.prototype.presentInElement): Deleted.
- Modules/modern-media-controls/media/fullscreen-support.js:
(FullscreenSupport.prototype.buttonWasClicked):
- Modules/modern-media-controls/media/media-controller.js:
(MediaController.prototype._updateControlsIfNeeded):
LayoutTests:
Restore previously skipped tests.
- platform/mac/TestExpectations:
- 6:30 PM Changeset in webkit [209374] by
-
- 6 edits in trunk/LayoutTests
[CSS Parser] Tweak more layout tests to pass
https://bugs.webkit.org/show_bug.cgi?id=165447
Reviewed by Zalan Bujtas.
Add a few more tests to avoid.
- fast/css/parsing-font-variant-ligatures-expected.txt:
- fast/css/parsing-font-variant-ligatures.html:
Remove the assumption that multiple occurrences of the
same value are allowed.
- fast/filter-image/parse-filter-image-expected.txt:
- fast/filter-image/parse-filter-image.html:
Change the test to require url(), since you cannot omit it
and expect the filter to parse properly.
- 6:19 PM Changeset in webkit [209373] by
-
- 4 edits3 adds in trunk
MediaDocuments crash with modern media controls
https://bugs.webkit.org/show_bug.cgi?id=165446
<rdar://problem/29524959>
Reviewed by Antoine Quint.
Source/WebCore:
The modern media controls inject a <style> element into
the document, which exposed a bug when used in MediaDocuments.
Such documents were not getting a charset, and the hash table
for the CSSParserContexts was crashing.
Test: media/modern-media-controls/media-documents/insert-style-should-not-crash.html
- css/parser/CSSParserMode.h: Guard against an empty charset.
(WebCore::CSSParserContextHash::hash):
- dom/InlineStyleSheetOwner.cpp: Ask for the charset with fallback.
(WebCore::parserContextForElement):
LayoutTests:
- media/modern-media-controls/media-documents/insert-style-should-not-crash-expected.txt: Added.
- media/modern-media-controls/media-documents/insert-style-should-not-crash.html: Added.
- 6:08 PM Changeset in webkit [209372] by
-
- 2 edits in trunk/LayoutTests
[CSS Parser] Avoid more tests
https://bugs.webkit.org/show_bug.cgi?id=165445
Reviewed by Tim Horton.
Just skip the custom property test, since it's a ref test.
- 5:56 PM Changeset in webkit [209371] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] shape-rendering supports crispEdges rather than crisp-edges
https://bugs.webkit.org/show_bug.cgi?id=165443
Reviewed by Tim Horton.
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
- 5:45 PM Changeset in webkit [209370] by
-
- 4 edits in trunk/Source/WebCore
[CSS Parser] Support setting of custom properties from the CSS OM
https://bugs.webkit.org/show_bug.cgi?id=165442
Reviewed by Tim Horton.
- css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseCustomPropertyValue):
Call in to a new function in CSSParserImpl that can handle
custom property parsing.
- css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::parseCustomPropertyValue):
New function that is similar to parseValue, but handling custom
properties.
(WebCore::CSSParserImpl::consumeDeclaration):
(WebCore::CSSParserImpl::consumeCustomPropertyValue):
(WebCore::CSSParserImpl::consumeVariableValue): Deleted.
- css/parser/CSSParserImpl.h:
Rename consumeVariableValue to consumeCustomPropertyValue, since that
is more clear. consumeVariableValue sounds like you might be resolving
a variable reference rather than parsing a custom property's value.
- 5:07 PM Changeset in webkit [209369] by
-
- 16 edits in trunk/Source
Adopt CAMachPort-as-layer-contents
https://bugs.webkit.org/show_bug.cgi?id=141687
<rdar://problem/19393233>
Reviewed by Darin Adler.
No new tests, just a performance bump.
- platform/spi/cocoa/QuartzCoreSPI.h:
Add some SPI.
- Shared/mac/RemoteLayerBackingStore.h:
- Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::decode):
On the UI process side, instead of actually looking up the surface,
just keep the MachSendRight around, to later be turned into a CAMachPort.
(WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):
Make a CAMachPort and leak our send right into it. CAMachPort
will adopt the port and destroy it when needed.
(WebKit::RemoteLayerBackingStore::setBufferVolatility):
Tiny style fix.
- Shared/mac/RemoteLayerTreePropertyApplier.h:
- Shared/mac/RemoteLayerTreePropertyApplier.mm:
(WebKit::applyPropertiesToLayer):
(WebKit::RemoteLayerTreePropertyApplier::applyProperties):
- UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::prepareForAppSuspension):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::applicationDidFinishSnapshottingAfterEnteringBackground):
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::prepareForAppSuspension):
- UIProcess/mac/RemoteLayerTreeHost.h:
- UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::updateLayerTree):
(WebKit::RemoteLayerTreeHost::mapAllIOSurfaceBackingStore):
- WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
Two supporting changes in order to fix the two regressions that this
caused when we tried to land it two years ago:
When an app is being suspended, resolve all CAMachPort backing store
into actual IOSurfaces. Otherwise, any live CAMachPorts will keep a
+1 on their respective IOSurface's use count, causing us to fail to
mark them volatile, keeping the app alive for more time (re-trying the
volatility change), and increasing the likelihood of background jetsam.
If the debugging tile map is enabled, do not use CAMachPort, because
we don't have a great way to plumb the same CAMachPort to two layers
(and it doesn't seem to work even if you do). Instead, just map the
IOSurface into the UI process like we used to.
- 5:04 PM Changeset in webkit [209368] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] calcs on column-width that resolve to 0 should be discarded
https://bugs.webkit.org/show_bug.cgi?id=165439
Reviewed by Dean Jackson.
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeColumnWidth):
- 5:01 PM Changeset in webkit [209367] by
-
- 2 edits in trunk/Source/JavaScriptCore
Web Inspector: remove ASSERT from InspectorDebuggerAgent::derefAsyncCallData
https://bugs.webkit.org/show_bug.cgi?id=165413
<rdar://problem/29517587>
Reviewed by Brian Burg.
DOMTimer::removeById can call into InspectorInstrumentation with an
invalid identifier, so don't assert that async call data exists.
- inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::derefAsyncCallData):
- 4:21 PM Changeset in webkit [209366] by
-
- 5 edits in trunk
Web Inspector: Object.shallowEqual([{}], [{}]) should return true
https://bugs.webkit.org/show_bug.cgi?id=165397
Reviewed by Brian Burg.
Source/WebInspectorUI:
- UserInterface/Base/Utilities.js:
(value):
Array.shallowEqual should compare array items using strict equivalence,
and on failure defer to Object.shallowEqual.
LayoutTests:
Added passing and failing inputs for TestHarness.prototype.expectShallowEqual.
- inspector/unit-tests/test-harness-expect-functions-expected.txt:
- inspector/unit-tests/test-harness-expect-functions.html:
- 4:10 PM Changeset in webkit [209365] by
-
- 1 edit2 adds in trunk/PerformanceTests
Add an IndexedDB perf test to PerformanceTests.
https://bugs.webkit.org/show_bug.cgi?id=165430
Reviewed by Alex Christensen.
- IndexedDB/index-multientry.html: Added.
- 3:48 PM Changeset in webkit [209364] by
-
- 23 edits4 adds in trunk
pointer lock needs to be feature detectable
https://bugs.webkit.org/show_bug.cgi?id=165426
<rdar://problem/29486715>
Reviewed by Antoine Quint.
Source/WebCore:
Annotate the public-facing API for pointer-lock, so
that it is hidden when not available.
Also move the Setting to a RuntimeEnabledFeature, since
pointer-lock is exposed from WebKit as a feature.
Tests: pointer-lock/pointerlock-interface-disabled.html
pointer-lock/pointerlock-interface.html
- bindings/generic/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setPointerLockEnabled):
(WebCore::RuntimeEnabledFeatures::pointerLockEnabled):
- dom/Document.idl:
- dom/Element.idl:
- page/PointerLockController.cpp:
(WebCore::PointerLockController::requestPointerLock):
(WebCore::PointerLockController::requestPointerUnlock):
- page/Settings.in:
Source/WebKit/mac:
Set the RuntimeEnabledFeature as preferences
change.
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Source/WebKit2:
Set the RuntimeEnabledFeature as preferences
change.
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetPointerLockEnabled):
(WKPreferencesGetPointerLockEnabled):
- UIProcess/API/C/WKPreferencesRefPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Tools:
Expose the comment line to turn on/off pointer lock.
- DumpRenderTree/TestOptions.h:
- DumpRenderTree/TestOptions.mm:
(TestOptions::TestOptions):
- DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
- WebKitTestRunner/TestOptions.h:
- WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::viewSupportsOptions):
- WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::viewSupportsOptions):
Websites/webkit.org:
We can now accurately detect pointer-lock.
- experimental-features.html:
LayoutTests:
Checks that the API is hidden when the feature is turned off.
- pointer-lock/pointerlock-interface-disabled-expected.txt: Added.
- pointer-lock/pointerlock-interface-disabled.html: Added.
- pointer-lock/pointerlock-interface-expected.txt: Added.
- pointer-lock/pointerlock-interface.html: Added.
- 3:39 PM Changeset in webkit [209363] by
-
- 2 edits in trunk/LayoutTests
[CSS Parser] Skip a grid test
https://bugs.webkit.org/show_bug.cgi?id=165427
Reviewed by Zalan Bujtas.
- 3:38 PM Changeset in webkit [209362] by
-
- 2 edits in trunk/Source/JavaScriptCore
2016-12-05 Geoffrey Garen <ggaren@apple.com>
Fixed a bug in my last patch.
Unreviewed.
- bytecode/UnlinkedFunctionExecutable.h: Restore the conversion to one-based counting.
- 3:27 PM Changeset in webkit [209361] by
-
- 3 edits in trunk/Source/JavaScriptCore
Moved start and end column linking into helper functions
https://bugs.webkit.org/show_bug.cgi?id=165422
Reviewed by Sam Weinig.
- bytecode/UnlinkedFunctionExecutable.cpp:
(JSC::UnlinkedFunctionExecutable::link):
- bytecode/UnlinkedFunctionExecutable.h:
- 3:27 PM Changeset in webkit [209360] by
-
- 2 edits in trunk/Source/WebCore
Reduce number of platformMemoryUsage calls
https://bugs.webkit.org/show_bug.cgi?id=164375
Reviewed by Darin Adler.
Removed the calls to WTF::releaseFastMallocFreeMemory (it's already
called elsewhere in the free-all-memory pipeline) and
malloc_zone_pressure_relief (it should be called by the OS on its own
terms).
No new tests -- no new or changed features.
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::ReliefLogger::platformMemoryUsage):
- 3:19 PM Changeset in webkit [209359] by
-
- 2 edits in trunk/LayoutTests
[CSS Parser] Avoid more invalid tests
https://bugs.webkit.org/show_bug.cgi?id=165424
Reviewed by Dean Jackson.
Avoid the aspect-ratio test, since it thinks whitespace should not be allowed, even though
it should be. Avoid a couple of grid tests that assume the grid breadth can't be 0fr, even
though it can be. Non-negative means < 0, not <= 0 like the old parser assumes.
- 3:04 PM Changeset in webkit [209358] by
-
- 7 edits in trunk/Source/JavaScriptCore
Fix JSC files so that we can build a release build with NDEBUG #undef'ed.
https://bugs.webkit.org/show_bug.cgi?id=165409
Reviewed by Keith Miller.
This allows us to run a release build with DEBUG ASSERTs enabled.
- bytecode/BytecodeLivenessAnalysis.cpp:
- bytecode/UnlinkedEvalCodeBlock.cpp:
- bytecode/UnlinkedFunctionCodeBlock.cpp:
- bytecode/UnlinkedModuleProgramCodeBlock.cpp:
- bytecode/UnlinkedProgramCodeBlock.cpp:
- runtime/EvalExecutable.cpp:
- 3:00 PM Changeset in webkit [209357] by
-
- 4 edits in trunk/Source/JavaScriptCore
Renamed source => parentSource
https://bugs.webkit.org/show_bug.cgi?id=165419
Reviewed by Saam Barati.
This should help clarify that a FunctionExecutable holds the source
code to its *parent* scope, and not its own SourceCode.
- builtins/BuiltinExecutables.cpp:
(JSC::BuiltinExecutables::createExecutable):
- bytecode/UnlinkedFunctionExecutable.cpp:
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):
(JSC::UnlinkedFunctionExecutable::link):
- bytecode/UnlinkedFunctionExecutable.h:
- 2:56 PM Changeset in webkit [209356] by
-
- 2 edits in trunk/LayoutTests
[CSS Parser] Fix invalid column-span test
https://bugs.webkit.org/show_bug.cgi?id=165420
Reviewed by Dean Jackson.
- fast/multicol/newmulticol/spanner-becomes-regular-block.html:
- 2:53 PM Changeset in webkit [209355] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Leave the Animation type alone when the property is invalid
https://bugs.webkit.org/show_bug.cgi?id=165418
Reviewed by Dean Jackson.
- css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapAnimationProperty):
- 2:52 PM Changeset in webkit [209354] by
-
- 2 edits in trunk/LayoutTests
[CSS Parser] Avoid more tests
https://bugs.webkit.org/show_bug.cgi?id=165417
Reviewed by Simon Fraser.
- 2:46 PM Changeset in webkit [209353] by
-
- 8 edits in trunk/Source/JavaScriptCore
ScriptExecutable should not contain a copy of firstLine and startColumn
https://bugs.webkit.org/show_bug.cgi?id=165415
Reviewed by Keith Miller.
We already have this data in SourceCode.
It's super confusing to have two copies of this data, where one is
allowed to mutate. In reality, your line and column number never change.
- bytecode/UnlinkedFunctionExecutable.cpp:
(JSC::UnlinkedFunctionExecutable::link):
- runtime/CodeCache.cpp:
(JSC::CodeCache::getUnlinkedGlobalCodeBlock):
- runtime/CodeCache.h:
(JSC::generateUnlinkedCodeBlock):
- runtime/FunctionExecutable.cpp:
(JSC::FunctionExecutable::FunctionExecutable):
- runtime/FunctionExecutable.h:
- runtime/ScriptExecutable.cpp:
(JSC::ScriptExecutable::ScriptExecutable):
(JSC::ScriptExecutable::newCodeBlockFor):
- runtime/ScriptExecutable.h:
(JSC::ScriptExecutable::firstLine):
(JSC::ScriptExecutable::startColumn):
(JSC::ScriptExecutable::recordParse):
- 2:42 PM Changeset in webkit [209352] by
-
- 12 edits2 adds in trunk
keyframes do not work when defined inside a style in a shadowRoot
https://bugs.webkit.org/show_bug.cgi?id=164608
<rdar://problem/29210251>
Reviewed by Darin Adler.
Source/WebCore:
With :host and ::slotted rules a keyframe animation affecting an element can be
defined in a style scope different from the element's own scope. Style resolver
loses the scope information when building the RenderStyle so there is no way
to find out the correct scope.
Fix by passing style scope through to style builder and including a scope association
with the animation name. Find the correct scope when resolving keyframes.
Test: fast/shadow-dom/shadow-host-animation.html
- css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapAnimationName):
Include scope with the name.
- css/ElementRuleCollector.cpp:
(WebCore::MatchRequest::MatchRequest):
(WebCore::ElementRuleCollector::addMatchedRule):
(WebCore::ElementRuleCollector::sortAndTransferMatchedRules):
(WebCore::ElementRuleCollector::matchAuthorRules):
(WebCore::ElementRuleCollector::matchAuthorShadowPseudoElementRules):
(WebCore::ElementRuleCollector::matchHostPseudoClassRules):
(WebCore::ElementRuleCollector::matchSlottedPseudoElementRules):
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
Replace treeContextOrdinal int with Style::ScopeOrdinal enum carrying the same information.
Simplify the code removing unnecessary use of MatchRequest struct.
(WebCore::compareRules):
- css/ElementRuleCollector.h:
- css/StyleResolver.cpp:
(WebCore::StyleResolver::MatchResult::addMatchedProperties):
(WebCore::StyleResolver::CascadedProperties::setPropertyInternal):
(WebCore::StyleResolver::CascadedProperties::set):
(WebCore::StyleResolver::CascadedProperties::setDeferred):
Pass styleScopeOrdinal through the cascade mechanism
(WebCore::cascadeLevelForIndex):
(WebCore::StyleResolver::CascadedProperties::addMatch):
(WebCore::StyleResolver::CascadedProperties::addImportantMatches):
(WebCore::StyleResolver::CascadedProperties::Property::apply):
Set styleScopeOrdinal in State when applying style.
(WebCore::StyleResolver::CascadedProperties::addStyleProperties): Deleted.
Move the code to the only caller.
- css/StyleResolver.h:
(WebCore::StyleResolver::State::styleScopeOrdinal):
(WebCore::StyleResolver::State::setStyleScopeOrdinal):
- page/animation/CompositeAnimation.cpp:
(WebCore::KeyframeAnimation::KeyframeAnimation):
(WebCore::KeyframeAnimation::resolveKeyframeStyles):
Find the correct scope for resolving keyframes based on the scope ordinal.
- platform/animation/Animation.cpp:
- platform/animation/Animation.h:
Add m_nameStyleScopeOrdinal that tells the scope where the name is defined.
- style/StyleScope.cpp:
(WebCore::Style::Scope::forOrdinal):
Find the scope for ordinal.
- style/StyleScope.h:
Define ScopeOrdinal types.
(WebCore::Style::operator++):
LayoutTests:
- fast/shadow-dom/shadow-host-animation-expected.html: Added.
- fast/shadow-dom/shadow-host-animation.html: Added.
- 2:38 PM Changeset in webkit [209351] by
-
- 3 edits in trunk/Source/WebCore
[CSS Parser] Support glyph-orientation-horizontal and glyph-orientation-vertical
https://bugs.webkit.org/show_bug.cgi?id=165414
Reviewed by Zalan Bujtas.
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeGlyphOrientation):
(WebCore::CSSPropertyParser::parseSingleValue):
Add support for the glyph-orientation-horizontal and glyph-orientation-vertical
properties. They take an angle and allow unitless values.
- css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeAngle):
Fix a bug in the handling of unitless values for angles. Make sure to
actually pass in the value instead of always doing 0. Blink does not
accept unitless values for angles at all, so this is another difference
to investigate for SVG in the future.
- 2:20 PM Changeset in webkit [209350] by
-
- 5 edits in trunk
[JSC] report unexpected token when "async" is followed by identifier
https://bugs.webkit.org/show_bug.cgi?id=165091
Reviewed by Mark Lam.
JSTests:
- stress/bug-165091.js:
Source/JavaScriptCore:
Report a SyntaxError, in order to report correct error in contexts
an async ArrowFunction cannot occur. Also corrects errors in comment
describing JSTokenType bitfield, which was added in r209293.
- parser/Parser.cpp:
(JSC::Parser<LexerType>::parseMemberExpression):
- parser/ParserTokens.h:
- 2:16 PM Changeset in webkit [209349] by
-
- 2 edits in trunk/LayoutTests
Skip three media/modern-media-controls tests.
https://bugs.webkit.org/show_bug.cgi?id=165312
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 2:08 PM Changeset in webkit [209348] by
-
- 21 edits6 deletes in trunk
Unreviewed, rolling out r209299.
This change appears to have caused LayoutTest failures on
Sierra WK1.
Reverted changeset:
"Improve the behavior of scroll-into-view when the target is
inside position:fixed"
https://bugs.webkit.org/show_bug.cgi?id=165354
http://trac.webkit.org/changeset/209299
- 1:56 PM Changeset in webkit [209347] by
-
- 5 edits in trunk/LayoutTests
[CSS Parser] Fix column tests with illegal syntax
https://bugs.webkit.org/show_bug.cgi?id=165411
Reviewed by Zalan Bujtas.
Patch column-span layout tests that use invalid syntax
to use the spec-compliant syntax instead (none instead of 1).
- fast/multicol/newmulticol/remove-spanner4.html:
- fast/multicol/newmulticol/remove-spanner5.html:
- fast/multicol/newmulticol/remove-spanner6.html:
- fast/multicol/span/span-as-immediate-child-property-removal.html:
- 1:31 PM Changeset in webkit [209346] by
-
- 7 edits in trunk/Source
[Cocoa] Add some memory usage related information to sysdiagnose state dumps
<https://webkit.org/b/165375>
<rdar://problem/29057243>
Reviewed by Darin Adler.
Source/WebCore:
Add a flag to memoryUsageStatistics() to allow gathering of slightly more expensive information.
This mode is used when capturing a state dump for sysdiagnose.
The more expensive information added in this patch relates to information about live objects
and memory on the JavaScript heap.
- WebCore.xcodeproj/project.pbxproj:
- page/PerformanceLogging.cpp:
(WebCore::PerformanceLogging::memoryUsageStatistics):
(WebCore::PerformanceLogging::javaScriptObjectCounts):
(WebCore::PerformanceLogging::didReachPointOfInterest):
- page/PerformanceLogging.h:
Source/WebKit2:
Add two new entries to the sysdiagnose state dumps for WebContent processes:
"Memory Usage Stats" and "JavaScript Object Counts".
The first category contains all the interesting stuff from task_info()
along with some WebCore and JavaScriptCore object/memory counters.
The second category contains a list of all the JS object types currently live
on the heap, along with a count.
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::registerWithStateDumper): Add two new entries to the
state dictionary: "Memory Usage Stats" and "JavaScript Object Counts".
- 1:04 PM Changeset in webkit [209345] by
-
- 2 edits in trunk/LayoutTests
[CSS Parser] Avoid a few more tests
https://bugs.webkit.org/show_bug.cgi?id=165404
Reviewed by Zalan Bujtas.
- 12:51 PM Changeset in webkit [209344] by
-
- 3 edits in trunk/LayoutTests
[CSS Parser] Fix flex property parsing test
https://bugs.webkit.org/show_bug.cgi?id=165402
Reviewed by Simon Fraser.
flex-grow and flex-shrink must occur together. They cannot be before and after
the flex-basis. Since this test is about valid property declarations, just fix it
by removing the invalid ones.
- css3/flexbox/flex-property-parsing-expected.txt:
- css3/flexbox/flex-property-parsing.html:
- 12:38 PM Changeset in webkit [209343] by
-
- 2 edits in trunk/LayoutTests
Marking media/modern-media-controls/seek-backward-support/seek-backward-support.html as flaky on mac-wk1.
https://bugs.webkit.org/show_bug.cgi?id=165386
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 12:32 PM Changeset in webkit [209342] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: Remove legacy styles
https://bugs.webkit.org/show_bug.cgi?id=165389
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2016-12-05
Reviewed by Matt Baker.
Remove styles for platforms we don't build on anymore (Mavericks
and Mountain Lion). There are also no "unknown-mac" styles to
upgrade to a named platform.
- UserInterface/Base/Platform.js:
Add sierra and remove older unsupported platforms.
- UserInterface/Views/Main.css:
(body):
(body:not(.mavericks)): Deleted.
- UserInterface/Views/TabBar.css:
(body.mavericks .tab-bar > .item:not(.disabled).selected): Deleted.
- UserInterface/Views/Toolbar.css:
(body .toolbar):
(body.window-inactive .toolbar):
(body.mac-platform:not(.docked) .toolbar):
(body.mac-platform:not(.docked)):
(body:not(.mavericks) .toolbar,): Deleted.
(body.window-inactive:not(.mavericks) .toolbar): Deleted.
(body.mac-platform:not(.docked, .mavericks) .toolbar): Deleted.
(body.mac-platform:not(.docked, .mavericks)): Deleted.
Remove mavericks specific styles.
- 12:26 PM Changeset in webkit [209341] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Make sure the transform fast path uses WebKitCSSTransformValue
https://bugs.webkit.org/show_bug.cgi?id=165399
Reviewed by Dean Jackson.
- css/parser/CSSParserFastPaths.cpp:
(WebCore::parseTransformTranslateArguments):
(WebCore::parseTransformNumberArguments):
(WebCore::parseSimpleTransformValue):
(WebCore::parseSimpleTransformList):
- 12:17 PM Changeset in webkit [209340] by
-
- 2 edits in tags/Safari-603.1.14.1/Source/WebCore
Merge r209332. rdar://problem/29514476
- 12:17 PM Changeset in webkit [209339] by
-
- 2 edits in tags/Safari-603.1.14.1/Source/WebCore
Merge r209330. rdar://problem/29514476
- 12:11 PM Changeset in webkit [209338] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Fix calc() with -webkit-line-clamp
https://bugs.webkit.org/show_bug.cgi?id=165398
Reviewed by Zalan Bujtas.
Remove the aggressive token type checking up front, since it was causing calc() to not
be allowed.
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeLineClamp):
- 12:02 PM Changeset in webkit [209337] by
-
- 4 edits in trunk/Tools
Make it possible to use an existing simulator instance for one-off testing
https://bugs.webkit.org/show_bug.cgi?id=164568
<rdar://problem/29189133>
Reviewed by Daniel Bates.
With this patch, if a simulator is currently running on the machine and
'--dedicated-simulators' is not passed into the application, only one simulator
instance will be used, and this instance will be the existing instance.
If no simulator is running or '--dedicated-simulators' is passed to the script,
previous behavior will be used.
- Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
- Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort.init): Logic for enabling usage of currently running simulator.
(IOSSimulatorPort._create_simulators): Only create simulators when needed, don't reset already running simulators.
(IOSSimulatorPort.setup_test_run): Don't open already running simulators.
(IOSSimulatorPort._quit_ios_simulator): Only quit simulators if we manage them.
(IOSSimulatorPort.clean_up_test_run): Only clean up simulators if we manage them.
(IOSSimulatorPort._using_dedicated_simulators): True if simulators need to be managed, false if using an existing instance.
(IOSSimulatorPort.device_id_for_worker_number): Access currently running simulator if not managing devices.
- Scripts/webkitpy/xcode/simulator.py:
(Simulator.refresh): Check if xcode_simctl_list returned None instead of a generator.
(Simulator.current_device): Get currently running device.
- 12:01 PM Changeset in webkit [209336] by
-
- 1 edit2 deletes in trunk/LayoutTests
[CSS Parser] Remove calc column-span test
https://bugs.webkit.org/show_bug.cgi?id=165393
Reviewed by Zalan Bujtas.
"1" is not a legal value for column-span, let alone allowing it to support a calc that
resolves to 1.
- fast/css/webkit-column-span-calculated-value-expected.txt: Removed.
- fast/css/webkit-column-span-calculated-value.html: Removed.
- 11:36 AM Changeset in webkit [209335] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Support -webkit-text-decoration
https://bugs.webkit.org/show_bug.cgi?id=165391
Reviewed by Dean Jackson.
- css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::parseShorthand):
- 11:33 AM Changeset in webkit [209334] by
-
- 5 edits in branches/safari-602-branch/Source
Versioning.
- 11:31 AM Changeset in webkit [209333] by
-
- 5 edits in tags/Safari-603.1.14.1/Source
Versioning.
- 11:25 AM Changeset in webkit [209332] by
-
- 2 edits in trunk/Source/WebCore
STP 19 fails to launch on 16B255
https://bugs.webkit.org/show_bug.cgi?id=165388
-and corresponding-
rdar://problem/29514476
Rubber-stamped by Brady Eidson.
- platform/spi/cocoa/NSTouchBarSPI.h:
- 11:24 AM Changeset in webkit [209331] by
-
- 1 copy in tags/Safari-603.1.14.1
New tag.
- 11:21 AM Changeset in webkit [209330] by
-
- 2 edits in trunk/Source/WebCore
STP 19 fails to launch on 16B255
https://bugs.webkit.org/show_bug.cgi?id=165388
-and corresponding-
rdar://problem/29514476
Reviewed by Tim Horton.
Speculative fix.
- platform/spi/cocoa/NSTouchBarSPI.h:
- 11:17 AM Changeset in webkit [209329] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Support the 'alphabetic' keyword for text-underline-position
https://bugs.webkit.org/show_bug.cgi?id=165387
Reviewed by Simon Fraser.
Fixes fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-underline-position.html
- css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::parseSingleValue):
- 11:03 AM Changeset in webkit [209328] by
-
- 4 edits in trunk
Add Wasm i64 to i32 conversion.
https://bugs.webkit.org/show_bug.cgi?id=165378
Reviewed by Filip Pizlo.
It turns out the wrap operation is just B3's Trunc.
- wasm/wasm.json:
- 11:02 AM Changeset in webkit [209327] by
-
- 2 edits in trunk/Tools
Disable a crashing test on iOS.
- TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
- 11:02 AM Changeset in webkit [209326] by
-
- 5 edits1 add in trunk/Source
REGRESSION(r208985): SafariForWebKitDevelopment Symbol Not Found looking for method with WTF::Optional
https://bugs.webkit.org/show_bug.cgi?id=165351
Reviewed by Yusuke Suzuki.
Source/JavaScriptCore:
Some versions of Safari expect:
Inspector::BackendDispatcher::reportProtocolError(WTF::Optional<long>, Inspector::BackendDispatcher::CommonErrorCode, WTF::String const&)
Which we had updated to use std::optional. Expose a version with the original
Symbol for these Safaris. This stub will just call through to the new version.
- inspector/InspectorBackendDispatcher.cpp:
(Inspector::BackendDispatcher::reportProtocolError):
- inspector/InspectorBackendDispatcher.h:
Source/WTF:
Include a slimmed down version of WTF::Optional which older versions
of Safari still depend on for a JavaScriptCore exported symbol.
To prevent misuse name it WTF::DeprecatedOptional and use it only in
the one instance it is needed.
- WTF.xcodeproj/project.pbxproj:
- wtf/DeprecatedOptional.h: Added.
(WTF::Optional::operator bool):
(WTF::Optional::value):
(WTF::Optional::asPtr):
- 10:19 AM Changeset in webkit [209325] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Fix assert when unknown properties are encountered.
https://bugs.webkit.org/show_bug.cgi?id=165385
Reviewed by Zalan Bujtas.
- css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapAnimationProperty):
- 10:04 AM Changeset in webkit [209324] by
-
- 3 edits in trunk/Source/WebCore
[CSS Parser] Fix rx and ry parsing
https://bugs.webkit.org/show_bug.cgi?id=165383
Reviewed by Dean Jackson.
- css/parser/CSSParserFastPaths.cpp:
(WebCore::isSimpleLengthPropertyID):
rx and ry can be negative in the slow path, so make sure they can be negative in the
fast path too.
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeRxOrRy):
Disallow auto as a value since we are not equipped to handle it, and it's not clear if it's
even valid.
- 9:50 AM Changeset in webkit [209323] by
-
- 2 edits in trunk/LayoutTests
Marking media/modern-media-controls/media-controller/media-controller-resize.html as flaky on macOS.
https://bugs.webkit.org/show_bug.cgi?id=164571
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 9:47 AM Changeset in webkit [209322] by
-
- 8 edits in trunk/Source
Add STDC_FORMAT_MACROS before inttypes.h is included
https://bugs.webkit.org/show_bug.cgi?id=165374
We need formatting macros like PRIu64 to be available in all places where
inttypes.h header is used. All these usages get inttypes.h definitions
via wtf/Assertions.h header, except SQLiteFileSystem.cpp where formatting
macros are not used anymore since r185129.
This patch fixes multiple build errors with MinGW and reduces number of
independent STDC_FORMAT_MACROS uses in the code base.
Reviewed by Darin Adler.
Source/JavaScriptCore:
- disassembler/ARM64/A64DOpcode.cpp: Removed STDC_FORMAT_MACROS
because it is obtained via Assertions.h now
- disassembler/ARM64Disassembler.cpp: Ditto.
Source/WebCore:
No new tests needed.
- platform/sql/SQLiteFileSystem.cpp: Removed unused inttypes.h
inclusion.
Source/WTF:
- wtf/Assertions.h: Define STDC_FORMAT_MACROS.
- wtf/StdLibExtras.h: Remove definition of PRId64 for Windows, as we
have STDC_FORMAT_MACROS defined now.
- 9:43 AM Changeset in webkit [209321] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Properly fail on bad values for -webkit-clip-path
https://bugs.webkit.org/show_bug.cgi?id=165382
Reviewed by Dean Jackson.
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeBasicShapeOrBox):
- 9:35 AM Changeset in webkit [209320] by
-
- 3 edits in trunk/Source/WebCore
[CSS Parser] The page-break-* properties are only keyword props for old parser.
https://bugs.webkit.org/show_bug.cgi?id=165381
Reviewed by Dean Jackson.
- css/parser/CSSParser.cpp:
(WebCore::isKeywordPropertyID):
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isKeywordPropertyID):
- 9:28 AM Changeset in webkit [209319] by
-
- 2 edits in trunk/Source/WebCore
[CSS Parser] Don't use CSS_PARSER_INTEGER unit for resolved integer calcs.
https://bugs.webkit.org/show_bug.cgi?id=165379
Reviewed by Dean Jackson.
- css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::CalcParser::consumeNumber):
- 9:13 AM Changeset in webkit [209318] by
-
- 6 edits in trunk/Source/WebCore
[CSS Parser] Add parseValue support to new parser. Use new parser for UA sheet too if useNewParser is set.
https://bugs.webkit.org/show_bug.cgi?id=165376
Reviewed by Zalan Bujtas.
- css/StyleColor.cpp:
(WebCore::StyleColor::isColorKeyword):
Include system colors when using the fast parseValue path.
- css/parser/CSSParser.cpp:
(WebCore::CSSParser::setupParser):
Add an assert to catch any code path using the old parser when the new parser flag is set.
(WebCore::CSSParser::parseSheet):
(WebCore::CSSParser::parseRule):
(WebCore::CSSParser::parseKeyframeRule):
(WebCore::CSSParser::parseSupportsCondition):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseSelector):
(WebCore::CSSParser::parseDeclaration):
Patched to use the new parser in UASheetMode as well as other modes when the new parser flag
is set. parseValue is patched to use the new parser's fast paths and to call into CSSParserImpl's
parseValue.
- css/parser/CSSParserFastPaths.cpp:
(WebCore::isSimpleLengthPropertyID):
Support CSSPropertyShapeMargin in the fast path since the old parser did in its fast path.
(WebCore::parseSimpleLengthValue):
Don't ever return unitless numbers. If we accept a unitless number, convert the unit to PX still.
(WebCore::CSSParserFastPaths::parseColor):
Use the CSSValuePool when creating colors on the fast path.
- css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::parseValue):
- css/parser/CSSParserImpl.h:
Change the return type to be compatible with the old parser's ParseResult flag.
- 9:06 AM Changeset in webkit [209317] by
-
- 1 edit2 deletes in trunk/Source/WebCore
Removed MediaPlayerPrivateTaskTimer
https://bugs.webkit.org/show_bug.cgi?id=165373
Reviewed by Sam Weinig.
It is not used anywhere since QTSDK removal in r165476.
No new tests needed.
- platform/graphics/win/MediaPlayerPrivateTaskTimer.cpp: Removed.
- platform/graphics/win/MediaPlayerPrivateTaskTimer.h: Removed.
- 3:50 AM Changeset in webkit [209316] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed cmake buildfix after r209307.
- PlatformMac.cmake:
- 3:31 AM Changeset in webkit [209315] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed cmake buildfix after r209252.
- PlatformMac.cmake:
Dec 4, 2016:
- 4:35 PM Changeset in webkit [209314] by
-
- 13 edits in trunk
[CSS Parser] Eliminate in-place lowercasing in the parser.
https://bugs.webkit.org/show_bug.cgi?id=165368
Reviewed by Darin Adler.
Source/WebCore:
Replace the in-place lowercasing that the parser does with new
mechanisms. In-place lowercasing ruins serialization and doesn't
work on CSS parsed from static strings. It also has the side effect
of mutating strings passed in from JavaScript like for querySelectorAll.
For class/id selectors, we now check if the string is lowercase or not.
If it contains uppercase ASCII characters, then we allocate the RareData
for the selector. RareData now has two fields instead of one for the value,
a matching value (all lowercase in quirks mode), and a serializing value (the
original string). Because this is done at the CSSSelector level, the old
parser has been patched as well for these cases.
In addition, in-place lowercasing was done for pseudo-elements, for
media query features, and for attr(). In all of these cases we do
lowercase converting by first checking if it's needed. Serialization will
not retain the original string in these cases, so we may want to revisit
these cases in the future and apply a solution similar to what we did for
selectors.
- css/CSSGrammar.y.in:
- css/CSSSelector.cpp:
(WebCore::CSSSelector::createRareData):
(WebCore::CSSSelector::selectorText):
(WebCore::CSSSelector::RareData::RareData):
(WebCore::CSSSelector::RareData::~RareData):
- css/CSSSelector.h:
(WebCore::CSSSelector::RareData::create):
(WebCore::CSSSelector::setValue):
(WebCore::CSSSelector::value):
(WebCore::CSSSelector::serializingValue):
- css/MediaQueryExp.cpp:
(WebCore::MediaQueryExpression::MediaQueryExpression):
- css/parser/CSSParserToken.cpp:
(WebCore::convertToASCIILowercaseInPlace): Deleted.
(WebCore::CSSParserToken::convertToASCIILowercaseInPlace): Deleted.
- css/parser/CSSParserToken.h:
- css/parser/CSSParserValues.h:
(WebCore::CSSParserSelector::setValue):
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeAttr):
- css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeId):
(WebCore::CSSSelectorParser::consumeClass):
(WebCore::CSSSelectorParser::consumePseudo):
- css/parser/MediaQueryParser.cpp:
(WebCore::MediaQueryParser::readFeature):
LayoutTests:
- fast/media/mq-pointer-expected.txt:
- 2:47 PM Changeset in webkit [209313] by
-
- 9 edits2 adds in trunk
Add support for Wasm ctz and popcnt
https://bugs.webkit.org/show_bug.cgi?id=165369
Reviewed by Saam Barati.
JSTests:
- wasm/function-tests/ctz.js: Added.
- wasm/function-tests/popcnt.js: Added.
Source/JavaScriptCore:
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::countTrailingZeros32):
(JSC::MacroAssemblerARM64::countTrailingZeros64):
- assembler/MacroAssemblerX86Common.cpp:
- assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::countTrailingZeros32):
(JSC::MacroAssemblerX86Common::supportsBMI1):
(JSC::MacroAssemblerX86Common::ctzAfterBsf):
- assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::countTrailingZeros64):
- assembler/X86Assembler.h:
(JSC::X86Assembler::tzcnt_rr):
(JSC::X86Assembler::tzcntq_rr):
(JSC::X86Assembler::bsf_rr):
(JSC::X86Assembler::bsfq_rr):
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32Ctz>):
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64Ctz>):
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32Popcnt>):
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64Popcnt>):
- wasm/WasmFunctionParser.h:
(JSC::Wasm::FunctionParser<Context>::parseExpression):
- 1:23 PM Changeset in webkit [209312] by
-
- 22 edits2 adds in trunk/Source/JavaScriptCore
We should have a Wasm callee
https://bugs.webkit.org/show_bug.cgi?id=165163
Reviewed by Keith Miller.
This patch adds JSWebAssemblyCallee and stores it into the
callee slot in the call frame as part of the prologue of a
wasm function. This is the first step in implementing
unwinding from/through wasm frames. We will use the callee
to identify that a machine frame belongs to wasm code.
- CMakeLists.txt:
- JavaScriptCore.xcodeproj/project.pbxproj:
- jsc.cpp:
(callWasmFunction):
(functionTestWasmModuleFunctions):
- llint/LowLevelInterpreter64.asm:
- runtime/JSGlobalObject.cpp:
- runtime/VM.cpp:
(JSC::VM::VM):
- runtime/VM.h:
- wasm/JSWebAssembly.h:
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::B3IRGenerator):
(JSC::Wasm::parseAndCompile):
- wasm/WasmCallingConvention.h:
(JSC::Wasm::CallingConvention::setupFrameInPrologue):
- wasm/WasmFormat.h:
- wasm/WasmPlan.cpp:
(JSC::Wasm::Plan::initializeCallees):
- wasm/WasmPlan.h:
(JSC::Wasm::Plan::compiledFunction):
(JSC::Wasm::Plan::getCompiledFunctions): Deleted.
- wasm/js/JSWebAssemblyCallee.cpp: Added.
(JSC::JSWebAssemblyCallee::JSWebAssemblyCallee):
(JSC::JSWebAssemblyCallee::finishCreation):
(JSC::JSWebAssemblyCallee::destroy):
- wasm/js/JSWebAssemblyCallee.h: Added.
(JSC::JSWebAssemblyCallee::create):
(JSC::JSWebAssemblyCallee::createStructure):
(JSC::JSWebAssemblyCallee::jsEntryPoint):
- wasm/js/JSWebAssemblyModule.cpp:
(JSC::JSWebAssemblyModule::create):
(JSC::JSWebAssemblyModule::JSWebAssemblyModule):
(JSC::JSWebAssemblyModule::visitChildren):
- wasm/js/JSWebAssemblyModule.h:
(JSC::JSWebAssemblyModule::moduleInformation):
(JSC::JSWebAssemblyModule::callee):
(JSC::JSWebAssemblyModule::callees):
(JSC::JSWebAssemblyModule::offsetOfCallees):
(JSC::JSWebAssemblyModule::allocationSize):
(JSC::JSWebAssemblyModule::compiledFunctions): Deleted.
- wasm/js/WebAssemblyFunction.cpp:
(JSC::callWebAssemblyFunction):
(JSC::WebAssemblyFunction::create):
(JSC::WebAssemblyFunction::visitChildren):
(JSC::WebAssemblyFunction::finishCreation):
- wasm/js/WebAssemblyFunction.h:
(JSC::WebAssemblyFunction::webAssemblyCallee):
(JSC::WebAssemblyFunction::instance):
(JSC::WebAssemblyFunction::signature):
(JSC::CallableWebAssemblyFunction::CallableWebAssemblyFunction): Deleted.
(JSC::WebAssemblyFunction::webAssemblyFunctionCell): Deleted.
- wasm/js/WebAssemblyFunctionCell.cpp:
(JSC::WebAssemblyFunctionCell::create): Deleted.
(JSC::WebAssemblyFunctionCell::WebAssemblyFunctionCell): Deleted.
(JSC::WebAssemblyFunctionCell::destroy): Deleted.
(JSC::WebAssemblyFunctionCell::createStructure): Deleted.
- wasm/js/WebAssemblyFunctionCell.h:
(JSC::WebAssemblyFunctionCell::function): Deleted.
- wasm/js/WebAssemblyModuleConstructor.cpp:
(JSC::constructJSWebAssemblyModule):
- wasm/js/WebAssemblyModuleRecord.cpp:
(JSC::WebAssemblyModuleRecord::link):
- 12:22 PM Changeset in webkit [209311] by
-
- 3 edits2 adds in trunk
Web Inspector: Assertion Failures breakpoint should respect global Breakpoints enabled setting
https://bugs.webkit.org/show_bug.cgi?id=165277
<rdar://problem/29467098>
Reviewed by Mark Lam.
Source/JavaScriptCore:
- inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::handleConsoleAssert):
Check that breakpoints are active before pausing.
LayoutTests:
New test for DebuggerManager.prototype.breakPointsEnabled.
- inspector/debugger/breakpoints-disabled-expected.txt: Added.
- inspector/debugger/breakpoints-disabled.html: Added.
- 1:20 AM Changeset in webkit [209310] by
-
- 4 edits in trunk
Fix a build break on EFL since r209303.
Unreviewed build fix.
Source/WebCore:
- bindings/js/SerializedScriptValue.cpp:
(WebCore::exceptionForSerializationFailure): Add a return in the end of function.
Tools:
- Scripts/webkitperl/FeatureList.pm: Disable SS Device Adaptation temporarily.