Timeline
Aug 28, 2019:
- 11:49 PM Changeset in webkit [249247] by
-
- 5 edits1 add in trunk
DFG/FTL: We should prefetch structures and do a loadLoadFence before doing PrototypeChainIsSane checks.
https://bugs.webkit.org/show_bug.cgi?id=201281
<rdar://problem/54028228>
Reviewed by Yusuke Suzuki and Saam Barati.
JSTests:
- stress/structure-storedPrototype-should-only-assert-on-the-mutator-thread.js: Added.
Source/JavaScriptCore:
This (see title above) is already the preferred idiom used in most places in our
compiler, except for 2: DFG's SpeculativeJIT::compileGetByValOnString() and FTL's
compileStringCharAt(). Consider the following:
bool prototypeChainIsSane = false;
if (globalObject->stringPrototypeChainIsSane()) {
...
m_graph.registerAndWatchStructureTransition(globalObject->stringPrototype()->structure(vm()));
m_graph.registerAndWatchStructureTransition(globalObject->objectPrototype()->structure(vm()));
prototypeChainIsSane = globalObject->stringPrototypeChainIsSane();
}
What's essential for correctness here is that the stringPrototype and objectPrototype
structures be loaded before the loads in the second stringPrototypeChainIsSane()
check. Without a loadLoadFence before the second stringPrototypeChainIsSane()
check, we can't guarantee that. Elsewhere in the compiler, the preferred idiom
for doing this right is to pre-load the structures first, do a loadLoadFence, and
then do the IsSane check just once after e.g.
Structure* arrayPrototypeStructure = globalObject->arrayPrototype()->structure(m_vm);
Structure* objectPrototypeStructure = globalObject->objectPrototype()->structure(m_vm);
if (arrayPrototypeStructure->transitionWatchpointSetIsStillValid() has loadLoadFences.
&& objectPrototypeStructure->transitionWatchpointSetIsStillValid() has loadLoadFences.
&& globalObject->arrayPrototypeChainIsSane()) {
m_graph.registerAndWatchStructureTransition(arrayPrototypeStructure);
m_graph.registerAndWatchStructureTransition(objectPrototypeStructure);
...
}
This patch changes DFG's SpeculativeJIT::compileGetByValOnString() and FTL's
compileStringCharAt() to follow the same idiom.
We also fix a bad assertion in Structure::storedPrototype() and
Structure::storedPrototypeObject(). The assertion is only correct when those
methods are called from the mutator thread. The assertion has been updated to
only check its test condition if the current thread is the mutator thread.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileStringCharAt):
- runtime/StructureInlines.h:
(JSC::Structure::storedPrototype const):
(JSC::Structure::storedPrototypeObject const):
- 11:46 PM Changeset in webkit [249246] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: REGRESSION(r249078): JavaScript autocomplete doesn't work when evaluating properties of values
https://bugs.webkit.org/show_bug.cgi?id=201226
Reviewed by Joseph Pecoraro.
r249078 modified
WI.JavaScriptRuntimeCompletionProviderto use arrays of property names
instead of objects for completion, but a few code paths were missed.
- UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
(WI.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.evaluated):
(WI.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.receivedPropertyNamesFromEvaluate):
(WI.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.receivedObjectPropertyNames): Added.
(WI.JavaScriptRuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.receivedArrayPropertyNames):
- UserInterface/Models/CallFrame.js:
(WI.CallFrame.prototype.collectScopeChainVariableNames):
(WI.CallFrame.prototype.collectScopeChainVariableNames.propertiesCollected):
- 11:26 PM Changeset in webkit [249245] by
-
- 2 edits in trunk/Tools
[Win] MiniBrowser crashes in WKURLCopyString if WKPageCopyActiveURL returns null
https://bugs.webkit.org/show_bug.cgi?id=201215
Reviewed by Don Olmstead.
MiniBrowser crashed if it was going to go to a unreachable page
because WKPageCopyActiveURL returned a nullptr.
- MiniBrowser/win/WebKitBrowserWindow.cpp:
(createString): Added null checking of the argument.
- 11:13 PM Changeset in webkit [249244] by
-
- 2 edits in trunk/Source/WebCore
[Nicosia] Implement layer representation retain, release mechanics
https://bugs.webkit.org/show_bug.cgi?id=201133
Reviewed by Carlos Garcia Campos.
- page/scrolling/nicosia/ScrollingStateNodeNicosia.cpp:
(WebCore::LayerRepresentation::retainPlatformLayer):
Type-cast the layer object to the reference-counted
Nicosia::PlatformLayer type and reference that object.
(WebCore::LayerRepresentation::releasePlatformLayer):
Ditto, but dereference the object.
- 11:13 PM Changeset in webkit [249243] by
-
- 2 edits in trunk/Source/WebCore
[Nicosia] Add Nicosia::PlatformLayer::accessStaging() helper
https://bugs.webkit.org/show_bug.cgi?id=201132
Reviewed by Carlos Garcia Campos.
- platform/graphics/nicosia/NicosiaPlatformLayer.h:
(Nicosia::CompositionLayer::accessStaging):
Add an accessor into the staging state of the Nicosia::PlatformLayer
object. This will be needed for the application of scrolling changes
in the asynchronous scrolling system.
- 11:12 PM Changeset in webkit [249242] by
-
- 3 edits in trunk/Source/WebCore
[CoordGraphics] Expose Nicosia layer as the underlying CoordinatedGraphicsLayer platform layer
https://bugs.webkit.org/show_bug.cgi?id=201131
Reviewed by Carlos Garcia Campos.
Add the CoordinatedGraphicsLayer::platformLayer() override, returning
the Nicosia::CompositionLayer object as the underlying platform layer.
This will come in handy for asynchronous scrolling.
- platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::platformLayer const):
- platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
- 11:11 PM Changeset in webkit [249241] by
-
- 2 edits in trunk/Source/WebCore
[Nicosia] Polish ScrollingCoordinator implementation
https://bugs.webkit.org/show_bug.cgi?id=201130
Reviewed by Carlos Garcia Campos.
These changes primarily mirror the Mac implementation of this class.
- page/scrolling/nicosia/ScrollingCoordinatorNicosia.cpp:
(WebCore::ScrollingCoordinatorNicosia::pageDestroyed):
Upon releasing the ThreadedScrollingTree, it should also be invalidated
on the scrolling thread.
(WebCore::ScrollingCoordinatorNicosia::commitTreeState):
Invoke willCommitTree() at the beginning of this method. Additionally
the pending-commit-count is incremented for the ThreadedScrollingTree
object.
- 10:57 PM Changeset in webkit [249240] by
-
- 4 edits in branches/safari-608-branch
Cherry-pick r249224. rdar://problem/54819205
Null check webFrame when creating a print preview to prevent a crash.
https://bugs.webkit.org/show_bug.cgi?id=201237
<rdar://problem/51618863>
Reviewed by Tim Horton.
Source/WebKit:
Move and expend a null check to keep from crashing when making a print preview.
- UIProcess/mac/WKPrintingView.mm: (-[WKPrintingView _drawPreview:]): (-[WKPrintingView drawRect:]):
Tools:
Test to verify that if we don't have the WebPageProxy, we will not crash when making a print preview.
- TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm: (TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249224 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:57 PM Changeset in webkit [249239] by
-
- 3 edits3 adds in branches/safari-608-branch
Cherry-pick r249156. rdar://problem/54775048
Crash under WebCore::jsNotificationConstructorPermission
https://bugs.webkit.org/show_bug.cgi?id=201186
<rdar://problem/53962833>
Reviewed by Youenn Fablet.
Source/WebCore:
Update the Notification API implementation to null-check the page before using. The page becomes null
when using the API in a frame that gets detached from its parent while in the middle of running
script.
Test: http/tests/notifications/request-in-detached-frame.html
- Modules/notifications/Notification.cpp: (WebCore::Notification::permission): (WebCore::Notification::requestPermission):
LayoutTests:
Add layout test coverage.
- http/tests/notifications/request-in-detached-frame-expected.txt: Added.
- http/tests/notifications/request-in-detached-frame.html: Added.
- http/tests/notifications/resources/request-in-detached-frame-subframe.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249156 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:57 PM Changeset in webkit [249238] by
-
- 3 edits in branches/safari-608-branch/Source/WebCore
Cherry-pick r249154. rdar://problem/54775050
Disabled devices should not be taken into account when searching for a capture device
https://bugs.webkit.org/show_bug.cgi?id=201183
<rdar://problem/54353440>
Reviewed by Jer Noble.
Manually tested.
- platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp: (WebCore::CoreAudioCaptureDeviceManager::coreAudioDeviceWithUID): We currently keep a list of devices, some of which might be disabled. We should not take into account disabled devices, only enabled devices when doing this search.
- platform/mediastream/mac/CoreAudioCaptureSource.cpp: (WebCore::CoreAudioSharedUnit::setupAudioUnit): Improve logging.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249154 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:14 PM Changeset in webkit [249237] by
-
- 19 edits in trunk
Make tabIndex IDL attribute reflect its content attribute
https://bugs.webkit.org/show_bug.cgi?id=199606
<rdar://problem/52811448>
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/html/dom/reflection-misc-expected.txt: Rebaselined now that test cases for summary are passing.
Source/WebCore:
This patch makes tabIndex IDL attribute no longer return 0 when the element is focusable
to match the latest HTML5 specification. Instead, the IDL attribute simply reflect the tabindex
content attribute with some elements having 0 as the default tab index (see r248784):
https://html.spec.whatwg.org/multipage/interaction.html#the-tabindex-attribute
The practical implication is that tabIndex IDL attribute on a root editable element (a.k.a.
editing host in HTML5 spec term), body element in design mode, and media elements with
media controls would start returning -1 instead of 0.
Mechanically, this is accomplished by removing the special case in Element::tabIndexForBindings
when supportsFocus returned true. The effect, if any, this patch has on each element which
overrides Element::supportsFocus is summarized as follows (indentation simplies inheritance):
HTMLAnchorElement -> No effect since defaultTabIndex returns 0.
HTMLAreaElement -> Ditto.
HTMLBodyElement -> Changes to return -1 in design mode.
HTMLElement -> Changes to return -1 on a root editable element.
HTMLFormControlElement
HTMLButtonElement -> No effect since defaultTabIndex returns 0.
HTMLFieldSetElement -> No effect since this is an override to use HTMLElement's supportsFocus.
HTMLFormControlElementWithState
HTMLKeygenElement -> No effect since defaultTabIndex returns 0.
HTMLSelectElement -> Ditto.
HTMLTextFormControlElement -> Ditto.
HTMLInputElement -> Ditto.
HTMLTextAreaElement -> Ditto.
HTMLOutputElement -> No effect since this is an override to use HTMLElement's supportsFocus.
HTMLFrameElementBase - No change. Added defaultTabIndex on HTMLIFrameElement and HTMLFrameElement
to returns 0.
HTMLImageElement - No impact since it only affects when an image is set to be editable via SPI.
HTMLMediaElement - Changes to return -1 when media controls is present.
HTMLPlugInElement - applet and embed elements change to return -1 when the plugin is available.
HTMLSummaryElement - No change. Added defaultTabIndex to return 0 when it's active to match
supportsFocus as well as the HTML5 specification.
MathMLElement - No effect since tabIndex IDL attribute does not exist in MathML.
SVGAElement - No effect since defaultTabIndex returns 0.
SVGClipPathElement - No effect since it always returns false.
SVGDefsElement - No effect since it always returns false.
Tests: fast/dom/tabindex-defaults.html
plugins/focus.html
- dom/Element.cpp:
(WebCore::Element::tabIndexForBindings const): Made the change.
- html/HTMLFrameElement.cpp:
(WebCore::HTMLFrameElement::defaultTabIndex const): Added to preserve the existing behavior.
- html/HTMLFrameElement.h:
- html/HTMLIFrameElement.cpp:
(WebCore::HTMLIFrameElement::defaultTabIndex const): Ditto.
- html/HTMLIFrameElement.h:
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::defaultTabIndex const): Added. Always return 0 to match the spec.
- html/HTMLObjectElement.h:
- html/HTMLSummaryElement.cpp:
(WebCore::HTMLSummaryElement::defaultTabIndex const): Added. Return 0 when the this summary
is the active summary element of the details element.
- html/HTMLSummaryElement.h:
LayoutTests:
Added test cases and assertions.
- fast/dom/tabindex-defaults-expected.txt:
- fast/dom/tabindex-defaults.html: Added test cases for iframe, frame, object, video, summary, and SVG elements.
Also blur the active element to avoid any race conditions.
- plugins/focus-expected.txt:
- plugins/focus.html:
- svg/custom/tabindex-order-expected.txt:
- svg/custom/tabindex-order.html: Made the sequential navigation code not rely on tabIndex IDL attribute.
- 8:01 PM Changeset in webkit [249236] by
-
- 3 edits in trunk/Source/WebCore
Make FillLayer::hasImage() inline
https://bugs.webkit.org/show_bug.cgi?id=201265
Reviewed by Zalan Bujtas.
FillLayer::hasImage() shows up on profiles because it's called from hot functions like
isTransparent() and hasMask(), so make a basic inline version that doens't have
to walk the list.
- rendering/style/FillLayer.cpp:
(WebCore::FillLayer::hasImageInAnyLayer const):
(WebCore::FillLayer::hasImage const): Deleted.
- rendering/style/FillLayer.h:
(WebCore::FillLayer::hasImage const):
- 7:57 PM Changeset in webkit [249235] by
-
- 7 edits in branches/safari-608.2.11.0-branch/Source
Versioning.
- 7:57 PM Changeset in webkit [249234] by
-
- 7 edits in branches/safari-608.2.11.1-branch/Source
Versioning.
- 7:40 PM Changeset in webkit [249233] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION: String check: “realtime” Suggesting “real time”
https://bugs.webkit.org/show_bug.cgi?id=201107
<rdar://problem/46372620>
Patch by Peng Liu <Peng Liu> on 2019-08-28
Reviewed by Jer Noble.
Update Localizable.strings.
No new test.
- en.lproj/Localizable.strings:
- platform/LocalizedStrings.cpp:
(WebCore::localizedMediaControlElementString):
- 7:24 PM Changeset in webkit [249232] by
-
- 2 edits in trunk/Source/WebCore
PaintFrequencyTracker triggers too many calls to MonotonicTime::now() on layer painting
https://bugs.webkit.org/show_bug.cgi?id=201261
Reviewed by Zalan Bujtas.
MonotonicTime::now() shows up as expensive when painting layer-heavy content, because PaintFrequencyTracker
makes two calls per layer paint.
Halve the number of calls by storing m_lastPaintTime at the start of the paint; doing so doesn't substantially
change the behavior of the tracker.
- rendering/PaintFrequencyTracker.h:
(WebCore::PaintFrequencyTracker::begin):
(WebCore::PaintFrequencyTracker::end):
- 7:10 PM Changeset in webkit [249231] by
-
- 1 copy in branches/safari-608.2.11.1-branch
New branch.
- 7:07 PM Changeset in webkit [249230] by
-
- 4 edits2 adds in trunk
Reloading a web view with a fixed-width viewport and variable content width restores the previous page scale, shouldn't
https://bugs.webkit.org/show_bug.cgi?id=201256
<rdar://problem/54809509>
Reviewed by Simon Fraser.
Source/WebKit:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::restorePageState):
When restoring page state from a history item, if the saved scale was equal to the
initial scale at the time it was saved, ignore the saved scale and use the current
initial scale instead.
Normally this doesn't matter because a given page's initial scale doesn't usually change
between loads, but it totally can! See the test for one example of a way an API client
might cause this; you could also imagine something similar happening if the actual
page content changed.
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit/long-email-viewport.html: Added.
- TestWebKitAPI/Tests/WebKitCocoa/ReloadWithDifferingInitialScale.mm: Added.
(TestWebKitAPI::TEST):
Add a test. I left many comments because I had a great deal of trouble
writing this test and wanted to document my findings.
- 7:06 PM Changeset in webkit [249229] by
-
- 1 copy in branches/safari-608.2.11.0-branch
New branch.
- 6:37 PM Changeset in webkit [249228] by
-
- 1 copy in tags/Safari-609.1.3
Tag Safari-609.1.3.
- 5:44 PM Changeset in webkit [249227] by
-
- 2 edits in trunk/Tools
results.webkit.org: Do not display branch selector if only one branches available
https://bugs.webkit.org/show_bug.cgi?id=201244
Rubber-stamped by Aakash Jain.
- resultsdbpy/resultsdbpy/view/static/js/drawer.js: Hide the branch selector's
container if there aren't multiple branches to choose from.
- 5:01 PM Changeset in webkit [249226] by
-
- 2 edits in trunk/Tools
WKAttachmentTests.DropFolderAsAttachmentAndMoveByDragging fails in some iOS simulator configurations
https://bugs.webkit.org/show_bug.cgi?id=201241
<rdar://problem/54317588>
Reviewed by Tim Horton.
For reasons that are still unknown, it's possible for iOS 13 simulators to get into a state where the IPC
communication delay between the web and UI processes can become extraordinarily long. Under these circumstances,
the drag and drop harness fails to simulate a drop, since it ends up firing all scheduled calls to
-dropInteraction:sessionDidUpdate: before the first response from the web process arrives in the UI process, so
it believes that the web view has rejected the drop from being handled.
Instead, make the drag and drop simulator robust by ensuring a presentation update between drop session updates,
to make sure that the web process has had time to send a response after each update.
- TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator _advanceProgress]):
- 4:11 PM Changeset in webkit [249225] by
-
- 3 edits1 add in trunk
Placate exception check validation in DFG's operationHasGenericProperty().
https://bugs.webkit.org/show_bug.cgi?id=201245
<rdar://problem/54777512>
Reviewed by Robin Morisset.
JSTests:
- stress/missing-exception-check-in-operationHasGenericProperty.js: Added.
Source/JavaScriptCore:
- dfg/DFGOperations.cpp:
- 4:07 PM Changeset in webkit [249224] by
-
- 4 edits in trunk
Null check webFrame when creating a print preview to prevent a crash.
https://bugs.webkit.org/show_bug.cgi?id=201237
<rdar://problem/51618863>
Reviewed by Tim Horton.
Source/WebKit:
Move and expend a null check to keep from crashing when making a print preview.
- UIProcess/mac/WKPrintingView.mm:
(-[WKPrintingView _drawPreview:]):
(-[WKPrintingView drawRect:]):
Tools:
Test to verify that if we don't have the WebPageProxy, we will not crash when making a print preview.
- TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
(TEST):
- 3:52 PM Changeset in webkit [249223] by
-
- 5 edits in trunk/Source
Unreviewed. Restabilize non-unified build.
Source/JavaScriptCore:
- runtime/PropertySlot.h:
Source/WebCore:
- inspector/agents/WebConsoleAgent.h:
- loader/ResourceLoadObserver.h:
- 3:32 PM Changeset in webkit [249222] by
-
- 5 edits in trunk/Source/WebCore
Devirtualize RenderBox::visualOverflowRect()
https://bugs.webkit.org/show_bug.cgi?id=201231
Reviewed by Zalan Bujtas.
The only override of RenderBox::visualOverflowRect() was in RenderView, for "paintsEntireContents" views, and as
far as I can tell this is not necessary. visualOverflowRect() is hot when called from RenderLayer::localBoundingBox() --
this shows in profiles when scrolling large patch reviews, so making it non-virtual is a performance enhancement.
RenderLayer::localBoundingBox() can also just call visualOverflowRect(), since that returns borderBoxRect()
when there is no overflow.
- rendering/RenderBox.h:
(WebCore::RenderBox::visualOverflowRect const):
- rendering/RenderLayer.cpp:
(WebCore::performOverlapTests): Minor optimization to avoid a call to boundingBox().
(WebCore::RenderLayer::calculateClipRects const):
- rendering/RenderView.cpp:
(WebCore::RenderView::visualOverflowRect const): Deleted.
- rendering/RenderView.h:
- 2:24 PM Changeset in webkit [249221] by
-
- 4 edits in trunk/Source/JavaScriptCore
Wasm's AirIRGenerator::addLocal() and B3IRGenerator::addLocal() are doing unnecessary overflow checks.
https://bugs.webkit.org/show_bug.cgi?id=201006
<rdar://problem/52053991>
Reviewed by Yusuke Suzuki.
We already ensured that it is not possible to overflow in Wasm::FunctionParser's
parse(). It is unnecessary and misleading to do those overflow checks in
AirIRGenerator and B3IRGenerator. The only check that is necessary is that
m_locals.tryReserveCapacity() is successful, otherwise, we have an out of memory
situation.
This patch changes these unnecessary checks to assertions instead.
- wasm/WasmAirIRGenerator.cpp:
(JSC::Wasm::AirIRGenerator::addLocal):
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::addLocal):
- wasm/WasmValidate.cpp:
(JSC::Wasm::Validate::addLocal):
- 2:23 PM Changeset in webkit [249220] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, fix test failure after r249173
- inspector/timeline/line-column-expected.txt:
- 1:46 PM Changeset in webkit [249219] by
-
- 1 copy in tags/Safari-608.2.11
Tag Safari-608.2.11.
- 1:34 PM Changeset in webkit [249218] by
-
- 11 edits in trunk/Source/WebCore
Create ANGLE EGL Context with all extensions disabled by default
https://bugs.webkit.org/show_bug.cgi?id=200900
Patch by Austin Eng <enga@chromium.org> on 2019-08-28
Reviewed by Alex Christensen.
In WebGL, extensions must be explicitly requested before they are enabled.
Fixes the following WebGL conformance tests with the ANGLE backend
LayoutTests/webgl/*/conformance/extensions/ext-blend-minmax.html
LayoutTests/webgl/*/conformance/extensions/ext-frag-depth.html
LayoutTests/webgl/*/conformance/extensions/ext-shader-texture-lod.html
LayoutTests/webgl/*/conformance/extensions/ext-sRGB.html
LayoutTests/webgl/*/conformance/extensions/oes-standard-derivatives.html
LayoutTests/webgl/*/conformance/extensions/oes-texture-float.html
LayoutTests/webgl/*/conformance/extensions/webgl-compressed-texture-s3tc.html
LayoutTests/webgl/*/conformance/glsl/misc/shader-with-dfdx.frag.html
LayoutTests/webgl/*/conformance/glsl/variables/glsl-built-ins.html
LayoutTests/webgl/*/conformance/textures/misc/texture-npot-video.html
LayoutTests/webgl/*/conformance/textures/misc/texture-npot.html
- html/canvas/ANGLEInstancedArrays.cpp:
(WebCore::ANGLEInstancedArrays::ANGLEInstancedArrays):
(WebCore::ANGLEInstancedArrays::supported):
- html/canvas/WebGLCompressedTextureASTC.cpp:
(WebCore::WebGLCompressedTextureASTC::WebGLCompressedTextureASTC):
- html/canvas/WebGLCompressedTextureATC.cpp:
(WebCore::WebGLCompressedTextureATC::WebGLCompressedTextureATC):
- html/canvas/WebGLCompressedTexturePVRTC.cpp:
(WebCore::WebGLCompressedTexturePVRTC::WebGLCompressedTexturePVRTC):
- html/canvas/WebGLCompressedTextureS3TC.cpp:
(WebCore::WebGLCompressedTextureS3TC::WebGLCompressedTextureS3TC):
(WebCore::WebGLCompressedTextureS3TC::supported):
- html/canvas/WebGLDebugShaders.cpp:
(WebCore::WebGLDebugShaders::WebGLDebugShaders):
- html/canvas/WebGLDepthTexture.cpp:
(WebCore::WebGLDepthTexture::WebGLDepthTexture):
- html/canvas/WebGLDrawBuffers.cpp:
(WebCore::WebGLDrawBuffers::WebGLDrawBuffers):
(WebCore::WebGLDrawBuffers::supported):
- platform/graphics/angle/GraphicsContext3DANGLE.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):
(WebCore::GraphicsContext3D::validateDepthStencil):
- platform/graphics/cocoa/GraphicsContext3DCocoa.mm:
(WebCore::GraphicsContext3D::GraphicsContext3D):
- 1:23 PM Changeset in webkit [249217] by
-
- 63 edits1 add in trunk/Source
All image drawing functions should take an argument of type ImagePaintingOptions
https://bugs.webkit.org/show_bug.cgi?id=201059
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-08-28
Reviewed by Simon Fraser.
Source/WebCore:
In this patch:
-- All the image drawing function will take an argument of type
ImagePaintingOptions instead of passing individual options.
-- ImagePaintingOptions is made like a set of options. It can be
initialized with any number of options and the order does not matter
-- Image::originalSize() is deleted because it returns size() and none
of the Image concrete classes overrides this implementation.
- Headers.cmake:
- WebCore.xcodeproj/project.pbxproj:
- html/ImageBitmap.cpp:
(WebCore::ImageBitmap::createPromise):
(WebCore::ImageBitmap::createFromBuffer):
- html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::CanvasRenderingContext2DBase::drawImage):
(WebCore::drawImageToContext):
(WebCore::CanvasRenderingContext2DBase::fullCanvasCompositedDrawImage):
- platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::draw):
(WebCore::BitmapImage::drawPattern):
- platform/graphics/BitmapImage.h:
- platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::drawCrossfadeSubimage):
(WebCore::CrossfadeGeneratedImage::draw):
(WebCore::CrossfadeGeneratedImage::drawPattern):
- platform/graphics/CrossfadeGeneratedImage.h:
- platform/graphics/CustomPaintImage.cpp:
(WebCore::CustomPaintImage::draw):
(WebCore::CustomPaintImage::drawPattern):
- platform/graphics/CustomPaintImage.h:
- platform/graphics/GeneratedImage.h:
(WebCore::GeneratedImage::draw):
(WebCore::GeneratedImage::drawPattern):
- platform/graphics/GradientImage.cpp:
(WebCore::GradientImage::draw):
(WebCore::GradientImage::drawPattern):
- platform/graphics/GradientImage.h:
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
(WebCore::GraphicsContext::drawImageBuffer):
(WebCore::GraphicsContext::drawConsumingImageBuffer):
- platform/graphics/GraphicsContext.h:
(WebCore::GraphicsContext::drawNativeImage):
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
(WebCore::GraphicsContext::drawImageBuffer):
(WebCore::GraphicsContext::drawPattern):
(WebCore::GraphicsContext::drawConsumingImageBuffer):
(WebCore::ImagePaintingOptions::ImagePaintingOptions): Deleted.
(WebCore::ImagePaintingOptions::usesDefaultInterpolation const): Deleted.
- platform/graphics/GraphicsContextImpl.cpp:
(WebCore::GraphicsContextImpl::drawImageImpl):
(WebCore::GraphicsContextImpl::drawTiledImageImpl):
- platform/graphics/GraphicsContextImpl.h:
- platform/graphics/Image.cpp:
(WebCore::Image::drawPattern):
(WebCore::Image::drawTiled):
(WebCore::Image::computeIntrinsicDimensions):
- platform/graphics/Image.h:
(WebCore::Image::drawPattern):
(WebCore::Image::draw):
(WebCore::Image::drawTiled):
(WebCore::Image::originalSize const): Deleted.
- platform/graphics/ImageBuffer.h:
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):
(WebCore::ImageBuffer::drawConsuming):
- platform/graphics/ImagePaintingOptions.h: Added.
(WebCore::ImagePaintingOptions::ImagePaintingOptions):
(WebCore::ImagePaintingOptions::compositeOperator const):
(WebCore::ImagePaintingOptions::blendMode const):
(WebCore::ImagePaintingOptions::decodingMode const):
(WebCore::ImagePaintingOptions::orientation const):
(WebCore::ImagePaintingOptions::interpolationQuality const):
(WebCore::ImagePaintingOptions::setOption):
- platform/graphics/NamedImageGeneratedImage.cpp:
(WebCore::NamedImageGeneratedImage::draw):
(WebCore::NamedImageGeneratedImage::drawPattern):
- platform/graphics/NamedImageGeneratedImage.h:
- platform/graphics/NativeImage.h:
- platform/graphics/cairo/CairoOperations.cpp:
(WebCore::Cairo::drawShadowLayerBuffer):
(WebCore::Cairo::drawShadowImage):
(WebCore::Cairo::drawNativeImage):
(WebCore::Cairo::drawPattern):
- platform/graphics/cairo/CairoOperations.h:
- platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::drawNativeImage):
(WebCore::GraphicsContext::drawPattern):
- platform/graphics/cairo/GraphicsContextImplCairo.cpp:
(WebCore::GraphicsContextImplCairo::drawNativeImage):
(WebCore::GraphicsContextImplCairo::drawPattern):
- platform/graphics/cairo/GraphicsContextImplCairo.h:
- platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::drawConsuming):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):
- platform/graphics/cairo/NativeImageCairo.cpp:
(WebCore::drawNativeImage):
- platform/graphics/cg/GraphicsContext3DCG.cpp:
(WebCore::GraphicsContext3D::paintToCanvas):
- platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawNativeImage):
(WebCore::GraphicsContext::drawPattern):
- platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::drawConsuming):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):
- platform/graphics/cg/NativeImageCG.cpp:
(WebCore::drawNativeImage):
- platform/graphics/cg/PDFDocumentImage.cpp:
(WebCore::PDFDocumentImage::draw):
- platform/graphics/cg/PDFDocumentImage.h:
- platform/graphics/displaylists/DisplayListItems.cpp:
(WebCore::DisplayList::DrawNativeImage::DrawNativeImage):
(WebCore::DisplayList::DrawNativeImage::apply const):
(WebCore::DisplayList::DrawPattern::DrawPattern):
(WebCore::DisplayList::DrawPattern::apply const):
- platform/graphics/displaylists/DisplayListItems.h:
(WebCore::DisplayList::DrawNativeImage::create):
(WebCore::DisplayList::DrawPattern::create):
(WebCore::DisplayList::DrawPattern::DrawPattern):
- platform/graphics/displaylists/DisplayListRecorder.cpp:
(WebCore::DisplayList::Recorder::drawNativeImage):
(WebCore::DisplayList::Recorder::drawPattern):
- platform/graphics/displaylists/DisplayListRecorder.h:
- platform/graphics/filters/FEBlend.cpp:
(WebCore::FEBlend::platformApplySoftware):
- platform/graphics/filters/FEComposite.cpp:
(WebCore::FEComposite::platformApplySoftware):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::paint):
- platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.cpp:
(Nicosia::CairoOperationRecorder::drawNativeImage):
(Nicosia::CairoOperationRecorder::drawPattern):
- platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.h:
- platform/graphics/win/Direct2DOperations.cpp:
(WebCore::Direct2D::drawNativeImage):
(WebCore::Direct2D::drawPattern):
- platform/graphics/win/Direct2DOperations.h:
- platform/graphics/win/GraphicsContextImplDirect2D.h:
- platform/graphics/win/ImageCGWin.cpp:
(WebCore::BitmapImage::getHBITMAPOfSize):
(WebCore::BitmapImage::drawFrameMatchingSourceSize):
- platform/graphics/win/ImageCairoWin.cpp:
(WebCore::BitmapImage::getHBITMAPOfSize):
(WebCore::BitmapImage::drawFrameMatchingSourceSize):
- platform/graphics/win/NativeImageDirect2D.cpp:
(WebCore::drawNativeImage):
- platform/ios/DragImageIOS.mm:
(WebCore::createDragImageFromImage):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
- rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintSnapshotImage):
- rendering/RenderImage.cpp:
(WebCore::RenderImage::paintReplaced):
(WebCore::RenderImage::paintIntoRect):
- rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::paintSnapshot):
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
- svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::drawForContainer):
(WebCore::SVGImage::nativeImageForCurrentFrame):
(WebCore::SVGImage::nativeImage):
(WebCore::SVGImage::drawPatternForContainer):
(WebCore::SVGImage::draw):
- svg/graphics/SVGImage.h:
- svg/graphics/SVGImageForContainer.cpp:
(WebCore::SVGImageForContainer::draw):
(WebCore::SVGImageForContainer::drawPattern):
- svg/graphics/SVGImageForContainer.h:
Source/WebKit:
GraphicsContext::drawImage() now takes an ImagePaintingOptions.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::imagePositionInformation):
- 12:57 PM Changeset in webkit [249216] by
-
- 3 edits2 adds in trunk
XLinkNames namespace is required before the 'href' attribute of SVG animate elements
https://bugs.webkit.org/show_bug.cgi?id=201227
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-08-28
Reviewed by Ryosuke Niwa.
Source/WebCore:
To get the animation target element, get the value of the "href" attribute
or the "xlink:href" attribute.
Tests: svg/custom/href-svg-namespace-animate-target.svg
- svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::buildPendingResource):
LayoutTests:
- svg/custom/href-svg-namespace-animate-target-expected.svg: Added.
- svg/custom/href-svg-namespace-animate-target.svg: Added.
- 12:51 PM Changeset in webkit [249215] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed, rolling out r249209.
Broke 19 webgpu/ tests
Reverted changeset:
"[WHLSL] Inline typedef'd types during Metal code generation
to simplify generated code while also making it easier to
read"
https://bugs.webkit.org/show_bug.cgi?id=201185
https://trac.webkit.org/changeset/249209
- 12:46 PM Changeset in webkit [249214] by
-
- 3 edits2 adds in trunk
[WHLSL] Matrices need to have correct alignment
https://bugs.webkit.org/show_bug.cgi?id=201212
Reviewed by Robin Morisset.
Source/WebCore:
Matrices have particular alignment requirements and size requirements.
Type | Alignment | Size
float2x2 | 8 | 16
float2x3 | 16 | 32
float2x4 | 16 | 32
float3x2 | 8 | 24
float3x3 | 16 | 48
float3x4 | 16 | 48
float4x2 | 8 | 32
float4x3 | 16 | 64
float4x4 | 16 | 64
These are important because they may be a member of a struct, and we don't want to misplace
every successive item in the struct.
Test: webgpu/whlsl/matrix-alignment.html
- Modules/webgpu/WHLSL/Metal/WHLSLNativeTypeWriter.cpp:
(WebCore::WHLSL::Metal::writeNativeType):
LayoutTests:
Test the alignment and size of float matrices.
Intentionally don't test bool matrices, because they can't be placed in buffers,
meaning their size and alignment is unobservable.
- webgpu/whlsl/matrix-alignment-expected.txt: Added.
- webgpu/whlsl/matrix-alignment.html: Added.
- 12:36 PM Changeset in webkit [249213] by
-
- 10 edits1 delete in trunk/Tools
results.webkit.org: Move drawer to the right, open by default
https://bugs.webkit.org/show_bug.cgi?id=200977
Rubber-stamped by Aakash Jain.
The drawer was both unpopular and not discoverable. After feedback from bot watchers,
moving the drawer to the right side of the screen, opening it by default and have it displace
instead of hide the main content.
- resultsdbpy/resultsdbpy/view/commit_view_unittest.py:
(CommitViewUnittest.test_drawer): Support new drawer style.
(CommitViewUnittest.test_range_slider): Ditto.
(CommitViewUnittest.test_one_line_switch): Ditto.
(CommitViewUnittest.test_branch_selection): Ditto.
- resultsdbpy/resultsdbpy/view/static/css/drawer.css: Removed.
- resultsdbpy/resultsdbpy/view/static/js/drawer.js:
(setEnableRecursive): Disable all elements underneath this one
(Drawer): Make drawer a sidebar.
- resultsdbpy/resultsdbpy/view/static/library/css/webkit.css:
(.header>.title, .topbar>.title): Overflow of titles should be hidden.
(:root): Move boldInverseColor into webkit.css.
(@media (prefers-color-scheme: dark)):
(.sidebar): Sidebars on mobile should behave like drawers.
(.sidebar.hidden): Add concept of hidden sidebar.
(.mobile-sidebar-control): Add a control to collapse sidebar that only exists on mobile.
(.mobile-sidebar-control.display):
(.main.under-topbar-with-actions):
(@media screen and (min-width: 600px) and (orientation: landscape)):
(.sidebar.left.hidden):
(.sidebar.right.hidden):
(.main.right.hidden):
(.main.left.hidden):
(@media screen and (min-width: 768px) and (orientation: landscape)):
(.sidebar.right):
(a.disabled): Add ability to disable a link.
(.desktop-control): Add a control which only exists on desktop.
- resultsdbpy/resultsdbpy/view/templates/base.html: Add hamburger drawer-button for mobile.
- resultsdbpy/resultsdbpy/view/templates/commits.html: Use main since Drawer is now a sidebar.
- resultsdbpy/resultsdbpy/view/templates/documentation.html: Ditto.
- resultsdbpy/resultsdbpy/view/templates/search.html: Ditto.
- resultsdbpy/resultsdbpy/view/templates/suite_results.html: Ditto.
- resultsdbpy/resultsdbpy/view/view_routes_unittest.py:
(WebSiteTestCase.toggle_drawer): Support new drawer style.
(WebSiteTestCase.find_input_with_name): Ditto.
- 12:34 PM Changeset in webkit [249212] by
-
- 14 edits1 add in trunk
Implement HTMLOrForeignElement
https://bugs.webkit.org/show_bug.cgi?id=201219
Patch by Rob Buis <rbuis@igalia.com> on 2019-08-28
Reviewed by Ryosuke Niwa.
Source/WebCore:
Add the HTMLOrForeignElement [1] interface to share properties
and methods between HTML, SVG and MathML.
[1] https://github.com/mathml-refresh/mathml/issues/83
- CMakeLists.txt:
- DerivedSources-input.xcfilelist:
- DerivedSources-output.xcfilelist:
- DerivedSources.make:
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- dom/StaticRange.h:
- html/HTMLElement.idl:
- html/HTMLOrForeignElement.idl: Added.
- svg/SVGElement.idl:
LayoutTests:
Adjust test expectations to new HTMLOrForeignElement interface.
- js/dom/dom-static-property-for-in-iteration-expected.txt:
- platform/mac-wk2/js/dom/dom-static-property-for-in-iteration-expected.txt:
- platform/mac/inspector/model/remote-object-dom-expected.txt:
- 12:19 PM Changeset in webkit [249211] by
-
- 2 edits in trunk/Source/WebKitLegacy/mac
GenerateTAPI WebKitLegacy.tbd fails on internal iOS Simulator builds
https://bugs.webkit.org/show_bug.cgi?id=201200
Reviewed by Simon Fraser.
We want to include Foundation/NSURLDownload.h if we're on
a newer iOS.
- Misc/WebDownload.h:
- 11:37 AM Changeset in webkit [249210] by
-
- 7 edits in branches/safari-608-branch/Source
Versioning.
- 11:11 AM Changeset in webkit [249209] by
-
- 4 edits in trunk/Source/WebCore
[WHLSL] Inline typedef'd types during Metal code generation to simplify generated code while also making it easier to read
https://bugs.webkit.org/show_bug.cgi?id=201185
Reviewed by Saam Barati.
The current Metal code generation generates many unnecessary typedefs during TypeNamer::emitMetalTypeDefinitions
such as 'typedef float2 type19;' that can be removed by just using resolved type whereever the typedef would have
been used. The only types that actually need to be predefined are the types that declare a new struct or enum, which
means we can stop emitting for AST::TypeReference, AST::Pointer, AST::Array, and AST::TypeDefinition. Instead, the
relevent mangledNameForType constructs the computed name on the fly.
This is a 25% speedup in the metal code generation phase.
- Modules/webgpu/WHLSL/Metal/WHLSLFunctionWriter.cpp:
(WebCore::WHLSL::Metal::FunctionDefinitionWriter::visit):
Switch to using auto rather than Mangled*Name when it is obvious and the actual return type
may need to become more complicated (e.g. MangledOrNativeTypeName).
- Modules/webgpu/WHLSL/Metal/WHLSLTypeNamer.h:
- Modules/webgpu/WHLSL/Metal/WHLSLTypeNamer.cpp:
(WebCore::WHLSL::Metal::TypeNamer::visit):
There is no need to generate typenames for AST::TypeDefinitions if they are never used.
(WebCore::WHLSL::Metal::TypeNamer::generateUniquedTypeName):
The only UnnamedType that needs a generated typename now is AST::ArrayReferenceType, which emits a struct interface.
(WebCore::WHLSL::Metal::TypeNamer::emitUnnamedTypeDefinition):
Stop generating type definitions for AST::TypeReference, AST::Pointer, AST::Array.
(WebCore::WHLSL::Metal::TypeNamer::emitNamedTypeDefinition):
Stop generating type definitions for AST::TypeDefinition.
(WebCore::WHLSL::Metal::TypeNamer::emitMetalTypeDefinitions):
Update for rename from m_unnamedTypeMapping to m_arrayReferenceTypeMapping.
(WebCore::WHLSL::Metal::TypeNamer::mangledNameForType):
Look into the types and generate a concrete type name when necessary. Lazily cache the constructed
names for AST::ArrayType and AST::Pointer.
- 10:40 AM Changeset in webkit [249208] by
-
- 13 edits in trunk
Remove support for macOS < 10.13 (part 2)
https://bugs.webkit.org/show_bug.cgi?id=201197
<rdar://problem/54759985>
Source/JavaScriptCore:
Update conditionals that reference WK_MACOS_1013 and suffixes like
_MACOS_SINCE_1013, assuming that we're always building on 10.13 or
later and that these conditionals are always True or False.
See Bug 200694 for earlier changes in this area.
Reviewed by Darin Adler.
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
Reviewed by Darin Adler.
Update conditionals that reference WK_MACOS_1013 and suffixes like
_MACOS_SINCE_1013, assuming that we're always building on 10.13 or
later and that these conditionals are always True or False.
See Bug 200694 for earlier changes in this area.
No new tests -- no new or changed functionality.
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
Reviewed by Darin Adler.
Update conditionals that reference WK_MACOS_1013 and suffixes like
_MACOS_SINCE_1013, assuming that we're always building on 10.13 or
later and that these conditionals are always True or False.
See Bug 200694 for earlier changes in this area.
- Configurations/FeatureDefines.xcconfig:
Source/WebKit:
Reviewed by Darin Adler.
Update conditionals that reference WK_MACOS_1013 and suffixes like
_MACOS_SINCE_1013, assuming that we're always building on 10.13 or
later and that these conditionals are always True or False.
See Bug 200694 for earlier changes in this area.
- Configurations/FeatureDefines.xcconfig:
- Configurations/WebKit.xcconfig:
Source/WebKitLegacy/mac:
Reviewed by Darin Adler.
Update conditionals that reference WK_MACOS_1013 and suffixes like
_MACOS_SINCE_1013, assuming that we're always building on 10.13 or
later and that these conditionals are always True or False.
See Bug 200694 for earlier changes in this area.
- Configurations/FeatureDefines.xcconfig:
Tools:
Reviewed by Darin Adler.
Update conditionals that reference WK_MACOS_1013 and suffixes like
_MACOS_SINCE_1013, assuming that we're always building on 10.13 or
later and that these conditionals are always True or False.
See Bug 200694 for earlier changes in this area.
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- 10:20 AM Changeset in webkit [249207] by
-
- 12 edits in trunk
geolocation.watchPosition() / getCurrentPosition() should return PERMISSION_DENIED when context is not secure
https://bugs.webkit.org/show_bug.cgi?id=201221
Reviewed by Ryosuke Niwa.
Source/WebCore:
geolocation.watchPosition() / getCurrentPosition() should return PERMISSION_DENIED when context is not secure,
not POSITION_UNAVAILABLE. Both Gecko and Blink agree on PERMISSION_DENIED.
No new tests, updated existing tests.
- Modules/geolocation/Geolocation.cpp:
(WebCore::Geolocation::startRequest):
LayoutTests:
Update layout tests to reflect behavior change.
- fast/dom/Geolocation/dataURL-getCurrentPosition-expected.txt:
- fast/dom/Geolocation/dataURL-getCurrentPosition.html:
- fast/dom/Geolocation/dataURL-watchPosition-expected.txt:
- fast/dom/Geolocation/dataURL-watchPosition.html:
- http/tests/security/resources/checkThatPositionErrorCallbackIsCalledWithPositionUnavailableForGeolocationMethod.js:
(didReceiveError):
(checkThatPositionErrorCallbackIsCalledWithPositionUnavailableForGeolocationMethod):
- http/tests/security/sandboxed-iframe-geolocation-getCurrentPosition-expected.txt:
- http/tests/security/sandboxed-iframe-geolocation-getCurrentPosition.html:
- http/tests/security/sandboxed-iframe-geolocation-watchPosition-expected.txt:
- http/tests/security/sandboxed-iframe-geolocation-watchPosition.html:
- 10:14 AM Changeset in webkit [249206] by
-
- 6 edits in trunk/Source/WebKit
Have WebPageProxy generate the page identifier by itself
https://bugs.webkit.org/show_bug.cgi?id=201223
Reviewed by Ryosuke Niwa.
Have WebPageProxy generate the page identifier by itself instead of
having the WebProcessProxy do it.
- UIProcess/ServiceWorkerProcessProxy.cpp:
(WebKit::m_serviceWorkerPageID):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::create):
(WebKit::WebPageProxy::WebPageProxy):
- UIProcess/WebPageProxy.h:
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::createWebPage):
(WebKit::WebProcessProxy::generatePageID): Deleted.
- UIProcess/WebProcessProxy.h:
- 10:04 AM Changeset in webkit [249205] by
-
- 29 edits7 adds3 deletes in trunk
[MSE][GStreamer] WebKitMediaSrc rework
https://bugs.webkit.org/show_bug.cgi?id=199719
Reviewed by Xabier Rodriguez-Calvar.
LayoutTests/imported/w3c:
- web-platform-tests/html/semantics/embedded-content/the-video-element/timeout_on_seek.py: Added.
(parse_range):
(main):
- web-platform-tests/html/semantics/embedded-content/the-video-element/video_timeupdate_on_seek.html: Added.
- web-platform-tests/html/semantics/embedded-content/the-video-element/video_timeupdate_on_seek-expected.txt: Added.
- web-platform-tests/media-source/mediasource-buffered-seek-expected.txt: Added.
- web-platform-tests/media-source/mediasource-buffered-seek.html: Added.
Source/WebCore:
This patch reworks the WebKitMediaSrc element and many of the player
private methods that interacted with it.
In comparison with the old WebKitMediaSrc, in the new one seeks have
been massively simplified.
The new WebKitMediaSrc no longer relies on a bin or appsrc, having
greater control over its operation. This made it comparatively much
easier to implement features such as seek before playback or
single-stream flushing.
stream-collection events are emitted from the WebKitMediaSrc to reuse
the track handling in MediaPlayerPrivateGStreamer for playbin3, which
is now used for MSE pipelines.
Additional tests have been added to check some assumptions, and some
bugs that have surfaced with the changes have been fixed but no new
features (like multi-track support) are implemented in this patch.
One instance of these bugs is
resizedevents, which were previously
being emitted when frames with different resolutions where appended.
This is a wrong behavior that has not been preserved in the rework, as
resize events should be emitted when the frames are shown, not
just appended.
There are subtler bugfixes, such as ignoring PTS-less frames in
AppendPipeline::appsinkNewSample(). These frames are problematic for
MSE, yet they were somehow passing through the pipelines. Since
WebKitMediaSrc is stricter with assertions, these have to be filtered.
This test gets rid of !m_mseSeekCompleted assertion failures in tests
and potentially other hard to debug bugs in the previous seek
algorithm.
This patch makes the following existing tests pass:
imported/w3c/web-platform-tests/media-source/mediasource-config-change-webm-a-bitrate.html
imported/w3c/web-platform-tests/media-source/mediasource-config-change-webm-v-framesize.html
New test: imported/w3c/web-platform-tests/media-source/mediasource-buffered-seek.html
New test: LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-video-element/video_timeupdate_on_seek.html (non-MSE related)
- Headers.cmake:
- platform/GStreamer.cmake:
- platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
(WTF::adoptGRef):
(WTF::refGPtr<GstMiniObject>):
(WTF::derefGPtr<GstMiniObject>):
- platform/graphics/gstreamer/GRefPtrGStreamer.h:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::playbackPosition const):
(WebCore::MediaPlayerPrivateGStreamer::paused const):
(WebCore::MediaPlayerPrivateGStreamer::updateTracks):
(WebCore::MediaPlayerPrivateGStreamer::enableTrack):
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
(WebCore::MediaPlayerPrivateGStreamer::sourceSetup):
(WebCore::MediaPlayerPrivateGStreamer::handleSyncMessage):
(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
(WebCore::MediaPlayerPrivateGStreamer::invalidateCachedPosition):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::naturalSize const):
(WebCore::MediaPlayerPrivateGStreamerBase::naturalSizeFromCaps const):
(WebCore::MediaPlayerPrivateGStreamerBase::samplesHaveDifferentNaturalSize const):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
- platform/graphics/gstreamer/MediaSampleGStreamer.cpp:
(WebCore::MediaSampleGStreamer::MediaSampleGStreamer):
- platform/graphics/gstreamer/mse/AppendPipeline.cpp:
(WebCore::AppendPipeline::appsinkNewSample):
(WebCore::AppendPipeline::connectDemuxerSrcPadToAppsink):
- platform/graphics/gstreamer/mse/AppendPipeline.h:
(WebCore::AppendPipeline::appsinkCaps):
(WebCore::AppendPipeline::streamType):
(WebCore::AppendPipeline::demuxerSrcPadCaps):
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::~MediaPlayerPrivateGStreamerMSE):
(WebCore::MediaPlayerPrivateGStreamerMSE::load):
(WebCore::MediaPlayerPrivateGStreamerMSE::play):
(WebCore::MediaPlayerPrivateGStreamerMSE::pause):
(WebCore::MediaPlayerPrivateGStreamerMSE::seek):
(WebCore::MediaPlayerPrivateGStreamerMSE::seekCompleted):
(WebCore::MediaPlayerPrivateGStreamerMSE::setReadyState):
(WebCore::MediaPlayerPrivateGStreamerMSE::sourceSetup):
(WebCore::MediaPlayerPrivateGStreamerMSE::updateStates):
(WebCore::MediaPlayerPrivateGStreamerMSE::didEnd):
(WebCore::MediaPlayerPrivateGStreamerMSE::unblockDurationChanges):
(WebCore::MediaPlayerPrivateGStreamerMSE::durationChanged):
(WebCore::MediaPlayerPrivateGStreamerMSE::trackDetected):
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
- platform/graphics/gstreamer/mse/MediaSourceClientGStreamerMSE.cpp:
(WebCore::MediaSourceClientGStreamerMSE::addSourceBuffer):
(WebCore::MediaSourceClientGStreamerMSE::removedFromMediaSource):
(WebCore::MediaSourceClientGStreamerMSE::flush):
(WebCore::MediaSourceClientGStreamerMSE::enqueueSample):
(WebCore::MediaSourceClientGStreamerMSE::isReadyForMoreSamples):
(WebCore::MediaSourceClientGStreamerMSE::notifyClientWhenReadyForMoreSamples):
(WebCore::MediaSourceClientGStreamerMSE::allSamplesInTrackEnqueued):
- platform/graphics/gstreamer/mse/MediaSourceClientGStreamerMSE.h:
- platform/graphics/gstreamer/mse/MediaSourceGStreamer.cpp:
(WebCore::MediaSourceGStreamer::markEndOfStream):
(WebCore::MediaSourceGStreamer::unmarkEndOfStream):
(WebCore::MediaSourceGStreamer::waitForSeekCompleted):
- platform/graphics/gstreamer/mse/MediaSourceGStreamer.h:
- platform/graphics/gstreamer/mse/PlaybackPipeline.cpp: Removed.
- platform/graphics/gstreamer/mse/PlaybackPipeline.h: Removed.
- platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp:
(WebCore::SourceBufferPrivateGStreamer::enqueueSample):
(WebCore::SourceBufferPrivateGStreamer::isReadyForMoreSamples):
(WebCore::SourceBufferPrivateGStreamer::notifyClientWhenReadyForMoreSamples):
- platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h:
- platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:
(WebKitMediaSrcPrivate::streamByName):
(Stream::Stream):
(Stream::StreamingMembers::StreamingMembers):
(Stream::StreamingMembers::durationEnqueued const):
(findPipeline):
(webkit_media_src_class_init):
(webkit_media_src_init):
(webKitMediaSrcFinalize):
(debugProbe):
(collectionPlusStream):
(collectionMinusStream):
(gstStreamType):
(webKitMediaSrcAddStream):
(webKitMediaSrcRemoveStream):
(webKitMediaSrcActivateMode):
(webKitMediaSrcPadLinked):
(webKitMediaSrcStreamNotifyLowWaterLevel):
(webKitMediaSrcLoop):
(webKitMediaSrcEnqueueObject):
(webKitMediaSrcEnqueueSample):
(webKitMediaSrcEnqueueEvent):
(webKitMediaSrcEndOfStream):
(webKitMediaSrcIsReadyForMoreSamples):
(webKitMediaSrcNotifyWhenReadyForMoreSamples):
(webKitMediaSrcChangeState):
(webKitMediaSrcStreamFlushStart):
(webKitMediaSrcStreamFlushStop):
(webKitMediaSrcFlush):
(webKitMediaSrcSeek):
(countStreamsOfType):
(webKitMediaSrcGetProperty):
(webKitMediaSrcUriGetType):
(webKitMediaSrcGetProtocols):
(webKitMediaSrcGetUri):
(webKitMediaSrcSetUri):
(webKitMediaSrcUriHandlerInit):
- platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.h:
- platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamerPrivate.h: Removed.
Tools:
Added WebKitMediaSourceGStreamer.cpp to the GStreamer-style coding
whitelist.
- Scripts/webkitpy/style/checker.py:
LayoutTests:
Updated expectations.
- platform/gtk/TestExpectations:
- platform/mac/TestExpectations:
- platform/ios-simulator/TestExpectations:
- platform/mac/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-video-element/video_timeupdate_on_seek-expected.txt: Added.
- 9:58 AM Changeset in webkit [249204] by
-
- 2 edits in trunk/Tools
Updating inactive contributors in contributors.json.
- Scripts/webkitpy/common/config/contributors.json:
- 9:57 AM Changeset in webkit [249203] by
-
- 3 edits in trunk/Source/WebCore
Have RenderSVGBlock compute visual overflow just like everyone else
https://bugs.webkit.org/show_bug.cgi?id=201211
Reviewed by Zalan Bujtas.
RenderSVGBlock overrode visualOverflowRect() just to account for text shadow. This prevents callers
optimizing calls to visualOverflowRect(), so instead have RenderSVGBlock implement computeOverflow()
and call addVisualOverflow().
- rendering/svg/RenderSVGBlock.cpp:
(WebCore::RenderSVGBlock::computeOverflow):
(WebCore::RenderSVGBlock::visualOverflowRect const): Deleted.
- rendering/svg/RenderSVGBlock.h:
- 9:42 AM Changeset in webkit [249202] by
-
- 3 edits in trunk/Tools
results.webkit.org: Auto-expand single configurations
https://bugs.webkit.org/show_bug.cgi?id=201218
Rubber-stamped by Aakash Jain.
- resultsdbpy/resultsdbpy/view/static/js/timeline.js:
(TimelineFromEndpoint.toString): Automatically expand timeline when only one
configuration has been specified.
- resultsdbpy/resultsdbpy/view/static/library/js/components/TimelineComponents.js:
(prototype.ExpandableSeriesComponent): Add options so that the caller can set whether a timeline
is expanded or collapsed by default.
- 9:28 AM Changeset in webkit [249201] by
-
- 2 edits in trunk/LayoutTests
Flaky Test: fullscreen/full-screen-request-removed-with-raf.html
https://bugs.webkit.org/show_bug.cgi?id=201188
Reviewed by Alexey Proskuryakov.
- fullscreen/full-screen-request-removed-with-raf.html:
- 8:45 AM Changeset in webkit [249200] by
-
- 4 edits in trunk/Tools
results.webkit.org: Sanitize all commit arguments on upload
https://bugs.webkit.org/show_bug.cgi?id=201189
<rdar://problem/54564837>
Reviewed by Aakash Jain.
- resultsdbpy/resultsdbpy/controller/commit.py:
(Commit.init): Only allow commits to be constructed with valid values.
- resultsdbpy/resultsdbpy/controller/commit_controller.py:
(CommitController.register): Strip potential API key.
- resultsdbpy/resultsdbpy/controller/commit_unittest.py:
(CommitUnittest.test_invalid): Test that commits which contain html inside the
repository_id, branch or commit id are rejected.
- 8:36 AM Changeset in webkit [249199] by
-
- 8 edits in trunk/Source/JavaScriptCore
Gardening: Rebase test results after r249175.
https://bugs.webkit.org/show_bug.cgi?id=201172
Not reviewed.
- Scripts/tests/builtins/expected/WebCore-AnotherGuardedInternalBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-ArbitraryConditionalGuard-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result:
- Scripts/tests/builtins/expected/WebCoreJSBuiltins.h-result:
- 8:15 AM Changeset in webkit [249198] by
-
- 6 edits in trunk/Source/WebCore
REGRESSION (r248807): Objects stored in ElementRareData are leaked
https://bugs.webkit.org/show_bug.cgi?id=200954
Reviewed by Antti Koivisto.
Use a custom deleter in std::unique_ptr to call the correct destructor instead of making
NodeRareData's destructor virtual. Added NodeRareData::isElementRareData to differentiate
ElementRareData and NodeRareData by borrowing 1 bit from the frame count.
No new tests since there should be no behavioral change.
- dom/ElementRareData.h:
(WebCore::ElementRareData::ElementRareData):
- dom/Node.cpp:
(WebCore::Node::materializeRareData): Call the constructors of unique_ptr directly since
make_unique does not take a custom deleter. We can't add the support to makeUnique either
without making it three arguments since we need to cast ElementRareData to NodeRareData
in addition to specifying a custom deleter (normal casting wouldn't work due to
the presence of a custom deleter).
(WebCore::Node::NodeRareDataDeleter::operator() const): Added.
- dom/Node.h:
(WebCore::Node::NodeRareDataDeleter): Added.
- dom/NodeRareData.cpp:
- dom/NodeRareData.h:
(WebCore::NodeRareData::NodeRareData): Makes newly added Type.
(WebCore::NodeRareData::isElementRareData): Added.
(WebCore::NodeRareData::~NodeRareData): Deleted.
- 4:52 AM Changeset in webkit [249197] by
-
- 2 edits in trunk/Source/WebCore
[SOUP] Shut compilation warning
Unreviewed. RELEASE_LOG_ERROR() needs a channel.
- platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::setupHSTSEnforcer):
- 4:43 AM Changeset in webkit [249196] by
-
- 2 edits in trunk/Source/WebCore
[SOUP] Fix the debug build after r249192
Unreviewed build fix.
- platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::setupHSTSEnforcer):
- 4:33 AM WebKitGTK/2.26.x created by
- 3:53 AM Changeset in webkit [249195] by
-
- 1 copy in releases/WebKitGTK/webkit-2.26
Branch WebKitGTK for 2.26
- 3:22 AM Changeset in webkit [249194] by
-
- 26 edits2 adds in trunk
Unable to enter text in https://eat.fi
https://bugs.webkit.org/show_bug.cgi?id=193046
Reviewed by Ryosuke Niwa.
Source/WebCore:
This is because the button element inside the label is receiving the click event, which causes the form to be
submitted. According to the spec we should do nothing in this case, because button element is considered to be
interactive content.
"The activation behavior of a label element for events targeted at interactive content descendants of a label
element, and any descendants of those interactive content descendants, must be to do nothing."
https://html.spec.whatwg.org/#the-label-element
This patch adds HTMLElement::isInteractiveContent() according to the HTML spec:
"Interactive content is content that is specifically intended for user interaction.
a (if the href attribute is present), audio (if the controls attribute is present), button, details, embed,
iframe, img (if the usemap attribute is present), input (if the type attribute is not in the Hidden state),
label, object (if the usemap attribute is present), select, textarea, video (if the controls attribute is
present)"
https://html.spec.whatwg.org/#interactive-content-2
That's used in HTMLLabelElement::defaultEventHandler() using the helper method
isEventTargetedAtInteractiveDescendants() to decide whether to simulate a click event or do nothing.
- html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::isInteractiveContent const):
- html/HTMLAnchorElement.h:
- html/HTMLButtonElement.h:
- html/HTMLDetailsElement.h:
- html/HTMLElement.h:
(WebCore::HTMLElement::isInteractiveContent const):
- html/HTMLEmbedElement.h:
- html/HTMLIFrameElement.h:
- html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::isInteractiveContent const):
- html/HTMLImageElement.h:
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::isInteractiveContent const):
- html/HTMLInputElement.h:
- html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::isEventTargetedAtInteractiveDescendants const):
(WebCore::HTMLLabelElement::defaultEventHandler):
- html/HTMLLabelElement.h:
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::isInteractiveContent const):
- html/HTMLMediaElement.h:
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::isInteractiveContent const):
- html/HTMLObjectElement.h:
- html/HTMLSelectElement.h:
- html/HTMLTextAreaElement.h:
- html/HiddenInputType.h:
- html/InputType.cpp:
(WebCore::InputType::isInteractiveContent const):
- html/InputType.h:
LayoutTests:
Add new test imported for blink.
- imported/blink/fast/forms/label/label-contains-other-interactive-content-expected.txt: Added.
- imported/blink/fast/forms/label/label-contains-other-interactive-content.html: Added.
- platform/ios-wk2/TestExpectations: Skip the new test because it requires eventSender.mouseDown/Up/MoveTo()
- 3:21 AM Changeset in webkit [249193] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r243434): Wrong URL passed to WebKitWebView::load-failed when cancelling previous load
https://bugs.webkit.org/show_bug.cgi?id=201176
Reviewed by Žan Doberšek.
Use the current provisional/committed url when faking an error event, instead of the current active URI that can
be the pending api request of a new load.
- UIProcess/API/glib/WebKitWebView.cpp:
(webkitWebViewWillStartLoad):
- 3:15 AM Changeset in webkit [249192] by
-
- 29 edits in trunk
[GTK][WPE] Implement HSTS for the soup network backend
https://bugs.webkit.org/show_bug.cgi?id=192074
Reviewed by Carlos Garcia Campos.
libsoup 2.67.1 introduced HSTS support via a SoupSessionFeature.
Add support to the soup network backend by adding the feature to
SoupNetworkSession and handling HSTS protocol upgrades, by
propagating the scheme change further to clients. This patch adds
the HSTS feature unconditionally, but it still possible to add
a boolean property to the web context class if desired.
Additionally, add API to the WebKitWebsiteDataManager to specify
the directory where the HSTS database is saved. If the directory
is not set or if the data manager is ephemeral, use a
non-persistent, memory only HSTS enforcer.
Implement as well the methods needed to clean-up and delete HSTS
Source/WebCore:
policies from the storage and expose the feature in GTK+ MiniBrowser's
about:data.
- platform/network/soup/GUniquePtrSoup.h:
- platform/network/soup/SoupNetworkSession.cpp:
(WebCore::hstsStorageDirectory):
(WebCore::SoupNetworkSession::SoupNetworkSession):
(WebCore::SoupNetworkSession::setHSTSPersistentStorage):
(WebCore::SoupNetworkSession::setupHSTSEnforcer):
(WebCore::SoupNetworkSession::getHostNamesWithHSTSCache):
(WebCore::SoupNetworkSession::deleteHSTSCacheForHostNames):
(WebCore::SoupNetworkSession::clearHSTSCache):
- platform/network/soup/SoupNetworkSession.h:
Source/WebKit:
policies from the storage and expose the feature in GTK+
MiniBrowser's about:data.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::fetchWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
(WebKit::NetworkProcess::deleteWebsiteDataForRegistrableDomains):
(WebKit::NetworkProcess::registrableDomainsWithWebsiteData):
- NetworkProcess/NetworkProcess.h:
(WebKit::NetworkProcess::suppressesConnectionTerminationOnSystemChange const):
- NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::createRequest):
(WebKit::NetworkDataTaskSoup::clearRequest):
(WebKit::NetworkDataTaskSoup::shouldAllowHSTSPolicySetting const):
(WebKit::NetworkDataTaskSoup::shouldAllowHSTSProtocolUpgrade const):
(WebKit::NetworkDataTaskSoup::protocolUpgradedViaHSTS):
(WebKit::NetworkDataTaskSoup::hstsEnforced):
- NetworkProcess/soup/NetworkDataTaskSoup.h:
- NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::getHostNamesWithHSTSCache):
(WebKit::NetworkProcess::deleteHSTSCacheForHostNames):
(WebKit::NetworkProcess::clearHSTSCache):
(WebKit::NetworkProcess::platformInitializeNetworkProcess):
- UIProcess/API/APIWebsiteDataStore.h:
- UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp:
(API::WebsiteDataStore::defaultHSTSDirectory):
- UIProcess/API/glib/WebKitWebContext.cpp:
(webkitWebContextConstructed):
- UIProcess/API/glib/WebKitWebsiteData.cpp:
(recordContainsSupportedDataTypes):
(toWebKitWebsiteDataTypes):
- UIProcess/API/glib/WebKitWebsiteDataManager.cpp:
(webkitWebsiteDataManagerGetProperty):
(webkitWebsiteDataManagerSetProperty):
(webkitWebsiteDataManagerConstructed):
(webkit_website_data_manager_class_init):
(webkitWebsiteDataManagerGetDataStore):
(webkit_website_data_manager_get_hsts_cache_directory):
(toWebsiteDataTypes):
- UIProcess/API/gtk/WebKitWebsiteData.h:
- UIProcess/API/gtk/WebKitWebsiteDataManager.h:
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
- UIProcess/API/wpe/WebKitWebsiteData.h:
- UIProcess/API/wpe/WebKitWebsiteDataManager.h:
- UIProcess/API/wpe/docs/wpe-1.0-sections.txt:
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
(WebKit::WebsiteDataStoreConfiguration::copy):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:
(WebKit::WebsiteDataStoreConfiguration::hstsStorageDirectory const):
(WebKit::WebsiteDataStoreConfiguration::setHSTSStorageDirectory):
Tools:
policies from the storage and expose the feature in GTK+
MiniBrowser's about:data.
- MiniBrowser/gtk/main.c:
(gotWebsiteDataCallback):
- TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
(serverCallback):
(testWebsiteDataConfiguration):
(testWebsiteDataEphemeral):
(prepopulateHstsData):
(testWebsiteDataHsts):
(beforeAll):
- TestWebKitAPI/glib/WebKitGLib/TestMain.h:
(Test::Test):
- gtk/jhbuild.modules: Bump libsoup to 2.67.91 for the new APIs
- wpe/jhbuild.modules: Ditto
- MiniBrowser/gtk/main.c:
(gotWebsiteDataCallback):
- 12:10 AM Changeset in webkit [249191] by
-
- 15 edits4 adds in trunk
SVG2: Add length, item getter and item setter to all SVG lists
https://bugs.webkit.org/show_bug.cgi?id=199526
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-08-28
Reviewed by Simon Fraser.
Source/WebCore:
-- Implement the SVG2 specs for SVG lists:
https://svgwg.org/svg2-draft/types.html#TermListInterface.
-- Match the arguments' names in the IDL files with the specs.
Tests: svg/dom/SVGLengthList-length-indexed-access.xhtml
svg/dom/SVGPathSegList-length-indexed-access.xhtml
- svg/SVGLengthList.idl:
- svg/SVGNumberList.idl:
- svg/SVGPathSegList.h:
- svg/SVGPathSegList.idl:
- svg/SVGPointList.idl:
- svg/SVGStringList.idl:
- svg/SVGTransformList.idl:
- svg/properties/SVGList.h:
(WebCore::SVGList::length const):
(WebCore::SVGList::setItem):
LayoutTests:
- svg/custom/polyline-points-crash-expected.txt:
- svg/dom/SVGLengthList-basics-expected.txt:
- svg/dom/SVGLengthList-length-indexed-access-expected.txt: Added.
- svg/dom/SVGLengthList-length-indexed-access.xhtml: Added.
- svg/dom/SVGNumberList-basics-expected.txt:
- svg/dom/SVGPathSegList-length-indexed-access-expected.txt: Added.
- svg/dom/SVGPathSegList-length-indexed-access.xhtml: Added.
- svg/dom/SVGPointList-basics-expected.txt:
- svg/dom/SVGTransformList-basics-expected.txt:
Aug 27, 2019:
- 8:15 PM Changeset in webkit [249190] by
-
- 2 edits in trunk/Tools
Fix applying diffs that only change file mode
https://bugs.webkit.org/show_bug.cgi?id=201191
Patch by James Darpinian <jdarpinian@google.com> on 2019-08-27
Reviewed by Daniel Bates.
- Scripts/svn-apply:
(patch): Handle case of file mode change without content change
- 7:39 PM Changeset in webkit [249189] by
-
- 2 edits in trunk/Tools
[ews] Status bubble should be red for CANCELLED builds
https://bugs.webkit.org/show_bug.cgi?id=201204
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble):
- 6:40 PM Changeset in webkit [249188] by
-
- 3 edits3 adds in trunk
Make FrameLoader::open() set outgoing referrer properly
https://bugs.webkit.org/show_bug.cgi?id=167050
Source/WebCore:
<rdar://problem/27972404>
Reviewed by Youenn Fablet.
In debug builds, an assertion failed in WebCore::SecurityPolicy::generateReferrerHeader:
ASSERTION FAILED: referrer == URL(URL(), referrer).strippedForUseAsReferrer()
In release builds, cached pages with a URL fragment sent its URL fragment in the referrer.
m_outgoingReferrer mistakenly had a URL fragment.
Test: http/tests/navigation/page-cache-fragment-referrer.html
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::open): Set m_outgoingReferrer by using
FrameLoader::setOutgoingReferrer to remove URL fragments.
LayoutTests:
Reviewed by Youenn Fablet.
- http/tests/navigation/page-cache-fragment-referrer-expected.html: Added.
- http/tests/navigation/page-cache-fragment-referrer.html: Added.
- http/tests/navigation/resources/referrer.php: Added.
- 6:22 PM Changeset in webkit [249187] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. Build fix after r249175.
Fix the condition which generates the declaration of vm in
GenerateGetOwnPropertySlotByIndex.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotByIndex):
- 5:53 PM Changeset in webkit [249186] by
-
- 1 copy in tags/Safari-608.2.10
Tag Safari-608.2.10.
- 5:10 PM Changeset in webkit [249185] by
-
- 7 edits in trunk
Web Inspector: replace uses of added utility
Array.prototype.keySetwith an actualSet
https://bugs.webkit.org/show_bug.cgi?id=201194
Reviewed by Ross Kirsling.
Source/WebInspectorUI:
They both have basically the same functionality, with one difference being that a
Setcan
work with arrays that have non-string values.
- UserInterface/Base/Utilities.js:
(Array.prototype.keySet): Deleted.
- UserInterface/Controllers/CodeMirrorCompletionController.js:
(WI.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions):
(WI.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions.matchKeywords):
- UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
(WI.JavaScriptRuntimeCompletionProvider.completionControllerCompletionsNeeded.receivedPropertyNames):
LayoutTests:
- inspector/unit-tests/array-utilities.html:
- inspector/unit-tests/array-utilities-expected.txt:
- 4:48 PM Changeset in webkit [249184] by
-
- 5 edits in trunk/Source/JavaScriptCore
Update PACCage changes for builds without Gigacage, but with signed pointers
https://bugs.webkit.org/show_bug.cgi?id=201202
Reviewed by Saam Barati.
Factored out the untagging of pointers and added that to both the Gigacage enabled
and disabled code paths. Did this for the LLInt as well as the JITs.
- JavaScriptCore.xcodeproj/project.pbxproj: Added arm64e.rb to offlineasm file list.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::cageTypedArrayStorage):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::caged):
- llint/LowLevelInterpreter64.asm:
- 4:39 PM Changeset in webkit [249183] by
-
- 8 edits2 adds in trunk
[WebGPU] Implement GPUErrors for and relax GPUBuffer validation rules
https://bugs.webkit.org/show_bug.cgi?id=200852
Reviewed by Dean Jackson.
Source/WebCore:
Fix incorrect usage validation during GPUBuffer creation.
Implement GPUError reporting for GPUBuffer creation and methods.
Test: webgpu/buffer-errors.html
- Modules/webgpu/WebGPUBuffer.cpp:
(WebCore::WebGPUBuffer::create):
(WebCore::WebGPUBuffer::WebGPUBuffer):
(WebCore::WebGPUBuffer::unmap):
(WebCore::WebGPUBuffer::destroy):
(WebCore::WebGPUBuffer::rejectOrRegisterPromiseCallback):
- Modules/webgpu/WebGPUBuffer.h: Now inherits from GPUObjectBase.
- Modules/webgpu/WebGPUDevice.cpp:
(WebCore::WebGPUDevice::createBuffer const):
(WebCore::WebGPUDevice::createBufferMapped const):
- platform/graphics/gpu/GPUBuffer.h: No longer inherits from GPUObjectBase.
- platform/graphics/gpu/GPUObjectBase.h:
(WebCore::GPUObjectBase::errorScopes):
(WebCore::GPUObjectBase::generateError): Deleted.
- platform/graphics/gpu/cocoa/GPUBufferMetal.mm:
(WebCore::GPUBuffer::validateBufferUsage):
(WebCore::GPUBuffer::tryCreate): Alignment issue should be general WebGPU requirement.
(WebCore::GPUBuffer::GPUBuffer):
(WebCore::GPUBuffer::~GPUBuffer): Must do cleanup without generating errors.
(WebCore::GPUBuffer::registerMappingCallback):
(WebCore::GPUBuffer::copyStagingBufferToGPU):
(WebCore::GPUBuffer::unmap):
(WebCore::GPUBuffer::destroy):
LayoutTests:
Add a test to ensure GPUBuffer errors are generated properly.
- webgpu/buffer-errors-expected.txt: Added.
- webgpu/buffer-errors.html: Added.
- 3:43 PM Changeset in webkit [249182] by
-
- 1 copy in releases/WPE WebKit/webkit-2.24.3
WPE WebKit 2.24.3
- 3:42 PM Changeset in webkit [249181] by
-
- 4 edits in releases/WebKitGTK/webkit-2.24
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.24.3 release
.:
- Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
- wpe/NEWS: Add release noes for 2.24.3
- 3:31 PM Changeset in webkit [249180] by
-
- 1 copy in releases/WebKitGTK/webkit-2.24.4
WebKitGTK 2.24.4
- 3:29 PM Changeset in webkit [249179] by
-
- 4 edits in releases/WebKitGTK/webkit-2.24
Unreviewed. Update OptionsGTK.cmake and NEWS for the 2.24.4 release
.:
- Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
- gtk/NEWS: Add release notes for 2.24.4
- 3:29 PM Changeset in webkit [249178] by
-
- 2 edits in releases/WebKitGTK/webkit-2.24
Merged r248954 - [GTK][WPE] Gtk-Doc fails with build options which need cooperation between CFLAGS and LDFLAGS
https://bugs.webkit.org/show_bug.cgi?id=200987
Reviewed by Philippe Normand.
Only CFLAGS was being set before trying to generate the documentation
but not LDFLAGS, which could cause errors when gtk-doc tries to link
a generated program when the compiler flags would also require usage
of certain linker flags later on.
- Source/cmake/GtkDoc.cmake: Also set LDFLAGS in the environment when
invoking Tools/gtkdoc/generate-gtkdoc.
- 3:21 PM Changeset in webkit [249177] by
-
- 9 edits1 copy in trunk/Source/WebCore
[LFC][TFC] Layout and position the cell boxes
https://bugs.webkit.org/show_bug.cgi?id=201192
<rdar://problem/54758638>
Reviewed by Antti Koivisto.
Add a very basic (and faily incomplete) table cell layout logic. This is mostly WIP.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- layout/FormattingContext.h:
- layout/FormattingContextGeometry.cpp:
(WebCore::Layout::FormattingContext::Geometry::contentHeightForFormattingContextRoot):
(WebCore::Layout::contentHeightForFormattingContextRoot): Deleted.
- layout/tableformatting/TableFormattingContext.cpp:
(WebCore::Layout::TableFormattingContext::layout const):
(WebCore::Layout::TableFormattingContext::computedTableWidth const):
- layout/tableformatting/TableFormattingContext.h:
- layout/tableformatting/TableFormattingContextGeometry.cpp: Copied from Source/WebCore/layout/tableformatting/TableFormattingContext.h.
(WebCore::Layout::TableFormattingContext::Geometry::tableCellHeightAndMargin):
- layout/tableformatting/TableGrid.cpp:
(WebCore::Layout::TableGrid::Column::setLogicalLeft):
(WebCore::Layout::TableGrid::Column::logicalLeft const):
- layout/tableformatting/TableGrid.h:
(WebCore::Layout::TableGrid::Column::logicalRight const):
(WebCore::Layout::TableGrid::Row::setLogicalTop):
(WebCore::Layout::TableGrid::Row::logicalTop const):
(WebCore::Layout::TableGrid::Row::setLogicalHeight):
(WebCore::Layout::TableGrid::Row::logicalHeight const):
(WebCore::Layout::TableGrid::Row::logicalBottom const):
- 3:20 PM Changeset in webkit [249176] by
-
- 2 edits in trunk/LayoutTests
Test Gardening for scrollingcoordinator/ios/scroll-position-after-reattach.html
rdar://52961406
Unreviewed Test Gardening.
- platform/ios/TestExpectations:
- 3:14 PM Changeset in webkit [249175] by
-
- 416 edits in trunk/Source
Refactor to use VM& instead of VM* at as many places as possible.
https://bugs.webkit.org/show_bug.cgi?id=201172
Reviewed by Yusuke Suzuki.
Source/JavaScriptCore:
Using VM& documents more clearly that the VM pointer is expected to never be null
in most cases. There are a few places where it can be null (e.g JSLock, and
DFG::Plan). Those will be left using a VM*.
Also converted some uses of ExecState* to using VM& instead since the ExecState*
is only there to fetch the VM pointer. Doing this also reduces the number of
times we have to compute VM* from ExecState*.
This patch is not exhaustive in converting to use VM&, but applies the change to
many commonly used pieces of code for a start.
Also fixed a missing exception check in JSString::toIdentifier() and
JSValue::toPropertyKey() exposed by this patch.
- API/APICast.h:
(toJS):
- API/JSAPIGlobalObject.mm:
(JSC::JSAPIGlobalObject::moduleLoaderResolve):
(JSC::JSAPIGlobalObject::moduleLoaderImportModule):
(JSC::JSAPIGlobalObject::moduleLoaderFetch):
(JSC::JSAPIGlobalObject::moduleLoaderCreateImportMetaProperties):
(JSC::JSAPIGlobalObject::loadAndEvaluateJSScriptModule):
- API/JSCallbackConstructor.cpp:
(JSC::JSCallbackConstructor::finishCreation):
- API/JSCallbackObjectFunctions.h:
(JSC::JSCallbackObject<Parent>::asCallbackObject):
(JSC::JSCallbackObject<Parent>::~JSCallbackObject):
(JSC::JSCallbackObject<Parent>::getOwnPropertySlotByIndex):
(JSC::JSCallbackObject<Parent>::putByIndex):
(JSC::JSCallbackObject<Parent>::deletePropertyByIndex):
(JSC::JSCallbackObject<Parent>::getOwnNonIndexPropertyNames):
- API/JSContext.mm:
(-[JSContext dependencyIdentifiersForModuleJSScript:]):
- API/JSObjectRef.cpp:
(JSObjectMakeFunction):
(classInfoPrivate):
(JSObjectGetPrivate):
(JSObjectSetPrivate):
(JSObjectCopyPropertyNames):
(JSPropertyNameAccumulatorAddName):
(JSObjectGetProxyTarget):
- API/JSScriptRef.cpp:
(parseScript):
- API/JSValueRef.cpp:
(JSValueMakeString):
- API/OpaqueJSString.cpp:
(OpaqueJSString::identifier const):
- API/glib/JSCContext.cpp:
(jsc_context_check_syntax):
- KeywordLookupGenerator.py:
(Trie.printSubTreeAsC):
- Scripts/wkbuiltins/builtins_generate_wrapper_header.py:
(BuiltinsWrapperHeaderGenerator.generate_constructor):
- Scripts/wkbuiltins/builtins_templates.py:
- bindings/ScriptFunctionCall.cpp:
(Deprecated::ScriptCallArgumentHandler::appendArgument):
(Deprecated::ScriptFunctionCall::call):
- bindings/ScriptValue.cpp:
(Inspector::jsToInspectorValue):
- builtins/BuiltinExecutables.cpp:
(JSC::BuiltinExecutables::createExecutable):
- builtins/BuiltinNames.cpp:
(JSC::BuiltinNames::BuiltinNames):
- builtins/BuiltinNames.h:
(JSC::BuiltinNames::getPublicName const):
- bytecode/BytecodeDumper.cpp:
(JSC::BytecodeDumper<Block>::vm const):
- bytecode/BytecodeDumper.h:
- bytecode/BytecodeGeneratorification.cpp:
(JSC::BytecodeGeneratorification::BytecodeGeneratorification):
(JSC::BytecodeGeneratorification::storageForGeneratorLocal):
(JSC::BytecodeGeneratorification::run):
- bytecode/BytecodeIntrinsicRegistry.cpp:
(JSC::BytecodeIntrinsicRegistry::sentinelMapBucketValue):
(JSC::BytecodeIntrinsicRegistry::sentinelSetBucketValue):
- bytecode/CallVariant.h:
(JSC::CallVariant::internalFunction const):
(JSC::CallVariant::function const):
(JSC::CallVariant::isClosureCall const):
(JSC::CallVariant::executable const):
(JSC::CallVariant::functionExecutable const):
(JSC::CallVariant::nativeExecutable const):
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpSource):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::setConstantIdentifierSetRegisters):
(JSC::CodeBlock::setNumParameters):
(JSC::CodeBlock::finalizeBaselineJITInlineCaches):
(JSC::CodeBlock::unlinkIncomingCalls):
(JSC::CodeBlock::replacement):
(JSC::CodeBlock::computeCapabilityLevel):
(JSC::CodeBlock::noticeIncomingCall):
(JSC::CodeBlock::nameForRegister):
(JSC::CodeBlock::insertBasicBlockBoundariesForControlFlowProfiler):
- bytecode/CodeBlock.h:
(JSC::CodeBlock::vm const):
(JSC::CodeBlock::numberOfArgumentValueProfiles):
(JSC::CodeBlock::valueProfileForArgument):
- bytecode/DeferredSourceDump.cpp:
(JSC::DeferredSourceDump::DeferredSourceDump):
- bytecode/EvalCodeBlock.h:
- bytecode/FunctionCodeBlock.h:
- bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFromLLInt):
- bytecode/GlobalCodeBlock.h:
(JSC::GlobalCodeBlock::GlobalCodeBlock):
- bytecode/ModuleProgramCodeBlock.h:
- bytecode/ObjectAllocationProfileInlines.h:
(JSC::ObjectAllocationProfileBase<Derived>::possibleDefaultPropertyCount):
- bytecode/PolyProtoAccessChain.cpp:
(JSC::PolyProtoAccessChain::create):
- bytecode/ProgramCodeBlock.h:
- bytecode/PropertyCondition.cpp:
(JSC::PropertyCondition::isWatchableWhenValid const):
- bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeFromLLInt):
- bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::initGetByIdSelf):
(JSC::StructureStubInfo::initPutByIdReplace):
(JSC::StructureStubInfo::initInByIdSelf):
(JSC::StructureStubInfo::addAccessCase):
(JSC::StructureStubInfo::visitWeakReferences):
- bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):
- bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedCodeBlock::addSetConstant):
(JSC::UnlinkedCodeBlock::addConstant):
(JSC::UnlinkedCodeBlock::addFunctionDecl):
(JSC::UnlinkedCodeBlock::addFunctionExpr):
- bytecode/UnlinkedEvalCodeBlock.h:
- bytecode/UnlinkedFunctionCodeBlock.h:
- bytecode/UnlinkedFunctionExecutable.cpp:
(JSC::generateUnlinkedFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):
- bytecode/UnlinkedFunctionExecutable.h:
- bytecode/UnlinkedGlobalCodeBlock.h:
(JSC::UnlinkedGlobalCodeBlock::UnlinkedGlobalCodeBlock):
- bytecode/UnlinkedModuleProgramCodeBlock.h:
- bytecode/UnlinkedProgramCodeBlock.h:
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::pushLexicalScopeInternal):
(JSC::BytecodeGenerator::emitDirectPutById):
(JSC::BytecodeGenerator::getVariablesUnderTDZ):
(JSC::BytecodeGenerator::addBigIntConstant):
(JSC::BytecodeGenerator::addTemplateObjectConstant):
(JSC::BytecodeGenerator::emitNewDefaultConstructor):
(JSC::BytecodeGenerator::emitSetFunctionNameIfNeeded):
- bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::vm const):
(JSC::BytecodeGenerator::propertyNames const):
(JSC::BytecodeGenerator::emitNodeInTailPosition):
(JSC::BytecodeGenerator::emitDefineClassElements):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
- bytecompiler/NodesCodegen.cpp:
(JSC::RegExpNode::emitBytecode):
(JSC::ArrayNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_getByIdDirectPrivate):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_putByIdDirectPrivate):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_toObject):
(JSC::InstanceOfNode::emitBytecode):
- debugger/Debugger.cpp:
- debugger/DebuggerParseData.cpp:
(JSC::gatherDebuggerParseData):
- debugger/DebuggerScope.cpp:
(JSC::DebuggerScope::next):
(JSC::DebuggerScope::name const):
(JSC::DebuggerScope::location const):
- dfg/DFGDesiredIdentifiers.cpp:
(JSC::DFG::DesiredIdentifiers::reallyAdd):
- dfg/DFGDesiredWatchpoints.cpp:
(JSC::DFG::ArrayBufferViewWatchpointAdaptor::add):
(JSC::DFG::AdaptiveStructureWatchpointAdaptor::add):
- dfg/DFGFrozenValue.h:
(JSC::DFG::FrozenValue::FrozenValue):
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::canOptimizeStringObjectAccess):
- dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::compileExceptionHandlers):
(JSC::DFG::JITCompiler::link):
(JSC::DFG::emitStackOverflowCheck):
(JSC::DFG::JITCompiler::compileFunction):
(JSC::DFG::JITCompiler::exceptionCheck):
(JSC::DFG::JITCompiler::makeCatchOSREntryBuffer):
- dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::exceptionCheckWithCallFrameRollback):
(JSC::DFG::JITCompiler::fastExceptionCheck):
(JSC::DFG::JITCompiler::vm):
- dfg/DFGLazyJSValue.cpp:
(JSC::DFG::LazyJSValue::getValue const):
(JSC::DFG::LazyJSValue::emit const):
- dfg/DFGOSREntry.cpp:
(JSC::DFG::prepareOSREntry):
- dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::compileOSRExit):
(JSC::DFG::OSRExit::debugOperationPrintSpeculationFailure):
- dfg/DFGOSRExitCompilerCommon.h:
(JSC::DFG::adjustFrameAndStackInOSRExitCompilerThunk):
- dfg/DFGOperations.cpp:
(JSC::DFG::newTypedArrayWithSize):
(JSC::DFG::binaryOp):
(JSC::DFG::bitwiseBinaryOp):
- dfg/DFGPlan.cpp:
(JSC::DFG::Plan::Plan):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::emitAllocateRawObject):
(JSC::DFG::SpeculativeJIT::compileStringSlice):
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::compileCheckTraps):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compileFromCharCode):
(JSC::DFG::SpeculativeJIT::compileStringZeroLength):
(JSC::DFG::SpeculativeJIT::compileLogicalNotStringOrOther):
(JSC::DFG::SpeculativeJIT::emitStringBranch):
(JSC::DFG::SpeculativeJIT::emitStringOrOtherBranch):
(JSC::DFG::SpeculativeJIT::cageTypedArrayStorage):
(JSC::DFG::SpeculativeJIT::compileGetGlobalObject):
(JSC::DFG::SpeculativeJIT::compileNewFunctionCommon):
(JSC::DFG::SpeculativeJIT::compileCreateActivation):
(JSC::DFG::SpeculativeJIT::compileCreateDirectArguments):
(JSC::DFG::SpeculativeJIT::compileSpread):
(JSC::DFG::SpeculativeJIT::compileNewArray):
(JSC::DFG::SpeculativeJIT::compileNewArrayWithSpread):
(JSC::DFG::SpeculativeJIT::compileArraySlice):
(JSC::DFG::SpeculativeJIT::compileArrayPush):
(JSC::DFG::SpeculativeJIT::compileTypeOf):
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileNukeStructureAndSetButterfly):
(JSC::DFG::SpeculativeJIT::compileCallDOMGetter):
(JSC::DFG::SpeculativeJIT::compileCheckSubClass):
(JSC::DFG::SpeculativeJIT::compileNewStringObject):
(JSC::DFG::SpeculativeJIT::compileNewTypedArrayWithSize):
(JSC::DFG::SpeculativeJIT::compileNewRegexp):
(JSC::DFG::SpeculativeJIT::compileStoreBarrier):
(JSC::DFG::SpeculativeJIT::compileStringReplace):
(JSC::DFG::SpeculativeJIT::compileMaterializeNewObject):
(JSC::DFG::SpeculativeJIT::emitAllocateButterfly):
(JSC::DFG::SpeculativeJIT::compileGetMapBucketNext):
(JSC::DFG::SpeculativeJIT::compileObjectKeys):
(JSC::DFG::SpeculativeJIT::compileCreateThis):
(JSC::DFG::SpeculativeJIT::compileNewObject):
(JSC::DFG::SpeculativeJIT::compileLogShadowChickenPrologue):
(JSC::DFG::SpeculativeJIT::compileLogShadowChickenTail):
(JSC::DFG::SpeculativeJIT::compileGetPrototypeOf):
(JSC::DFG::SpeculativeJIT::compileAllocateNewArrayWithSize):
(JSC::DFG::SpeculativeJIT::compileProfileType):
(JSC::DFG::SpeculativeJIT::compileMakeRope):
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::vm):
(JSC::DFG::SpeculativeJIT::prepareForExternalCall):
(JSC::DFG::SpeculativeJIT::emitAllocateJSObjectWithKnownSize):
(JSC::DFG::SpeculativeJIT::emitAllocateJSObject):
(JSC::DFG::SpeculativeJIT::emitAllocateVariableSizedJSObject):
(JSC::DFG::SpeculativeJIT::emitAllocateDestructibleObject):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNullOrUndefined):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNullOrUndefined):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGThunks.cpp:
(JSC::DFG::osrExitThunkGenerator):
(JSC::DFG::osrExitGenerationThunkGenerator):
(JSC::DFG::osrEntryThunkGenerator):
- dfg/DFGThunks.h:
- dfg/DFGToFTLForOSREntryDeferredCompilationCallback.cpp:
(JSC::DFG::ToFTLForOSREntryDeferredCompilationCallback::compilationDidComplete):
- dfg/DFGWorklist.cpp:
(JSC::DFG::Worklist::visitWeakReferences):
- dynbench.cpp:
(main):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileMakeRope):
(JSC::FTL::DFG::LowerDFGToB3::compileStringSlice):
(JSC::FTL::DFG::LowerDFGToB3::boolify):
- ftl/FTLThunks.cpp:
(JSC::FTL::genericGenerationThunkGenerator):
(JSC::FTL::osrExitGenerationThunkGenerator):
(JSC::FTL::lazySlowPathGenerationThunkGenerator):
- ftl/FTLThunks.h:
- heap/CellContainer.h:
- heap/CellContainerInlines.h:
(JSC::CellContainer::vm const):
(JSC::CellContainer::heap const):
- heap/CompleteSubspace.cpp:
(JSC::CompleteSubspace::tryAllocateSlow):
(JSC::CompleteSubspace::reallocateLargeAllocationNonVirtual):
- heap/GCActivityCallback.h:
- heap/GCAssertions.h:
- heap/HandleSet.cpp:
(JSC::HandleSet::HandleSet):
- heap/HandleSet.h:
(JSC::HandleSet::vm):
- heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::lastChanceToFinalize):
(JSC::Heap::releaseDelayedReleasedObjects):
(JSC::Heap::protect):
(JSC::Heap::unprotect):
(JSC::Heap::finalizeMarkedUnconditionalFinalizers):
(JSC::Heap::finalizeUnconditionalFinalizers):
(JSC::Heap::completeAllJITPlans):
(JSC::Heap::iterateExecutingAndCompilingCodeBlocks):
(JSC::Heap::gatherJSStackRoots):
(JSC::Heap::gatherScratchBufferRoots):
(JSC::Heap::removeDeadCompilerWorklistEntries):
(JSC::Heap::isAnalyzingHeap const):
(JSC::Heap::gatherExtraHeapData):
(JSC::Heap::protectedObjectTypeCounts):
(JSC::Heap::objectTypeCounts):
(JSC::Heap::deleteAllCodeBlocks):
(JSC::Heap::deleteAllUnlinkedCodeBlocks):
(JSC::Heap::deleteUnmarkedCompiledCode):
(JSC::Heap::checkConn):
(JSC::Heap::runEndPhase):
(JSC::Heap::stopThePeriphery):
(JSC::Heap::finalize):
(JSC::Heap::requestCollection):
(JSC::Heap::sweepInFinalize):
(JSC::Heap::sweepArrayBuffers):
(JSC::Heap::deleteSourceProviderCaches):
(JSC::Heap::didFinishCollection):
(JSC::Heap::addCoreConstraints):
- heap/Heap.h:
- heap/HeapCell.h:
- heap/HeapCellInlines.h:
(JSC::HeapCell::heap const):
(JSC::HeapCell::vm const):
- heap/HeapInlines.h:
(JSC::Heap::vm const):
- heap/IsoSubspacePerVM.cpp:
(JSC::IsoSubspacePerVM::AutoremovingIsoSubspace::~AutoremovingIsoSubspace):
- heap/LargeAllocation.cpp:
(JSC::LargeAllocation::sweep):
(JSC::LargeAllocation::assertValidCell const):
- heap/LargeAllocation.h:
(JSC::LargeAllocation::vm const):
- heap/LocalAllocator.cpp:
(JSC::LocalAllocator::allocateSlowCase):
- heap/MarkedBlock.cpp:
(JSC::MarkedBlock::Handle::Handle):
(JSC::MarkedBlock::aboutToMarkSlow):
(JSC::MarkedBlock::assertMarksNotStale):
(JSC::MarkedBlock::areMarksStale):
(JSC::MarkedBlock::isMarked):
(JSC::MarkedBlock::assertValidCell const):
- heap/MarkedBlock.h:
(JSC::MarkedBlock::Handle::vm const):
(JSC::MarkedBlock::vm const):
- heap/MarkedBlockInlines.h:
(JSC::MarkedBlock::heap const):
(JSC::MarkedBlock::Handle::specializedSweep):
- heap/SlotVisitor.cpp:
(JSC::validate):
- heap/SlotVisitorInlines.h:
(JSC::SlotVisitor::vm):
(JSC::SlotVisitor::vm const):
- heap/StopIfNecessaryTimer.cpp:
(JSC::StopIfNecessaryTimer::StopIfNecessaryTimer):
- heap/StopIfNecessaryTimer.h:
- heap/Strong.h:
(JSC::Strong::operator=):
- heap/WeakSet.h:
(JSC::WeakSet::WeakSet):
(JSC::WeakSet::vm const):
- inspector/JSInjectedScriptHost.cpp:
(Inspector::JSInjectedScriptHost::savedResultAlias const):
(Inspector::JSInjectedScriptHost::internalConstructorName):
(Inspector::JSInjectedScriptHost::subtype):
(Inspector::JSInjectedScriptHost::functionDetails):
(Inspector::constructInternalProperty):
(Inspector::JSInjectedScriptHost::getInternalProperties):
(Inspector::JSInjectedScriptHost::weakMapEntries):
(Inspector::JSInjectedScriptHost::weakSetEntries):
(Inspector::JSInjectedScriptHost::iteratorEntries):
(Inspector::JSInjectedScriptHost::queryInstances):
(Inspector::JSInjectedScriptHost::queryHolders):
- inspector/JSJavaScriptCallFrame.cpp:
(Inspector::valueForScopeLocation):
(Inspector::JSJavaScriptCallFrame::scopeDescriptions):
(Inspector::JSJavaScriptCallFrame::functionName const):
(Inspector::JSJavaScriptCallFrame::type const):
- inspector/ScriptCallStackFactory.cpp:
(Inspector::extractSourceInformationFromException):
- inspector/agents/InspectorAuditAgent.cpp:
(Inspector::InspectorAuditAgent::populateAuditObject):
- inspector/agents/InspectorHeapAgent.cpp:
(Inspector::InspectorHeapAgent::gc):
- interpreter/FrameTracers.h:
(JSC::NativeCallFrameTracer::NativeCallFrameTracer):
- interpreter/Interpreter.cpp:
(JSC::Interpreter::executeProgram):
(JSC::Interpreter::prepareForRepeatCall):
(JSC::Interpreter::execute):
(JSC::Interpreter::executeModuleProgram):
- interpreter/StackVisitor.cpp:
(JSC::StackVisitor::Frame::calleeSaveRegistersForUnwinding):
(JSC::StackVisitor::Frame::computeLineAndColumn const):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::emitDumbVirtualCall):
(JSC::AssemblyHelpers::emitConvertValueToBoolean):
(JSC::AssemblyHelpers::branchIfValue):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::vm):
- jit/JIT.cpp:
(JSC::JIT::JIT):
(JSC::JIT::emitEnterOptimizationCheck):
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileExceptionHandlers):
- jit/JIT.h:
- jit/JITCall.cpp:
(JSC::JIT::compileCallEvalSlowCase):
- jit/JITCall32_64.cpp:
(JSC::JIT::compileCallEvalSlowCase):
- jit/JITExceptions.cpp:
(JSC::genericUnwind):
- jit/JITExceptions.h:
- jit/JITInlineCacheGenerator.cpp:
(JSC::JITGetByIdGenerator::JITGetByIdGenerator):
- jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_is_undefined):
(JSC::JIT::emit_op_jfalse):
(JSC::JIT::emit_op_jeq_null):
(JSC::JIT::emit_op_jneq_null):
(JSC::JIT::emit_op_jtrue):
(JSC::JIT::emit_op_throw):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_eq_null):
(JSC::JIT::emit_op_neq_null):
(JSC::JIT::emitSlow_op_loop_hint):
(JSC::JIT::emit_op_log_shadow_chicken_prologue):
(JSC::JIT::emit_op_log_shadow_chicken_tail):
- jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_jfalse):
(JSC::JIT::emit_op_jtrue):
(JSC::JIT::emit_op_throw):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_log_shadow_chicken_prologue):
(JSC::JIT::emit_op_log_shadow_chicken_tail):
- jit/JITOperations.cpp:
(JSC::operationNewFunctionCommon):
(JSC::tryGetByValOptimize):
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitWriteBarrier):
- jit/JITThunks.cpp:
(JSC::JITThunks::ctiNativeCall):
(JSC::JITThunks::ctiNativeConstruct):
(JSC::JITThunks::ctiNativeTailCall):
(JSC::JITThunks::ctiNativeTailCallWithoutSavedTags):
(JSC::JITThunks::ctiInternalFunctionCall):
(JSC::JITThunks::ctiInternalFunctionConstruct):
(JSC::JITThunks::ctiStub):
(JSC::JITThunks::hostFunctionStub):
- jit/JITThunks.h:
- jit/JITWorklist.cpp:
(JSC::JITWorklist::Plan::vm):
(JSC::JITWorklist::completeAllForVM):
(JSC::JITWorklist::poll):
(JSC::JITWorklist::compileLater):
(JSC::JITWorklist::compileNow):
- jit/Repatch.cpp:
(JSC::readPutICCallTarget):
(JSC::ftlThunkAwareRepatchCall):
(JSC::linkSlowFor):
(JSC::linkFor):
(JSC::linkDirectFor):
(JSC::revertCall):
(JSC::unlinkFor):
(JSC::linkVirtualFor):
(JSC::linkPolymorphicCall):
- jit/SpecializedThunkJIT.h:
(JSC::SpecializedThunkJIT::SpecializedThunkJIT):
- jit/ThunkGenerator.h:
- jit/ThunkGenerators.cpp:
(JSC::throwExceptionFromCallSlowPathGenerator):
(JSC::slowPathFor):
(JSC::linkCallThunkGenerator):
(JSC::linkPolymorphicCallThunkGenerator):
(JSC::virtualThunkFor):
(JSC::nativeForGenerator):
(JSC::nativeCallGenerator):
(JSC::nativeTailCallGenerator):
(JSC::nativeTailCallWithoutSavedTagsGenerator):
(JSC::nativeConstructGenerator):
(JSC::internalFunctionCallGenerator):
(JSC::internalFunctionConstructGenerator):
(JSC::arityFixupGenerator):
(JSC::unreachableGenerator):
(JSC::stringGetByValGenerator):
(JSC::charToString):
(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):
(JSC::fromCharCodeThunkGenerator):
(JSC::clz32ThunkGenerator):
(JSC::sqrtThunkGenerator):
(JSC::floorThunkGenerator):
(JSC::ceilThunkGenerator):
(JSC::truncThunkGenerator):
(JSC::roundThunkGenerator):
(JSC::expThunkGenerator):
(JSC::logThunkGenerator):
(JSC::absThunkGenerator):
(JSC::imulThunkGenerator):
(JSC::randomThunkGenerator):
(JSC::boundThisNoArgsFunctionCallGenerator):
- jit/ThunkGenerators.h:
- jsc.cpp:
(GlobalObject::finishCreation):
(GlobalObject::addFunction):
(GlobalObject::moduleLoaderImportModule):
(GlobalObject::moduleLoaderResolve):
(GlobalObject::moduleLoaderCreateImportMetaProperties):
(functionDescribe):
(functionDescribeArray):
(JSCMemoryFootprint::addProperty):
(functionRun):
(functionRunString):
(functionReadFile):
(functionCallerSourceOrigin):
(functionReadline):
(functionDollarCreateRealm):
(functionDollarEvalScript):
(functionDollarAgentGetReport):
(functionWaitForReport):
(functionJSCOptions):
(functionCheckModuleSyntax):
(functionGenerateHeapSnapshotForGCDebugging):
(functionWebAssemblyMemoryMode):
(dumpException):
(checkUncaughtException):
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::handleHostCall):
- parser/ASTBuilder.h:
(JSC::ASTBuilder::ASTBuilder):
(JSC::ASTBuilder::createResolve):
(JSC::ASTBuilder::createGetterOrSetterProperty):
(JSC::ASTBuilder::createProperty):
(JSC::ASTBuilder::createFuncDeclStatement):
(JSC::ASTBuilder::makeFunctionCallNode):
- parser/Lexer.cpp:
(JSC::Lexer<T>::Lexer):
(JSC::Lexer<LChar>::parseIdentifier):
(JSC::Lexer<UChar>::parseIdentifier):
- parser/Lexer.h:
(JSC::Lexer<T>::lexExpectIdentifier):
- parser/ModuleAnalyzer.cpp:
(JSC::ModuleAnalyzer::ModuleAnalyzer):
- parser/ModuleAnalyzer.h:
(JSC::ModuleAnalyzer::vm):
- parser/Parser.cpp:
(JSC::Parser<LexerType>::Parser):
(JSC::Parser<LexerType>::parseInner):
(JSC::Parser<LexerType>::isArrowFunctionParameters):
(JSC::Parser<LexerType>::parseSourceElements):
(JSC::Parser<LexerType>::parseModuleSourceElements):
(JSC::Parser<LexerType>::parseGeneratorFunctionSourceElements):
(JSC::Parser<LexerType>::parseAsyncFunctionSourceElements):
(JSC::Parser<LexerType>::parseAsyncGeneratorFunctionSourceElements):
(JSC::Parser<LexerType>::parseSingleFunction):
(JSC::Parser<LexerType>::parseStatementListItem):
(JSC::Parser<LexerType>::parseObjectRestAssignmentElement):
(JSC::Parser<LexerType>::parseAssignmentElement):
(JSC::Parser<LexerType>::parseDestructuringPattern):
(JSC::Parser<LexerType>::parseForStatement):
(JSC::Parser<LexerType>::parseBreakStatement):
(JSC::Parser<LexerType>::parseContinueStatement):
(JSC::Parser<LexerType>::parseStatement):
(JSC::Parser<LexerType>::maybeParseAsyncFunctionDeclarationStatement):
(JSC::Parser<LexerType>::createGeneratorParameters):
(JSC::Parser<LexerType>::parseFunctionInfo):
(JSC::Parser<LexerType>::parseFunctionDeclaration):
(JSC::Parser<LexerType>::parseAsyncFunctionDeclaration):
(JSC::Parser<LexerType>::parseClassDeclaration):
(JSC::Parser<LexerType>::parseClass):
(JSC::Parser<LexerType>::parseImportClauseItem):
(JSC::Parser<LexerType>::parseImportDeclaration):
(JSC::Parser<LexerType>::parseExportSpecifier):
(JSC::Parser<LexerType>::parseExportDeclaration):
(JSC::Parser<LexerType>::parseAssignmentExpression):
(JSC::Parser<LexerType>::parseProperty):
(JSC::Parser<LexerType>::parseGetterSetter):
(JSC::Parser<LexerType>::parseObjectLiteral):
(JSC::Parser<LexerType>::parseStrictObjectLiteral):
(JSC::Parser<LexerType>::parseClassExpression):
(JSC::Parser<LexerType>::parseFunctionExpression):
(JSC::Parser<LexerType>::parseAsyncFunctionExpression):
(JSC::Parser<LexerType>::parsePrimaryExpression):
(JSC::Parser<LexerType>::parseMemberExpression):
(JSC::Parser<LexerType>::parseArrowFunctionExpression):
(JSC::Parser<LexerType>::parseUnaryExpression):
- parser/Parser.h:
(JSC::isArguments):
(JSC::isEval):
(JSC::isEvalOrArgumentsIdentifier):
(JSC::Scope::Scope):
(JSC::Scope::declareParameter):
(JSC::Scope::setInnerArrowFunctionUsesEvalAndUseArgumentsIfNeeded):
(JSC::Scope::collectFreeVariables):
(JSC::Parser::canRecurse):
(JSC::parse):
(JSC::parseFunctionForFunctionConstructor):
- parser/ParserArena.h:
(JSC::IdentifierArena::makeIdentifier):
(JSC::IdentifierArena::makeEmptyIdentifier):
(JSC::IdentifierArena::makeIdentifierLCharFromUChar):
(JSC::IdentifierArena::makeNumericIdentifier):
- parser/SyntaxChecker.h:
(JSC::SyntaxChecker::SyntaxChecker):
(JSC::SyntaxChecker::createProperty):
(JSC::SyntaxChecker::createGetterOrSetterProperty):
- profiler/ProfilerBytecode.cpp:
(JSC::Profiler::Bytecode::toJS const):
- profiler/ProfilerBytecodeSequence.cpp:
(JSC::Profiler::BytecodeSequence::addSequenceProperties const):
- profiler/ProfilerBytecodes.cpp:
(JSC::Profiler::Bytecodes::toJS const):
- profiler/ProfilerCompilation.cpp:
(JSC::Profiler::Compilation::toJS const):
- profiler/ProfilerCompiledBytecode.cpp:
(JSC::Profiler::CompiledBytecode::toJS const):
- profiler/ProfilerEvent.cpp:
(JSC::Profiler::Event::toJS const):
- profiler/ProfilerOSRExit.cpp:
(JSC::Profiler::OSRExit::toJS const):
- profiler/ProfilerOSRExitSite.cpp:
(JSC::Profiler::OSRExitSite::toJS const):
- profiler/ProfilerUID.cpp:
(JSC::Profiler::UID::toJS const):
- runtime/AbstractModuleRecord.cpp:
(JSC::AbstractModuleRecord::finishCreation):
(JSC::AbstractModuleRecord::hostResolveImportedModule):
(JSC::AbstractModuleRecord::resolveExportImpl):
(JSC::getExportedNames):
(JSC::AbstractModuleRecord::getModuleNamespace):
- runtime/ArrayBufferNeuteringWatchpointSet.cpp:
(JSC::ArrayBufferNeuteringWatchpointSet::fireAll):
- runtime/ArrayIteratorPrototype.cpp:
(JSC::ArrayIteratorPrototype::finishCreation):
- runtime/ArrayPrototype.cpp:
(JSC::fastJoin):
(JSC::arrayProtoFuncToLocaleString):
(JSC::slowJoin):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncPush):
- runtime/AsyncFunctionPrototype.cpp:
(JSC::AsyncFunctionPrototype::finishCreation):
- runtime/AsyncGeneratorFunctionPrototype.cpp:
(JSC::AsyncGeneratorFunctionPrototype::finishCreation):
- runtime/AsyncGeneratorPrototype.cpp:
(JSC::AsyncGeneratorPrototype::finishCreation):
- runtime/AtomicsObject.cpp:
(JSC::AtomicsObject::finishCreation):
(JSC::atomicsFuncWait):
(JSC::operationAtomicsAdd):
(JSC::operationAtomicsAnd):
(JSC::operationAtomicsCompareExchange):
(JSC::operationAtomicsExchange):
(JSC::operationAtomicsIsLockFree):
(JSC::operationAtomicsLoad):
(JSC::operationAtomicsOr):
(JSC::operationAtomicsStore):
(JSC::operationAtomicsSub):
(JSC::operationAtomicsXor):
- runtime/BigIntPrototype.cpp:
(JSC::BigIntPrototype::finishCreation):
(JSC::bigIntProtoFuncToString):
- runtime/CachedTypes.cpp:
(JSC::CachedUniquedStringImplBase::decode const):
(JSC::CachedIdentifier::decode const):
(JSC::CachedJSValue::decode const):
- runtime/CodeCache.cpp:
(JSC::CodeCacheMap::pruneSlowCase):
(JSC::CodeCache::getUnlinkedGlobalFunctionExecutable):
- runtime/CodeCache.h:
(JSC::generateUnlinkedCodeBlockImpl):
- runtime/CommonIdentifiers.cpp:
(JSC::CommonIdentifiers::CommonIdentifiers):
- runtime/CommonIdentifiers.h:
- runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL):
- runtime/Completion.cpp:
(JSC::checkSyntaxInternal):
(JSC::checkModuleSyntax):
(JSC::loadAndEvaluateModule):
(JSC::loadModule):
- runtime/DateConstructor.cpp:
(JSC::callDate):
- runtime/DatePrototype.cpp:
(JSC::formatLocaleDate):
(JSC::formateDateInstance):
(JSC::DatePrototype::finishCreation):
(JSC::dateProtoFuncToISOString):
- runtime/Error.cpp:
(JSC::addErrorInfo):
- runtime/ErrorInstance.cpp:
(JSC::appendSourceToError):
(JSC::ErrorInstance::finishCreation):
(JSC::ErrorInstance::materializeErrorInfoIfNeeded):
- runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::finishCreation):
(JSC::errorProtoFuncToString):
- runtime/ExceptionHelpers.cpp:
(JSC::TerminatedExecutionError::defaultValue):
- runtime/FunctionPrototype.cpp:
(JSC::functionProtoFuncToString):
- runtime/FunctionRareData.cpp:
(JSC::FunctionRareData::clear):
- runtime/GeneratorFunctionPrototype.cpp:
(JSC::GeneratorFunctionPrototype::finishCreation):
- runtime/GeneratorPrototype.cpp:
(JSC::GeneratorPrototype::finishCreation):
- runtime/GenericArgumentsInlines.h:
(JSC::GenericArguments<Type>::getOwnPropertyNames):
- runtime/GetterSetter.h:
- runtime/Identifier.cpp:
(JSC::Identifier::add):
(JSC::Identifier::add8):
(JSC::Identifier::from):
(JSC::Identifier::checkCurrentAtomStringTable):
- runtime/Identifier.h:
(JSC::Identifier::fromString):
(JSC::Identifier::createLCharFromUChar):
(JSC::Identifier::Identifier):
(JSC::Identifier::add):
- runtime/IdentifierInlines.h:
(JSC::Identifier::Identifier):
(JSC::Identifier::add):
(JSC::Identifier::fromUid):
(JSC::Identifier::fromString):
(JSC::identifierToJSValue):
(JSC::identifierToSafePublicJSValue):
- runtime/InternalFunction.cpp:
(JSC::InternalFunction::finishCreation):
- runtime/IntlCollator.cpp:
(JSC::IntlCollator::resolvedOptions):
- runtime/IntlCollatorPrototype.cpp:
(JSC::IntlCollatorPrototype::finishCreation):
- runtime/IntlDateTimeFormat.cpp:
(JSC::IntlDTFInternal::toDateTimeOptionsAnyDate):
(JSC::IntlDateTimeFormat::resolvedOptions):
(JSC::IntlDateTimeFormat::format):
(JSC::IntlDateTimeFormat::formatToParts):
- runtime/IntlDateTimeFormatPrototype.cpp:
(JSC::IntlDateTimeFormatPrototype::finishCreation):
- runtime/IntlNumberFormat.cpp:
(JSC::IntlNumberFormat::initializeNumberFormat):
(JSC::IntlNumberFormat::formatNumber):
(JSC::IntlNumberFormat::resolvedOptions):
(JSC::IntlNumberFormat::formatToParts):
- runtime/IntlNumberFormatPrototype.cpp:
(JSC::IntlNumberFormatPrototype::finishCreation):
- runtime/IntlObject.cpp:
(JSC::lookupSupportedLocales):
(JSC::supportedLocales):
(JSC::intlObjectFuncGetCanonicalLocales):
- runtime/IntlPluralRules.cpp:
(JSC::IntlPluralRules::initializePluralRules):
(JSC::IntlPluralRules::resolvedOptions):
(JSC::IntlPluralRules::select):
- runtime/IntlPluralRulesPrototype.cpp:
(JSC::IntlPluralRulesPrototype::finishCreation):
- runtime/JSArray.h:
(JSC::asArray):
(JSC::isJSArray):
- runtime/JSArrayBufferPrototype.cpp:
(JSC::JSArrayBufferPrototype::finishCreation):
- runtime/JSArrayBufferView.cpp:
(JSC::JSArrayBufferView::slowDownAndWasteMemory):
- runtime/JSCJSValue.cpp:
(JSC::JSValue::putToPrimitiveByIndex):
(JSC::JSValue::dumpForBacktrace const):
(JSC::JSValue::toStringSlowCase const):
- runtime/JSCJSValueInlines.h:
(JSC::JSValue::toPropertyKey const):
(JSC::JSValue::get const):
- runtime/JSCast.h:
(JSC::jsCast):
- runtime/JSCell.cpp:
(JSC::JSCell::dump const):
(JSC::JSCell::dumpToStream):
(JSC::JSCell::putByIndex):
- runtime/JSCellInlines.h:
(JSC::JSCell::structure const):
(JSC::ExecState::vm const):
(JSC::tryAllocateCellHelper):
- runtime/JSDataViewPrototype.cpp:
(JSC::JSDataViewPrototype::finishCreation):
- runtime/JSFixedArray.cpp:
(JSC::JSFixedArray::dumpToStream):
- runtime/JSFunction.cpp:
(JSC::JSFunction::finishCreation):
(JSC::RetrieveCallerFunctionFunctor::operator() const):
(JSC::JSFunction::reifyName):
(JSC::JSFunction::reifyLazyBoundNameIfNeeded):
(JSC::JSFunction::assertTypeInfoFlagInvariants):
- runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::deletePropertyByIndex):
(JSC::JSGenericTypedArrayView<Adaptor>::getOwnPropertyNames):
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::exposeDollarVM):
- runtime/JSGlobalObjectFunctions.cpp:
(JSC::encode):
(JSC::decode):
(JSC::globalFuncEscape):
(JSC::globalFuncUnescape):
(JSC::globalFuncBuiltinDescribe):
- runtime/JSLexicalEnvironment.cpp:
(JSC::JSLexicalEnvironment::getOwnNonIndexPropertyNames):
- runtime/JSModuleEnvironment.cpp:
(JSC::JSModuleEnvironment::getOwnPropertySlot):
(JSC::JSModuleEnvironment::put):
(JSC::JSModuleEnvironment::deleteProperty):
- runtime/JSModuleLoader.cpp:
(JSC::JSModuleLoader::finishCreation):
(JSC::JSModuleLoader::requestImportModule):
(JSC::moduleLoaderParseModule):
(JSC::moduleLoaderRequestedModules):
- runtime/JSModuleNamespaceObject.cpp:
(JSC::JSModuleNamespaceObject::finishCreation):
(JSC::JSModuleNamespaceObject::getOwnPropertySlotByIndex):
- runtime/JSModuleRecord.cpp:
(JSC::JSModuleRecord::instantiateDeclarations):
- runtime/JSONObject.cpp:
(JSC::JSONObject::finishCreation):
(JSC::PropertyNameForFunctionCall::value const):
(JSC::Stringifier::Stringifier):
(JSC::Stringifier::stringify):
(JSC::Stringifier::Holder::appendNextProperty):
(JSC::Walker::walk):
- runtime/JSObject.cpp:
(JSC::getClassPropertyNames):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::JSObject::putByIndex):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::toString const):
(JSC::JSObject::reifyAllStaticProperties):
(JSC::JSObject::putDirectIndexSlowOrBeyondVectorLength):
- runtime/JSObject.h:
(JSC::JSObject::putByIndexInline):
(JSC::JSObject::butterflyPreCapacity):
(JSC::JSObject::butterflyTotalSize):
(JSC::makeIdentifier):
- runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::finishCreation):
- runtime/JSPropertyNameEnumerator.cpp:
(JSC::JSPropertyNameEnumerator::finishCreation):
- runtime/JSPropertyNameEnumerator.h:
(JSC::propertyNameEnumerator):
- runtime/JSRunLoopTimer.cpp:
(JSC::JSRunLoopTimer::JSRunLoopTimer):
- runtime/JSRunLoopTimer.h:
- runtime/JSString.cpp:
(JSC::JSString::dumpToStream):
(JSC::JSRopeString::resolveRopeWithFunction const):
(JSC::jsStringWithCacheSlowCase):
- runtime/JSString.h:
(JSC::jsEmptyString):
(JSC::jsSingleCharacterString):
(JSC::jsNontrivialString):
(JSC::JSString::toIdentifier const):
(JSC::JSString::toAtomString const):
(JSC::JSString::toExistingAtomString const):
(JSC::JSString::value const):
(JSC::JSString::tryGetValue const):
(JSC::JSString::getIndex):
(JSC::jsString):
(JSC::jsSubstring):
(JSC::jsOwnedString):
(JSC::jsStringWithCache):
(JSC::JSRopeString::unsafeView const):
(JSC::JSRopeString::viewWithUnderlyingString const):
(JSC::JSString::unsafeView const):
- runtime/JSStringInlines.h:
(JSC::jsMakeNontrivialString):
(JSC::repeatCharacter):
- runtime/JSStringJoiner.cpp:
(JSC::JSStringJoiner::join):
- runtime/JSSymbolTableObject.cpp:
(JSC::JSSymbolTableObject::getOwnNonIndexPropertyNames):
- runtime/JSTemplateObjectDescriptor.cpp:
(JSC::JSTemplateObjectDescriptor::createTemplateObject):
- runtime/JSTypedArrayViewPrototype.cpp:
(JSC::typedArrayViewProtoGetterFuncToStringTag):
- runtime/LazyClassStructure.cpp:
(JSC::LazyClassStructure::Initializer::setConstructor):
- runtime/LazyProperty.h:
(JSC::LazyProperty::Initializer::Initializer):
- runtime/LiteralParser.cpp:
(JSC::LiteralParser<CharType>::tryJSONPParse):
(JSC::LiteralParser<CharType>::makeIdentifier):
(JSC::LiteralParser<CharType>::parse):
- runtime/Lookup.h:
(JSC::reifyStaticProperties):
- runtime/MapIteratorPrototype.cpp:
(JSC::MapIteratorPrototype::finishCreation):
- runtime/MapPrototype.cpp:
(JSC::MapPrototype::finishCreation):
- runtime/MathObject.cpp:
(JSC::MathObject::finishCreation):
- runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::finishCreation):
- runtime/NumberPrototype.cpp:
(JSC::numberProtoFuncToExponential):
(JSC::numberProtoFuncToFixed):
(JSC::numberProtoFuncToPrecision):
(JSC::int32ToStringInternal):
(JSC::numberToStringInternal):
(JSC::int52ToString):
- runtime/ObjectConstructor.cpp:
(JSC::objectConstructorGetOwnPropertyDescriptors):
(JSC::objectConstructorAssign):
(JSC::objectConstructorValues):
(JSC::defineProperties):
(JSC::setIntegrityLevel):
(JSC::testIntegrityLevel):
(JSC::ownPropertyKeys):
- runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncToString):
- runtime/Operations.h:
(JSC::jsString):
(JSC::jsStringFromRegisterArray):
(JSC::jsStringFromArguments):
- runtime/ProgramExecutable.cpp:
(JSC::ProgramExecutable::initializeGlobalProperties):
- runtime/PromiseDeferredTimer.cpp:
(JSC::PromiseDeferredTimer::PromiseDeferredTimer):
(JSC::PromiseDeferredTimer::hasPendingPromise):
(JSC::PromiseDeferredTimer::hasDependancyInPendingPromise):
(JSC::PromiseDeferredTimer::cancelPendingPromise):
- runtime/PropertyNameArray.h:
(JSC::PropertyNameArray::PropertyNameArray):
(JSC::PropertyNameArray::vm):
- runtime/PropertySlot.h:
(JSC::PropertySlot::getValue const):
- runtime/ProxyObject.cpp:
(JSC::performProxyGet):
(JSC::ProxyObject::performInternalMethodGetOwnProperty):
(JSC::ProxyObject::performHasProperty):
(JSC::ProxyObject::getOwnPropertySlotByIndex):
(JSC::ProxyObject::performPut):
(JSC::ProxyObject::putByIndexCommon):
(JSC::ProxyObject::performDelete):
(JSC::ProxyObject::deletePropertyByIndex):
(JSC::ProxyObject::performDefineOwnProperty):
(JSC::ProxyObject::performGetOwnPropertyNames):
- runtime/RegExpGlobalData.cpp:
(JSC::RegExpGlobalData::getBackref):
(JSC::RegExpGlobalData::getLastParen):
- runtime/RegExpMatchesArray.cpp:
(JSC::createEmptyRegExpMatchesArray):
- runtime/RegExpMatchesArray.h:
(JSC::createRegExpMatchesArray):
- runtime/RegExpPrototype.cpp:
(JSC::regExpProtoGetterFlags):
(JSC::regExpProtoGetterSourceInternal):
(JSC::regExpProtoGetterSource):
- runtime/RegExpStringIteratorPrototype.cpp:
(JSC::RegExpStringIteratorPrototype::finishCreation):
- runtime/SamplingProfiler.cpp:
(JSC::SamplingProfiler::processUnverifiedStackTraces):
- runtime/ScriptExecutable.cpp:
(JSC::ScriptExecutable::installCode):
(JSC::ScriptExecutable::newCodeBlockFor):
(JSC::ScriptExecutable::newReplacementCodeBlockFor):
(JSC::setupJIT):
- runtime/SetIteratorPrototype.cpp:
(JSC::SetIteratorPrototype::finishCreation):
- runtime/SetPrototype.cpp:
(JSC::SetPrototype::finishCreation):
- runtime/StackFrame.cpp:
(JSC::StackFrame::computeLineAndColumn const):
- runtime/StringConstructor.cpp:
(JSC::stringFromCharCode):
(JSC::stringFromCodePoint):
(JSC::stringConstructor):
(JSC::callStringConstructor):
- runtime/StringIteratorPrototype.cpp:
(JSC::StringIteratorPrototype::finishCreation):
- runtime/StringObject.cpp:
(JSC::StringObject::getOwnPropertySlotByIndex):
(JSC::StringObject::getOwnPropertyNames):
- runtime/StringObject.h:
(JSC::StringObject::create):
(JSC::jsStringWithReuse):
(JSC::jsSubstring):
- runtime/StringPrototype.cpp:
(JSC::StringPrototype::finishCreation):
(JSC::StringPrototype::create):
(JSC::jsSpliceSubstrings):
(JSC::jsSpliceSubstringsWithSeparators):
(JSC::replaceUsingRegExpSearch):
(JSC::operationStringProtoFuncReplaceRegExpEmptyStr):
(JSC::operationStringProtoFuncReplaceRegExpString):
(JSC::replaceUsingStringSearch):
(JSC::operationStringProtoFuncReplaceGeneric):
(JSC::stringProtoFuncCharAt):
(JSC::stringProtoFuncSplitFast):
(JSC::stringProtoFuncSubstr):
(JSC::stringProtoFuncToLowerCase):
(JSC::stringProtoFuncToUpperCase):
(JSC::toLocaleCase):
(JSC::trimString):
(JSC::normalize):
- runtime/StringPrototypeInlines.h:
(JSC::stringSlice):
- runtime/StringRecursionChecker.cpp:
(JSC::StringRecursionChecker::emptyString):
- runtime/Structure.cpp:
(JSC::Structure::didTransitionFromThisStructure const):
- runtime/StructureInlines.h:
(JSC::Structure::didReplaceProperty):
(JSC::Structure::shouldConvertToPolyProto):
- runtime/SymbolConstructor.cpp:
(JSC::symbolConstructorKeyFor):
- runtime/SymbolPrototype.cpp:
(JSC::SymbolPrototype::finishCreation):
(JSC::symbolProtoGetterDescription):
(JSC::symbolProtoFuncToString):
- runtime/SymbolTable.cpp:
(JSC::SymbolTable::setRareDataCodeBlock):
- runtime/TestRunnerUtils.cpp:
(JSC::getExecutableForFunction):
- runtime/VM.cpp:
(JSC::VM::VM):
(JSC::VM::getHostFunction):
(JSC::VM::getCTIInternalFunctionTrampolineFor):
(JSC::VM::shrinkFootprintWhenIdle):
(JSC::logSanitizeStack):
(JSC::sanitizeStackForVM):
(JSC::VM::emptyPropertyNameEnumeratorSlow):
- runtime/VM.h:
(JSC::VM::getCTIStub):
(JSC::WeakSet::heap const):
- runtime/VMTraps.cpp:
- runtime/WeakMapPrototype.cpp:
(JSC::WeakMapPrototype::finishCreation):
- runtime/WeakObjectRefPrototype.cpp:
(JSC::WeakObjectRefPrototype::finishCreation):
- runtime/WeakSetPrototype.cpp:
(JSC::WeakSetPrototype::finishCreation):
- tools/HeapVerifier.cpp:
(JSC::HeapVerifier::printVerificationHeader):
(JSC::HeapVerifier::verifyCellList):
(JSC::HeapVerifier::validateJSCell):
(JSC::HeapVerifier::reportCell):
- tools/JSDollarVM.cpp:
(JSC::JSDollarVMCallFrame::finishCreation):
(JSC::JSDollarVMCallFrame::addProperty):
(JSC::CustomGetter::getOwnPropertySlot):
(JSC::CustomGetter::customGetter):
(JSC::CustomGetter::customGetterAcessor):
(JSC::DOMJITGetter::DOMJITAttribute::slowCall):
(JSC::DOMJITGetter::finishCreation):
(JSC::DOMJITGetterComplex::DOMJITAttribute::slowCall):
(JSC::DOMJITGetterComplex::finishCreation):
(JSC::DOMJITFunctionObject::functionWithoutTypeCheck):
(JSC::DOMJITFunctionObject::finishCreation):
(JSC::DOMJITCheckSubClassObject::functionWithoutTypeCheck):
(JSC::DOMJITCheckSubClassObject::finishCreation):
(JSC::DOMJITGetterBaseJSObject::DOMJITAttribute::slowCall):
(JSC::DOMJITGetterBaseJSObject::finishCreation):
(JSC::customSetAccessor):
(JSC::customSetValue):
(JSC::JSTestCustomGetterSetter::finishCreation):
(JSC::WasmStreamingParser::finishCreation):
(JSC::getExecutableForFunction):
(JSC::functionCodeBlockFor):
(JSC::functionIndexingMode):
(JSC::functionValue):
(JSC::functionCreateBuiltin):
(JSC::functionGetPrivateProperty):
(JSC::JSDollarVM::finishCreation):
(JSC::JSDollarVM::addFunction):
(JSC::JSDollarVM::addConstructibleFunction):
- tools/VMInspector.cpp:
(JSC::VMInspector::dumpRegisters):
(JSC::VMInspector::dumpCellMemoryToStream):
- wasm/WasmInstance.cpp:
(JSC::Wasm::Instance::setGlobal):
(JSC::Wasm::Instance::setFunctionWrapper):
(JSC::Wasm::setWasmTableElement):
(JSC::Wasm::doWasmRefFunc):
- wasm/WasmTable.cpp:
(JSC::Wasm::Table::set):
(JSC::Wasm::FuncRefTable::setFunction):
- wasm/js/JSWebAssembly.cpp:
(JSC::resolve):
- wasm/js/JSWebAssemblyInstance.cpp:
(JSC::JSWebAssemblyInstance::create):
- wasm/js/WasmToJS.cpp:
(JSC::Wasm::handleBadI64Use):
(JSC::Wasm::wasmToJS):
(JSC::Wasm::wasmToJSException):
- wasm/js/WebAssemblyFunction.cpp:
(JSC::WebAssemblyFunction::jsCallEntrypointSlow):
- wasm/js/WebAssemblyMemoryConstructor.cpp:
(JSC::constructJSWebAssemblyMemory):
- wasm/js/WebAssemblyModuleConstructor.cpp:
(JSC::webAssemblyModuleImports):
(JSC::webAssemblyModuleExports):
- wasm/js/WebAssemblyModuleRecord.cpp:
(JSC::WebAssemblyModuleRecord::finishCreation):
(JSC::WebAssemblyModuleRecord::link):
- wasm/js/WebAssemblyTableConstructor.cpp:
(JSC::constructJSWebAssemblyTable):
Source/WebCore:
No new tests. Covered by existing tests.
- Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.cpp:
(WebCore::CDMSessionClearKey::update):
- Modules/plugins/QuickTimePluginReplacement.mm:
(WebCore::QuickTimePluginReplacement::ensureReplacementScriptInjected):
(WebCore::QuickTimePluginReplacement::installReplacement):
- animation/KeyframeEffect.cpp:
(WebCore::processKeyframeLikeObject):
- bindings/js/GCController.cpp:
(WebCore::GCController::dumpHeap):
- bindings/js/IDBBindingUtilities.cpp:
(WebCore::get):
(WebCore::set):
- bindings/js/JSCSSRuleListCustom.cpp:
(WebCore::JSCSSRuleListOwner::isReachableFromOpaqueRoots):
- bindings/js/JSCustomElementRegistryCustom.cpp:
(WebCore::JSCustomElementRegistry::define):
- bindings/js/JSCustomXPathNSResolver.cpp:
(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
- bindings/js/JSDOMConvertRecord.h:
- bindings/js/JSDOMConvertStrings.h:
(WebCore::JSConverter<IDLDOMString>::convert):
(WebCore::JSConverter<IDLByteString>::convert):
(WebCore::JSConverter<IDLUSVString>::convert):
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore::addScopedChildrenIndexes):
(WebCore::JSDOMWindow::defineOwnProperty):
(WebCore::DialogHandler::dialogCreated):
(WebCore::DialogHandler::returnValue const):
(WebCore::JSDOMWindow::setOpener):
(WebCore::JSDOMWindow::setOpenDatabase):
- bindings/js/JSDOMWindowProperties.cpp:
(WebCore::JSDOMWindowProperties::getOwnPropertySlotByIndex):
- bindings/js/JSDeprecatedCSSOMValueCustom.cpp:
(WebCore::JSDeprecatedCSSOMValueOwner::isReachableFromOpaqueRoots):
- bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
- bindings/js/JSImageDataCustom.cpp:
(WebCore::toJSNewlyCreated):
- bindings/js/JSLazyEventListener.cpp:
(WebCore::JSLazyEventListener::initializeJSFunction const):
- bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::getOwnPropertySlotByIndex):
(WebCore::JSLocation::putByIndex):
- bindings/js/JSNodeListCustom.cpp:
(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):
- bindings/js/JSPluginElementFunctions.cpp:
(WebCore::pluginElementCustomGetCallData):
- bindings/js/JSRemoteDOMWindowCustom.cpp:
(WebCore::JSRemoteDOMWindow::getOwnPropertySlotByIndex):
- bindings/js/ReadableStreamDefaultController.cpp:
(WebCore::ReadableStreamDefaultController::invoke):
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::linkAndEvaluateModuleScriptInWorld):
- bindings/js/ScriptModuleLoader.cpp:
(WebCore::ScriptModuleLoader::resolve):
(WebCore::ScriptModuleLoader::importModule):
(WebCore::ScriptModuleLoader::createImportMetaProperties):
- bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::CloneSerializer):
(WebCore::CloneSerializer::write):
(WebCore::CloneSerializer::serialize):
(WebCore::CloneDeserializer::CachedString::jsString):
(WebCore::CloneDeserializer::readTerminal):
(WebCore::CloneDeserializer::deserialize):
- bindings/js/WebCoreBuiltinNames.h:
(WebCore::WebCoreBuiltinNames::WebCoreBuiltinNames):
- bindings/js/WebCoreJSClientData.cpp:
(WebCore::JSVMClientData::JSVMClientData):
- bindings/js/WindowProxy.cpp:
(WebCore::WindowProxy::clearJSWindowProxiesNotMatchingDOMWindow):
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotByIndex):
(GenerateGetOwnPropertyNames):
(GeneratePutByIndex):
(GenerateDeletePropertyByIndex):
(GenerateDictionaryImplementationContent):
(addUnscopableProperties):
(GenerateImplementation):
(GenerateAttributeSetterBodyDefinition):
(GenerateOperationDefinition):
(GenerateSerializerDefinition):
(GenerateCallbackImplementationContent):
(GenerateConstructorHelperMethods):
- bindings/scripts/test/JS/JSInterfaceName.cpp:
(WebCore::JSInterfaceNameConstructor::initializeProperties):
- bindings/scripts/test/JS/JSMapLike.cpp:
(WebCore::JSMapLikeConstructor::initializeProperties):
- bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:
(WebCore::JSReadOnlyMapLikeConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::JSTestActiveDOMObjectConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestCEReactions.cpp:
(WebCore::JSTestCEReactionsConstructor::initializeProperties):
(WebCore::setJSTestCEReactionsAttributeWithCEReactionsSetter):
(WebCore::setJSTestCEReactionsReflectAttributeWithCEReactionsSetter):
(WebCore::setJSTestCEReactionsStringifierAttributeSetter):
(WebCore::setJSTestCEReactionsAttributeWithCEReactionsNotNeededSetter):
(WebCore::setJSTestCEReactionsReflectAttributeWithCEReactionsNotNeededSetter):
(WebCore::setJSTestCEReactionsStringifierAttributeNotNeededSetter):
- bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
(WebCore::JSTestCEReactionsStringifierConstructor::initializeProperties):
(WebCore::setJSTestCEReactionsStringifierValueSetter):
(WebCore::setJSTestCEReactionsStringifierValueWithoutReactionsSetter):
- bindings/scripts/test/JS/JSTestCallTracer.cpp:
(WebCore::JSTestCallTracerConstructor::initializeProperties):
(WebCore::setJSTestCallTracerTestAttributeInterfaceSetter):
(WebCore::setJSTestCallTracerTestAttributeSpecifiedSetter):
(WebCore::setJSTestCallTracerTestAttributeWithVariantSetter):
- bindings/scripts/test/JS/JSTestCallbackInterface.cpp:
(WebCore::convertDictionary<TestCallbackInterface::Dictionary>):
(WebCore::JSTestCallbackInterfaceConstructor::initializeProperties):
(WebCore::JSTestCallbackInterface::callbackWithNoParam):
(WebCore::JSTestCallbackInterface::callbackWithArrayParam):
(WebCore::JSTestCallbackInterface::callbackWithSerializedScriptValueParam):
(WebCore::JSTestCallbackInterface::callbackWithStringList):
(WebCore::JSTestCallbackInterface::callbackWithBoolean):
(WebCore::JSTestCallbackInterface::callbackRequiresThisToPass):
(WebCore::JSTestCallbackInterface::callbackWithAReturnValue):
(WebCore::JSTestCallbackInterface::callbackThatRethrowsExceptions):
(WebCore::JSTestCallbackInterface::callbackThatSkipsInvokeCheck):
(WebCore::JSTestCallbackInterface::callbackWithThisObject):
- bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:
(WebCore::JSTestClassWithJSBuiltinConstructorConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestDOMJIT.cpp:
(WebCore::JSTestDOMJITConstructor::initializeProperties):
(WebCore::jsTestDOMJITPrototypeFunctionGetAttributeWithoutTypeCheck):
(WebCore::jsTestDOMJITPrototypeFunctionItemWithoutTypeCheck):
(WebCore::jsTestDOMJITPrototypeFunctionHasAttributeWithoutTypeCheck):
(WebCore::jsTestDOMJITPrototypeFunctionGetElementByIdWithoutTypeCheck):
(WebCore::jsTestDOMJITPrototypeFunctionGetElementsByNameWithoutTypeCheck):
- bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
(WebCore::JSTestEnabledBySettingConstructor::initializeProperties):
(WebCore::JSTestEnabledBySettingPrototype::finishCreation):
(WebCore::setJSTestEnabledBySettingTestSubObjEnabledBySettingConstructorSetter):
(WebCore::setJSTestEnabledBySettingEnabledBySettingAttributeSetter):
- bindings/scripts/test/JS/JSTestEnabledForContext.cpp:
(WebCore::JSTestEnabledForContextConstructor::initializeProperties):
(WebCore::setJSTestEnabledForContextTestSubObjEnabledForContextConstructorSetter):
- bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::convertDictionary<TestEventConstructor::Init>):
(WebCore::JSTestEventConstructorConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTargetConstructor::initializeProperties):
(WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
(WebCore::JSTestEventTarget::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::JSTestExceptionConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
(WebCore::JSTestGenerateIsReachableConstructor::initializeProperties):
(WebCore::JSTestGenerateIsReachablePrototype::finishCreation):
- bindings/scripts/test/JS/JSTestGlobalObject.cpp:
(WebCore::JSTestGlobalObjectConstructor::initializeProperties):
(WebCore::setJSTestGlobalObjectRegularAttributeSetter):
(WebCore::setJSTestGlobalObjectPublicAndPrivateAttributeSetter):
(WebCore::setJSTestGlobalObjectPublicAndPrivateConditionalAttributeSetter):
(WebCore::setJSTestGlobalObjectEnabledAtRuntimeAttributeSetter):
(WebCore::setJSTestGlobalObjectTestCEReactionsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestCEReactionsStringifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestCallTracerConstructorSetter):
(WebCore::setJSTestGlobalObjectTestCallbackInterfaceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestClassWithJSBuiltinConstructorConstructorSetter):
(WebCore::setJSTestGlobalObjectTestDOMJITConstructorSetter):
(WebCore::setJSTestGlobalObjectTestDomainSecurityConstructorSetter):
(WebCore::setJSTestGlobalObjectTestEnabledBySettingConstructorSetter):
(WebCore::setJSTestGlobalObjectTestEnabledForContextConstructorSetter):
(WebCore::setJSTestGlobalObjectTestEventConstructorConstructorSetter):
(WebCore::setJSTestGlobalObjectTestEventTargetConstructorSetter):
(WebCore::setJSTestGlobalObjectTestExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestGenerateIsReachableConstructorSetter):
(WebCore::setJSTestGlobalObjectTestGlobalObjectConstructorSetter):
(WebCore::setJSTestGlobalObjectTestIndexedSetterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestIndexedSetterThrowingExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestIndexedSetterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestInterfaceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestInterfaceLeadingUnderscoreConstructorSetter):
(WebCore::setJSTestGlobalObjectTestIterableConstructorSetter):
(WebCore::setJSTestGlobalObjectTestJSBuiltinConstructorConstructorSetter):
(WebCore::setJSTestGlobalObjectTestMapLikeConstructorSetter):
(WebCore::setJSTestGlobalObjectTestMediaQueryListListenerConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterThrowingExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedConstructorConstructorSetter):
(WebCore::setJSTestGlobalObjectAudioConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedDeleterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedDeleterThrowingExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedDeleterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedDeleterWithIndexedGetterConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedGetterCallWithConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedGetterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedGetterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterThrowingExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIndexedGetterConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIndexedGetterAndSetterConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithOverrideBuiltinsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithUnforgablePropertiesConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestOverloadedConstructorsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestOverloadedConstructorsWithSequenceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestOverrideBuiltinsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestPluginInterfaceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestReadOnlyMapLikeConstructorSetter):
(WebCore::setJSTestGlobalObjectTestReportExtraMemoryCostConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializationConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializationIndirectInheritanceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializationInheritConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializationInheritFinalConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializedScriptValueInterfaceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierAnonymousOperationConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierNamedOperationConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierOperationImplementedAsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierOperationNamedToStringConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierReadOnlyAttributeConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierReadWriteAttributeConstructorSetter):
(WebCore::setJSTestGlobalObjectTestTypedefsConstructorSetter):
- bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:
(WebCore::JSTestIndexedSetterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestIndexedSetterNoIdentifier::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:
(WebCore::JSTestIndexedSetterThrowingExceptionConstructor::initializeProperties):
(WebCore::JSTestIndexedSetterThrowingException::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:
(WebCore::JSTestIndexedSetterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestIndexedSetterWithIdentifier::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterfaceConstructor::initializeProperties):
(WebCore::setJSTestInterfaceConstructorImplementsStaticAttrSetter):
(WebCore::setJSTestInterfaceImplementsStr2Setter):
(WebCore::setJSTestInterfaceImplementsStr3Setter):
(WebCore::setJSTestInterfaceImplementsNodeSetter):
(WebCore::setJSTestInterfaceConstructorSupplementalStaticAttrSetter):
(WebCore::setJSTestInterfaceSupplementalStr2Setter):
(WebCore::setJSTestInterfaceSupplementalStr3Setter):
(WebCore::setJSTestInterfaceSupplementalNodeSetter):
(WebCore::setJSTestInterfaceReflectAttributeSetter):
- bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
(WebCore::JSTestInterfaceLeadingUnderscoreConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestIterable.cpp:
(WebCore::JSTestIterableConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
(WebCore::JSTestJSBuiltinConstructorConstructor::initializeProperties):
(WebCore::setJSTestJSBuiltinConstructorTestAttributeRWCustomSetter):
- bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::JSTestMediaQueryListListenerConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:
(WebCore::JSTestNamedAndIndexedSetterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::putByIndex):
- bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:
(WebCore::JSTestNamedAndIndexedSetterThrowingExceptionConstructor::initializeProperties):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertyNames):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::putByIndex):
- bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:
(WebCore::JSTestNamedAndIndexedSetterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::putByIndex):
- bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::JSTestNamedConstructorConstructor::initializeProperties):
(WebCore::JSTestNamedConstructorNamedConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:
(WebCore::JSTestNamedDeleterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedDeleterNoIdentifier::deletePropertyByIndex):
- bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:
(WebCore::JSTestNamedDeleterThrowingExceptionConstructor::initializeProperties):
(WebCore::JSTestNamedDeleterThrowingException::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedDeleterThrowingException::getOwnPropertyNames):
(WebCore::JSTestNamedDeleterThrowingException::deletePropertyByIndex):
- bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:
(WebCore::JSTestNamedDeleterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedDeleterWithIdentifier::deletePropertyByIndex):
- bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:
(WebCore::JSTestNamedDeleterWithIndexedGetterConstructor::initializeProperties):
(WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:
(WebCore::JSTestNamedGetterCallWithConstructor::initializeProperties):
(WebCore::JSTestNamedGetterCallWith::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedGetterCallWith::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:
(WebCore::JSTestNamedGetterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:
(WebCore::JSTestNamedGetterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:
(WebCore::JSTestNamedSetterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedSetterNoIdentifier::putByIndex):
- bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:
(WebCore::JSTestNamedSetterThrowingExceptionConstructor::initializeProperties):
(WebCore::JSTestNamedSetterThrowingException::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterThrowingException::getOwnPropertyNames):
(WebCore::JSTestNamedSetterThrowingException::putByIndex):
- bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:
(WebCore::JSTestNamedSetterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithIdentifier::putByIndex):
- bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:
(WebCore::JSTestNamedSetterWithIndexedGetterConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithIndexedGetter::putByIndex):
- bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetterConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::putByIndex):
- bindings/scripts/test/JS/JSTestNamedSetterWithOverrideBuiltins.cpp:
(WebCore::JSTestNamedSetterWithOverrideBuiltinsConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::putByIndex):
- bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:
(WebCore::JSTestNamedSetterWithUnforgablePropertiesConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithUnforgableProperties::putByIndex):
- bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::putByIndex):
- bindings/scripts/test/JS/JSTestNode.cpp:
(WebCore::JSTestNodeConstructor::initializeProperties):
(WebCore::JSTestNodePrototype::finishCreation):
(WebCore::setJSTestNodeNameSetter):
(WebCore::JSTestNode::serialize):
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::convertDictionary<TestObj::Dictionary>):
(WebCore::convertDictionaryToJS):
(WebCore::convertDictionary<TestObj::DictionaryThatShouldNotTolerateNull>):
(WebCore::convertDictionary<TestObj::DictionaryThatShouldTolerateNull>):
(WebCore::convertDictionary<AlternateDictionaryName>):
(WebCore::convertDictionary<TestObj::ParentDictionary>):
(WebCore::convertDictionary<TestObj::ChildDictionary>):
(WebCore::convertDictionary<TestObj::ConditionalDictionaryA>):
(WebCore::convertDictionary<TestObj::ConditionalDictionaryB>):
(WebCore::convertDictionary<TestObj::ConditionalDictionaryC>):
(WebCore::JSTestObjConstructor::initializeProperties):
(WebCore::JSTestObjPrototype::finishCreation):
(WebCore::JSTestObj::getOwnPropertyNames):
(WebCore::setJSTestObjConstructorStaticStringAttrSetter):
(WebCore::setJSTestObjEnumAttrSetter):
(WebCore::setJSTestObjByteAttrSetter):
(WebCore::setJSTestObjOctetAttrSetter):
(WebCore::setJSTestObjShortAttrSetter):
(WebCore::setJSTestObjClampedShortAttrSetter):
(WebCore::setJSTestObjEnforceRangeShortAttrSetter):
(WebCore::setJSTestObjUnsignedShortAttrSetter):
(WebCore::setJSTestObjLongAttrSetter):
(WebCore::setJSTestObjLongLongAttrSetter):
(WebCore::setJSTestObjUnsignedLongLongAttrSetter):
(WebCore::setJSTestObjStringAttrSetter):
(WebCore::setJSTestObjUsvstringAttrSetter):
(WebCore::setJSTestObjTestObjAttrSetter):
(WebCore::setJSTestObjTestNullableObjAttrSetter):
(WebCore::setJSTestObjLenientTestObjAttrSetter):
(WebCore::setJSTestObjStringAttrTreatingNullAsEmptyStringSetter):
(WebCore::setJSTestObjUsvstringAttrTreatingNullAsEmptyStringSetter):
(WebCore::setJSTestObjByteStringAttrTreatingNullAsEmptyStringSetter):
(WebCore::setJSTestObjStringLongRecordAttrSetter):
(WebCore::setJSTestObjUsvstringLongRecordAttrSetter):
(WebCore::setJSTestObjStringObjRecordAttrSetter):
(WebCore::setJSTestObjStringNullableObjRecordAttrSetter):
(WebCore::setJSTestObjDictionaryAttrSetter):
(WebCore::setJSTestObjNullableDictionaryAttrSetter):
(WebCore::setJSTestObjAnnotatedTypeInUnionAttrSetter):
(WebCore::setJSTestObjAnnotatedTypeInSequenceAttrSetter):
(WebCore::setJSTestObjImplementationEnumAttrSetter):
(WebCore::setJSTestObjXMLObjAttrSetter):
(WebCore::setJSTestObjCreateSetter):
(WebCore::setJSTestObjReflectedStringAttrSetter):
(WebCore::setJSTestObjReflectedUSVStringAttrSetter):
(WebCore::setJSTestObjReflectedIntegralAttrSetter):
(WebCore::setJSTestObjReflectedUnsignedIntegralAttrSetter):
(WebCore::setJSTestObjReflectedBooleanAttrSetter):
(WebCore::setJSTestObjReflectedURLAttrSetter):
(WebCore::setJSTestObjReflectedUSVURLAttrSetter):
(WebCore::setJSTestObjReflectedCustomIntegralAttrSetter):
(WebCore::setJSTestObjReflectedCustomBooleanAttrSetter):
(WebCore::setJSTestObjReflectedCustomURLAttrSetter):
(WebCore::setJSTestObjEnabledAtRuntimeAttributeSetter):
(WebCore::setJSTestObjConstructorEnabledAtRuntimeAttributeStaticSetter):
(WebCore::setJSTestObjTypedArrayAttrSetter):
(WebCore::setJSTestObjCustomAttrSetter):
(WebCore::setJSTestObjOnfooSetter):
(WebCore::setJSTestObjOnwebkitfooSetter):
(WebCore::setJSTestObjWithExecStateAttributeSetter):
(WebCore::setJSTestObjWithCallWithAndSetterCallWithAttributeSetter):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeSetter):
(WebCore::setJSTestObjWithScriptExecutionContextAndExecStateAttributeSetter):
(WebCore::setJSTestObjWithScriptExecutionContextAndExecStateWithSpacesAttributeSetter):
(WebCore::setJSTestObjConditionalAttr1Setter):
(WebCore::setJSTestObjConditionalAttr2Setter):
(WebCore::setJSTestObjConditionalAttr3Setter):
(WebCore::setJSTestObjConditionalAttr4ConstructorSetter):
(WebCore::setJSTestObjConditionalAttr5ConstructorSetter):
(WebCore::setJSTestObjConditionalAttr6ConstructorSetter):
(WebCore::setJSTestObjAnyAttributeSetter):
(WebCore::setJSTestObjObjectAttributeSetter):
(WebCore::setJSTestObjMutablePointSetter):
(WebCore::setJSTestObjStrawberrySetter):
(WebCore::setJSTestObjIdSetter):
(WebCore::setJSTestObjReplaceableAttributeSetter):
(WebCore::setJSTestObjNullableLongSettableAttributeSetter):
(WebCore::setJSTestObjNullableStringSettableAttributeSetter):
(WebCore::setJSTestObjNullableUSVStringSettableAttributeSetter):
(WebCore::setJSTestObjNullableByteStringSettableAttributeSetter):
(WebCore::setJSTestObjAttributeWithReservedEnumTypeSetter):
(WebCore::setJSTestObjPutForwardsAttributeSetter):
(WebCore::setJSTestObjPutForwardsNullableAttributeSetter):
(WebCore::setJSTestObjStringifierAttributeSetter):
(WebCore::setJSTestObjConditionallyReadWriteAttributeSetter):
(WebCore::setJSTestObjConditionalAndConditionallyReadWriteAttributeSetter):
(WebCore::setJSTestObjConditionallyExposedToWindowAttributeSetter):
(WebCore::setJSTestObjConditionallyExposedToWorkerAttributeSetter):
(WebCore::setJSTestObjConditionallyExposedToWindowAndWorkerAttributeSetter):
(WebCore::JSTestObj::serialize):
- bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::JSTestOverloadedConstructorsConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
(WebCore::JSTestOverloadedConstructorsWithSequenceConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
(WebCore::JSTestOverrideBuiltinsConstructor::initializeProperties):
(WebCore::JSTestOverrideBuiltins::getOwnPropertySlotByIndex):
(WebCore::JSTestOverrideBuiltins::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestPluginInterface.cpp:
(WebCore::JSTestPluginInterfaceConstructor::initializeProperties):
(WebCore::JSTestPluginInterface::getOwnPropertySlotByIndex):
(WebCore::JSTestPluginInterface::putByIndex):
- bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
(WebCore::convertDictionary<TestPromiseRejectionEvent::Init>):
(WebCore::JSTestPromiseRejectionEventConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestSerialization.cpp:
(WebCore::JSTestSerializationConstructor::initializeProperties):
(WebCore::setJSTestSerializationFirstStringAttributeSetter):
(WebCore::setJSTestSerializationSecondLongAttributeSetter):
(WebCore::setJSTestSerializationThirdUnserializableAttributeSetter):
(WebCore::setJSTestSerializationFourthUnrestrictedDoubleAttributeSetter):
(WebCore::setJSTestSerializationFifthLongAttributeSetter):
(WebCore::setJSTestSerializationSixthTypedefAttributeSetter):
(WebCore::setJSTestSerializationSeventhDirectlySerializableAttributeSetter):
(WebCore::setJSTestSerializationEighthIndirectlyAttributeSetter):
(WebCore::setJSTestSerializationNinthOptionalDirectlySerializableAttributeSetter):
(WebCore::setJSTestSerializationTenthFrozenArrayAttributeSetter):
(WebCore::setJSTestSerializationEleventhSequenceAttributeSetter):
(WebCore::setJSTestSerializationTwelfthInterfaceSequenceAttributeSetter):
(WebCore::JSTestSerialization::serialize):
- bindings/scripts/test/JS/JSTestSerializationIndirectInheritance.cpp:
(WebCore::JSTestSerializationIndirectInheritanceConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
(WebCore::JSTestSerializationInheritConstructor::initializeProperties):
(WebCore::setJSTestSerializationInheritInheritLongAttributeSetter):
(WebCore::JSTestSerializationInherit::serialize):
- bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
(WebCore::JSTestSerializationInheritFinalConstructor::initializeProperties):
(WebCore::setJSTestSerializationInheritFinalFinalLongAttributeFooSetter):
(WebCore::setJSTestSerializationInheritFinalFinalLongAttributeBarSetter):
(WebCore::JSTestSerializationInheritFinal::serialize):
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::initializeProperties):
(WebCore::setJSTestSerializedScriptValueInterfaceValueSetter):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValueSetter):
- bindings/scripts/test/JS/JSTestStandaloneDictionary.cpp:
(WebCore::convertDictionary<DictionaryImplName>):
(WebCore::convertDictionaryToJS):
- bindings/scripts/test/JS/JSTestStringifier.cpp:
(WebCore::JSTestStringifierConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:
(WebCore::JSTestStringifierAnonymousOperationConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:
(WebCore::JSTestStringifierNamedOperationConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:
(WebCore::JSTestStringifierOperationImplementedAsConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:
(WebCore::JSTestStringifierOperationNamedToStringConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
(WebCore::JSTestStringifierReadOnlyAttributeConstructor::initializeProperties):
- bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
(WebCore::JSTestStringifierReadWriteAttributeConstructor::initializeProperties):
(WebCore::setJSTestStringifierReadWriteAttributeIdentifierSetter):
- bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::JSTestTypedefsConstructor::initializeProperties):
(WebCore::setJSTestTypedefsUnsignedLongLongAttrSetter):
(WebCore::setJSTestTypedefsSerializedScriptValueSetter):
(WebCore::setJSTestTypedefsAttributeWithClampSetter):
(WebCore::setJSTestTypedefsAttributeWithClampInTypedefSetter):
(WebCore::setJSTestTypedefsBufferSourceAttrSetter):
(WebCore::setJSTestTypedefsDomTimeStampAttrSetter):
- bridge/NP_jsobject.cpp:
- bridge/c/c_instance.cpp:
(JSC::Bindings::CInstance::stringValue const):
(JSC::Bindings::CInstance::getPropertyNames):
- bridge/c/c_utility.cpp:
(JSC::Bindings::identifierFromNPIdentifier):
- bridge/objc/WebScriptObject.mm:
(-[WebScriptObject callWebScriptMethod:withArguments:]):
(-[WebScriptObject setValue:forKey:]):
(-[WebScriptObject valueForKey:]):
(-[WebScriptObject removeWebScriptKey:]):
(-[WebScriptObject hasWebScriptKey:]):
- bridge/objc/objc_runtime.mm:
(JSC::Bindings::ObjcFallbackObjectImp::defaultValue):
- bridge/objc/objc_utility.mm:
(JSC::Bindings::convertNSStringToString):
- bridge/runtime_array.cpp:
(JSC::RuntimeArray::getOwnPropertyNames):
- contentextensions/ContentExtensionParser.cpp:
(WebCore::ContentExtensions::loadTrigger):
(WebCore::ContentExtensions::loadAction):
- crypto/SubtleCrypto.cpp:
(WebCore::normalizeCryptoAlgorithmParameters):
- domjit/DOMJITHelpers.h:
(WebCore::DOMJIT::toWrapperSlow):
- html/HTMLMediaElement.cpp:
(WebCore::controllerJSValue):
(WebCore::HTMLMediaElement::updateCaptionContainer):
(WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript):
(WebCore::HTMLMediaElement::setControllerJSProperty):
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):
(WebCore::HTMLMediaElement::updateMediaControlsAfterPresentationModeChange):
(WebCore::HTMLMediaElement::getCurrentMediaControlsStatus):
- html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
- inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::addSelfToGlobalObjectInWorld):
(WebCore::InspectorFrontendHost::showContextMenu):
- inspector/WebInjectedScriptHost.cpp:
(WebCore::WebInjectedScriptHost::subtype):
(WebCore::constructInternalProperty):
(WebCore::objectForPaymentOptions):
(WebCore::objectForPaymentCurrencyAmount):
(WebCore::objectForPaymentItem):
(WebCore::objectForPaymentShippingOption):
(WebCore::objectForPaymentDetailsModifier):
(WebCore::objectForPaymentDetails):
(WebCore::jsStringForPaymentRequestState):
(WebCore::WebInjectedScriptHost::getInternalProperties):
- inspector/agents/InspectorCanvasAgent.cpp:
(WebCore::InspectorCanvasAgent::consoleStartRecordingCanvas):
- inspector/agents/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForEventListener):
(WebCore::InspectorDOMAgent::scriptValueAsNode):
- inspector/agents/page/PageAuditAgent.cpp:
(WebCore::PageAuditAgent::populateAuditObject):
- page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::screenshot):
- platform/graphics/CustomPaintImage.cpp:
(WebCore::CustomPaintImage::doCustomPaint):
- testing/js/WebCoreTestSupport.cpp:
(WebCoreTestSupport::injectInternalsObject):
(WebCoreTestSupport::setupNewlyCreatedServiceWorker):
- worklets/PaintWorkletGlobalScope.cpp:
(WebCore::PaintWorkletGlobalScope::registerPaint):
Source/WebKit:
- WebProcess/InjectedBundle/API/glib/DOM/WebKitDOMNode.cpp:
(webkit_dom_node_for_js_value):
- WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
(WebKit::InjectedBundleNodeHandle::getOrCreate):
- WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::getOwnPropertyNames):
- WebProcess/Plugins/Netscape/NPJSObject.cpp:
(WebKit::identifierFromIdentifierRep):
(WebKit::NPJSObject::enumerate):
- WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::convertNPVariantToJSValue):
(WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
- WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::counterValue):
Source/WebKitLegacy/mac:
- DOM/DOM.mm:
(+[DOMNode _nodeFromJSWrapper:]):
- DOM/DOMUtility.mm:
(createDOMWrapper):
- Plugins/Hosted/NetscapePluginHostProxy.mm:
(identifierFromIdentifierRep):
- Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):
(WebKit::getObjectID):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
(WebKit::NetscapePluginInstanceProxy::retainLocalObject):
(WebKit::NetscapePluginInstanceProxy::releaseLocalObject):
- Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::stringValue const):
(WebKit::ProxyInstance::getPropertyNames):
- WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
Source/WebKitLegacy/win:
- WebFrame.cpp:
(WebFrame::stringByEvaluatingJavaScriptInScriptWorld):
- 2:42 PM Changeset in webkit [249174] by
-
- 3 edits1 add in trunk/LayoutTests
Update Test Expectations for iPad for fast/scrolling/ios/autoscroll-input-when-very-zoomed.html
https://bugs.webkit.org/show_bug.cgi?id=201163
<rdar://problem/54727027>
Reviewed by Simon Fraser.
Altering test slightly to have a reasonable test expecation on iPad.
- platform/ipad/fast/scrolling/ios/autoscroll-input-when-very-zoomed-expected.txt: Added.
- 2:40 PM Changeset in webkit [249173] by
-
- 7 edits in trunk
Web Inspector: don't attach properties to
injectedScriptfor the CommandLineAPI
https://bugs.webkit.org/show_bug.cgi?id=201193
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
For some reason, adding
injectedScript._inspectObjectinside CommandLineAPIModuleSource.js
causes inspector/debugger/tail-deleted-frames-this-value.html to fail.
We should have a similar approach to adding command line api getters and functions, in that
the CommandLineAPIModuleSource.js calls a function with a callback.
- inspector/InjectedScriptSource.js:
(InjectedScript.prototype.inspectObject):
(InjectedScript.prototype.setInspectObject): Added.
(InjectedScript.prototype._evaluateOn):
Source/WebCore:
For some reason, adding
injectedScript._inspectObjectinside CommandLineAPIModuleSource.js
causes inspector/debugger/tail-deleted-frames-this-value.html to fail.
We should have a similar approach to adding command line api getters and functions, in that
the CommandLineAPIModuleSource.js calls a function with a callback.
- inspector/CommandLineAPIModuleSource.js:
(injectedScript._inspectObject): Deleted.
LayoutTests:
- http/tests/inspector/dom/cross-domain-inspected-node-access-expected.txt:
- inspector/console/command-line-api-expected.txt:
- 2:24 PM Changeset in webkit [249172] by
-
- 7 edits in trunk/Source/WebCore
[LFC][TFC] Align table formatting context code with the existing layout logic.
https://bugs.webkit.org/show_bug.cgi?id=201168
<rdar://problem/54732633>
Reviewed by Antti Koivisto.
Let's make the TFC go through the exisint shrink-to-fit computation. Tables behave slightly different from
other shrink-to-fit boxes as they are streched to their minimum width(MIN) even when 'width' is non-auto and computed to less than MIN.
- layout/FormattingContextGeometry.cpp:
(WebCore::Layout::contentHeightForFormattingContextRoot):
- layout/blockformatting/BlockFormattingContext.h:
- layout/blockformatting/BlockFormattingContextGeometry.cpp:
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowWidthAndMargin):
- layout/tableformatting/TableFormattingContext.cpp:
(WebCore::Layout::TableFormattingContext::layout const):
(WebCore::Layout::TableFormattingContext::computedIntrinsicWidthConstraints const):
(WebCore::Layout::TableFormattingContext::computedTableWidth const):
(WebCore::Layout::TableFormattingContext::computeTableWidth const): Deleted.
(WebCore::Layout::TableFormattingContext::computeTableHeight const): Deleted.
(WebCore::Layout::TableFormattingContext::distributeAvailableHeight const): Deleted.
- layout/tableformatting/TableFormattingContext.h:
- layout/tableformatting/TableGrid.h:
- 2:14 PM Changeset in webkit [249171] by
-
- 8 edits in trunk/Source/WebKit
Populate alternate URL for _WKActivatedElementInfo in UIContextMenu SPI.
https://bugs.webkit.org/show_bug.cgi?id=201165.
rdar://problem/54729648.
Patch by James Savage <James Savage> on 2019-08-27
Reviewed by Dean Jackson.
- UIProcess/API/APIContextMenuElementInfo.h:
- UIProcess/API/APIContextMenuElementInfo.cpp:
(API::ContextMenuElementInfo::ContextMenuElementInfo): Initialize new memeber.
- UIProcess/API/Cocoa/WKContextMenuElementInfo.mm:
(-[WKContextMenuElementInfo _activatedElementInfo]): Use new initializer.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _requestActivatedElementAtPosition:completionBlock:]): Ditto.
- UIProcess/API/Cocoa/_WKActivatedElementInfoInternal.h:
- UIProcess/API/Cocoa/_WKActivatedElementInfo.mm:
(+[_WKActivatedElementInfo activatedElementInfoWithInteractionInformationAtPosition:userInfo:]):
Ditto.
(-[_WKActivatedElementInfo _initWithInteractionInformationAtPosition:userInfo:]): Set new ivar.
(+[_WKActivatedElementInfo activatedElementInfoWithInteractionInformationAtPosition:]): Deleted.
(-[_WKActivatedElementInfo _initWithInteractionInformationAtPosition:]): Deleted.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView assignLegacyDataForContextMenuInteraction]): Use new initializer.
(-[WKContentView continueContextMenuInteraction:]): If the context menu is being generated for
an image, and we do not have a URL associated with the position information, try to
generate one using existing SPI. This change also passes through the userInfo via a new
property on _WKActivatedElementInfo. We only do this for the SPI version of this delegate
method, because the API is not called for image previews.
(-[WKContentView _contextMenuInteraction:overrideSuggestedActionsForConfiguration:]): Use new
initializer.
- 2:09 PM Changeset in webkit [249170] by
-
- 2 edits in trunk/Source/WebCore
Minor optimization in InlineFlowBox::paintBoxDecorations()
https://bugs.webkit.org/show_bug.cgi?id=201199
Reviewed by Zalan Bujtas.
This function can early return before computing localRect, which takes a bit of time (seen
on profiles).
- rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paintBoxDecorations):
- 2:03 PM Changeset in webkit [249169] by
-
- 3 edits in branches/safari-608-branch/LayoutTests
Revert r249166. rdar://problem/53829560
- 2:01 PM Changeset in webkit [249168] by
-
- 4 edits in branches/safari-608-branch/Source/WebCore
Revert r249140. rdar://problem/54749102
- 2:01 PM Changeset in webkit [249167] by
-
- 8 edits2 deletes in branches/safari-608-branch
Revert r249147. rdar://problem/54751753
- 1:24 PM Changeset in webkit [249166] by
-
- 3 edits in branches/safari-608-branch/LayoutTests
Cherry-pick r249157. rdar://problem/53829560
Unreviewed test gardening, remove failure expectations for tests that are now passing.
- platform/ios-12/TestExpectations:
- platform/ios/TestExpectations:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@249157 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:23 PM Changeset in webkit [249165] by
-
- 2 edits in branches/safari-608-branch/LayoutTests
Cherry-pick r249099. rdar://problem/51857070
rdar://51857070 (iPad: Many fast/text-autosizing layout tests are consistently failing)
Unreviewed Test Gardening.
Tests are no longer failing. Removing test expectations.
- platform/ipad/TestExpectations:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@249099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:10 PM Changeset in webkit [249164] by
-
- 3 edits1 add in trunk
constructFunctionSkippingEvalEnabledCheck() should use tryMakeString() and check for OOM.
https://bugs.webkit.org/show_bug.cgi?id=201196
<rdar://problem/54703775>
Reviewed by Yusuke Suzuki.
JSTests:
- stress/constructFunctionSkippingEvalEnabledCheck-should-throw-out-of-memory-error.js: Added.
Source/JavaScriptCore:
- runtime/FunctionConstructor.cpp:
(JSC::constructFunctionSkippingEvalEnabledCheck):
- 1:00 PM Changeset in webkit [249163] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: change the styling of the special log "bubble" to match WI.ScopeBar
https://bugs.webkit.org/show_bug.cgi?id=201152
Reviewed by Joseph Pecoraro.
- UserInterface/Views/ConsoleMessageView.css:
(.console-user-command.special-user-log > .console-message-body):
- 12:50 PM Changeset in webkit [249162] by
-
- 17 edits3 adds in trunk
Drawing an animated image to a canvas via drawImage should draw the first frame
https://bugs.webkit.org/show_bug.cgi?id=74779
<rdar://problem/42282454>
Reviewed by Said Abou-Hallawa.
Source/WebCore:
After this patch, when an animated image is drawn into a canvas via
drawImage, the actual image that the canvas will receive will be
a new Image object with the contents of the first frame of the animation.
It also adds an internal setting to keep the previous behaviour
(draw the current frame playing) because there are several layout
tests that rely on canvas.drawImage() to check that animated images
play properly.
Test: fast/canvas/drawImage-animated-gif-draws-first-frame-and-no-reset-image.html
- html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::CanvasRenderingContext2DBase::drawImage):
- page/Settings.yaml:
- testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setAnimatedImageDebugCanvasDrawingEnabled):
- testing/InternalSettings.h:
- testing/InternalSettings.idl:
LayoutTests:
Adds a test that checks that when drawing an animated image into a canvas
it draws the first frame and that the animation doesn't reset or pause.
Also enable the new internal setting setAnimatedImageDebugCanvasDrawingEnabled()
for the tests that rely on canvas.drawImage() drawing the current frame instead
of the first one.
- fast/canvas/drawImage-animated-gif-draws-first-frame-and-no-reset-image-expected.txt: Added.
- fast/canvas/drawImage-animated-gif-draws-first-frame-and-no-reset-image.html: Added.
The above test checks that when drawing an animated image to a canvas it draws the first frame
and that the playing image doesn't get reseted and finish playing.
- fast/canvas/resources/animated-red-green-blue-yellow-cyan-black-repeat-1.gif: Added.
- fast/images/animated-gif-restored-from-bfcache.html: Enable internals.settings.setAnimatedImageDebugCanvasDrawingEnabled().
- fast/images/animated-image-different-dest-size.html: Ditto.
- fast/images/animated-image-loop-count.html: Ditto.
- fast/images/animated-image-mp4.html: Ditto.
- fast/images/decode-animated-image.html: Ditto.
- fast/images/decode-render-animated-image.html: Ditto.
- fast/images/ordered-animated-image-frames.html: Ditto.
- fast/images/reset-image-animation.html: Ditto.
- fast/images/slower-animation-than-decoding-image.html: Ditto.
- fast/images/slower-decoding-than-animation-image.html: Ditto.
- 12:32 PM Changeset in webkit [249161] by
-
- 2 edits in trunk/Tools
[results.webkit.org Webkit.css] Center the legend symbols
https://bugs.webkit.org/show_bug.cgi?id=201187
Reviewed by Jonathan Bedard.
- resultsdbpy/resultsdbpy/view/static/library/css/webkit.css:
(.lengend>.item .dot .text): center the dot symbol vertically
- 12:29 PM Changeset in webkit [249160] by
-
- 8 edits in trunk/Source/WebCore
InlineTextBox::end() should return first-past-end offset
https://bugs.webkit.org/show_bug.cgi?id=201181
Reviewed by Zalan Bujtas.
It currently points to the last character, except for empty text boxes.
This is awkward in itself and also inconsistent, as we use first-past-end offset everywhere else.
- dom/Position.cpp:
(WebCore::Position::downstream const):
Add a check for zero length case to avoid changing behavior.
- layout/Verification.cpp:
(WebCore::Layout::checkForMatchingTextRuns):
(WebCore::Layout::outputMismatchingComplexLineInformationIfNeeded):
- rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::placeBoxRangeInInlineDirection):
- rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::calculateDocumentMarkerBounds const):
(WebCore::InlineTextBox::collectMarkedTextsForDocumentMarkers const):
(WebCore::InlineTextBox::paintCompositionUnderlines const):
(WebCore::InlineTextBox::paintCompositionUnderline const):
- rendering/InlineTextBox.h:
(WebCore::InlineTextBox::end const):
end = start + len
- rendering/RenderText.cpp:
(WebCore::RenderText::setTextWithOffset):
- rendering/RenderTextLineBoxes.cpp:
(WebCore::localQuadForTextBox):
(WebCore::RenderTextLineBoxes::absoluteRectsForRange const):
(WebCore::RenderTextLineBoxes::absoluteQuadsForRange const):
(WebCore::RenderTextLineBoxes::dirtyRange):
Here the incoming 'end' used linebox style too, move that to the new definition too.
- 12:04 PM Changeset in webkit [249159] by
-
- 2 edits in trunk/Source/JavaScriptCore
When dumping Air Graphs BBQ should dump patchpoints.
https://bugs.webkit.org/show_bug.cgi?id=201167
Reviewed by Filip Pizlo.
- wasm/WasmAirIRGenerator.cpp:
(JSC::Wasm::AirIRGenerator:: const):
(JSC::Wasm::AirIRGenerator::addPatchpoint):
(JSC::Wasm::parseAndCompileAir):
- 11:59 AM Changeset in webkit [249158] by
-
- 15 edits in trunk/Source
[RemoteInspector][Socket] Restructuring the components of Socket implementation
https://bugs.webkit.org/show_bug.cgi?id=201079
Reviewed by Ross Kirsling.
Source/JavaScriptCore:
Since the change for WeakPtr on r248386, our port start assertion failure on the usage of
RemoteInspectorSocketEndpoint. We have to send a message to connection client, but if that
has to be done in the same thread which weakPtr generated, it's a little bit stronger
restriction for us to handle. In this restructure, we are stopping to use weakPtr to
resolve circular dependency, but using a reference with invalidation method because
everything is under our control.
- Make SocketEndpoint a singleton. This class represents a central place to handle socket connections and there's no need to instantiate more than one in a process. Once every connection goes away, it just start sleeping until next connection is created. Very low resource usage when it is idle.
- Move Socket::Connection structure from global definition to SocketEndpoint local structure. It is directly used in SocketEndpoint privately.
- Move responsibility to handle message encoding/decoding task from SocketEndpoint to ConnectionClient. Make SocketEndpoint as plain socket handling as possible to keep it simple to exist long span.
- Extract an interface from ConnectionClient as SocketEndpoint::Client which is required to work with SocketEndpoint. Now SocketEndpoint is very independent from others. SocketEndpoint::Client is the required parameter to create a connection.
Many responsibilities are moved into ConnectionClient which was a thin interface for
communication between RemoteInspector, RemoteInspectorServer and RemoteInspectorClient.
It now handles followings:
- life cycle of connection: create, listen and close or invalidation
- sending and receiving data packed in a message.
RemoteInspector and RemoteInspectorServer are now free from creation of SocketEndpoint.
All communication to SocketEndpoint id now the duty of super class.
- inspector/remote/RemoteInspector.h:
- inspector/remote/socket/RemoteInspectorConnectionClient.cpp:
(Inspector::RemoteInspectorConnectionClient::~RemoteInspectorConnectionClient): Make all connection invalidated.
(Inspector::RemoteInspectorConnectionClient::connectInet): Add itself as a listener of socket.
(Inspector::RemoteInspectorConnectionClient::listenInet): Ditto.
(Inspector::RemoteInspectorConnectionClient::createClient): Ditto.
(Inspector::RemoteInspectorConnectionClient::send): Add message processing.
(Inspector::RemoteInspectorConnectionClient::didReceive): Ditto.
(Inspector::RemoteInspectorConnectionClient::extractEvent): Extracted from send.
- inspector/remote/socket/RemoteInspectorConnectionClient.h:
- inspector/remote/socket/RemoteInspectorMessageParser.cpp:
(Inspector::MessageParser::MessageParser):
(Inspector::MessageParser::pushReceivedData):
(Inspector::MessageParser::parse):
- inspector/remote/socket/RemoteInspectorMessageParser.h:
(Inspector::MessageParser::MessageParser):
(Inspector::MessageParser::Function<void):
- inspector/remote/socket/RemoteInspectorServer.cpp:
(Inspector::RemoteInspectorServer::connect): Remove direct communication to Socket Endpoint.
(Inspector::RemoteInspectorServer::listenForTargets): Ditto.
(Inspector::RemoteInspectorServer::sendWebInspectorEvent): Ditto.
(Inspector::RemoteInspectorServer::start): Ditto.
- inspector/remote/socket/RemoteInspectorServer.h:
- inspector/remote/socket/RemoteInspectorSocket.cpp:
(Inspector::RemoteInspector::sendWebInspectorEvent): Remove direct communication to Socket Endpoint.
(Inspector::RemoteInspector::start): Ditto.
(Inspector::RemoteInspector::stopInternal): Ditto.
(Inspector::RemoteInspector::pushListingsNow): Change the target of validity check to ID.
(Inspector::RemoteInspector::pushListingsSoon): Ditto.
(Inspector::RemoteInspector::sendMessageToRemote): Ditto.
- inspector/remote/socket/RemoteInspectorSocket.h: Move Connection structure to RemoteInspectorSocketEndpoint.
- inspector/remote/socket/RemoteInspectorSocketEndpoint.cpp:
(Inspector::RemoteInspectorSocketEndpoint::singleton): Added.
(Inspector::RemoteInspectorSocketEndpoint::RemoteInspectorSocketEndpoint): Use hard-coded thread name.
(Inspector::RemoteInspectorSocketEndpoint::connectInet): Accept RemoteInspectorSocketEndpoint::Client as listener.
(Inspector::RemoteInspectorSocketEndpoint::listenInet): Ditto.
(Inspector::RemoteInspectorSocketEndpoint::createClient): Ditto.
(Inspector::RemoteInspectorSocketEndpoint::invalidateClient): Added. Invalidate all connection from the client.
(Inspector::RemoteInspectorSocketEndpoint::recvIfEnabled): Remove message parser handling.
(Inspector::RemoteInspectorSocketEndpoint::send): Remove message packing.
(Inspector::RemoteInspectorSocketEndpoint::acceptInetSocketIfEnabled):
- inspector/remote/socket/RemoteInspectorSocketEndpoint.h:
(Inspector::RemoteInspectorSocketEndpoint::Connection::Connection):
Source/WebKit:
RemoteInspectorClient is now free from creation of SocketEndpoint. All communication
to SocketEndpoint id now the duty of super class.
- UIProcess/socket/RemoteInspectorClient.cpp:
(WebKit::RemoteInspectorClient::RemoteInspectorClient): Remove direct communication to Socket Endpoint.
(WebKit::RemoteInspectorClient::sendWebInspectorEvent): Ditto.
- UIProcess/socket/RemoteInspectorClient.h:
- 11:45 AM Changeset in webkit [249157] by
-
- 3 edits in trunk/LayoutTests
Unreviewed test gardening, remove failure expectations for tests that are now passing.
- platform/ios-12/TestExpectations:
- platform/ios/TestExpectations:
- 11:38 AM Changeset in webkit [249156] by
-
- 3 edits3 adds in trunk
Crash under WebCore::jsNotificationConstructorPermission
https://bugs.webkit.org/show_bug.cgi?id=201186
<rdar://problem/53962833>
Reviewed by Youenn Fablet.
Source/WebCore:
Update the Notification API implementation to null-check the page before using. The page becomes null
when using the API in a frame that gets detached from its parent while in the middle of running
script.
Test: http/tests/notifications/request-in-detached-frame.html
- Modules/notifications/Notification.cpp:
(WebCore::Notification::permission):
(WebCore::Notification::requestPermission):
LayoutTests:
Add layout test coverage.
- http/tests/notifications/request-in-detached-frame-expected.txt: Added.
- http/tests/notifications/request-in-detached-frame.html: Added.
- http/tests/notifications/resources/request-in-detached-frame-subframe.html: Added.
- 11:22 AM Changeset in webkit [249155] by
-
- 10 edits4 adds in trunk/Source/WebKit
Introduce subclasses to RemoteObjectRegistry for the UIProcess and the WebProcess
https://bugs.webkit.org/show_bug.cgi?id=201153
Reviewed by Alex Christensen.
This better factoring improves code clarity.
- PlatformMac.cmake:
- Shared/API/Cocoa/RemoteObjectRegistry.h:
(WebKit::RemoteObjectRegistry::~RemoteObjectRegistry):
(WebKit::RemoteObjectRegistry::takeBackgroundActivityToken):
- Shared/API/Cocoa/RemoteObjectRegistry.mm:
(WebKit::RemoteObjectRegistry::RemoteObjectRegistry):
(WebKit::RemoteObjectRegistry::sendInvocation):
(WebKit::RemoteObjectRegistry::sendReplyBlock):
(WebKit::RemoteObjectRegistry::sendUnusedReply):
- Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
(-[_WKRemoteObjectRegistry _initWithWebPage:]):
(-[_WKRemoteObjectRegistry _initWithWebPageProxy:]):
- SourcesCocoa.txt:
- UIProcess/Cocoa/UIRemoteObjectRegistry.cpp: Added.
(WebKit::UIRemoteObjectRegistry::takeBackgroundActivityToken):
(WebKit::UIRemoteObjectRegistry::UIRemoteObjectRegistry):
(WebKit::UIRemoteObjectRegistry::sendInvocation):
(WebKit::UIRemoteObjectRegistry::messageSender):
- UIProcess/Cocoa/UIRemoteObjectRegistry.h: Added.
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::setRemoteObjectRegistry):
(WebKit::WebPage::remoteObjectRegistry):
- WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.cpp: Added.
(WebKit::WebRemoteObjectRegistry::WebRemoteObjectRegistry):
(WebKit::WebRemoteObjectRegistry::~WebRemoteObjectRegistry):
(WebKit::WebRemoteObjectRegistry::close):
(WebKit::WebRemoteObjectRegistry::messageSender):
- WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.h: Added.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close):
- WebProcess/WebPage/WebPage.h:
- 11:16 AM Changeset in webkit [249154] by
-
- 3 edits in trunk/Source/WebCore
Disabled devices should not be taken into account when searching for a capture device
https://bugs.webkit.org/show_bug.cgi?id=201183
<rdar://problem/54353440>
Reviewed by Jer Noble.
Manually tested.
- platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:
(WebCore::CoreAudioCaptureDeviceManager::coreAudioDeviceWithUID):
We currently keep a list of devices, some of which might be disabled.
We should not take into account disabled devices, only enabled devices
when doing this search.
- platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioSharedUnit::setupAudioUnit):
Improve logging.
- 11:16 AM Changeset in webkit [249153] by
-
- 2 edits in trunk/LayoutTests
Unreviewed test gardening, land expectation for rdar://54317204.
- platform/mac/TestExpectations:
- 11:06 AM Changeset in webkit [249152] by
-
- 2 edits in trunk/LayoutTests
fast/scrolling/ios/click-events-during-momentum-scroll-in-overflow-after-tap-on-body.html times out on iPad
https://bugs.webkit.org/show_bug.cgi?id=201182
<rdar://problem/54562829>
Reviewed by Tim Horton.
This test verifies that if the user taps outside of a scrollable container that is decelerating, the page will
observe a click event. This test currently behaves as expected on iPhone, but on iPad, the tap which is
intended to be outside the scrollable area ends up inside it, so a click event is never dispatched. Instead of
hard-coding the tap location, address this test failure by targetting a separate element outside of the
scrollable area.
- fast/scrolling/ios/click-events-during-momentum-scroll-in-overflow-after-tap-on-body.html:
- 11:01 AM Changeset in webkit [249151] by
-
- 4 edits in trunk/Tools
run-webkit-tests: Use -noBulkSymbolication when calling spindump (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=201000
<rdar://problem/53778938>
Unreviewed follow-up fix.
- Scripts/webkitpy/port/darwin.py:
(DarwinPort.sample_process): Run spindump without -noBulkSymbolication if previous
spindump call failed.
- Scripts/webkitpy/port/darwin_testcase.py:
- Scripts/webkitpy/port/ios_device_unittest.py:
- 10:34 AM Changeset in webkit [249150] by
-
- 2 edits in trunk/Source/WebCore/platform/gtk/po
[GTK][l10n] Updated Polish translation of WebKitGTK for 2.26
https://bugs.webkit.org/show_bug.cgi?id=201125
Rubber-stamped by Adrian Perez de Castro. One more string updated.
- pl.po:
- 10:21 AM Changeset in webkit [249149] by
-
- 8 edits2 adds in branches/safari-608-branch
Cherry-pick r249147. rdar://problem/54751753
Removing fullscreen element in rAF() callback after requestFullscreen() can leave fullscreen in inconsistent state.
https://bugs.webkit.org/show_bug.cgi?id=201101
<rdar://problem/54164587>
Reviewed by Eric Carlson.
Source/WebCore:
Test: fullscreen/full-screen-request-removed-with-raf.html
Add a new state variable, m_pendingFullscreenElement, to track which element is about to
become the fullscreen element, so that when elements are removed or cancelFullscreen() is
called, the state machine inside the fullscreen algorithm can cancel effectively.
- dom/FullscreenManager.cpp: (WebCore::FullscreenManager::requestFullscreenForElement): (WebCore::FullscreenManager::cancelFullscreen): (WebCore::FullscreenManager::exitFullscreen): (WebCore::FullscreenManager::willEnterFullscreen): (WebCore::FullscreenManager::willExitFullscreen): (WebCore::FullscreenManager::didExitFullscreen): (WebCore::FullscreenManager::adjustFullscreenElementOnNodeRemoval): (WebCore::FullscreenManager::clear): (WebCore::FullscreenManager::fullscreenElementRemoved): Deleted.
- dom/FullscreenManager.h:
Source/WebKit:
Add more state to track in which direction the animation is flowing to allow in-process
animations to be cancelled more gracefully.
- UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm: (-[WKFullScreenWindowController enterFullScreen]): (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]): (-[WKFullScreenWindowController requestExitFullScreen]): (-[WKFullScreenWindowController exitFullScreen]):
- WebProcess/cocoa/VideoFullscreenManager.h: (WebKit::VideoFullscreenInterfaceContext::animationState const): (WebKit::VideoFullscreenInterfaceContext::setAnimationState): (WebKit::VideoFullscreenInterfaceContext::isAnimating const): Deleted. (WebKit::VideoFullscreenInterfaceContext::setIsAnimating): Deleted.
- WebProcess/cocoa/VideoFullscreenManager.mm: (WebKit::VideoFullscreenManager::enterVideoFullscreenForVideoElement): (WebKit::VideoFullscreenManager::exitVideoFullscreenForVideoElement): (WebKit::VideoFullscreenManager::didEnterFullscreen): (WebKit::VideoFullscreenManager::didCleanupFullscreen):
LayoutTests:
- fullscreen/full-screen-request-removed-with-raf-expected.txt: Added.
- fullscreen/full-screen-request-removed-with-raf.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249147 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:18 AM Changeset in webkit [249148] by
-
- 2 edits in trunk/Tools
[ews-build] Use update-webkit script in Apply-WatchList EWS
https://bugs.webkit.org/show_bug.cgi?id=201179
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/factories.py:
(WatchListFactory): Updated to use CheckOutSource step as well.
- 9:48 AM Changeset in webkit [249147] by
-
- 8 edits2 adds in trunk
Removing fullscreen element in rAF() callback after requestFullscreen() can leave fullscreen in inconsistent state.
https://bugs.webkit.org/show_bug.cgi?id=201101
<rdar://problem/54164587>
Reviewed by Eric Carlson.
Source/WebCore:
Test: fullscreen/full-screen-request-removed-with-raf.html
Add a new state variable, m_pendingFullscreenElement, to track which element is about to
become the fullscreen element, so that when elements are removed or cancelFullscreen() is
called, the state machine inside the fullscreen algorithm can cancel effectively.
- dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::requestFullscreenForElement):
(WebCore::FullscreenManager::cancelFullscreen):
(WebCore::FullscreenManager::exitFullscreen):
(WebCore::FullscreenManager::willEnterFullscreen):
(WebCore::FullscreenManager::willExitFullscreen):
(WebCore::FullscreenManager::didExitFullscreen):
(WebCore::FullscreenManager::adjustFullscreenElementOnNodeRemoval):
(WebCore::FullscreenManager::clear):
(WebCore::FullscreenManager::fullscreenElementRemoved): Deleted.
- dom/FullscreenManager.h:
Source/WebKit:
Add more state to track in which direction the animation is flowing to allow in-process
animations to be cancelled more gracefully.
- UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm:
(-[WKFullScreenWindowController enterFullScreen]):
(-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]):
(-[WKFullScreenWindowController requestExitFullScreen]):
(-[WKFullScreenWindowController exitFullScreen]):
- WebProcess/cocoa/VideoFullscreenManager.h:
(WebKit::VideoFullscreenInterfaceContext::animationState const):
(WebKit::VideoFullscreenInterfaceContext::setAnimationState):
(WebKit::VideoFullscreenInterfaceContext::isAnimating const): Deleted.
(WebKit::VideoFullscreenInterfaceContext::setIsAnimating): Deleted.
- WebProcess/cocoa/VideoFullscreenManager.mm:
(WebKit::VideoFullscreenManager::enterVideoFullscreenForVideoElement):
(WebKit::VideoFullscreenManager::exitVideoFullscreenForVideoElement):
(WebKit::VideoFullscreenManager::didEnterFullscreen):
(WebKit::VideoFullscreenManager::didCleanupFullscreen):
LayoutTests:
- fullscreen/full-screen-request-removed-with-raf-expected.txt: Added.
- fullscreen/full-screen-request-removed-with-raf.html: Added.
- 9:19 AM Changeset in webkit [249146] by
-
- 4 edits in branches/safari-608-branch/Source/WebCore
Cherry-pick r249140. rdar://problem/54749102
Image pasted from screenshot into Mail compose window via share sheet has the wrong aspect ratio
https://bugs.webkit.org/show_bug.cgi?id=201171
<rdar://problem/54671275>
Reviewed by Tim Horton.
Augments an existing app-specific hack to include the Mail composition service, in addition to Mail.
- platform/RuntimeApplicationChecks.h:
- platform/cocoa/RuntimeApplicationChecksCocoa.mm: (WebCore::IOSApplication::isMailCompositionService):
Add a new bundle checking method for the Mail composition service (com.apple.MailCompositionService).
- platform/ios/PlatformPasteboardIOS.mm: (WebCore::PlatformPasteboard::informationForItemAtIndex):
Only plumb the preferred presentation height through to the web process if the application is neither Mail nor
the Mail composition service. In the future, we should consider putting this hack behind SPI, or maybe only
expose the preferred presentation width in all apps (it isn't difficult to imagine a use case where a "Mail-
compose-like" web app hasimg { max-width: 100%; }in their stylesheet).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249140 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:19 AM Changeset in webkit [249145] by
-
- 6 edits2 adds in branches/safari-608-branch
Cherry-pick r249074. rdar://problem/54735492
[iOS] [WebKit2] Tapping on the “I’m” text suggestion after typing “i’” does nothing
https://bugs.webkit.org/show_bug.cgi?id=201085
<rdar://problem/53056118>
Reviewed by Tim Horton.
Source/WebCore:
Exposes an existing quote folding function as a helper on TextIterator, and also adjusts foldQuoteMarks to take
a const String& rather than a String. See WebKit ChangeLog for more details.
- editing/TextIterator.cpp: (WebCore::foldQuoteMarks): (WebCore::SearchBuffer::SearchBuffer):
- editing/TextIterator.h:
Source/WebKit:
Currently, logic in applyAutocorrectionInternal only selects the range to autocorrect if the text of the range
matches the string to replace (delivered to us from UIKit). In the case of changing "I’" to "I’m", the string to
replace is "I'" (with a straight quote rather than an apostrophe), even though the DOM contains an apostrophe.
This is because kbd believes that the document context contains straight quotes (rather than apostrophes). For
native text views, this works out because UIKit uses relative UITextPositions to determine the replacement
range rather than by checking against the contents of the document. However, WKWebView does not have the ability
to synchronously compute and reason about arbitrary UITextPositions relative to the selection, so we instead
search for the string near the current selection when applying autocorrections.
Of course, this doesn't work in this scenario because the replacement string contains a straight quote, yet the
text node contains an apostrophe, so we bail and don't end up replacing any text. To address this, we repurpose
TextIterator helpers currently used to allow find-in-page to match straight quotes against apostrophes; instead
of matching the replacement string exactly, we instead match the quote-folded versions of these strings when
finding the range to replace.
Test: fast/events/ios/autocorrect-with-apostrophe.html
- WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::applyAutocorrectionInternal):
LayoutTests:
Add a new layout test to verify that "I’" can be autocorrected to "I’m".
- fast/events/ios/autocorrect-with-apostrophe-expected.txt: Added.
- fast/events/ios/autocorrect-with-apostrophe.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249074 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:19 AM Changeset in webkit [249144] by
-
- 4 edits in branches/safari-608-branch/Source/WebCore
Cherry-pick r248886. rdar://problem/54365278
Source/WebCore:
[Cocoa] Fix misspelling of -preventsDisplaySleepForVideoPlayback
https://bugs.webkit.org/show_bug.cgi?id=200774
<rdar://problem/54321071>
Reviewed by Eric Carlson.
Only declare the API on platforms where that API is undefined, so as
to catch this kind of misspelling at compile time.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):
Source/WebCore/PAL:
[Cocoa] Adopt -preventDisplaySleepForVideoPlayback
https://bugs.webkit.org/show_bug.cgi?id=200774
<rdar://problem/54321071>
Reviewed by Eric Carlson.
- pal/spi/mac/AVFoundationSPI.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248886 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:16 AM Changeset in webkit [249143] by
-
- 7 edits in branches/safari-608-branch/Source
Versioning.
- 9:08 AM Changeset in webkit [249142] by
-
- 2 edits in trunk/Source/WebKit
Do not clear the pending api request when there's no navigation ID
https://bugs.webkit.org/show_bug.cgi?id=201175
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2019-08-27
Reviewed by Chris Dumez.
After r247851, the pending API request URL is cleared for subresources in some cases.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didStartProvisionalLoadForFrameShared):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
- 8:23 AM Changeset in webkit [249141] by
-
- 3 edits2 adds in trunk
webkitpresentationmodechanged is fired twice when exiting picture in picture
https://bugs.webkit.org/show_bug.cgi?id=193765
Patch by Peng Liu <Peng Liu> on 2019-08-27
Reviewed by Jer Noble.
Source/WebCore:
This patch removes the extra "webkitpresentationmodechanged" event when the browser switches from
picture-in-picture or fullscreen to inline.
The bug was introduced by the fix for bug
https://bugs.webkit.org/show_bug.cgi?id=181095
But now we are using modern media controls and the fix is not necessary.
Reverting that fix can fix the issue.
Also, this patch gets rid of the unnecessary try to call a JavaScript function which is not available
in the modern media controls.
Test: media/presentationmodechanged-fired-once.html
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::exitFullscreen):
(WebCore::HTMLMediaElement::updateMediaControlsAfterPresentationModeChange):
LayoutTests:
- media/presentationmodechanged-fired-once-expected.txt: Added.
- media/presentationmodechanged-fired-once.html: Added.
- 7:59 AM Changeset in webkit [249140] by
-
- 4 edits in trunk/Source/WebCore
Image pasted from screenshot into Mail compose window via share sheet has the wrong aspect ratio
https://bugs.webkit.org/show_bug.cgi?id=201171
<rdar://problem/54671275>
Reviewed by Tim Horton.
Augments an existing app-specific hack to include the Mail composition service, in addition to Mail.
- platform/RuntimeApplicationChecks.h:
- platform/cocoa/RuntimeApplicationChecksCocoa.mm:
(WebCore::IOSApplication::isMailCompositionService):
Add a new bundle checking method for the Mail composition service (com.apple.MailCompositionService).
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::informationForItemAtIndex):
Only plumb the preferred presentation height through to the web process if the application is neither Mail nor
the Mail composition service. In the future, we should consider putting this hack behind SPI, or maybe only
expose the preferred presentation width in all apps (it isn't difficult to imagine a use case where a "Mail-
compose-like" web app hasimg { max-width: 100%; }in their stylesheet).
- 5:31 AM Changeset in webkit [249139] by
-
- 4 edits in trunk/Tools
W3C test importer should be able to handle expected references with an absolute path.
https://bugs.webkit.org/show_bug.cgi?id=200717
Reviewed by Youenn Fablet.
This patch implements the logic to resolve test references with absolute paths
when importing w3c tests (like web-platform-tests).
When an absolute path is found for a test reference, the parser now
tries to find the right file by looking for a relative path inside
the root directory of the source test repository.
It works when the tool is run in download-mode as well as when the
tool is run to import the tests from a local directory.
This fixes the import of test references for tests like
web-platform-tests/css/css-images/multiple-position-color-stop-linear-2.html
- Scripts/webkitpy/w3c/test_importer.py:
(TestImporter._source_root_directory_for_path):
(TestImporter.find_importable_tests):
- Scripts/webkitpy/w3c/test_importer_unittest.py:
(TestImporterTest.import_directory):
(test_webkit_test_runner_options):
(test_webkit_test_runner_import_reftests_with_absolute_paths_download):
(test_webkit_test_runner_import_reftests_with_absolute_paths_from_source_dir):
- Scripts/webkitpy/w3c/test_parser.py:
(TestParser.init):
(TestParser.analyze_test):
- 4:05 AM Changeset in webkit [249138] by
-
- 5 edits in trunk/Source/WebKit
[CoordGraphics] Delay LayerTreeHost creation in always-on AC until DrawingArea painting is enabled
https://bugs.webkit.org/show_bug.cgi?id=201178
Reviewed by Carlos Garcia Campos.
When in always-on AC mode, the LayerTreeHost spawning should be delayed
until the WebPage construction (which sets up the LayerTreeHost-owning
DrawingArea implementation) is further done with initializing relevant
state, and not immediately after the DrawingArea is done with preference
updates.
This is necessary in order to enable the LayerTreeHost instance to take
into account additional WebPage-creation attributes like the correct
device scale factor. Until now, when the LayerTreeHost was spawned in
always-on AC mode, the device scale factor was not yet updated in the
WebPage construction to the appropriate value, leaving the LayerTreeHost
with the default 1.0 value instead of the intended one.
DrawingArea::setPaintingEnabled() is repurposed into enablePainting()
that is to be called once everything should be set for painting (i.e.
when setPaintingEnabled(true) was being called until now). Inside the
DrawingAreaProxyCoordinatedGraphics class (only one to provide an
implementation for this method), the LayerTreeHost is now spawned if
in always-on AC mode. At this point, all relevant state coming from
the owning WebPage object should be readily available for the host
to correctly set up initial graphics scene.
- WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:
(WebKit::DrawingAreaCoordinatedGraphics::updatePreferences):
(WebKit::DrawingAreaCoordinatedGraphics::enablePainting):
- WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h:
- WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::enablePainting):
(WebKit::DrawingArea::setPaintingEnabled): Deleted.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::m_textAutoSizingAdjustmentTimer):
(WebKit::WebPage::reinitializeWebPage):
- 2:26 AM Changeset in webkit [249137] by
-
- 2 edits in trunk/Source/WebCore/platform/gtk/po
[GTK] [l10n] Updated Ukrainian translation of WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=200858
Patch by Yuri Chornoivan <yurchor@ukr.net> on 2019-08-27
Rubber-stamped by Carlos Garcia Campos.
- uk.po:
- 2:21 AM Changeset in webkit [249136] by
-
- 2 edits in trunk/Source/WebCore/platform/gtk/po
[GTK][l10n] Updated Polish translation of WebKitGTK for 2.26
https://bugs.webkit.org/show_bug.cgi?id=201125
Patch by Piotr Drąg <piotrdrag@gmail.com> on 2019-08-27
Rubber-stamped by Carlos Garcia Campos.
- pl.po:
- 1:42 AM Changeset in webkit [249135] by
-
- 7 edits2 adds in trunk
Origin header not included in WebSocket handshake request when using platform WebSocket API
https://bugs.webkit.org/show_bug.cgi?id=200535
Reviewed by Youenn Fablet.
Source/WebCore:
Add Origin HTTP header to the WebSocket handshake request.
- Modules/websockets/ThreadableWebSocketChannel.cpp:
(WebCore::ThreadableWebSocketChannel::webSocketConnectRequest):
LayoutTests:
Rebaseline tests that are passing now for GTK and WPE.
- platform/gtk/imported/w3c/web-platform-tests/websockets/opening-handshake/003-expected.txt: Added.
- platform/gtk/imported/w3c/web-platform-tests/websockets/opening-handshake/003-sets-origin.worker-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/websockets/opening-handshake/005-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/websockets/opening-handshake/003-expected.txt: Added.
- platform/wpe/imported/w3c/web-platform-tests/websockets/opening-handshake/003-sets-origin.worker-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/websockets/opening-handshake/005-expected.txt:
- 12:38 AM Changeset in webkit [249134] by
-
- 2 edits in trunk/Source/WebCore
Make MediaStreamTrackPrivate RefCounted
https://bugs.webkit.org/show_bug.cgi?id=201040
Reviewed by Darin Adler.
MediaStreamTrackPrivate should not be ref/deref except from the main thread.
The only method called from a background thread is audioSamplesAvailable in which
it is unsafe to ref a MediaStreamTrackPrivate.
Make the track RefCounted will ensure that no ref/deref is made in background threads.
No observable change of behavior.
- platform/mediastream/MediaStreamTrackPrivate.h: