Timeline
May 29, 2019:
- 8:41 PM Changeset in webkit [245883] by
-
- 4 edits in trunk/Source/WebCore
[WHLSL] Parsing and lexing the standard library is slow
https://bugs.webkit.org/show_bug.cgi?id=192890
<rdar://problem/50746335>
Reviewed by Myles Maxfield.
The main idea is to avoid backtracking by instead peeking at the next token (and occasionally at the one after that).
This implies a few things:
- We can replace the stack of tokens by a trivial ring buffer of size 2 (holding the next token and the one after, or WTF::nullopt if we are at the end of the file).
- We now have "completeFooExpression" functions, to avoid having to reparse the prefix of some expression, if we find half-way through what it is.
I also fixed the following parser bug:
- https://bugs.webkit.org/show_bug.cgi?id=198305 [WHLSL] Multiple variables with initializers in a declaration statement crashes the compiler
which was due to a mistake I made in the grammar
Finally I added two new macros: CONSUME_TYPE and PARSE to eliminate about 500 lines of error propagation boilerplate.
There are still lots of ways of improving the parser and lexer, such as:
- finishing the conversion of tokens in the lexer, not bothering with allocating string views
- make two special tokens Invalid and EOF, to remove the overhead of Optional
- make peekTypes and consumeTypes use templates to avoid constructing a Vector and calling find on it.
- Turn the entire lexer into a proper automata, not going through the same characters again and again (this is certainly the largest win by far)
- Remove the last few pieces of backtracking from the parser.
The current patch is already enough to make parsing the full standard library (something like 85k lines) approximately 260ms.
This is still longer than I would like, but nowhere near the bottleneck any longer because of some other parts of the compiler.
- Modules/webgpu/WHLSL/WHLSLLexer.h:
(WebCore::WHLSL::Lexer::Lexer):
(WebCore::WHLSL::Lexer::consumeToken):
(WebCore::WHLSL::Lexer::peek):
(WebCore::WHLSL::Lexer::peekFurther):
(WebCore::WHLSL::Lexer::state const):
(WebCore::WHLSL::Lexer::setState):
(WebCore::WHLSL::Lexer::unconsumeToken): Deleted.
- Modules/webgpu/WHLSL/WHLSLParser.cpp:
(WebCore::WHLSL::Parser::parse):
(WebCore::WHLSL::Parser::peek):
(WebCore::WHLSL::Parser::peekTypes):
(WebCore::WHLSL::Parser::tryType):
(WebCore::WHLSL::Parser::tryTypes):
(WebCore::WHLSL::Parser::consumeTypes):
(WebCore::WHLSL::Parser::parseConstantExpression):
(WebCore::WHLSL::Parser::parseTypeArgument):
(WebCore::WHLSL::Parser::parseTypeArguments):
(WebCore::WHLSL::Parser::parseTypeSuffixAbbreviated):
(WebCore::WHLSL::Parser::parseTypeSuffixNonAbbreviated):
(WebCore::WHLSL::Parser::parseType):
(WebCore::WHLSL::Parser::parseTypeDefinition):
(WebCore::WHLSL::Parser::parseResourceSemantic):
(WebCore::WHLSL::Parser::parseSpecializationConstantSemantic):
(WebCore::WHLSL::Parser::parseStageInOutSemantic):
(WebCore::WHLSL::Parser::parseSemantic):
(WebCore::WHLSL::Parser::parseQualifiers):
(WebCore::WHLSL::Parser::parseStructureElement):
(WebCore::WHLSL::Parser::parseStructureDefinition):
(WebCore::WHLSL::Parser::parseEnumerationDefinition):
(WebCore::WHLSL::Parser::parseEnumerationMember):
(WebCore::WHLSL::Parser::parseNativeTypeDeclaration):
(WebCore::WHLSL::Parser::parseNumThreadsFunctionAttribute):
(WebCore::WHLSL::Parser::parseAttributeBlock):
(WebCore::WHLSL::Parser::parseParameter):
(WebCore::WHLSL::Parser::parseParameters):
(WebCore::WHLSL::Parser::parseFunctionDefinition):
(WebCore::WHLSL::Parser::parseComputeFunctionDeclaration):
(WebCore::WHLSL::Parser::parseVertexFragmentFunctionDeclaration):
(WebCore::WHLSL::Parser::parseRegularFunctionDeclaration):
(WebCore::WHLSL::Parser::parseOperatorFunctionDeclaration):
(WebCore::WHLSL::Parser::parseFunctionDeclaration):
(WebCore::WHLSL::Parser::parseNativeFunctionDeclaration):
(WebCore::WHLSL::Parser::parseBlock):
(WebCore::WHLSL::Parser::parseBlockBody):
(WebCore::WHLSL::Parser::parseIfStatement):
(WebCore::WHLSL::Parser::parseSwitchStatement):
(WebCore::WHLSL::Parser::parseSwitchCase):
(WebCore::WHLSL::Parser::parseForLoop):
(WebCore::WHLSL::Parser::parseWhileLoop):
(WebCore::WHLSL::Parser::parseDoWhileLoop):
(WebCore::WHLSL::Parser::parseVariableDeclaration):
(WebCore::WHLSL::Parser::parseVariableDeclarations):
(WebCore::WHLSL::Parser::parseStatement):
(WebCore::WHLSL::Parser::parseEffectfulExpression):
(WebCore::WHLSL::Parser::parseEffectfulAssignment):
(WebCore::WHLSL::Parser::parseExpression):
(WebCore::WHLSL::Parser::parseTernaryConditional):
(WebCore::WHLSL::Parser::completeTernaryConditional):
(WebCore::WHLSL::Parser::parseAssignment):
(WebCore::WHLSL::Parser::completeAssignment):
(WebCore::WHLSL::Parser::parsePossibleTernaryConditional):
(WebCore::WHLSL::Parser::parsePossibleLogicalBinaryOperation):
(WebCore::WHLSL::Parser::completePossibleLogicalBinaryOperation):
(WebCore::WHLSL::Parser::parsePossibleRelationalBinaryOperation):
(WebCore::WHLSL::Parser::completePossibleRelationalBinaryOperation):
(WebCore::WHLSL::Parser::parsePossibleShift):
(WebCore::WHLSL::Parser::completePossibleShift):
(WebCore::WHLSL::Parser::parsePossibleAdd):
(WebCore::WHLSL::Parser::completePossibleAdd):
(WebCore::WHLSL::Parser::parsePossibleMultiply):
(WebCore::WHLSL::Parser::completePossibleMultiply):
(WebCore::WHLSL::Parser::parsePossiblePrefix):
(WebCore::WHLSL::Parser::parsePossibleSuffix):
(WebCore::WHLSL::Parser::parseCallExpression):
(WebCore::WHLSL::Parser::parseTerm):
(WebCore::WHLSL::Parser::parseAddressSpaceType): Deleted.
(WebCore::WHLSL::Parser::parseNonAddressSpaceType): Deleted.
(WebCore::WHLSL::Parser::parseEntryPointFunctionDeclaration): Deleted.
(WebCore::WHLSL::Parser::parseEffectfulPrefix): Deleted.
(WebCore::WHLSL::Parser::parseEffectfulSuffix): Deleted.
- Modules/webgpu/WHLSL/WHLSLParser.h:
(WebCore::WHLSL::Parser::Error::dump const):
- 7:41 PM Changeset in webkit [245882] by
-
- 7 edits in trunk
Remove some logic to suppress the text selection assistant during drop
https://bugs.webkit.org/show_bug.cgi?id=198354
Reviewed by Tim Horton.
Source/WebKit:
This logic was originally added to hide the ranged selection after performing a drop in editable content.
However, after r245803, we (1) no longer show the keyboard and/or text selection views when dropping, and (2)
the final selection is now a caret, so it's no longer necessary to suppress the selection assistant.
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView dropInteraction:performDrop:]):
(-[WKContentView dropInteraction:concludeDrop:]):
Tools:
Adjust some API tests that currently check whether or not the selection assistant was suppressed during drop.
- TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/cocoa/DragAndDropSimulator.h:
- TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator _resetSimulatedState]):
(-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
- 5:23 PM Changeset in webkit [245881] by
-
- 9 edits in trunk
WKWebsiteDataStore API fails to fetch web storage data for non-persistent data store
https://bugs.webkit.org/show_bug.cgi?id=198317
Reviewed by Alex Christensen.
Source/WebKit:
Use LocalStorageNameSpace instead of SessionStorageNameSpace for localStorage in ephemeral session or
websiteDataStore.
- NetworkProcess/WebStorage/StorageManager.cpp:
(WebKit::StorageManager::StorageArea::isEphemeral const):
(WebKit::StorageManager::StorageArea::removeListener):
(WebKit::StorageManager::StorageArea::setItems):
(WebKit::StorageManager::StorageArea::openDatabaseAndImportItemsIfNeeded const):
(WebKit::StorageManager::LocalStorageNamespace::~LocalStorageNamespace):
(WebKit::StorageManager::LocalStorageNamespace::getOrCreateStorageArea):
(WebKit::StorageManager::LocalStorageNamespace::clearAllStorageAreas):
(WebKit::StorageManager::LocalStorageNamespace::ephemeralOrigins const):
(WebKit::StorageManager::LocalStorageNamespace::cloneTo):
(WebKit::StorageManager::StorageManager):
(WebKit::StorageManager::cloneSessionStorageNamespace):
(WebKit::StorageManager::getLocalStorageOrigins):
(WebKit::StorageManager::getLocalStorageOriginDetails):
(WebKit::StorageManager::deleteLocalStorageEntriesForOrigin):
(WebKit::StorageManager::deleteLocalStorageOriginsModifiedSince):
(WebKit::StorageManager::deleteLocalStorageEntriesForOrigins):
(WebKit::StorageManager::createLocalStorageMap):
(WebKit::StorageManager::createTransientLocalStorageMap):
(WebKit::StorageManager::createSessionStorageMap):
(WebKit::StorageManager::destroyStorageMap):
(WebKit::StorageManager::getValues):
(WebKit::StorageManager::setItem):
(WebKit::StorageManager::removeItem):
(WebKit::StorageManager::clear):
(WebKit::StorageManager::StorageArea::isSessionStorage const): Deleted.
- NetworkProcess/WebStorage/StorageManager.h:
(): Deleted.
- WebProcess/WebStorage/StorageAreaMap.cpp:
(WebKit::StorageAreaMap::dispatchStorageEvent):
(WebKit::StorageAreaMap::dispatchSessionStorageEvent):
(WebKit::StorageAreaMap::connect):
- WebProcess/WebStorage/StorageNamespaceImpl.cpp:
(WebKit::StorageNamespaceImpl::createEphemeralLocalStorageNamespace):
(WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
- WebProcess/WebStorage/StorageNamespaceImpl.h:
- WebProcess/WebStorage/WebStorageNamespaceProvider.cpp:
(WebKit::WebStorageNamespaceProvider::createLocalStorageNamespace):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
- 5:14 PM Changeset in webkit [245880] by
-
- 2 edits in trunk/Tools
Build fix for branch.
<rdar://problem/50625279>
- TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
- 4:53 PM Changeset in webkit [245879] by
-
- 2 edits in trunk/Tools
Attempt to fix JSC test timeouts after adding collectContinuously to WASM tests.
https://bugs.webkit.org/show_bug.cgi?id=198322
Rubber-stamped by Michael Saboff. Disable running the new collectContinuously tests on debug builds.
This matches what we do for other jsc tests.
- Scripts/run-jsc-stress-tests:
- 4:30 PM Changeset in webkit [245878] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, update WebAuthN to "Supported In Preview"
- features.json:
- 4:23 PM Changeset in webkit [245877] by
-
- 4 edits in trunk/LayoutTests
REGRESSION (r244182) [Mac WK2] Layout Test imported/w3c/web-platform-tests/visual-viewport/viewport-resize-event-on-load-overflowing-page.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=197286
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-05-29
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
This is a time sensitive test. It expects to receive a resize event within
two frames after the page load. Scheduling the page update through the
RenderingUpdate made updating the page for the first time happens not
immediately after the page load but after an additional frame.
So we need to wait for this additional frame before checking whether the
'resize' event was fired.
- web-platform-tests/visual-viewport/viewport-resize-event-on-load-overflowing-page.html:
LayoutTests:
- platform/mac-wk2/TestExpectations:
- 4:07 PM Changeset in webkit [245876] by
-
- 4 edits in trunk/Source/WTF
Clean up a few #include statements in WTF
<https://webkit.org/b/198351>
Reviewed by Alex Christensen.
- benchmarks/HashSetDFGReplay.cpp:
- Add missing "config.h" include.
- wtf/ParallelJobsGeneric.cpp:
- Replace include of ParallelJobs.h with ParallelJobsGeneric.h.
- wtf/StackBounds.cpp:
- Fix include ordering of StackBounds.h.
- 4:05 PM Changeset in webkit [245875] by
-
- 18 edits in trunk
Remove ENABLE definitions from WebKit config files
https://bugs.webkit.org/show_bug.cgi?id=197858
Reviewed by Simon Fraser.
.:
Add ENABLE flags into WebKitFeatures.cmake and set the values for GTK and WPE according
to what was present in the config files.
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake:
- Source/cmake/WebKitFeatures.cmake:
Source/JavaScriptCore:
Sync FeatureDefines.xcconfig.
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
Sync FeatureDefines.xcconfig.
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit:
Remove ENABLE flags that were present in the config files. Add the ENABLE flags
to FeatureDefines.xcconfig instead.
- Configurations/FeatureDefines.xcconfig:
- WebKit2Prefix.h:
- config.h:
Source/WebKitLegacy/mac:
Sync FeatureDefines.xcconfig.
- Configurations/FeatureDefines.xcconfig:
Tools:
Sync FeatureDefines.xcconfig.
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- 4:01 PM Changeset in webkit [245874] by
-
- 2 edits in trunk/Source/WTF
Followup to r245267 and r245272: fix even more deprecated uses of -[UIApplication interfaceOrientation]
https://bugs.webkit.org/show_bug.cgi?id=198348
<rdar://problem/51234077>
Reviewed by Wenson Hsieh.
r245267 and r245272 fixed many instances of this issue; this change
fixes the issue for watchOS.
- wtf/FeatureDefines.h:
- 3:21 PM Changeset in webkit [245873] by
-
- 12 edits2 adds in trunk
Reestablish WebSWClientConnection in case of network process crash
https://bugs.webkit.org/show_bug.cgi?id=198333
Reviewed by Alex Christensen.
Source/WebCore:
Refactor DocumentLoader to no longer take a ref to the SWClientConnection.
Instead, store the sessionID and get the SWClientConnection from it.
Remove unused code from ServiceWorkerContainer.
Test: http/wpt/service-workers/service-worker-networkprocess-crash.html
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::registerTemporaryServiceWorkerClient):
(WebCore::DocumentLoader::unregisterTemporaryServiceWorkerClient):
- loader/DocumentLoader.h:
- workers/service/ServiceWorkerContainer.cpp:
- workers/service/ServiceWorkerContainer.h:
- workers/service/ServiceWorkerJobClient.h:
Source/WebKit:
WebSWClientConnection now takes a RefPtr<IPC::Connection> so that on network process crash, it will set it back to null.
On the next call that needs the connection, WebSWClientConnection will reinitialize its underlying IPC connection and its own identifier.
Make sure that all code paths requiring this initialization are covered.
- WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::didClose):
(WebKit::NetworkProcessConnection::serviceWorkerConnectionForSession):
(WebKit::NetworkProcessConnection::isRegisteredActiveSWClientConnection):
(WebKit::NetworkProcessConnection::initializeSWClientConnection):
- WebProcess/Network/NetworkProcessConnection.h:
- WebProcess/Storage/WebSWClientConnection.cpp:
(WebKit::WebSWClientConnection::WebSWClientConnection):
(WebKit::WebSWClientConnection::~WebSWClientConnection):
(WebKit::WebSWClientConnection::initializeConnectionIfNeeded):
(WebKit::WebSWClientConnection::ensureConnectionAndSend):
(WebKit::WebSWClientConnection::scheduleJobInServer):
(WebKit::WebSWClientConnection::finishFetchingScriptInServer):
(WebKit::WebSWClientConnection::addServiceWorkerRegistrationInServer):
(WebKit::WebSWClientConnection::removeServiceWorkerRegistrationInServer):
(WebKit::WebSWClientConnection::registerServiceWorkerClient):
(WebKit::WebSWClientConnection::unregisterServiceWorkerClient):
(WebKit::WebSWClientConnection::didResolveRegistrationPromise):
(WebKit::WebSWClientConnection::matchRegistration):
(WebKit::WebSWClientConnection::runOrDelayTaskForImport):
(WebKit::WebSWClientConnection::whenRegistrationReady):
(WebKit::WebSWClientConnection::getRegistrations):
(WebKit::WebSWClientConnection::startFetch):
(WebKit::WebSWClientConnection::cancelFetch):
(WebKit::WebSWClientConnection::continueDidReceiveFetchResponse):
(WebKit::WebSWClientConnection::connectionToServerLost):
(WebKit::WebSWClientConnection::syncTerminateWorker):
(WebKit::WebSWClientConnection::serverConnectionIdentifier const):
(WebKit::WebSWClientConnection::updateThrottleState):
- WebProcess/Storage/WebSWClientConnection.h:
LayoutTests:
- http/wpt/service-workers/service-worker-networkprocess-crash-expected.txt: Added.
- http/wpt/service-workers/service-worker-networkprocess-crash.html: Added.
- 3:07 PM Changeset in webkit [245872] by
-
- 4 edits in trunk
[iOS] WebPage::positionInformation() may set InteractionInformationAtPosition.isImage to true but leave image unset
https://bugs.webkit.org/show_bug.cgi?id=198202
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-05-29
Reviewed by Tim Horton.
Source/WebKit:
r192037 added the flags isLink and isImage to InteractionInformationAtPosition.
It also made WebPage::positionInformation() set isImage to true but before
ensuring there is a valid image at the position.
Safari WebKit additions assumes if isImage is true then the image has to
hold a valid ShareableBitmap pointer. Since WebPage::positionInformation()
is the only place that sets isImage, the fix is to set isImage to true
only after passing all the image validation checks.
Since WebPage::positionInformation() is a little bit difficult to read
(182 lines), It was re-factored by splitting it to static functions.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::focusedElementPositionInformation):
(WebKit::linkIndicatorPositionInformation):
(WebKit::dataDetectorLinkPositionInformation):
(WebKit::imagePositionInformation):
(WebKit::boundsPositionInformation):
(WebKit::elementPositionInformation):
(WebKit::selectionPositionInformation):
(WebKit::textInteractionPositionInformation):
(WebKit::WebPage::positionInformation):
Tools:
The new test ensures InteractionInformationAtPosition::isImage will not
be to true for a broken image.
- TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
(TestWebKitAPI::TEST):
- 3:07 PM Changeset in webkit [245871] by
-
- 5 edits in trunk/Source
IndexedDatabase Server thread in com.apple.WebKit.Networking process leaks objects into an autoreleasePool that's never cleared
<https://webkit.org/b/198346>
<rdar://problem/50895658>
Reviewed by Brent Fulgham.
Source/WebCore:
- Modules/indexeddb/server/IDBServer.cpp:
(WebCore::IDBServer::IDBServer::IDBServer):
- Pass AutodrainedPoolForRunLoop::Use when creating CrossThreadTaskHandler to fix the bug.
Source/WTF:
- wtf/CrossThreadTaskHandler.cpp:
(WTF::CrossThreadTaskHandler::CrossThreadTaskHandler):
- Add optional second argument to enable use of an AutodrainedPool when running the runloop.
(WTF::CrossThreadTaskHandler::taskRunLoop):
- Create an AutodrainedPool if requested when CrossThreadTaskHandler was created.
- wtf/CrossThreadTaskHandler.h:
(WTF::CrossThreadTaskHandler::AutodrainedPoolForRunLoop):
- Add enum class for enabling an AutodrainedPool for CrossThreadTaskHandler::taskRunLoop().
(WTF::CrossThreadTaskHandler::CrossThreadTaskHandler):
- Add optional second argument to enable use of an AutodrainedPool when running the runloop.
- 3:04 PM Changeset in webkit [245870] by
-
- 3 edits in trunk/Tools
check-webkit-style reports false-positive build/include_order warning in WTF C++ source files
<https://webkit.org/b/198349>
Reviewed by Alex Christensen.
- Scripts/webkitpy/style/checkers/cpp.py:
(_classify_include): Don't return early for <wtf/Header.h>
includes.
- Scripts/webkitpy/style/checkers/cpp_unittest.py:
(OrderOfIncludesTest.test_primary_header): Add tests for
<wtf/Header.h> includes.
- 2:28 PM Changeset in webkit [245869] by
-
- 6 edits in trunk
Implement Promise.allSettled
https://bugs.webkit.org/show_bug.cgi?id=197600
<rdar://problem/50483885>
Reviewed by Keith Miller.
JSTests:
Start testing Promise.allSettled. We pass most of the tests.
The ones that fail are similar to the Promise.all tests we already fail.
- test262/config.yaml: Remove Promise.allSettled from skipped tests.
- test262/expectations.yaml: Add new expectations for allSettled tests.
Source/JavaScriptCore:
Implement Promise.allSettled
https://github.com/tc39/proposal-promise-allSettled/
Shipping in Firefox since version 68.
Shipping in V8 since https://chromium.googlesource.com/v8/v8.git/+/1f6d27e8df819b448712dface6ad367fb8de426b
- builtins/PromiseConstructor.js:
(allSettled.newResolveRejectElements.resolveElement):
(allSettled.newResolveRejectElements.rejectElement):
(allSettled.newResolveRejectElements):
(allSettled): Added.
- runtime/JSPromiseConstructor.cpp: Add ref to allSettled.
- 2:15 PM Changeset in webkit [245868] by
-
- 53 edits in trunk
WeakPtr breaks vtables when upcasting to base classes
https://bugs.webkit.org/show_bug.cgi?id=188799
Reviewed by Youenn Fablet.
Source/WebCore:
- Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::MediaKeySession):
- Modules/encryptedmedia/MediaKeySession.h: Adopted modern WeakPtr APIs.
Removed redundant WeakPtrFactory.
- css/CSSFontFace.cpp:
(WebCore::CSSFontFace::existingWrapper):
- css/CSSFontFace.h: Moved functions out of line to avoid #include
explosion for .get().
- dom/ContainerNode.h:
- dom/Document.h:
- dom/Element.h: Moved CanMakeWeakPtr to ContainerNode because all
subclasses except for DocumentFragment were already so, and we have
code that uses WeakPtr<ContainerNode>, which, now that WeakPtr is
type-safe, is awkward to do when ContainerNode isn't CanMakeWeakPtr.
- dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::fullscreenRenderer const):
- dom/FullscreenManager.h:
(WebCore::FullscreenManager::fullscreenRenderer const): Deleted.
- html/FormAssociatedElement.cpp:
(WebCore::FormAssociatedElement::form const):
- html/FormAssociatedElement.h:
(WebCore::FormAssociatedElement::form const): Deleted. Moved functions
out of line to avoid #include explosion for .get().
- html/HTMLMediaElement.h: It takes an extra using declaration
to disambiguate multiple CanMakeWeakPtr base classes now.
- loader/MediaResourceLoader.cpp:
(WebCore::MediaResourceLoader::requestResource): Removed redundant .get().
- page/DOMWindowProperty.cpp:
(WebCore::DOMWindowProperty::window const):
- page/DOMWindowProperty.h:
(WebCore::DOMWindowProperty::window const): Deleted.
- page/FrameViewLayoutContext.cpp:
(WebCore::FrameViewLayoutContext::subtreeLayoutRoot const):
- page/FrameViewLayoutContext.h:
(WebCore::FrameViewLayoutContext::subtreeLayoutRoot const): Deleted.
- page/UndoItem.cpp:
(WebCore::UndoItem::undoManager const):
- page/UndoItem.h:
(WebCore::UndoItem::undoManager const): Deleted. Moved functions out of
line to avoid #include explosion for .get().
- platform/ScrollView.h: It takes an extra using declaration
to disambiguate multiple CanMakeWeakPtr base classes now.
- platform/Widget.cpp:
(WebCore::Widget::parent const):
- platform/Widget.h:
(WebCore::Widget::parent const): Deleted. Moved functions out of line to avoid #include
explosion for .get().
- platform/encryptedmedia/CDMInstanceSession.h: Made
CDMInstanceSessionClient CanMakeWeakPtr because we use WeakPtr<CDMInstanceSessionClient>.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
CanMakeWeakPtr is inherited now.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::~MediaPlayerPrivateAVFoundationObjC):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cdmSession const): Deleted.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::createWeakPtr): Deleted.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::CMTimebaseEffectiveRateChangedCallback):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::play):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pause):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cdmSession const):
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
(WebCore::SourceBufferPrivateAVFObjC::setCDMSession):
(WebCore::SourceBufferPrivateAVFObjC::flushVideo):
(WebCore::SourceBufferPrivateAVFObjC::enqueueSample):
(WebCore::SourceBufferPrivateAVFObjC::notifyClientWhenReadyForMoreSamples):
(WebCore::SourceBufferPrivateAVFObjC::setVideoLayer):
(WebCore::SourceBufferPrivateAVFObjC::setDecompressionSession): Modernized WeakPtr API usage.
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::multiColumnFlowSlowCase const):
- rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::multiColumnFlow const):
- rendering/RenderMultiColumnFlow.cpp:
(WebCore::RenderMultiColumnFlow::findColumnSpannerPlaceholder const):
- rendering/RenderMultiColumnFlow.h:
- rendering/RenderTable.cpp:
(WebCore::RenderTable::header const):
(WebCore::RenderTable::footer const):
(WebCore::RenderTable::firstBody const):
(WebCore::RenderTable::topSection const):
- rendering/RenderTable.h:
(WebCore::RenderTable::header const): Deleted.
(WebCore::RenderTable::footer const): Deleted.
(WebCore::RenderTable::firstBody const): Deleted.
(WebCore::RenderTable::topSection const): Deleted. Moved functions out
of line to avoid #include explosion for .get().
Source/WebKit:
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::networkSession):
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
- Shared/WebBackForwardListItem.cpp:
(WebKit::WebBackForwardListItem::suspendedPage const):
- Shared/WebBackForwardListItem.h:
(WebKit::WebBackForwardListItem::suspendedPage const): Deleted. Moved
functions out of line to avoid #include explosion for .get().
- UIProcess/Authentication/cocoa/SecKeyProxyStore.h:
(WebKit::SecKeyProxyStore::get const):
(WebKit::SecKeyProxyStore::weakPtrFactory const): Deleted. Adopted
CanMakeWeakPtr.
- UIProcess/WebAuthentication/AuthenticatorManager.h:
- UIProcess/WebProcessProxy.cpp: It takes an extra using declaration
to disambiguate multiple CanMakeWeakPtr base classes now.
(WebKit::WebProcessProxy::processPool const):
- UIProcess/WebProcessProxy.h:
(WebKit::WebProcessProxy::processPool const): Deleted. Moved
functions out of line to avoid #include explosion for .get().
Source/WTF:
This patch switches from reinterpret_cast to static_cast when loading
from WeakReference storage.
We know which type to cast *to* because it's specified by the type of
the calling WeakPtr.
We know which type to cast *from* because it's specified by a typedef
in CanMakeWeakPtr.
(Our convention is that we store a pointer to the class that derives
from CanMakeWeakPtr. We cast from that pointer to derived pointers when
we get(). This means that #include of the derived type header is now
required in order to get() the pointer.)
- wtf/WeakHashSet.h:
(WTF::HashTraits<Ref<WeakReference>>::isReleasedWeakValue): Definition
is now eagerly required because WeakReference is not a template anymore.
(WTF::WeakHashSet::WeakHashSetConstIterator::get const):
(WTF::WeakHashSet::WeakHashSetConstIterator::skipEmptyBuckets):
(WTF::WeakHashSet::remove):
(WTF::WeakHashSet::contains const):
(WTF::WeakHashSet::computesEmpty const):
(WTF::WeakHashSet::hasNullReferences const):
(WTF::WeakHashSet::computeSize const):
(WTF::HashTraits<Ref<WeakReference<T>>>::isReleasedWeakValue): Deleted.
Updated for new WeakReference get() API.
- wtf/WeakPtr.h: Use a macro for TestAPI support. We can't use template
specialization because WeakReference is not a class template anymore.
(Or maybe we could have kept it working with a dummy template argument?
Felt weird, so I switched.)
(WTF::WeakReference::create):
(WTF::WeakReference::~WeakReference):
(WTF::WeakReference::get const):
(WTF::WeakReference::operator bool const):
(WTF::WeakReference::WeakReference): WeakReference is just a void* now.
It's the caller's responsibility, when creating and getting, to use
a consistent storage type. We ensure a canonical storage type using a
typedef inside CanMakeWeakPtr.
(WTF::WeakPtr::WeakPtr):
(WTF::WeakPtr::get const):
(WTF::WeakPtr::operator bool const):
(WTF::WeakPtr::operator-> const):
(WTF::WeakPtr::operator* const): Adopted new WeakReference API.
(WTF::WeakPtrFactory::createWeakPtr const): No need for reinterpret_cast.
(WTF::weak_reference_cast): This isn't required for correctness, but it's
nice to show a complier error at WeakPtr construction sites when you know
that the types won't work. Otherwise, you get compiler errors at
dereference sites, which are slightly more mysterious ways of saying that
you constructed your WeakPtr incorrectly.
(WTF::WeakPtr<T>::WeakPtr):
(WTF::=):
(WTF::makeWeakPtr):
(WTF::weak_reference_upcast): Deleted.
(WTF::weak_reference_downcast): Deleted.
Tools:
- TestWebKitAPI/Tests/WTF/WeakPtr.cpp: Adopt the new macro API instead
of template specialization for observing weak references.
(TestWebKitAPI::Int::Int):
(TestWebKitAPI::Int::operator int const):
(TestWebKitAPI::Int::operator== const): Use a class for integer tests
because WeakPtr doesn't naturally support pointing to non-class objects
now.
(TestWebKitAPI::Base::foo):
(TestWebKitAPI::Derived::foo): Inherit from CanMakeWeakPtr to enable
deduction of the weak pointer type.
(TestWebKitAPI::TEST): Updated to use Int.
(TestWebKitAPI::Base::weakPtrFactory const): Deleted.
(WTF::WeakReference<TestWebKitAPI::Base>::WeakReference): Deleted.
(WTF::WeakReference<TestWebKitAPI::Base>::~WeakReference): Deleted.
- 2:04 PM Changeset in webkit [245867] by
-
- 6 edits in trunk
[Pointer Events] toElement and fromElement should be null
https://bugs.webkit.org/show_bug.cgi?id=198338
Patch by Antoine Quint <Antoine Quint> on 2019-05-29
Reviewed by Dean Jackson.
LayoutTests/imported/w3c:
Mark WPT progressions now that we return the correct values for toElement and fromElement.
- web-platform-tests/pointerevents/pointerevent_pointerenter_does_not_bubble-expected.txt:
- web-platform-tests/pointerevents/pointerevent_pointerleave_does_not_bubble-expected.txt:
Source/WebCore:
- dom/MouseEvent.h:
- dom/PointerEvent.h:
- 1:45 PM Changeset in webkit [245866] by
-
- 2 edits in tags/Safari-608.1.26/Source/WebKitLegacy/mac
Cherry-pick r245862. rdar://problem/51128946
Fix internal watchOS build
https://bugs.webkit.org/show_bug.cgi?id=198344
<rdar://problem/51128965>
Reviewed by Geoff Garen.
- Misc/WebDownload.h: Fix watchOS like we did iosmac in r245596
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@245862 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:29 PM Changeset in webkit [245865] by
-
- 7 edits in trunk/Source
Versioning.
- 1:25 PM Changeset in webkit [245864] by
-
- 1 copy in tags/Safari-608.1.26
Tag Safari-608.1.26.
- 1:07 PM Changeset in webkit [245863] by
-
- 53 edits in trunk
Unreviewed, rolling out r245857.
Breaks internal builds.
Reverted changeset:
"WeakPtr breaks vtables when upcasting to base classes"
https://bugs.webkit.org/show_bug.cgi?id=188799
https://trac.webkit.org/changeset/245857
- 12:37 PM Changeset in webkit [245862] by
-
- 2 edits in trunk/Source/WebKitLegacy/mac
Fix internal watchOS build
https://bugs.webkit.org/show_bug.cgi?id=198344
<rdar://problem/51128965>
Reviewed by Geoff Garen.
- Misc/WebDownload.h:
Fix watchOS like we did iosmac in r245596
- 12:16 PM Changeset in webkit [245861] by
-
- 2 edits in trunk/Source/WebCore
Fix builds that don't use makeWindowFromView
https://bugs.webkit.org/show_bug.cgi?id=198342
<rdar://problem/51228563>
Reviewed by Wenson Hsieh.
In some configurations, VideoFullscreenInterfaceAVKit.mm declares but
does not use makeWindowFromView. Fix by conditionalizing the the
declaration on the same symbol as point where it's used.
No new tests -- no new functionality.
- platform/ios/VideoFullscreenInterfaceAVKit.mm:
- 12:15 PM Changeset in webkit [245860] by
-
- 2 edits in trunk/Source/WebKit
[iOS] The WebContent process needs proper entitlement to do secure drawing
https://bugs.webkit.org/show_bug.cgi?id=198343
<rdar://problem/50671257>
Reviewed by Tim Horton.
The WebContent process needs proper entitlement to do secure drawing on iOS.
- Configurations/WebContent-iOS.entitlements:
- 11:51 AM Changeset in webkit [245859] by
-
- 2 edits in trunk/Source/WebKit
UserMediaCaptureManager should remove a source from its map once the source is ended
https://bugs.webkit.org/show_bug.cgi?id=198337
Reviewed by Eric Carlson.
When the source is stopped, for instance using MediaStreamTrack.stop,
remove the source from UserMediaCaptureManager sources map.
This makes sure the map will not grow over time.
Add an if check to ensure that the source is still there before processing an incoming IPC call.
When UIProcess tells us the capture is finished (typically capture failed), remove the entry on WebProcess side as well.
- WebProcess/cocoa/UserMediaCaptureManager.cpp:
(WebKit::UserMediaCaptureManager::createCaptureSource):
(WebKit::UserMediaCaptureManager::sourceStopped):
(WebKit::UserMediaCaptureManager::captureFailed):
(WebKit::UserMediaCaptureManager::sourceMutedChanged):
(WebKit::UserMediaCaptureManager::sourceSettingsChanged):
(WebKit::UserMediaCaptureManager::storageChanged):
(WebKit::UserMediaCaptureManager::ringBufferFrameBoundsChanged):
(WebKit::UserMediaCaptureManager::audioSamplesAvailable):
(WebKit::UserMediaCaptureManager::remoteVideoSampleAvailable):
(WebKit::UserMediaCaptureManager::sourceEnded):
(WebKit::UserMediaCaptureManager::applyConstraintsSucceeded):
(WebKit::UserMediaCaptureManager::applyConstraintsFailed):
- 11:36 AM Changeset in webkit [245858] by
-
- 2 edits in trunk/Source/WebKit
UserMediaCaptureManagerProxy::SourceProxy should directly have access to its IPC connection
https://bugs.webkit.org/show_bug.cgi?id=198335
Reviewed by Eric Carlson.
Previously, SourceProxy was getting its IPC connection by going through its manager, then its process proxy.
As some calls can be done from a background thread, it is safer to directly make SourceProxy own a Ref of its IPC connection.
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(WebKit::UserMediaCaptureManagerProxy::SourceProxy::SourceProxy):
(WebKit::UserMediaCaptureManagerProxy::createMediaSourceForCaptureDeviceWithConstraints):
- 11:22 AM Changeset in webkit [245857] by
-
- 53 edits in trunk
WeakPtr breaks vtables when upcasting to base classes
https://bugs.webkit.org/show_bug.cgi?id=188799
Reviewed by Youenn Fablet.
Source/WebCore:
- Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::MediaKeySession):
- Modules/encryptedmedia/MediaKeySession.h: Adopted modern WeakPtr APIs.
Removed redundant WeakPtrFactory.
- css/CSSFontFace.cpp:
(WebCore::CSSFontFace::existingWrapper):
- css/CSSFontFace.h: Moved functions out of line to avoid #include
explosion for .get().
- dom/ContainerNode.h:
- dom/Document.h:
- dom/Element.h: Moved CanMakeWeakPtr to ContainerNode because all
subclasses except for DocumentFragment were already so, and we have
code that uses WeakPtr<ContainerNode>, which, now that WeakPtr is
type-safe, is awkward to do when ContainerNode isn't CanMakeWeakPtr.
- dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::fullscreenRenderer const):
- dom/FullscreenManager.h:
(WebCore::FullscreenManager::fullscreenRenderer const): Deleted.
- html/FormAssociatedElement.cpp:
(WebCore::FormAssociatedElement::form const):
- html/FormAssociatedElement.h:
(WebCore::FormAssociatedElement::form const): Deleted. Moved functions
out of line to avoid #include explosion for .get().
- html/HTMLMediaElement.h: It takes an extra using declaration
to disambiguate multiple CanMakeWeakPtr base classes now.
- loader/MediaResourceLoader.cpp:
(WebCore::MediaResourceLoader::requestResource): Removed redundant .get().
- page/DOMWindowProperty.cpp:
(WebCore::DOMWindowProperty::window const):
- page/DOMWindowProperty.h:
(WebCore::DOMWindowProperty::window const): Deleted.
- page/FrameViewLayoutContext.cpp:
(WebCore::FrameViewLayoutContext::subtreeLayoutRoot const):
- page/FrameViewLayoutContext.h:
(WebCore::FrameViewLayoutContext::subtreeLayoutRoot const): Deleted.
- page/UndoItem.cpp:
(WebCore::UndoItem::undoManager const):
- page/UndoItem.h:
(WebCore::UndoItem::undoManager const): Deleted. Moved functions out of
line to avoid #include explosion for .get().
- platform/ScrollView.h: It takes an extra using declaration
to disambiguate multiple CanMakeWeakPtr base classes now.
- platform/Widget.cpp:
(WebCore::Widget::parent const):
- platform/Widget.h:
(WebCore::Widget::parent const): Deleted. Moved functions out of line to avoid #include
explosion for .get().
- platform/encryptedmedia/CDMInstanceSession.h: Made
CDMInstanceSessionClient CanMakeWeakPtr because we use WeakPtr<CDMInstanceSessionClient>.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
CanMakeWeakPtr is inherited now.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::~MediaPlayerPrivateAVFoundationObjC):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cdmSession const): Deleted.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::createWeakPtr): Deleted.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::CMTimebaseEffectiveRateChangedCallback):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::play):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pause):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cdmSession const):
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
(WebCore::SourceBufferPrivateAVFObjC::setCDMSession):
(WebCore::SourceBufferPrivateAVFObjC::flushVideo):
(WebCore::SourceBufferPrivateAVFObjC::enqueueSample):
(WebCore::SourceBufferPrivateAVFObjC::notifyClientWhenReadyForMoreSamples):
(WebCore::SourceBufferPrivateAVFObjC::setVideoLayer):
(WebCore::SourceBufferPrivateAVFObjC::setDecompressionSession): Modernized WeakPtr API usage.
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::multiColumnFlowSlowCase const):
- rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::multiColumnFlow const):
- rendering/RenderMultiColumnFlow.cpp:
(WebCore::RenderMultiColumnFlow::findColumnSpannerPlaceholder const):
- rendering/RenderMultiColumnFlow.h:
- rendering/RenderTable.cpp:
(WebCore::RenderTable::header const):
(WebCore::RenderTable::footer const):
(WebCore::RenderTable::firstBody const):
(WebCore::RenderTable::topSection const):
- rendering/RenderTable.h:
(WebCore::RenderTable::header const): Deleted.
(WebCore::RenderTable::footer const): Deleted.
(WebCore::RenderTable::firstBody const): Deleted.
(WebCore::RenderTable::topSection const): Deleted. Moved functions out
of line to avoid #include explosion for .get().
Source/WebKit:
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::networkSession):
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
- Shared/WebBackForwardListItem.cpp:
(WebKit::WebBackForwardListItem::suspendedPage const):
- Shared/WebBackForwardListItem.h:
(WebKit::WebBackForwardListItem::suspendedPage const): Deleted. Moved
functions out of line to avoid #include explosion for .get().
- UIProcess/Authentication/cocoa/SecKeyProxyStore.h:
(WebKit::SecKeyProxyStore::get const):
(WebKit::SecKeyProxyStore::weakPtrFactory const): Deleted. Adopted
CanMakeWeakPtr.
- UIProcess/WebAuthentication/AuthenticatorManager.h:
- UIProcess/WebProcessProxy.cpp: It takes an extra using declaration
to disambiguate multiple CanMakeWeakPtr base classes now.
(WebKit::WebProcessProxy::processPool const):
- UIProcess/WebProcessProxy.h:
(WebKit::WebProcessProxy::processPool const): Deleted. Moved
functions out of line to avoid #include explosion for .get().
Source/WTF:
This patch switches from reinterpret_cast to static_cast when loading
from WeakReference storage.
We know which type to cast *to* because it's specified by the type of
the calling WeakPtr.
We know which type to cast *from* because it's specified by a typedef
in CanMakeWeakPtr.
(Our convention is that we store a pointer to the class that derives
from CanMakeWeakPtr. We cast from that pointer to derived pointers when
we get(). This means that #include of the derived type header is now
required in order to get() the pointer.)
- wtf/WeakHashSet.h:
(WTF::HashTraits<Ref<WeakReference>>::isReleasedWeakValue): Definition
is now eagerly required because WeakReference is not a template anymore.
(WTF::WeakHashSet::WeakHashSetConstIterator::get const):
(WTF::WeakHashSet::WeakHashSetConstIterator::skipEmptyBuckets):
(WTF::WeakHashSet::remove):
(WTF::WeakHashSet::contains const):
(WTF::WeakHashSet::computesEmpty const):
(WTF::WeakHashSet::hasNullReferences const):
(WTF::WeakHashSet::computeSize const):
(WTF::HashTraits<Ref<WeakReference<T>>>::isReleasedWeakValue): Deleted.
Updated for new WeakReference get() API.
- wtf/WeakPtr.h: Use a macro for TestAPI support. We can't use template
specialization because WeakReference is not a class template anymore.
(Or maybe we could have kept it working with a dummy template argument?
Felt weird, so I switched.)
(WTF::WeakReference::create):
(WTF::WeakReference::~WeakReference):
(WTF::WeakReference::get const):
(WTF::WeakReference::operator bool const):
(WTF::WeakReference::WeakReference): WeakReference is just a void* now.
It's the caller's responsibility, when creating and getting, to use
a consistent storage type. We ensure a canonical storage type using a
typedef inside CanMakeWeakPtr.
(WTF::WeakPtr::WeakPtr):
(WTF::WeakPtr::get const):
(WTF::WeakPtr::operator bool const):
(WTF::WeakPtr::operator-> const):
(WTF::WeakPtr::operator* const): Adopted new WeakReference API.
(WTF::WeakPtrFactory::createWeakPtr const): No need for reinterpret_cast.
(WTF::weak_reference_cast): This isn't required for correctness, but it's
nice to show a complier error at WeakPtr construction sites when you know
that the types won't work. Otherwise, you get compiler errors at
dereference sites, which are slightly more mysterious ways of saying that
you constructed your WeakPtr incorrectly.
(WTF::WeakPtr<T>::WeakPtr):
(WTF::=):
(WTF::makeWeakPtr):
(WTF::weak_reference_upcast): Deleted.
(WTF::weak_reference_downcast): Deleted.
Tools:
- TestWebKitAPI/Tests/WTF/WeakPtr.cpp: Adopt the new macro API instead
of template specialization for observing weak references.
(TestWebKitAPI::Int::Int):
(TestWebKitAPI::Int::operator int const):
(TestWebKitAPI::Int::operator== const): Use a class for integer tests
because WeakPtr doesn't naturally support pointing to non-class objects
now.
(TestWebKitAPI::Base::foo):
(TestWebKitAPI::Derived::foo): Inherit from CanMakeWeakPtr to enable
deduction of the weak pointer type.
(TestWebKitAPI::TEST): Updated to use Int.
(TestWebKitAPI::Base::weakPtrFactory const): Deleted.
(WTF::WeakReference<TestWebKitAPI::Base>::WeakReference): Deleted.
(WTF::WeakReference<TestWebKitAPI::Base>::~WeakReference): Deleted.
- 11:12 AM Changeset in webkit [245856] by
-
- 2 edits in trunk/Source/WebKit
Modernize getting proxies of UserMediaCaptureManagerProxy
https://bugs.webkit.org/show_bug.cgi?id=198336
Reviewed by Eric Carlson.
No change of behavior, use HashMap::get instead of find.
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(WebKit::UserMediaCaptureManagerProxy::startProducingData):
(WebKit::UserMediaCaptureManagerProxy::stopProducingData):
(WebKit::UserMediaCaptureManagerProxy::capabilities):
(WebKit::UserMediaCaptureManagerProxy::setMuted):
(WebKit::UserMediaCaptureManagerProxy::applyConstraints):
- 10:59 AM Changeset in webkit [245855] by
-
- 2 edits in trunk/Source/WebKit
[watchOS] Remove an unneeded #import
https://bugs.webkit.org/show_bug.cgi?id=198339
<rdar://problem/51195415>
Reviewed by Wenson Hsieh.
- UIProcess/ios/forms/WKTimePickerViewController.mm:
- 10:41 AM Changeset in webkit [245854] by
-
- 3 edits3 adds in trunk
Scrolling node ordering wrong when a layer has both positioning and fixed/sticky node
https://bugs.webkit.org/show_bug.cgi?id=198329
Reviewed by Darin Adler.
Source/WebCore:
Test: scrollingcoordinator/scrolling-tree/sticky-in-overflow.html
With sticky positioning in non-stacking context overflow you currently get structure like
FrameScrollingNode
OverflowScrollingNode
StickyNode
PositionedNode
where StickyNode and PositionedNode reference the same layer. Sticky doesn't get applied at all when the overflow moves.
This patch reverses the order of sticky and positioned. It doesn't fix sticky positioning during scrolling yet,
but it does make it less jumpy. It is a prerequisite for the full fix.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateScrollCoordinationForLayer):
LayoutTests:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/sticky-in-overflow-expected.txt: Added.
- scrollingcoordinator/scrolling-tree/sticky-in-overflow-expected.txt: Added.
- scrollingcoordinator/scrolling-tree/sticky-in-overflow.html: Added.
- 10:23 AM Changeset in webkit [245853] by
-
- 2 edits in trunk/Source/WebCore
Prepend KEY_ to the last key alias in PlatformEventKeyboardGtk
https://bugs.webkit.org/show_bug.cgi?id=198331
Patch by Ludovico de Nittis <ludovico.denittis@collabora.com> on 2019-05-29
Reviewed by Michael Catanzaro.
No behavior change.
With the commit
https://bugs.webkit.org/show_bug.cgi?id=198326
A gdk key slipped away from the renaming.
- platform/gtk/PlatformKeyboardEventGtk.cpp:
(WebCore::modifiersForGdkKeyEvent):
- 10:05 AM Changeset in webkit [245852] by
-
- 2 edits in trunk/Source/WebKit
Correct flaky WebAuthN test cases
https://bugs.webkit.org/show_bug.cgi?id=198308
<rdar://problem/48677219>
Reviewed by David Kilzer.
Correct offset math in the MockHidConnection implementation. The write position of
the payload buffer was computed using the value of 'size()', which is set to the full
capacity of the vector after a 'grow()' operation.
Tests: http/wpt/webauthn
- UIProcess/WebAuthentication/Mock/MockHidConnection.cpp:
(WebKit::MockHidConnection::feedReports):
- 9:58 AM Changeset in webkit [245851] by
-
- 2 edits in trunk/Tools
Disable Flaky API Test TestWebKitAPI._WKDownload.DownloadMonitorCancel
https://bugs.webkit.org/show_bug.cgi?id=198328
Reviewed by Alexey Proskuryakov.
- TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
- 9:07 AM Changeset in webkit [245850] by
-
- 8 edits2 adds in trunk/Source/WebCore
[LFC][IFC] Move Line class to a dedicated file
https://bugs.webkit.org/show_bug.cgi?id=198332
<rdar://problem/51221403>
Reviewed by Antti Koivisto.
An upcoming refactoring requires the Line class to be in a .h.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- layout/displaytree/DisplayRun.h:
- layout/inlineformatting/InlineFormattingContextLineLayout.cpp:
(WebCore::Layout::InlineFormattingContext::LineLayout::initializeLine const):
(WebCore::Layout::InlineFormattingContext::LineLayout::computedIntrinsicWidth const):
(WebCore::Layout::halfLeadingMetrics): Deleted.
(WebCore::Layout::Line::availableWidth const): Deleted.
(WebCore::Layout::Line::contentLogicalRight const): Deleted.
(WebCore::Layout::Line::contentLogicalWidth const): Deleted.
(WebCore::Layout::Line::logicalTop const): Deleted.
(WebCore::Layout::Line::logicalLeft const): Deleted.
(WebCore::Layout::Line::logicalRight const): Deleted.
(WebCore::Layout::Line::logicalBottom const): Deleted.
(WebCore::Layout::Line::logicalWidth const): Deleted.
(WebCore::Layout::Line::logicalHeight const): Deleted.
(WebCore::Layout::Line::LineItem::LineItem): Deleted.
(WebCore::Layout::Line::Line): Deleted.
(WebCore::Layout::Line::reset): Deleted.
(WebCore::Layout::Line::close): Deleted.
(WebCore::Layout::Line::removeTrailingTrimmableContent): Deleted.
(WebCore::Layout::Line::moveLogicalLeft): Deleted.
(WebCore::Layout::Line::moveLogicalRight): Deleted.
(WebCore::Layout::isTrimmableContent): Deleted.
(WebCore::Layout::Line::trailingTrimmableWidth const): Deleted.
(WebCore::Layout::Line::hasContent const): Deleted.
(WebCore::Layout::Line::appendNonBreakableSpace): Deleted.
(WebCore::Layout::Line::appendInlineContainerStart): Deleted.
(WebCore::Layout::Line::appendInlineContainerEnd): Deleted.
(WebCore::Layout::Line::appendTextContent): Deleted.
(WebCore::Layout::Line::appendNonReplacedInlineBox): Deleted.
(WebCore::Layout::Line::appendReplacedInlineBox): Deleted.
(WebCore::Layout::Line::appendHardLineBreak): Deleted.
- layout/inlineformatting/InlineTextItem.h:
- layout/inlineformatting/text/TextUtil.cpp:
(WebCore::Layout::TextUtil::isTrimmableContent):
- layout/inlineformatting/text/TextUtil.h:
- 6:07 AM Changeset in webkit [245849] by
-
- 2 edits in trunk/Source/WebCore
PlatformEventKeyboardGtk still uses old key aliases
https://bugs.webkit.org/show_bug.cgi?id=198326
Patch by Ludovico de Nittis <ludovico.denittis@collabora.com> on 2019-05-29
Reviewed by Carlos Garcia Campos.
No behavior change.
Use the new key names convention prepending "KEY_".
- platform/gtk/PlatformKeyboardEventGtk.cpp:
(WebCore::PlatformKeyboardEvent::keyIdentifierForGdkKeyCode):
(WebCore::PlatformKeyboardEvent::windowsKeyCodeForGdkKeyCode):
(WebCore::PlatformKeyboardEvent::singleCharacterString):
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
May 28, 2019:
- 11:00 PM Changeset in webkit [245848] by
-
- 3 edits2 adds in trunk
[MSE][GStreamer] update the readyState correctly in MediaPlayerPrivateGStreamerMSE
https://bugs.webkit.org/show_bug.cgi?id=197834
Patch by Yacine Bandou <yacine.bandou@softathome.com> on 2019-05-28
Reviewed by Xabier Rodriguez-Calvar.
Source/WebCore:
The buffering state and the m_downloadFinished boolean aren't supported in the MSE case.
When the readyState is already "HaveEnoughData", we don't want to revert it to "HaveFutureData",
or else the MediaPlayer would send a "canplay" event instead of a "canplaythrough".
Test: media/media-source/media-source-canplaythrough-event.html
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::updateStates):
LayoutTests:
Add a new test that checks if the MediaElement receives the "canplaythrough"
event when the media content is entirely injected to MSE sourceBuffer.
- media/media-source/media-source-canplaythrough-event-expected.txt: Added.
- media/media-source/media-source-canplaythrough-event.html: Added.
- 9:40 PM Changeset in webkit [245847] by
-
- 2 edits in trunk/Source/WebKit
[WinCairo] REGRESSION(r245186) Crash in NetworkCache::IOChannel::read in http/tests/IndexedDB some tests
https://bugs.webkit.org/show_bug.cgi?id=197941
Reviewed by Don Olmstead.
http/tests/IndexedDB some tests were crashing in
NetworkCache::IOChannel::read in order to allocate a buffer with
std::numeric_limits<size_t>::max() as the size.
IOChannel::read should check the file size, and calculate the read
size.
- NetworkProcess/cache/NetworkCacheIOChannelCurl.cpp:
(WebKit::NetworkCache::IOChannel::read): Limit the read buffer
size by calling FileSystem::getFileSize.
- 9:38 PM Changeset in webkit [245846] by
-
- 3 edits in trunk/Source/WebCore
[WinCairo] ASSERTION FAILED: !m_preparingToPlay in MediaPlayerPrivateMediaFoundation::prepareToPlay
https://bugs.webkit.org/show_bug.cgi?id=190747
Reviewed by Alex Christensen.
HTMLMediaElement::prepareToPlay had a assertion ensuring that it
was not called twice. However, it was called twice. The first from
HTMLMediaElement::load, the second from
MediaPlayerPrivateMediaFoundation::onTopologySet.
prepareToPlay started loading. And, loading should be started
after onTopologySet is called back.
Covered by existing tests.
- platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
(WebCore::MediaPlayerPrivateMediaFoundation::onTopologySet): Moved code from prepareToPlay.
(WebCore::MediaPlayerPrivateMediaFoundation::prepareToPlay): Deleted and moved the code to onTopologySet.
- platform/graphics/win/MediaPlayerPrivateMediaFoundation.h: Removed prepareToPlay declaration.
- 9:33 PM Changeset in webkit [245845] by
-
- 2 edits in trunk/Source/WebCore
[WinCairo][MediaFoundation] Assertion failure in MediaPlayerPrivateMediaFoundation::Direct3DPresenter::presentSample
https://bugs.webkit.org/show_bug.cgi?id=198290
Reviewed by Per Arne Vollan.
Covered by existing tests.
- platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::presentSample):
Call clear() of m_memSurface before assigning new value.
- 9:13 PM Changeset in webkit [245844] by
-
- 3 edits2 adds in trunk
[WHLSL] Type of dereference is the type of the thing we point to, not a pointer to that type
https://bugs.webkit.org/show_bug.cgi?id=198321
Reviewed by Myles C. Maxfield.
Source/WebCore:
Consider this program:
`
thread int* x;
*x = 42
`
In the Checker, we were saying the type of "*x" was "int*" instead of "int".
Test: webgpu/whlsl-dereference-pointer-should-type-check.html
- Modules/webgpu/WHLSL/WHLSLChecker.cpp:
(WebCore::WHLSL::Checker::visit):
LayoutTests:
- webgpu/whlsl-dereference-pointer-should-type-check-expected.html: Added.
- webgpu/whlsl-dereference-pointer-should-type-check.html: Added.
- 8:27 PM Changeset in webkit [245843] by
-
- 2 edits in trunk/Tools
Attempt to fix JSC test timeouts after adding collectContinuously to WASM tests.
https://bugs.webkit.org/show_bug.cgi?id=198322
Reviewed by Saam Barati.
Increases the collection period from 1 to slightly higher to try to speed up the tests. Any higher and
the test runner does not detect the bug that required the memset in Wasm::Instance::Instance().
- Scripts/run-jsc-stress-tests:
- 8:08 PM Changeset in webkit [245842] by
-
- 7 edits in branches/safari-608.1.24.20-branch/Source
Versioning.
- 8:02 PM Changeset in webkit [245841] by
-
- 1 copy in tags/Safari-608.1.24.20.7
Tag Safari-608.1.24.20.7.
- 8:00 PM Changeset in webkit [245840] by
-
- 7 edits in branches/safari-608.1.24.20-branch/Source
Versioning.
- 7:56 PM Changeset in webkit [245839] by
-
- 7 edits in trunk
[iOS] Respect NSItemProvider's registered types when dropping files that are loaded in-place
https://bugs.webkit.org/show_bug.cgi?id=198315
<rdar://problem/51183762>
Reviewed by Tim Horton.
Source/WebCore:
Currently, logic in PasteboardIOS.mm and WebContentReaderCocoa.mm attempts to deduce the content type from the
file path when dropping attachments on iOS. Instead, we should be plumbing the content type through to the
reader.
Test: WKAttachmentTestsIOS.InsertDroppedImageWithNonImageFileExtension
- editing/WebContentReader.h:
- editing/cocoa/WebContentReaderCocoa.mm:
(WebCore::typeForAttachmentElement):
Add a helper method to determine which type to use in attachment elements. This makes the paste
(attachmentForData) and drop (attachmentForFilePaths) behave the same way, with respect to the type attribute
used to represent the attachment.
(WebCore::attachmentForFilePath):
Use the content type, if specified; otherwise, fall back to deducing it from the file path.
(WebCore::attachmentForData):
(WebCore::WebContentReader::readFilePath):
- platform/Pasteboard.h:
(WebCore::PasteboardWebContentReader::readFilePath):
Pass the highest fidelity representation's content type to the web content reader.
- platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::readRespectingUTIFidelities):
Tools:
Adds a new API test to verify that when dropping a file that is loaded in-place with a file extension that is
not a .png (but was registered to the item provider as "public.png"), the resulting attachment is contained in
an image element, and the resulting attachment info indicates that the dropped attachment is a png file.
Additionally, rebaseline some existing tests.
- TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(runTestWithTemporaryImageFile):
(TestWebKitAPI::TEST):
- 7:27 PM Changeset in webkit [245838] by
-
- 16 edits5 adds2 deletes in trunk
Move idempotent text autosizing to StyleTreeResolver
https://bugs.webkit.org/show_bug.cgi?id=197808
<rdar://problem/50283983>
Reviewed by Antti Koivisto.
Source/WebCore:
This patch migrates the idempotent text autosizing code to live inside style resolution. This is almost
the same as the algorithm that uses the result of layout to calculate autosizing, but this version only
operates on style (and thus doesn't require double layouts). Because it is being run in an environment
with less information, autosizing is occurring in more places, so the curves have been adjusted to make
autosizing not boost as much as the previous implementation did. The new algorithm is modelled after
text-decorations-in-effect. I've claimed 4 of the unused bits in RenderStyle to contain the state of the
autosizing algorithm. StyleResolver::adjustRenderStyle() is where the algorithm is implemented:
- Look at the inherited bits
- Interogate the element's RenderStyle
- Compute new bits for the element, and set them in its RenderStyle
- Based on the newly computed bits, determine whether we should increase the text size
- If so, determine how much using the specified font size, and apply the result to the computed font size
This works because StyleBuilderCustom::applyInheritFontSize() inherits from the specified font size, not
the computed font size.
This patch also will disable autosizing using the other methods (so there aren't two methods of autosizing
fighting each other) and will honor text-size-adjust:none. However, it won't honor text-size-adjust:100%.
If content says text-size-adjust:100%, we will disregard it and take this code path.
Tests: fast/text-autosizing/ios/idempotentmode/css-exposure.html
fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-skip.html
fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-identity.html
fast/text-autosizing/ios/idempotentmode/idempotent-autosizing.html
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyinStyle):
- css/CSSProperties.json:
- css/StyleBuilderCustom.h:
(WebCore::computeBaseSpecifiedFontSize):
(WebCore::computeLineHeightMultiplierDueToFontSize):
- css/StyleResolver.cpp:
(WebCore::idempotentTextSize):
(WebCore::hasTextChildren):
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::StyleResolver::checkForTextSizeAdjust):
- page/FrameViewLayoutContext.cpp:
(WebCore::FrameViewLayoutContext::applyTextSizingIfNeeded):
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::adjustComputedFontSizes):
(WebCore::idempotentTextSize): Deleted.
- rendering/RenderBlockFlow.h:
- rendering/RenderElement.cpp:
(WebCore::includeNonFixedHeight):
(WebCore::RenderElement::adjustComputedFontSizesOnBlocks):
(WebCore::RenderElement::resetTextAutosizing):
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::RenderStyle):
(WebCore::RenderStyle::autosizeStatus const):
(WebCore::RenderStyle::setAutosizeStatus):
- rendering/style/RenderStyle.h:
- rendering/style/TextSizeAdjustment.cpp: Added.
(WebCore::AutosizeStatus::AutosizeStatus):
(WebCore::AutosizeStatus::contains const):
(WebCore::AutosizeStatus::modifiedStatus const):
(WebCore::AutosizeStatus::shouldSkipSubtree const):
- rendering/style/TextSizeAdjustment.h:
LayoutTests:
- fast/text-autosizing/ios/idempotentmode/css-exposure-expected.txt: Added.
- fast/text-autosizing/ios/idempotentmode/css-exposure.html: Added.
- fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-skip-expected.html: Added.
- fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-skip.html: Added.
- platform/ipad/fast/text-autosizing/text-size-adjust-inline-style-expected.html: Removed.
- platform/ipad/fast/text-autosizing/text-size-adjust-inline-style.html: Removed.
We're intentionally not honoring percentages, because this is the most common way that
text autosizing is disabled (by setting it to 100%) on the Web today. However, Web authors
that have done this did it without knowing the full extent of the behavior change, and
the new idempotent text autosizing code path seems to be a progression in most cases
we've seen.
- 6:07 PM Changeset in webkit [245837] by
-
- 9 edits7 adds in trunk
Use scroll-velocity-based tile coverage for overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=198294
rdar://problem/48942184
Reviewed by Tim Horton.
Source/WebCore:
Start using a velocity-based tile coverage computation on layers with Type::ScrolledContents,
which is the content layers for overflow:scroll when they get big enough to get tiled.
Move legacy macOS coverage code into adjustTileCoverageForDesktopPageScrolling() because
I don't want to change its behavior in this patch. Use TileController::adjustTileCoverageRectForScrolling()
for iOS and macOS overflow scrolling. Since only iOS page scrolling gets velocity data from the UI
process, compute velocity in TileController using the visible rect top-left.
For overflow scroll, we have to plumb horizontal and vertical coverage in from
RenderLayerBacking.
Tests: tiled-drawing/scrolling/overflow/overflow-scrolled-down-tile-coverage.html
tiled-drawing/scrolling/overflow/overflow-scrolled-up-tile-coverage.html
tiled-drawing/scrolling/overflow/overflow-tile-coverage.html
- platform/graphics/TiledBacking.h:
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::adjustCoverageRect const):
- platform/graphics/ca/PlatformCALayer.h:
- platform/graphics/ca/TileController.cpp:
(WebCore::TileController::setVelocity):
(WebCore::TileController::adjustTileCoverageRect):
(WebCore::TileController::adjustTileCoverageForDesktopPageScrolling const):
(WebCore::TileController::adjustTileCoverageWithScrollingVelocity const):
(WebCore::TileController::adjustTileCoverageRectForScrolling):
(WebCore::expandRectWithinRect): Deleted.
(WebCore::TileController::adjustTileCoverageRect const): Deleted.
(WebCore::TileController::adjustTileCoverageRectForScrolling const): Deleted.
- platform/graphics/ca/TileController.h:
- rendering/RenderLayer.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::computePageTiledBackingCoverage):
(WebCore::computeOverflowTiledBackingCoverage):
(WebCore::RenderLayerBacking::adjustTiledBackingCoverage):
(WebCore::RenderLayerBacking::updateGeometry):
LayoutTests:
- tiled-drawing/scrolling/overflow/overflow-scrolled-down-tile-coverage-expected.txt: Added.
- tiled-drawing/scrolling/overflow/overflow-scrolled-down-tile-coverage.html: Added.
- tiled-drawing/scrolling/overflow/overflow-scrolled-up-tile-coverage-expected.txt: Added.
- tiled-drawing/scrolling/overflow/overflow-scrolled-up-tile-coverage.html: Added.
- tiled-drawing/scrolling/overflow/overflow-tile-coverage-expected.txt: Added.
- tiled-drawing/scrolling/overflow/overflow-tile-coverage.html: Added.
- 6:05 PM Changeset in webkit [245836] by
-
- 2 edits in trunk/Tools
GCHeapInspector should accept weird filename
https://bugs.webkit.org/show_bug.cgi?id=198314
Reviewed by Simon Fraser.
GCHeapInspector filenameForPath should have a fallback path if regexp does not match against the given path.
- GCHeapInspector/script/interface.js:
(filenameForPath):
- 5:34 PM Changeset in webkit [245835] by
-
- 2 edits in trunk/Source/WebKit
Fix sandbox violation when using QuickLook on iOS
https://bugs.webkit.org/show_bug.cgi?id=198312
<rdar://problem/51134351>
Reviewed by Alexey Proskuryakov.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 5:20 PM Changeset in webkit [245834] by
-
- 1 copy in tags/Safari-608.1.24.20.6
Tag Safari-608.1.24.20.6.
- 5:14 PM Changeset in webkit [245833] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: Timelines: spacing around pie chart is different between CPU and Memory
https://bugs.webkit.org/show_bug.cgi?id=198299
Reviewed by Matt Baker.
"Style Resolution" is a much longer string than any of the legend strings in the Memory
timeline, and causes the CPU timeline legend to shift as a result.
Rename "Script" to "JavaScript" and "Style Resolution" to "Styles" so that the strings are
roughly the same length between the CPU and Memory timelines, meaning that they will appear
in the same spot with similar sizing.
- UserInterface/Views/CPUTimelineView.js:
(WI.CPUTimelineView.displayNameForSampleType):
(WI.CPUTimelineView.prototype.initialLayout):
(WI.CPUTimelineView.prototype._computeStatisticsData):
Drive-by: remove theWIprefix from allCPUTimelineView.SampleTypesince it's within the
same class.
- UserInterface/Views/CPUTimelineView.css:
(.timeline-view.cpu > .content > .overview .legend > .row > .swatch.sample-type-javascript): Added.
(.timeline-view.cpu > .content > .overview .legend > .row > .swatch.sample-type-script): Deleted.
Drive-by: move the.overviewrules lower to be in the same area as the.overview *rules.
- UserInterface/Views/MemoryTimelineView.css:
(.timeline-view.memory > .content > .overview):
Drive-by: remove duplicate CSS rule.
- Localizations/en.lproj/localizedStrings.js:
- 4:57 PM Changeset in webkit [245832] by
-
- 3 edits in trunk/Source/WebKit
Horizontal scrollbar flashes after scrolling vertically with keyboard
https://bugs.webkit.org/show_bug.cgi?id=197942
<rdar://problem/46169578>
Reviewed by Dean Jackson.
- UIProcess/ios/WKKeyboardScrollingAnimator.mm:
(axesForDelta):
(-[WKKeyboardScrollViewAnimator scrollToContentOffset:animated:]):
Only flash relevant axes.
- Platform/spi/ios/UIKitSPI.h:
- 4:40 PM Changeset in webkit [245831] by
-
- 2 edits in trunk/Source/WebKit
Build Fix.
- UIProcess/WKImagePreviewViewController.mm:
(-[WKImagePreviewViewController IGNORE_WARNINGS_END]):
(-[WKImagePreviewViewController previewActionItems]): Deleted.
- 4:27 PM Changeset in webkit [245830] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r245795): causing internal testers to exit early after 50 crashes.
https://bugs.webkit.org/show_bug.cgi?id=198310
<rdar://problem/51192535>
Reviewed by Simon Fraser.
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.mm:
(WebKit::touchActionsForPoint):
Initialize hitView to nil.
- 4:13 PM Changeset in webkit [245829] by
-
- 3 edits3 adds in trunk
createAnswer() SDP Rejected by setLocalDescription()
https://bugs.webkit.org/show_bug.cgi?id=195930
<rdar://problem/49030489>
Reviewed by Eric Carlson.
Source/ThirdParty/libwebrtc:
Make sure to check packetization mode parameter when matching H264 video codec.
- Source/webrtc/media/base/codec.cc:
- WebKit/0001-fix-195930.patch: Added.
LayoutTests:
- webrtc/h264-packetization-mode-expected.txt: Added.
- webrtc/h264-packetization-mode.html: Added.
- 3:41 PM Changeset in webkit [245828] by
-
- 2 edits in trunk/Tools
[MacOS] Filter GVA warning logged to stdout
https://bugs.webkit.org/show_bug.cgi?id=198303
<rdar://problem/50098041>
Reviewed by Jer Noble.
- Scripts/webkitpy/port/mac.py:
(MacPort.logging_patterns_to_strip): Filter GVA warnings.
- 3:22 PM Changeset in webkit [245827] by
-
- 20 edits in trunk
Web Inspector: Provide UIString descriptions to improve localizations
https://bugs.webkit.org/show_bug.cgi?id=195132
<rdar://problem/48457817>
Reviewed by Devin Rousso.
Source/WebInspectorUI:
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Base/LoadLocalizedStrings.js:
(WI.UIString):
(WI.repeatedUIString.timelineRecordLayout):
(WI.repeatedUIString.timelineRecordPaint):
(WI.repeatedUIString.timelineRecordComposite):
(WI.repeatedUIString.allExceptions):
(WI.repeatedUIString.uncaughtExceptions):
(WI.repeatedUIString.assertionFailures):
(WI.repeatedUIString.allRequests):
(WI.repeatedUIString.fetch):
(WI.repeatedUIString.revealInDOMTree):
- UserInterface/Models/LayoutTimelineRecord.js:
(WI.LayoutTimelineRecord.displayNameForEventType):
- UserInterface/Models/RenderingFrameTimelineRecord.js:
(WI.RenderingFrameTimelineRecord.displayNameForTaskType):
- UserInterface/Models/Resource.js:
(WI.Resource.displayNameForType):
- UserInterface/Views/AuditTestGroupContentView.js:
(WI.AuditTestGroupContentView.prototype.layout):
- UserInterface/Views/CPUTimelineView.js:
(WI.CPUTimelineView.displayNameForSampleType):
- UserInterface/Views/ContextMenuUtilities.js:
- UserInterface/Views/DOMBreakpointTreeElement.js:
(WI.DOMBreakpointTreeElement.displayNameForType):
- UserInterface/Views/DOMNodeTreeElement.js:
(WI.DOMNodeTreeElement.prototype.populateContextMenu):
(WI.DOMNodeTreeElement):
- UserInterface/Views/DOMTreeElement.js:
(WI.DOMTreeElement.prototype.populateDOMNodeContextMenu):
- UserInterface/Views/DebuggerSidebarPanel.js:
(WI.DebuggerSidebarPanel.prototype._addBreakpoint):
(WI.DebuggerSidebarPanel.prototype._handleCreateBreakpointMouseDown):
(WI.DebuggerSidebarPanel):
- UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
(WI.LayerTreeDetailsSidebarPanel.prototype._buildDataGridSection):
- UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView.shortDisplayNameForResourceType):
(WI.NetworkTableContentView.prototype.initialLayout):
- UserInterface/Views/SourcesNavigationSidebarPanel.js:
(WI.SourcesNavigationSidebarPanel.prototype._addBreakpoint):
(WI.SourcesNavigationSidebarPanel.prototype._handleCreateBreakpointMouseDown):
- UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js:
(WI.SpreadsheetCSSStyleDeclarationSection.prototype._renderSelector):
- UserInterface/Views/SpreadsheetRulesStyleDetailsPanel.js:
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.layout):
Tools:
Allow WI.UIString to take:
- WI.UIString(string, key, comment)
- WI.UIString(string, comment)
- WI.UIString(string)
- Scripts/extract-localizable-js-strings:
- 2:55 PM Changeset in webkit [245826] by
-
- 3 edits in trunk/Tools
Limit run-benchmark http server to specific interface.
https://bugs.webkit.org/show_bug.cgi?id=198247
Reviewed by Ryosuke Niwa.
Add '--interface' option to 'twisted_http_server.py'.
'SimpleHTTPServerDriver' should specify interface for http server.
Update regex that determines http server port from 'lsof' output to support ipv6 address.
- Scripts/webkitpy/benchmark_runner/http_server_driver/http_server/twisted_http_server.py:
Added '--interface' argument.
- Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
Limited http server to a specific interfce.
Added '-P' option to 'lsof' invocation to inhibits the conversion of port numbers to port name so script won't
fail if it's listening on a 'well-known' port.
Abstracted '_check_http_server_is_running' to allow potential child class to have its own implementation.
(SimpleHTTPServerDriver.serve): Updated regex that determines http server port from 'lsof' output to support ipv6 address.
(SimpleHTTPServerDriver.kill_server): Added null check for 'self._server_process'.
- 2:10 PM Changeset in webkit [245825] by
-
- 15 edits29 deletes in trunk
Unreviewed, rolling out r245475.
Newly imported test is flaky. Features need flags.
Reverted changeset:
"Implement imagesrcset and imagesizes attributes on link
rel=preload"
https://bugs.webkit.org/show_bug.cgi?id=192950
https://trac.webkit.org/changeset/245475
- 2:04 PM Changeset in webkit [245824] by
-
- 4 edits in trunk/Tools
webkitpy: Switch run-webkit-tests to tailspin
https://bugs.webkit.org/show_bug.cgi?id=198144
<rdar://problem/32463212>
Patch by David Xiong <w_xiong@apple.com> on 2019-05-28
Reviewed by Jonathan Bedard.
Changes run-webkit-tests to run tailspin on test time out
rather than spindump, and edited tests to look for tailspin logs
instead.
- Scripts/webkitpy/port/darwin.py:
(DarwinPort.sample_process): Replaced spindump with tailspin (+ symbolication)
(DarwinPort):
(DarwinPort.tailspin_file_path):
(DarwinTest.spindump_file_path): Deleted.
- Scripts/webkitpy/port/darwin_testcase.py:
(DarwinTest.test_tailspin): Changed spindump test (below) to test for tailspin instead
(DarwinTest.test_spindump): Deleted.
(DarwinTest.test_spindump.logging_run_command): Deleted.
- Scripts/webkitpy/port/ios_device_unittest.py:
(IOSDeviceTest.test_tailspin): Changed spindump tests (inc. below) to test for tailspin instead
(IOSDeviceTest.test_sample_process.logging_run_command):
(IOSDeviceTest.test_sample_process_exception.throwing_run_command):
(IOSDeviceTest.test_spindump): Deleted.
(IOSDeviceTest.test_spindump.logging_run_command): Deleted.
- 2:02 PM Changeset in webkit [245823] by
-
- 18 edits in trunk/Source
Protect frames during style and layout changes
https://bugs.webkit.org/show_bug.cgi?id=198047
<rdar://problem/50954082>
Reviewed by Zalan Bujtas.
Be more careful about the scope and lifetime of objects that participate in layout or
style updates. If a method decides a layout or style update is needed, it needs to
confirm that the elements it was operating on are still valid and needed in the
current operation.
Source/WebCore:
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::getOrCreate):
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::accessibilityHitTest const):
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyinStyle):
- css/CSSComputedStyleDeclaration.h:
- css/SVGCSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::svgPropertyValue):
- dom/Document.cpp:
(WebCore::Document::setFocusedElement):
- editing/TypingCommand.cpp:
(WebCore::TypingCommand::insertTextRunWithoutNewlines):
(WebCore::TypingCommand::insertLineBreak):
(WebCore::TypingCommand::insertParagraphSeparator):
(WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
- editing/ios/EditorIOS.mm:
(WebCore::Editor::setDictationPhrasesAsChildOfElement):
- html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::focus):
- html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::appendFormData):
- html/ImageDocument.cpp:
(WebCore::ImageDocument::imageClicked):
- html/ValidationMessage.cpp:
(WebCore::ValidationMessage::buildBubbleTree):
- page/FrameView.cpp:
(WebCore::FrameView::autoSizeIfEnabled):
(WebCore::FrameView::trackedRepaintRectsAsText const):
- page/PrintContext.cpp:
(WebCore::PrintContext::pageProperty):
(WebCore::PrintContext::numberOfPages):
(WebCore::PrintContext::spoolAllPagesWithBoundaries):
Source/WebKitLegacy/mac:
- DOM/DOM.mm:
(-[DOMRange renderedImageForcingBlackText:renderedImageForcingBlackText:]):
- WebView/WebHTMLView.mm:
(-[WebHTMLView _selectionDraggingImage]):
(-[WebHTMLView selectionImageForcingBlackText:selectionImageForcingBlackText:]):
- 12:29 PM Changeset in webkit [245822] by
-
- 4 edits in trunk/Source/WebKit
Remove dead code from sandboxes
https://bugs.webkit.org/show_bug.cgi?id=198300
Reviewed by Alexey Proskuryakov.
SSIA.
- NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
- PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in:
- WebProcess/com.apple.WebProcess.sb.in:
- 12:10 PM Changeset in webkit [245821] by
-
- 4 edits in trunk/LayoutTests
REGRESSION (r244182): inspector/canvas/recording-webgl-snapshots.html became flaky on WK1
https://bugs.webkit.org/show_bug.cgi?id=196875
<rdar://problem/49873252>
Reviewed by Said Abou-Hallawa.
Remove the
frameLimitconfiguration on these tests, as they're short enough that when
running in debug, the timing between theInspectorCanvasAgentautomatically stopping the
recording and the test page'sLastFrameevent (which will manually stop the recording) is
too close and can result in a race condition.
Instead, just wait for the test page to say "done" (
LastFrame) before stopping the
recording, ensuring that the full "flow" of the recording is under the control of the test.
This isn't an issue when using Web Inspector "normally" (e.g. not in a test), because the
frontend UI will "ignore" these types of errors, not to mention it would be much harder for
a person to get the timing just right to even encounter this situation.
- inspector/canvas/recording-webgl-snapshots.html:
- inspector/canvas/recording-webgl2-snapshots.html:
- platform/mac/TestExpectations:
- 12:08 PM Changeset in webkit [245820] by
-
- 5 edits in trunk/LayoutTests
[Pointer Events WPT] Unflake imported/w3c/web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html
https://bugs.webkit.org/show_bug.cgi?id=197008
Patch by Antoine Quint <Antoine Quint> on 2019-05-28
Reviewed by Jon Lee.
We raised an issue on the WPT test which was testing the event timestamp in an invalid manner (see https://github.com/w3c/pointerevents/issues/284
and https://github.com/web-platform-tests/wpt/issues/170160). As a result this test now passes reliably, so we can update the expected out and
the TestExpectations.
LayoutTests/imported/w3c:
- web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse-expected.txt:
- web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html:
LayoutTests:
- platform/mac/TestExpectations:
- 12:06 PM Changeset in webkit [245819] by
-
- 2 edits in trunk/Tools
webkitpy: Using sudo on iOS device during timeout spindumps
https://bugs.webkit.org/show_bug.cgi?id=198142
Patch by David Xiong <w_xiong@apple.com> on 2019-05-28
Reviewed by Jonathan Bedard.
- Scripts/webkitpy/port/darwin.py:
(DarwinPort.sample_process): Check target host instead of source host for sudo command.
- 11:11 AM Changeset in webkit [245818] by
-
- 20 edits4 adds in trunk
[async scrolling] Fixed positioning inside stacking context overflow scroll is jumpy
https://bugs.webkit.org/show_bug.cgi?id=198292
Reviewed by Darin Adler.
Source/WebCore:
Tests: scrollingcoordinator/ios/fixed-in-stacking-context-overflow-scroll-2.html
scrollingcoordinator/ios/fixed-in-stacking-context-overflow-scroll.html
We were computing delta from the layout scroll position in ScrollingTree::notifyRelatedNodesAfterScrollPositionChange
based on the passed in node only. If any other node had deltas they were not taken into account at all. This would occur
frequently since the function is always invoked for the root node after layer tree commit.
Fix by moving the delta computation (and fetching layoutViewport) to ScrollingTreeFixedNode.
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::applyLayerPositions):
No need to pass offset and layoutViewport around anymore.
(WebCore::ScrollingTree::applyLayerPositionsRecursive):
(WebCore::ScrollingTree::notifyRelatedNodesAfterScrollPositionChange):
Remove the offset and layoutViewport computations.
(WebCore::ScrollingTree::notifyRelatedNodesRecursive):
- page/scrolling/ScrollingTree.h:
- page/scrolling/ScrollingTreeFrameHostingNode.cpp:
(WebCore::ScrollingTreeFrameHostingNode::applyLayerPositions):
- page/scrolling/ScrollingTreeFrameHostingNode.h:
- page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::relatedNodeScrollPositionDidChange):
- page/scrolling/ScrollingTreeNode.h:
- page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::applyLayerPositions):
- page/scrolling/ScrollingTreeScrollingNode.h:
- page/scrolling/cocoa/ScrollingTreeFixedNode.h:
- page/scrolling/cocoa/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::applyLayerPositions):
Compute them here instead, always taking all overflow scrollers up to the closest frame into account.
- page/scrolling/cocoa/ScrollingTreePositionedNode.h:
- page/scrolling/cocoa/ScrollingTreePositionedNode.mm:
(WebCore::ScrollingTreePositionedNode::applyLayerPositions):
(WebCore::ScrollingTreePositionedNode::relatedNodeScrollPositionDidChange):
- page/scrolling/cocoa/ScrollingTreeStickyNode.h:
- page/scrolling/cocoa/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::applyLayerPositions):
LayoutTests:
- scrollingcoordinator/ios/fixed-in-stacking-context-overflow-scroll-2-expected.html: Added.
- scrollingcoordinator/ios/fixed-in-stacking-context-overflow-scroll-2.html: Added.
- scrollingcoordinator/ios/fixed-in-stacking-context-overflow-scroll-expected.html: Added.
- scrollingcoordinator/ios/fixed-in-stacking-context-overflow-scroll.html: Added.
- 10:33 AM Changeset in webkit [245817] by
-
- 3 edits in trunk/Source/WebKit
Update sandbox rules for more News use cases
https://bugs.webkit.org/show_bug.cgi?id=198236
<rdar://problem/50054027>
Reviewed by Alexey Proskuryakov.
Update the WebContent and Network process sandboxes so that News has the same set of allowed
service access as regular WebKit views.
- NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
- WebProcess/com.apple.WebProcess.sb.in:
- 10:29 AM Changeset in webkit [245816] by
-
- 2 edits in trunk/Source/WebCore
[LFC][Verification] Add additional inline and block checks
https://bugs.webkit.org/show_bug.cgi?id=198252
<rdar://problem/51140687>
Reviewed by Antti Koivisto.
Now we also test the geometry of the blocks with inline formatting contexts.
- layout/Verification.cpp:
(WebCore::Layout::checkForMatchingTextRuns):
(WebCore::Layout::verifyAndOutputSubtree):
- 10:19 AM Changeset in webkit [245815] by
-
- 3 edits1 add in trunk
[YARR] Properly handle RegExp's that require large ParenContext space
https://bugs.webkit.org/show_bug.cgi?id=198065
Reviewed by Keith Miller.
JSTests:
New test.
- stress/regexp-large-paren-context.js: Added.
(testLargeRegExp):
Source/JavaScriptCore:
Changed what happens when we exceed VM::patternContextBufferSize when compiling a RegExp
that needs ParenCOntextSpace to fail the RegExp JIT compilation and fall back to the YARR
interpreter. This can save large amounts of JIT memory for a
JIT'ed function that cannot ever succeed.
- yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::initParenContextFreeList):
(JSC::Yarr::YarrGenerator::compile):
- 10:09 AM Changeset in webkit [245814] by
-
- 2 edits in trunk/Tools
[ews-build] Remove unused buildbot tabs
https://bugs.webkit.org/show_bug.cgi?id=198108
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/templates/build.jade: Removed unused 'Changes' and 'Responsible Users' tabs.
- 9:03 AM Changeset in webkit [245813] by
-
- 4 edits1 add in trunk
JITOperations putByVal should mark negative array indices as out-of-bounds
https://bugs.webkit.org/show_bug.cgi?id=198271
Reviewed by Saam Barati.
JSTests:
- microbenchmarks/get-by-val-negative-array-index.js:
(foo):
Update the getByVal microbenchmark added in r245769. This now shows that r245769
is 4.2x faster than the previous commit.
- microbenchmarks/put-by-val-negative-array-index.js: Added.
(foo):
Source/JavaScriptCore:
Similar to what was done to getByVal in r245769, we should also mark put_by_val as out-of-bounds
when we exit from DFG for putting to a negative index. This avoids the same scenario where we keep
recompiling a CodeBlock with DFG and exiting at the same bytecode.
This is a 3.7x improvement in the microbenchmark being added: put-by-val-negative-array-index.js.
- jit/JITOperations.cpp:
- 8:36 AM Changeset in webkit [245812] by
-
- 5 edits in trunk/Source/WebCore
[LFC][IFC] Decouple line layout and processing inline runs.
https://bugs.webkit.org/show_bug.cgi?id=198282
<rdar://problem/51167954>
Reviewed by Antti Koivisto.
This is in preparation for using "createInlineRunsForLine" logic when computing preferred width.
- layout/inlineformatting/InlineFormattingContext.h:
- layout/inlineformatting/InlineFormattingContextLineLayout.cpp:
(WebCore::Layout::UncommittedContent::size const):
(WebCore::Layout::InlineFormattingContext::LineLayout::createInlineRunsForLine const):
(WebCore::Layout::InlineFormattingContext::LineLayout::layout const):
(WebCore::Layout::InlineFormattingContext::LineLayout::processInlineRuns const):
(WebCore::Layout::InlineFormattingContext::LineLayout::closeLine const): Deleted.
- layout/inlineformatting/InlineFormattingState.h:
(WebCore::Layout::InlineFormattingState::addInlineItem):
- layout/inlineformatting/InlineTextItem.cpp:
(WebCore::Layout::InlineTextItem::createAndAppendTextItems):
- 7:51 AM Changeset in webkit [245811] by
-
- 4 edits in trunk/Source/WebCore
[LFC][IFC] Move intrinsic width computation from InlineFormattingContext to LineLayout
https://bugs.webkit.org/show_bug.cgi?id=198258
Reviewed by Antti Koivisto.
This is in preparation for sharing even more code between line layout and preferred width computation.
- layout/inlineformatting/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::layout const):
(WebCore::Layout::InlineFormattingContext::computeIntrinsicWidthConstraints const):
- layout/inlineformatting/InlineFormattingContext.h:
- layout/inlineformatting/InlineFormattingContextLineLayout.cpp:
(WebCore::Layout::InlineFormattingContext::LineLayout::initializeLine const):
(WebCore::Layout::InlineFormattingContext::LineLayout::layout const):
(WebCore::Layout::InlineFormattingContext::LineLayout::computedIntrinsicWidth const):
(WebCore::Layout::InlineFormattingContext::LineLayout::closeLine const):
- 7:48 AM Changeset in webkit [245810] by
-
- 2 edits in trunk/Source/WebCore
[LFC[IFC] Ignore the initial strut's height when the line does not have any content.
https://bugs.webkit.org/show_bug.cgi?id=198268
<rdar://problem/51150057>
Reviewed by Antti Koivisto.
The strut (https://www.w3.org/TR/CSS22/visudet.html#leading) defines the initial logical height
for the line. This height should be ignored though when the line does not have any content.
- layout/inlineformatting/InlineFormattingContextLineLayout.cpp:
(WebCore::Layout::InlineFormattingContext::LineLayout::closeLine const):
- 5:33 AM Changeset in webkit [245809] by
-
- 4 edits in trunk/Source/WebCore
[Pointer Events] Check that capturing data managed by the PointerCaptureController gets cleared upon navigation
https://bugs.webkit.org/show_bug.cgi?id=198191
Reviewed by Dean Jackson.
When the document of the page's main frame changes, make sure we clear all of the data accumulated for the previous document.
I don't think this particular change is testable as none of the data contained in the PointerIdToCapturingDataMap maintained by
the PointerCaptureController contains any data that could be inspected by the page due to other fixes landed to fix wkb.ug/198129,
but I've checked that removing those fixes and using this patch correctly fixes that bug.
- page/Page.cpp:
(WebCore::Page::didChangeMainDocument):
- page/PointerCaptureController.cpp:
(WebCore::PointerCaptureController::PointerCaptureController):
(WebCore::PointerCaptureController::reset):
- page/PointerCaptureController.h:
- 1:45 AM Changeset in webkit [245808] by
-
- 6 edits in trunk/Source/JavaScriptCore
Unreviewed, revert r242070 due to Membuster regression
https://bugs.webkit.org/show_bug.cgi?id=195013
Membuster shows ~0.3% regression.
- heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::runBeginPhase):
- heap/Heap.h:
- heap/HeapInlines.h:
(JSC::Heap::forEachSlotVisitor):
(JSC::Heap::numberOfSlotVisitors): Deleted.
- heap/MarkingConstraintSolver.cpp:
(JSC::MarkingConstraintSolver::didVisitSomething const):
- heap/SlotVisitor.h: