Timeline
Apr 14, 2018:
- 6:42 PM Changeset in webkit [230660] by
-
- 2 edits in trunk/Source/WTF
Unreviewed, rolling out r230659.
https://bugs.webkit.org/show_bug.cgi?id=184633
Landed prematurely (Requested by ap on #webkit).
Reverted changeset:
"Deactivate the WindowServer connection for the WebContent
process."
https://bugs.webkit.org/show_bug.cgi?id=184451
https://trac.webkit.org/changeset/230659
- 10:57 AM Changeset in webkit [230659] by
-
- 2 edits in trunk/Source/WTF
Deactivate the WindowServer connection for the WebContent process.
https://bugs.webkit.org/show_bug.cgi?id=184451
<rdar://problem/38313938>
Reviewed by Brent Fulgham.
Defining ENABLE_WEBPROCESS_WINDOWSERVER_BLOCKING as 1 will deactivate the WindowServer connection
for the WebContent process by enabling the call to 'CGSSetDenyWindowServerConnections(true)' on
process startup. After calling this function, every attempt to establish a connection to the
WindowServer from the WebContent process will fail, except for CA render server connections.
- wtf/FeatureDefines.h:
- 2:11 AM Changeset in webkit [230658] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] Expose a method to retrieve the GstStream from a TrackPrivateBaseGStreamer
https://bugs.webkit.org/show_bug.cgi?id=184620
Patch by Thibault Saunier <tsaunier@igalia.com> on 2018-04-14
Reviewed by Philippe Normand.
This is a minor change, a dedicated test doesn't really make sense here.
- platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
(WebCore::TrackPrivateBaseGStreamer::stream):
- 12:00 AM Changeset in webkit [230657] by
-
- 2 edits in trunk/Source/WebKit
[GTK][WPE] Build is broken after r230640
https://bugs.webkit.org/show_bug.cgi?id=184623
Patch by Carlos Eduardo Ramalho <cadubentzen@gmail.com> on 2018-04-14
Reviewed by Žan Doberšek.
UIProcess/SuspendedPageProxy.cpp was not included to CMake build in r230640.
- CMakeLists.txt: Added UIProcess/SuspendedPageProxy.cpp to WebKit_SOURCES.
Apr 13, 2018:
- 9:48 PM Changeset in webkit [230656] by
-
- 19 edits1 delete in trunk/Tools
[LayoutReloaded] Update class documentation
https://bugs.webkit.org/show_bug.cgi?id=184625
Reviewed by Antti Koivisto.
- LayoutReloaded/DisplayTree/Box.js:
- LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
- LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js:
- LayoutReloaded/FormattingContext/FloatingContext.js:
- LayoutReloaded/FormattingContext/FormattingContext.js:
- LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
- LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
- LayoutReloaded/FormattingState/BlockFormattingState.js:
- LayoutReloaded/FormattingState/FloatingState.js:
- LayoutReloaded/FormattingState/FormattingState.js:
- LayoutReloaded/FormattingState/InlineFormattingState.js:
- LayoutReloaded/LayoutState.js:
- LayoutReloaded/LayoutTree/BlockContainer.js:
- LayoutReloaded/LayoutTree/Box.js:
- LayoutReloaded/LayoutTree/Container.js:
- LayoutReloaded/LayoutTree/InlineBox.js:
- LayoutReloaded/LayoutTree/InlineContainer.js:
- LayoutReloaded/LayoutTree/Text.js:
- LayoutReloaded/misc/headers/BlockContainer.h: Removed.
- LayoutReloaded/misc/headers/BlockFormattingContext.h: Removed.
- LayoutReloaded/misc/headers/BlockMarginCollapse.h: Removed.
- LayoutReloaded/misc/headers/Box.h: Removed.
- LayoutReloaded/misc/headers/Container.h: Removed.
- LayoutReloaded/misc/headers/FloatingContext.h: Removed.
- LayoutReloaded/misc/headers/FormattingContext.h: Removed.
- LayoutReloaded/misc/headers/InitialBlockContainer.h: Removed.
- LayoutReloaded/misc/headers/InlineBox.h: Removed.
- LayoutReloaded/misc/headers/LayoutContext.h: Removed.
- LayoutReloaded/misc/headers/Line.h: Removed.
- LayoutReloaded/misc/headers/Text.h: Removed.
- 8:21 PM Changeset in webkit [230655] by
-
- 7 edits in trunk/Tools
[LayoutReloaded] Add simple implementation for FormattingState::markNeedsLayout()
https://bugs.webkit.org/show_bug.cgi?id=184621
Reviewed by Antti Koivisto.
This is just a simple, mark ancestors dirty implementation.
- LayoutReloaded/FormattingState/FormattingState.js:
(FormattingState.prototype.markNeedsLayout):
- LayoutReloaded/LayoutState.js:
(LayoutState.prototype.markNeedsLayout):
(LayoutState.prototype.setNeedsLayoutById): Deleted.
(LayoutState.prototype.setNeedsLayout): Deleted.
- LayoutReloaded/TreeBuilder.js:
(TreeBuilder.prototype._createAndAttachBox):
(TreeBuilder.prototype._findBox): Deleted.
- LayoutReloaded/Utils.js:
(Utils.layoutBoxById):
- LayoutReloaded/test/index.html:
- LayoutReloaded/test/simple-incremental-layout-with-static-content.html:
- 8:14 PM Changeset in webkit [230654] by
-
- 2 edits in trunk/LayoutTests
[GTK][Wayland] Unflag test-case fast/canvas/canvas-createPattern-video-modify.html
https://bugs.webkit.org/show_bug.cgi?id=182432
Patch by Carlos Ramalho <cadubentzen@gmail.com> on 2018-04-13
Reviewed by Michael Catanzaro.
- platform/gtk-wayland/TestExpectations: Unmarked fast/canvas/canvas-createPattern-video-modify.html
- 7:14 PM Changeset in webkit [230653] by
-
- 2 edits in trunk/Tools
[WPE] [webkitpy] The driver requirements should be checked before starting the tests
https://bugs.webkit.org/show_bug.cgi?id=184595
Reviewed by Michael Catanzaro.
Ensure Driver.check_driver() is checked at check_sys_deps() time.
- Scripts/webkitpy/port/wpe.py:
(WPEPort.check_sys_deps):
- 6:07 PM Changeset in webkit [230652] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, rolling out r230447.
Caused flaky selection test failures on iOS
Reverted changeset:
"Switch to UIWKTextInteractionAssistant for non-editable text"
https://bugs.webkit.org/show_bug.cgi?id=182834
https://trac.webkit.org/changeset/230447
- 5:39 PM Changeset in webkit [230651] by
-
- 2 edits in trunk/LayoutTests
Mark http/wpt/service-workers/header-filtering.https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=184469
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 5:39 PM Changeset in webkit [230650] by
-
- 2 edits in trunk/LayoutTests
Mark http/tests/cache-storage/cache-records-persistency.https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177380
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 5:39 PM Changeset in webkit [230649] by
-
- 2 edits in trunk/LayoutTests
Mark media/audio-concurrent-supported.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=184612
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 5:39 PM Changeset in webkit [230648] by
-
- 2 edits in trunk/LayoutTests
Mark media/video-volume-slider-drag.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=184610
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 4:30 PM Changeset in webkit [230647] by
-
- 3 edits in trunk/LayoutTests
Skip animations/added-while-suspended.html and transitions/created-while-suspended.html.
https://bugs.webkit.org/show_bug.cgi?id=184608
Unreviewed test gardening.
- platform/ios/TestExpectations:
- platform/mac/TestExpectations:
- 3:50 PM Changeset in webkit [230646] by
-
- 1 copy in tags/Safari-605.1.33.1.4
Tag Safari-605.1.33.1.4.
- 3:48 PM Changeset in webkit [230645] by
-
- 1 copy in tags/Safari-605.1.33.0.3
Tag Safari-605.1.33.0.3.
- 3:42 PM Changeset in webkit [230644] by
-
- 2 edits in trunk/Source/WebCore
WebKit crashes when libwebrtc.dylib is missing
https://bugs.webkit.org/show_bug.cgi?id=184607
Rubber-stamped by Jer Noble.
Don't call LibWebRTC related code when libwebrtc is not available.
- dom/Document.cpp:
(WebCore::Document::prepareForDestruction):
(WebCore::Document::suspend):
- 2:23 PM Changeset in webkit [230643] by
-
- 24 edits2 adds in trunk/Source
Split WindowProxy handling out of ScriptController and into a new class owned by AbstractFrame
https://bugs.webkit.org/show_bug.cgi?id=184591
Reviewed by Sam Weinig.
Source/WebCore:
Split WindowProxy handling out of ScriptController and into a new class owned by AbstractFrame.
RemoteFrames do not need a ScriptController but do need to maintain WindowProxies.
This is work towards fixing Bug 184515.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/DOMWrapperWorld.cpp:
(WebCore::DOMWrapperWorld::~DOMWrapperWorld):
(WebCore::DOMWrapperWorld::clearWrappers):
- bindings/js/DOMWrapperWorld.h:
(WebCore::DOMWrapperWorld::didCreateWindowProxy):
(WebCore::DOMWrapperWorld::didDestroyWindowProxy):
- bindings/js/JSBindingsAllInOne.cpp:
- bindings/js/JSDOMWindowBase.cpp:
(WebCore::toJSDOMWindow):
- bindings/js/JSDOMWindowProxy.cpp:
(WebCore::toJS):
(WebCore::toJSDOMWindowProxy):
- bindings/js/ScriptCachedFrameData.cpp:
(WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
(WebCore::ScriptCachedFrameData::restore):
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::~ScriptController):
(WebCore::ScriptController::evaluateInWorld):
(WebCore::ScriptController::loadModuleScriptInWorld):
(WebCore::ScriptController::linkAndEvaluateModuleScriptInWorld):
(WebCore::ScriptController::evaluateModule):
(WebCore::ScriptController::clearWindowProxiesNotMatchingDOMWindow):
(WebCore::ScriptController::setDOMWindowForWindowProxy):
(WebCore::ScriptController::initScriptForWindowProxy):
(WebCore::ScriptController::setupModuleScriptHandlers):
(WebCore::ScriptController::windowProxyController):
(WebCore::ScriptController::enableEval):
(WebCore::ScriptController::enableWebAssembly):
(WebCore::ScriptController::disableEval):
(WebCore::ScriptController::disableWebAssembly):
(WebCore::ScriptController::attachDebugger):
(WebCore::ScriptController::updateDocument):
(WebCore::ScriptController::collectIsolatedContexts):
(WebCore::ScriptController::windowScriptNPObject):
(WebCore::ScriptController::executeIfJavaScriptURL):
- bindings/js/ScriptController.h:
(WebCore::ScriptController::globalObject):
- bindings/js/ScriptControllerMac.mm:
(WebCore::ScriptController::windowScriptObject):
- bindings/js/ScriptState.cpp:
(WebCore::mainWorldExecState):
- bindings/js/WindowProxyController.cpp: Added.
(WebCore::WindowProxyController::WindowProxyController):
(WebCore::WindowProxyController::destroyWindowProxy):
(WebCore::WindowProxyController::createWindowProxy):
(WebCore::WindowProxyController::windowProxies):
(WebCore::WindowProxyController::createWindowProxyWithInitializedScript):
- bindings/js/WindowProxyController.h: Added.
(WebCore::WindowProxyController::releaseWindowProxies):
(WebCore::WindowProxyController::setWindowProxies):
(WebCore::WindowProxyController::windowProxy):
(WebCore::WindowProxyController::existingWindowProxy const):
(WebCore::WindowProxyController::globalObject):
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
- page/AbstractFrame.cpp:
(WebCore::AbstractFrame::AbstractFrame):
- page/AbstractFrame.h:
(WebCore::AbstractFrame::windowProxyController):
(WebCore::AbstractFrame::windowProxyController const):
Source/WebKit:
Split WindowProxy handling out of ScriptController and into a new class owned by AbstractFrame.
RemoteFrames do not need a ScriptController but do need to maintain WindowProxies.
This is work towards fixing Bug 184515.
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::windowScriptNPObject):
Source/WebKitLegacy/mac:
Split WindowProxy handling out of ScriptController and into a new class owned by AbstractFrame.
RemoteFrames do not need a ScriptController but do need to maintain WindowProxies.
This is work towards fixing Bug 184515.
- Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
- WebView/WebFrame.mm:
(-[WebFrame _attachScriptDebugger]):
Source/WTF:
Add isEmpty() convenience method to SizedIteratorRange.
- wtf/IteratorRange.h:
(WTF::SizedIteratorRange::isEmpty const):
- 11:40 AM Changeset in webkit [230642] by
-
- 2 edits in trunk/Tools
Rebaseline LayoutReloaded patch file (collectRenderersWithNeedsLayout).
- LayoutReloaded/misc/LayoutReloadedWebKit.patch:
- 11:11 AM Changeset in webkit [230641] by
-
- 2 edits in trunk/Tools
Boot fewer simulators in CI/EWS machines
https://bugs.webkit.org/show_bug.cgi?id=184594
<rdar://problem/39188082>
Reviewed by Alexey Proskuryakov.
This is a temporary workaround fro <rdar://problem/39393590>.
- Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager): Treat simulators as taking 6 gigs instead of 2.
- 11:04 AM Changeset in webkit [230640] by
-
- 22 edits1 copy1 add in trunk
Introduce SuspendedPageProxy to keep old web processes around after their WebPageProxy has been swapped to a new one.
https://bugs.webkit.org/show_bug.cgi?id=184559
Reviewed by Alex Christensen.
Source/WebCore:
Covered by new API test.
WebCore changes rework the meaning of a "ForSuspension" policy to simply navigate the page to about:blank.
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::redirectReceived):
(WebCore::DocumentLoader::willSendRequest):
(WebCore::DocumentLoader::startLoadingMainResource):
- loader/DocumentLoader.h:
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::init):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
Source/WebKit:
Before this patch, when a WebPageProxy navigates and is swapped to a new process, the old process almost always goes away.
This is not desirable for a few reasons:
1 - We can't keep the PageCache working for back/forward scenarios
2 - We throw away a "foo.com" web process, meaning the next time we need to host a "foo.com" web page we have to launch
and initialize a new web process.
This patch adds a SuspendedPageProxy object to keep around the old web process and to manage communication with it.
For now, a WebPageProxy keeps exactly one "suspended page" representing the most recently visited page and its process.
Additionally, that process is never reused.
So no benefit is achieved with this patch, but it enables future benefits.
- Platform/Logging.h:
- Shared/WebBackForwardListItem.cpp:
(WebKit::WebBackForwardListItem::setSuspendedPage):
- Shared/WebBackForwardListItem.h:
New object to represent the state of a WebPageProxy in an old web process that is not currently hosting the view.
- UIProcess/SuspendedPageProxy.cpp: Added.
(WebKit::SuspendedPageProxy::SuspendedPageProxy):
(WebKit::SuspendedPageProxy::~SuspendedPageProxy):
(WebKit::SuspendedPageProxy::webProcessDidClose):
(WebKit::SuspendedPageProxy::didFinishLoad):
(WebKit::SuspendedPageProxy::didReceiveMessage):
(WebKit::SuspendedPageProxy::loggingString const):
- UIProcess/SuspendedPageProxy.h: Copied from Source/WebKit/Platform/Logging.h.
(WebKit::SuspendedPageProxy::create):
(WebKit::SuspendedPageProxy::page const):
(WebKit::SuspendedPageProxy::process const):
(WebKit::SuspendedPageProxy::item const):
(WebKit::SuspendedPageProxy::finishedSuspending const):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::reattachToWebProcess):
(WebKit::WebPageProxy::attachToProcessForNavigation):
(WebKit::WebPageProxy::maybeCreateSuspendedPage):
(WebKit::WebPageProxy::suspendedPageProcessClosed):
(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::didFinishLoadForFrame):
- UIProcess/WebPageProxy.h:
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::suspendWebPageProxy):
(WebKit::WebProcessProxy::suspendedPageWasDestroyed):
(WebKit::WebProcessProxy::removeWebPage):
(WebKit::WebProcessProxy::didReceiveMessage): Optionally pass WebPageProxy messages along to SuspendedPageProxy objects.
(WebKit::WebProcessProxy::didClose):
(WebKit::WebProcessProxy::maybeShutDown):
(WebKit::WebProcessProxy::canTerminateChildProcess): Don't terminate child processes if they still have suspended pages.
- UIProcess/WebProcessProxy.h:
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setIsSuspended):
- WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::isSuspended const): For now, used only by WebProcess::updateActivePages. Will have more uses soon.
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebProcess.messages.in:
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::updateActivePages): Allow the UIProcess to request an update of the web processes user visible name.
Source/WTF:
- wtf/DebugUtilities.h:
(WTF::debugString): Add a debug utility to easily construct a "const char*" that is released after a spin of the run loop.
This greatly eases uses our String classes and functions inside of "%s" style environments like printf and LOG.
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- 10:37 AM Changeset in webkit [230639] by
-
- 4 edits in trunk
input.webkitEntries does not work as expected when folder contains accented chars
https://bugs.webkit.org/show_bug.cgi?id=184517
<rdar://problem/39265537>
Reviewed by Alex Christensen.
Source/WebCore:
Use String::fromUTF8() to construct a WTF String from the char* returned by
dirname() in FileSystem::directoryName(). Previously, we were just calling
the String constructor, which would treat the input as latin 1 instead of
UTF-8.
Change is covered by an API test rather than a layout test due to file versioning
limitations.
- platform/posix/FileSystemPOSIX.cpp:
(WebCore::FileSystem::directoryName):
Tools:
Add API test coverage.
- TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
(TestWebKitAPI::TEST_F):
- 10:31 AM Changeset in webkit [230638] by
-
- 2 edits in trunk/Tools
Update my emails ordering in contributors.json
https://bugs.webkit.org/show_bug.cgi?id=184587
Patch by Thibault Saunier <tsaunier@igalia.com> on 2018-04-13
Rubber-stamped by Philippe Normand.
Bugzilla seems to pick up tsaunier@igalia.com which is not the one I use there.
- Scripts/webkitpy/common/config/contributors.json:
- 10:01 AM Changeset in webkit [230637] by
-
- 15 edits in trunk/Source/WebCore
[WebCore] Use @getByIdDirectPrivate / @putByIdDirectPrivate in WebCore JS
https://bugs.webkit.org/show_bug.cgi?id=184401
Rubber stamped by Saam Barati.
Apply bug 183970 changes to WebCore JS too. This offers solid type checking
with @getByIdDirectPrivate().
- Modules/mediastream/RTCPeerConnection.js:
(initializeRTCPeerConnection):
(getLocalStreams):
(getStreamById):
(addStream):
- Modules/mediastream/RTCPeerConnectionInternals.js:
(isRTCPeerConnection):
- Modules/streams/ReadableByteStreamController.js:
(enqueue):
(error):
(close):
(getter.byobRequest):
- Modules/streams/ReadableByteStreamInternals.js:
(privateInitializeReadableStreamBYOBReader):
(privateInitializeReadableByteStreamController):
(privateInitializeReadableStreamBYOBRequest):
(isReadableByteStreamController):
(isReadableStreamBYOBRequest):
(isReadableStreamBYOBReader):
(readableByteStreamControllerCancel):
(readableByteStreamControllerError):
(readableByteStreamControllerClose):
(readableByteStreamControllerClearPendingPullIntos):
(readableByteStreamControllerGetDesiredSize):
(readableStreamHasBYOBReader):
(readableStreamHasDefaultReader):
(readableByteStreamControllerHandleQueueDrain):
(readableByteStreamControllerPull):
(readableByteStreamControllerShouldCallPull):
(readableByteStreamControllerCallPullIfNeeded):
(readableByteStreamControllerEnqueue):
(readableByteStreamControllerEnqueueChunk):
(readableByteStreamControllerRespondWithNewView):
(readableByteStreamControllerRespond):
(readableByteStreamControllerRespondInternal):
(readableByteStreamControllerRespondInReadableState):
(readableByteStreamControllerRespondInClosedState):
(readableByteStreamControllerProcessPullDescriptors):
(readableByteStreamControllerFillDescriptorFromQueue):
(readableByteStreamControllerShiftPendingDescriptor):
(readableByteStreamControllerInvalidateBYOBRequest):
(readableByteStreamControllerCommitDescriptor):
(readableStreamFulfillReadIntoRequest):
(readableByteStreamControllerPullInto):
(readableStreamAddReadIntoRequest):
- Modules/streams/ReadableStream.js:
(initializeReadableStream):
(pipeThrough):
- Modules/streams/ReadableStreamBYOBReader.js:
(cancel):
(read):
(releaseLock):
(getter.closed):
- Modules/streams/ReadableStreamBYOBRequest.js:
(respond):
(respondWithNewView):
(getter.view):
- Modules/streams/ReadableStreamDefaultController.js:
(error):
- Modules/streams/ReadableStreamDefaultReader.js:
(cancel):
(read):
(releaseLock):
(getter.closed):
- Modules/streams/ReadableStreamInternals.js:
(privateInitializeReadableStreamDefaultReader):
(readableStreamReaderGenericInitialize):
(readableStreamDefaultControllerError):
(readableStreamPipeTo):
(readableStreamTee):
(isReadableStream):
(isReadableStreamDefaultReader):
(isReadableStreamDefaultController):
(readableStreamError):
(readableStreamDefaultControllerCallPullIfNeeded):
(readableStreamDefaultControllerGetDesiredSize):
(readableStreamReaderGenericCancel):
(readableStreamCancel):
(readableStreamDefaultControllerCancel):
(readableStreamDefaultControllerPull):
(readableStreamDefaultControllerClose):
(readableStreamClose):
(readableStreamFulfillReadRequest):
(readableStreamDefaultReaderRead):
(readableStreamAddReadRequest):
(isReadableStreamDisturbed):
(readableStreamReaderGenericRelease):
(readableStreamDefaultControllerCanCloseOrEnqueue):
(privateInitializeReadableStreamDefaultController): Deleted.
- Modules/streams/StreamInternals.js:
(validateAndNormalizeQueuingStrategy):
- Modules/streams/WritableStream.js:
(initializeWritableStream):
(abort):
(close):
(write):
(getter.closed):
(getter.ready):
(getter.state):
- Modules/streams/WritableStreamInternals.js:
(isWritableStream):
(syncWritableStreamStateWithQueue):
(errorWritableStream):
(callOrScheduleWritableStreamAdvanceQueue):
- bindings/js/JSDOMBindingInternals.js:
(mapLikeForEach):
- 9:54 AM Changeset in webkit [230636] by
-
- 3 edits in trunk/Source/WebKit
Inline NetworkLoad::sharedWillSendRedirectedRequest() into NetworkLoad::willPerformHTTPRedirection()
https://bugs.webkit.org/show_bug.cgi?id=184593
Reviewed by Alex Christensen.
Following the removal of the pre-Network Session code in r227364, NetworkLoad::sharedWillSendRedirectedRequest()
is only referenced from NetworkLoad::willPerformHTTPRedirection(). We should inline its
implementation into the NetworkLoad::willPerformHTTPRedirection(), remove a function call,
and the cognitive load to follow such a function call when reading the code.
No functionality changed. So, no new tests.
- NetworkProcess/NetworkLoad.cpp:
(WebKit::NetworkLoad::willPerformHTTPRedirection): Moved the implementation of NetworkLoad::sharedWillSendRedirectedRequest()
into this function.
(WebKit::NetworkLoad::sharedWillSendRedirectedRequest): Deleted. Moved its implementation
into NetworkLoad::willPerformHTTPRedirection().
- NetworkProcess/NetworkLoad.h:
- 9:48 AM Changeset in webkit [230635] by
-
- 3 edits in trunk/Source/WebKit
Inline NetworkLoad::sharedWillSendRedirectedRequest() into NetworkLoad::willPerformHTTPRedirection()
https://bugs.webkit.org/show_bug.cgi?id=184593
Reviewed by Alex Christensen.
Following the removal of the pre-Network Session code in r227364, NetworkLoad::sharedWillSendRedirectedRequest()
is only referenced from NetworkLoad::willPerformHTTPRedirection(). We should inline its
implementation into the NetworkLoad::willPerformHTTPRedirection(), remove a function call,
and the cognitive load to follow such a function call when reading the code.
No functionality changed. So, no new tests.
- NetworkProcess/NetworkLoad.cpp:
(WebKit::NetworkLoad::willPerformHTTPRedirection): Moved the implementation of NetworkLoad::sharedWillSendRedirectedRequest()
into this function.
(WebKit::NetworkLoad::sharedWillSendRedirectedRequest): Deleted. Moved its implementation
into NetworkLoad::willPerformHTTPRedirection().
- NetworkProcess/NetworkLoad.h:
- 9:29 AM Changeset in webkit [230634] by
-
- 3 edits in trunk/Tools
[WPE] xkbcommon: ERROR: failed to add default include path /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesWPE/Root/share/X11/xkb
https://bugs.webkit.org/show_bug.cgi?id=184388
Reviewed by Carlos Alberto Lopez Perez.
Remove libxkbcommon from the JHBuild environment. We could alternatively add
xkeyboard-config, but there doesn't seem to be any need to build libxkbcommon because I do
not believe it depends on anything else in the JHBuild environment.
- wpe/install-dependencies:
- wpe/jhbuild.modules:
- 9:17 AM Changeset in webkit [230633] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r230468): Improper assertion firing under STP
<rdar://problem/39411676>
Unreviewed, rolling out an improper assertion.
I added an assertion in Bug 184322 that should not have been added. I did not notice that this
call stack was always used in builds where NSApp is still active. Builds where we stop relying
on AppKit runloops uses a different code path to shut down.
- Shared/mac/ChildProcessMac.mm:
(WebKit::ChildProcess::stopNSAppRunLoop):
- 9:02 AM Changeset in webkit [230632] by
-
- 37 edits8 deletes in trunk
[Web Animations] Turn CSS Animations and CSS Transitions as Web Animations on by default
https://bugs.webkit.org/show_bug.cgi?id=184569
<rdar://problem/38671301>
Reviewed by Jon Lee.
LayoutTests/imported/w3c:
This test now fails at a later assertion, so updating the expectation for it.
- web-platform-tests/web-animations/interfaces/Animatable/animate-expected.txt:
Source/WebCore:
We now set the CSS Animations and CSS Transitions as Web Animations flag on by default. To ensure that some remaining
tests pass with this flag on, we expose a way to get to a PseudoElement via a new internals.pseudoElement() method. This
allows tests that used internals.pauseAnimationAtTimeOnPseudoElement() and internals.pauseTransitionAtTimeOnPseudoElement()
to now work with the Web Animations API.
- page/RuntimeEnabledFeatures.h:
- testing/Internals.cpp:
(WebCore::Internals::pseudoElement):
- testing/Internals.h:
- testing/Internals.idl:
Source/WebKit:
- Shared/WebPreferences.yaml:
Source/WebKitLegacy/mac:
- WebView/WebPreferences.mm:
Source/WebKitLegacy/win:
Make sure Web Animations and CSS Animations and CSS Transitions are enabled by default on Windows.
- WebPreferences.cpp:
Tools:
We set the default value for the CSS Animations and CSS Transitions as Web Animations flag to true
but override it to be false always in the LayoutTests/legacy-animation-engine directory.
- DumpRenderTree/TestOptions.h:
- DumpRenderTree/mac/DumpRenderTree.mm:
(shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference):
(runTest):
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
- WebKitTestRunner/TestOptions.cpp:
(WTR::isLegacyAnimationEngineTestPath):
(WTR::TestOptions::TestOptions):
- WebKitTestRunner/TestOptions.h:
LayoutTests:
- TestExpectations: A small number of tests regressed with the flag on, so we list them and have raised
bugs to fix them ASAP.
- animations/animation-direction-alternate-reverse-expected.txt:
- animations/animation-direction-alternate-reverse.html: This test was incorrect since it assumes that at the
end active boundary time we are using the end value whereas we are using the start value. Indeed, since the
fill-mode is "none", at the end of the active time, the progress is null per the Web Animations spec.
- animations/animation-hit-test-transform.html: Stop using the internals method.
- animations/animation-internals-api-expected.txt: Removed.
- animations/animation-internals-api-multiple-keyframes-expected.txt: Removed.
- animations/animation-internals-api-multiple-keyframes.html: Removed. This test only tests an internals method
that is no longer relevant for the new animation engine, but preserved for compatibility with legacy tests.
- animations/animation-internals-api.html: Removed. This test only tests an internals method that is no longer
relevant for the new animation engine, but preserved for compatibility with legacy tests.
- animations/big-rotation-expected.txt:
- animations/big-rotation.html: Here again we are correcting a test which made the wrong assumption about the
value generated at the end active boundary time.
- animations/duplicated-keyframes-name.html: We make the animation fill forwards to check that we are using
the correct end value for an animation with multiple 100% keyframe.
- animations/fill-forwards-end-state.html: Same as previous test.
- animations/fill-mode-forwards-zero-duration-expected.txt:
- animations/fill-mode-forwards-zero-duration.html: This test should seek after its delay + duration, so we test
at 3s instead of 1s. This is due to a behavior difference between internals.pauseAnimationAtTimeOnElement() and
its replacement.
- fast/css-generated-content/pseudo-animation.html: Use internals.pseudoElement() and the Web Animations API rather
than internals.pauseAnimationAtTimeOnPseudoElement().
- fast/css-generated-content/pseudo-transition.html: Use internals.pseudoElement() and the Web Animations API rather
than internals.pauseTransitionAtTimeOnPseudoElement().
- platform/ios/TestExpectations:
- platform/win/TestExpectations: Remove references to tests that we are removing.
- transitions/remove-transition-style.html: Use document.getAnimations() to figure out how many animations are running.
- transitions/transition-drt-api-delay-expected.txt: Removed.
- transitions/transition-drt-api-delay.html: Removed. This test only tests an internals method that is no longer
relevant for the new animation engine, but preserved for compatibility with legacy tests.
- transitions/transition-drt-api-expected.txt: Removed.
- transitions/transition-drt-api.html: Removed. This test only tests an internals method that is no longer
relevant for the new animation engine, but preserved for compatibility with legacy tests.
- transitions/transition-hit-test-transform.html: Stop using internals.pauseTransitionAtTimeOnElement().
- transitions/zero-duration-with-non-zero-delay-end.html: Use the Web Animations API instead of internals.numberOfActiveAnimations().
- 9:01 AM WebKitGTK/2.20.x edited by
- (diff)
- 8:57 AM WebKitGTK/2.20.x edited by
- (diff)
- 8:46 AM Changeset in webkit [230631] by
-
- 2 edits in trunk/LayoutTests
Mark some legacy-animation-engine tests as failures on Windows.
https://bugs.webkit.org/show_bug.cgi?id=184482
Unreviewed test gardening.
- platform/win/TestExpectations:
- 8:19 AM Changeset in webkit [230630] by
-
- 5 edits in trunk/Source/WebCore
[WebVR][OpenVR] Implement requestPresent()/exitPresent() and getLayers()
https://bugs.webkit.org/show_bug.cgi?id=184530
Reviewed by Žan Doberšek.
WebVR apps should invoke requestPresent() to start presenting contents of a VRLayerInit
(right now a HTML canvas with a WebGL context) on the VRDisplay. This request might fail for
a variety of reasons and can be eventually cancelled with exitPresent(). Once we are
presenting we could access the presenting layers (right now just one) with getLayers().
Note that we are not presenting anything to the HMD yet, that will be done later in a follow
up patch.
I took the chance to correct a mistak in the VRDisplayCapabilities object which has a method
that should be called maxLayers instead of maxLayer.
- Modules/webvr/VRDisplay.cpp:
(WebCore::VRDisplay::requestPresent):
(WebCore::VRDisplay::stopPresenting):
(WebCore::VRDisplay::exitPresent):
(WebCore::VRDisplay::getLayers const):
(WebCore::VRDisplay::isPresenting const): Deleted. Implemented in the header file.
- Modules/webvr/VRDisplay.h:
(WebCore::VRDisplay::isPresenting const):
- Modules/webvr/VRDisplayCapabilities.h:
(WebCore::VRDisplayCapabilities::maxLayers const): Renamed from maxLayer().
(WebCore::VRDisplayCapabilities::maxLayer const): Deleted.
- Modules/webvr/VRDisplayCapabilities.idl:
- 6:18 AM Changeset in webkit [230629] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION(r230627): [GTK][WPE] Possible deadlock when destroying the player in non AC mode
https://bugs.webkit.org/show_bug.cgi?id=184583
Reviewed by Carlos Garcia Campos.
In non AC mode, ensure that a deadlock can't happen when destroying MediaPlayerPrivateGStreamerBase.
Covered by existent tests.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::cancelRepaint):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
- 3:27 AM Changeset in webkit [230628] by
-
- 2 edits in trunk/LayoutTests
[GTK][GStreamer] Mark a few crashing tests since playbin3 was made available
Unreviewed gardening
- platform/gtk/TestExpectations:
- 3:09 AM Changeset in webkit [230627] by
-
- 3 edits in trunk/Source/WebCore
[GTK] [gstreamer] video won't unpause when built with -DUSE_GSTREAMER_GL=OFF
https://bugs.webkit.org/show_bug.cgi?id=183362
Reviewed by Carlos Garcia Campos.
Remove the drawCancelled flag and use a new one to indicate that the player is being destroyed.
That new flag is only enabled on destruction and it's not modified by cancelRepaint(), which
can be used to handle the pause event without avoiding future renderings. Also cancelRepaint()
has only effect when not in AC mode.
Covered by existent tests.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::cancelRepaint):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
- 2:05 AM Changeset in webkit [230626] by
-
- 6 edits in trunk/Source/JavaScriptCore
[DFG] Remove duplicate 32bit ProfileType implementation
https://bugs.webkit.org/show_bug.cgi?id=184536
Reviewed by Saam Barati.
This patch removes duplicate 32bit ProfileType implementation by unifying 32/64 implementations.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileProfileType):
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::branchIfUndefined):
(JSC::AssemblyHelpers::branchIfNull):
- 1:50 AM Changeset in webkit [230625] by
-
- 40 edits2 moves in trunk/Source
[GStreamer] Convert GStreamerUtilities in GStreamerCommon and include the GStreamer smart pointer traits
https://bugs.webkit.org/show_bug.cgi?id=184533
Reviewed by Philippe Normand.
Renamed GStreamerUtilities* files into GStreamerCommon* and
modified files including them accordingly. Include
GRefPtrGStreamer.h and GUniquePtrGStreamer.h in GStreamerCommon.h
to avoid problems destroying objects when those files are
forgotten to be included.
Source/WebCore:
- Modules/webaudio/AudioContext.cpp:
- platform/GStreamer.cmake:
- platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
- platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
- platform/graphics/gstreamer/GStreamerCommon.cpp: Renamed from Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp.
- platform/graphics/gstreamer/GStreamerCommon.h: Renamed from Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.h.
- platform/graphics/gstreamer/ImageGStreamer.h:
- platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
- platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
- platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
- platform/graphics/gstreamer/MediaSampleGStreamer.cpp:
- platform/graphics/gstreamer/MediaSampleGStreamer.h:
- platform/graphics/gstreamer/TextCombinerGStreamer.cpp:
- platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
- platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
- platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
- platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
- platform/graphics/gstreamer/eme/GStreamerEMEUtilities.cpp:
- platform/graphics/gstreamer/eme/GStreamerEMEUtilities.h:
- platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp:
- platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp:
- platform/graphics/gstreamer/mse/AppendPipeline.cpp:
- platform/graphics/gstreamer/mse/AppendPipeline.h:
- platform/graphics/gstreamer/mse/GStreamerMediaDescription.cpp:
- platform/graphics/gstreamer/mse/GStreamerMediaDescription.h:
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
- platform/graphics/gstreamer/mse/MediaSourceClientGStreamerMSE.h:
- platform/graphics/gstreamer/mse/PlaybackPipeline.cpp:
- platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp:
- platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:
- platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.h:
Source/WebKit:
- UIProcess/gtk/WebProcessPoolGtk.cpp:
- UIProcess/wpe/WebProcessPoolWPE.cpp:
- WebProcess/soup/WebProcessSoup.cpp:
- 12:26 AM Changeset in webkit [230624] by
-
- 3 edits in trunk/Tools
[GLIB] Tests WTF_RefPtr.ReleaseInNonMainThread and WTF_RefPtr.ReleaseInNonMainThreadDestroyInMainThread are crashing since they were added
https://bugs.webkit.org/show_bug.cgi?id=184531
Reviewed by Michael Catanzaro.
It's not a bug in WebKit, but in the tests. The problem is that those tests are using RunLoop::main() but main
run loop hasn't been initialized. ReleaseInNonMainThread doesn't really need to initialize the main run loop if
we change Util::run() to always use RunLop::current() instead of RunLoop::main(). But
ReleaseInNonMainThreadDestroyInMainThread ends up scheduling a task to the main thread, and the generic
implementation fo that uses RunLoop::main(), so we need to initialize the main loop in this case.
- TestWebKitAPI/Tests/WTF/RefPtr.cpp:
(TestWebKitAPI::TEST): Call RunLoop::initializeMainRunLoop().
- TestWebKitAPI/glib/UtilitiesGLib.cpp:
(TestWebKitAPI::Util::run): Use RunLop::current() to stop the current run loop.
(TestWebKitAPI::Util::sleep): Ditto.