Timeline
Oct 28, 2017:
- 10:31 PM Changeset in webkit [224157] by
-
- 2 edits in trunk/LayoutTests
Make HTTPS WPT tests time out through testharness.js to get better error reports
https://bugs.webkit.org/show_bug.cgi?id=178982
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-28
Reviewed by Chris Dumez.
- resources/testharnessreport.js: extending to tests run over HTTPS WPT port 9443.
- 8:02 PM Changeset in webkit [224156] by
-
- 74 edits1 copy4 moves287 adds26 deletes in trunk/LayoutTests
Rebase WPT tests up to a1c0107
https://bugs.webkit.org/show_bug.cgi?id=178589
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-28
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
- resources/TestRepositories:
- resources/import-expectations.json:
- resources/resource-files.json:
- web-platform-tests: Updated.
LayoutTests:
- TestExpectations:
- platform/mac-wk1/TestExpectations:
- platform/mac-wk1/imported/w3c/web-platform-tests/XMLHttpRequest/xmlhttprequest-sync-default-feature-policy.sub-expected.txt: Added.
- 7:45 PM Changeset in webkit [224155] by
-
- 6 edits3 deletes in trunk
[iOS] Unify Font::platformCharWidthInit() with macOS
https://bugs.webkit.org/show_bug.cgi?id=178951
<rdar://problem/7848198>
Reviewed by Zalan Bujtas.
Source/WebCore:
The only reason these codepaths are different is because historically this codepath
didn't work with GS fonts (which we don't use anymore).
Tests: fast/forms/search-styled.html
fast/forms/text-control-intrinsic-widths.html
fast/forms/textarea-width.html
- platform/graphics/cocoa/FontCocoa.mm:
(WebCore::Font::platformCharWidthInit):
LayoutTests:
Updating expected results.
- platform/ios-wk2/fast/forms/search-styled-expected.txt: Removed.
- platform/ios-wk2/fast/forms/text-control-intrinsic-widths-expected.txt: Removed.
- platform/ios-wk2/fast/forms/textarea-width-expected.txt: Removed.
- platform/ios/fast/forms/search-styled-expected.txt:
- platform/ios/fast/forms/text-control-intrinsic-widths-expected.txt:
- platform/ios/fast/forms/textarea-width-expected.txt:
- 11:24 AM Changeset in webkit [224154] by
-
- 9 edits1 move3 adds2 deletes in trunk/Source/WebKit
[Settings] Generate more of the WebKit preferences code
https://bugs.webkit.org/show_bug.cgi?id=178945
Reviewed by Chris Dumez.
Generate WebPreferencesKeys.{h,cpp} and WebPreferencesStoreDefaultsMap.cpp
- CMakeLists.txt:
- DerivedSources.make:
- WebKit.xcodeproj/project.pbxproj:
- Scripts/GeneratePreferences.rb:
Generate new files.
- Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb:
Update include.
- Scripts/PreferencesTemplates/WebPreferencesKeys.cpp.erb: Added.
- Scripts/PreferencesTemplates/WebPreferencesKeys.h.erb: Added.
- Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb: Added.
Add template files for new generated files.
- Shared/WebPreferencesDefaultValues.h: Copied from Source/WebKit/Shared/WebPreferencesDefinitionsBase.h.
- Shared/WebPreferencesDefinitionsBase.h:
Renamed WebPreferencesDefinitionsBase.h to WebPreferencesDefaultValues.h to better indicate what it is.
- Shared/WebPreferencesKeys.cpp: Removed.
- Shared/WebPreferencesKeys.h: Removed.
Replaced with generated versions.
- Shared/WebPreferencesStore.cpp:
(WebKit::defaults): Deleted.
- Shared/WebPreferencesStore.h:
Replace macro driven defaults map with generated WebPreferencesStoreDefaultsMap.cpp.
- 10:40 AM Changeset in webkit [224153] by
-
- 6 edits3 adds in trunk
self.ExtendableEvent / Client / Clients / WindowClient do not exist in a Service Worker
https://bugs.webkit.org/show_bug.cgi?id=178976
Reviewed by Sam Weinig.
Source/WebCore:
Test: http/tests/workers/service/ServiceWorkerGlobalScope-properties.html
- workers/service/ExtendableEvent.idl:
- workers/service/FetchEvent.idl:
Drop [Exposed=Worker] as there is already [Exposed=ServiceWorker] and
ServiceWorkerGlobalScope inherits from WorkerGlobalScope. This is redundant
and we would hit assertions and adding the global constructors at runtime
when the feature is enabled, because the property already exists.
Source/WebKit:
Actually enable the Service Worker RuntimeEnabledFeature in the Service Worker
WebProcess.
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
(WebKit::WebSWContextManagerConnection::updatePreferences):
LayoutTests:
Add layout test coverage.
- http/tests/workers/service/ServiceWorkerGlobalScope-properties-expected.txt: Added.
- http/tests/workers/service/ServiceWorkerGlobalScope-properties.html: Added.
- http/tests/workers/service/resources/ServiceWorkerGlobalScope-properties-worker.js: Added.
- 10:38 AM Changeset in webkit [224152] by
-
- 6 edits in trunk/LayoutTests
Update testharness.js to work around our lack of support for MessagePort in service workers
https://bugs.webkit.org/show_bug.cgi?id=178977
Reviewed by Sam Weinig.
Update testharness.js to work around our lack of support for MessagePort in service workers, similarly
to what was already done for Edge.
- web-platform-tests/resources/testharness.js:
- 10:18 AM Changeset in webkit [224151] by
-
- 4 edits in trunk/Tools
[WPE] Build gst-plugins-base without pango support
https://bugs.webkit.org/show_bug.cgi?id=178918
Reviewed by Carlos Garcia Campos.
We need to build gst-plugins-base without pango support for WPE. Let's use JHBuild
conditions so we can make platform-specific changes in the shared GStreamer moduleset.
- gstreamer/jhbuild.modules:
- gtk/jhbuildrc:
- wpe/jhbuildrc:
- 8:24 AM Changeset in webkit [224150] by
-
- 34 edits2 adds in trunk/Source
[FrameView::layout cleanup] Move core layout logic to a separate class.
https://bugs.webkit.org/show_bug.cgi?id=178771
<rdar://problem/35166542>
Reviewed by Simon Fraser.
Move layout code out from FrameView to LayoutContext.
Source/WebCore:
LayoutContext holds all the layout related logic (scheduling, needsLayout, handling layout states),
while scrolling, view sizing methods stay in FrameView.
Having a dedicated LayoutContext allows to structure the code better.
Covered by existing tests.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- accessibility/AXObjectCache.cpp:
(WebCore::rendererNeedsDeferredUpdate):
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::updateBackingStore):
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement const):
(WebCore::AccessibilityRenderObject::layoutCount const):
- dom/Document.cpp:
(WebCore::Document::setVisualUpdatesAllowed):
(WebCore::Document::resolveStyle):
(WebCore::Document::updateStyleIfNeeded):
(WebCore::Document::updateLayout):
(WebCore::Document::updateLayoutIfDimensionsOutOfDate):
(WebCore::Document::implicitClose):
(WebCore::Document::isLayoutTimerActive):
- dom/Element.cpp:
(WebCore::Element::absoluteEventHandlerBounds):
- editing/FrameSelection.cpp:
(WebCore::FrameSelection::setSelection):
- html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::renderWidgetLoadingPlugin const):
- html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::didAttachRenderers):
- inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::update):
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopForUserCancel):
- page/Frame.cpp:
(WebCore::Frame::setView):
(WebCore::Frame::clearTimers):
(WebCore::Frame::setPageAndTextZoomFactors):
(WebCore::Frame::resumeActiveDOMObjectsAndAnimations):
- page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::~FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::resetScrollbars):
(WebCore::FrameView::didFirstLayout const):
(WebCore::FrameView::willDestroyRenderTree):
(WebCore::FrameView::didDestroyRenderTree):
(WebCore::FrameView::setContentsSize):
(WebCore::FrameView::calculateScrollbarModesForLayout):
(WebCore::FrameView::updateCompositingLayersAfterStyleChange):
(WebCore::FrameView::topContentInsetDidChange):
(WebCore::FrameView::forceLayoutParentViewIfNeeded):
(WebCore::FrameView::adjustScrollbarsForLayout):
(WebCore::FrameView::willDoLayout): This takes care of the view related task right before entering render tree layout.
(WebCore::FrameView::didLayout): post layout tasks.
(WebCore::FrameView::shouldDeferScrollUpdateAfterContentSizeChange):
(WebCore::FrameView::updateLayoutViewport):
(WebCore::FrameView::maintainScrollPositionAtAnchor):
(WebCore::FrameView::updateLayerPositionsAfterScrolling):
(WebCore::FrameView::updateCompositingLayersAfterScrolling):
(WebCore::FrameView::availableContentSizeChanged):
(WebCore::FrameView::updateContentsSize):
(WebCore::FrameView::needsLayout const):
(WebCore::FrameView::setNeedsLayout):
(WebCore::FrameView::scheduleSelectionUpdate):
(WebCore::FrameView::updateEmbeddedObjects):
(WebCore::FrameView::flushAnyPendingPostLayoutTasks):
(WebCore::FrameView::flushPostLayoutTasksQueue):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::sendResizeEventIfNeeded):
(WebCore::FrameView::autoSizeIfEnabled):
(WebCore::FrameView::paintControlTints):
(WebCore::FrameView::paintContents):
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
(WebCore::FrameView::enableAutoSizeMode):
(WebCore::FrameView::forceLayout):
(WebCore::SubtreeLayoutStateMaintainer::SubtreeLayoutStateMaintainer): Deleted.
(WebCore::SubtreeLayoutStateMaintainer::~SubtreeLayoutStateMaintainer): Deleted.
(WebCore::SubtreeLayoutStateMaintainer::shouldDisableLayoutStateForSubtree): Deleted.
(): Deleted.
(WebCore::RenderTreeNeedsLayoutChecker::~RenderTreeNeedsLayoutChecker): Deleted.
(WebCore::applyTextSizingIfNeeded): Deleted.
(WebCore::FrameView::handleLayoutWithFrameFlatteningIfNeeded): Deleted.
(WebCore::FrameView::updateStyleForLayout): Deleted.
(WebCore::FrameView::canPerformLayout const): Deleted.
(WebCore::FrameView::layout): Deleted.
(WebCore::FrameView::runOrSchedulePostLayoutTasks): Deleted.
(WebCore::FrameView::convertSubtreeLayoutToFullLayout): Deleted.
(WebCore::FrameView::layoutTimerFired): Deleted.
(WebCore::FrameView::scheduleRelayout): Deleted.
(WebCore::isObjectAncestorContainerOf): Deleted.
(WebCore::FrameView::scheduleRelayoutOfSubtree): Deleted.
(WebCore::FrameView::layoutPending const): Deleted.
(WebCore::FrameView::unscheduleRelayout): Deleted.
(WebCore::FrameView::startLayoutAtMainFrameViewIfNeeded): Deleted.
- page/FrameView.h:
- page/LayoutContext.cpp: Added.
(WebCore::isObjectAncestorContainerOf):
(WebCore::SubtreeLayoutStateMaintainer::SubtreeLayoutStateMaintainer):
(WebCore::SubtreeLayoutStateMaintainer::~SubtreeLayoutStateMaintainer):
(WebCore::SubtreeLayoutStateMaintainer::shouldDisableLayoutStateForSubtree):
(WebCore::RenderTreeNeedsLayoutChecker::~RenderTreeNeedsLayoutChecker):
(WebCore::LayoutScope::LayoutScope):
(WebCore::LayoutScope::~LayoutScope):
(WebCore::LayoutContext::LayoutContext):
(WebCore::LayoutContext::layout):
(WebCore::LayoutContext::runOrScheduleAsynchronousTasks):
(WebCore::LayoutContext::runAsynchronousTasks):
(WebCore::LayoutContext::flushAsynchronousTasks):
(WebCore::LayoutContext::reset):
(WebCore::LayoutContext::needsLayout const):
(WebCore::LayoutContext::setNeedsLayout):
(WebCore::LayoutContext::enableSetNeedsLayout):
(WebCore::LayoutContext::disableSetNeedsLayout):
(WebCore::LayoutContext::scheduleLayout):
(WebCore::LayoutContext::unscheduleLayout):
(WebCore::LayoutContext::scheduleSubtreeLayout):
(WebCore::LayoutContext::layoutTimerFired):
(WebCore::LayoutContext::convertSubtreeLayoutToFullLayout):
(WebCore::LayoutContext::setSubtreeLayoutRoot):
(WebCore::LayoutContext::canPerformLayout const):
(WebCore::LayoutContext::applyTextSizingIfNeeded):
(WebCore::LayoutContext::updateStyleForLayout):
(WebCore::LayoutContext::handleLayoutWithFrameFlatteningIfNeeded):
(WebCore::LayoutContext::startLayoutAtMainFrameViewIfNeeded):
(WebCore::LayoutContext::frame const):
(WebCore::LayoutContext::view const):
(WebCore::LayoutContext::renderView const):
(WebCore::LayoutContext::document const):
- page/LayoutContext.h: Added.
(WebCore::LayoutContext::startDisallowingLayout):
(WebCore::LayoutContext::endDisallowingLayout):
(WebCore::LayoutContext::layoutPhase const):
(WebCore::LayoutContext::isLayoutNested const):
(WebCore::LayoutContext::layoutCount const):
(WebCore::LayoutContext::isLayoutPending const):
(WebCore::LayoutContext::isInLayout const):
(WebCore::LayoutContext::isInRenderTreeLayout const):
(WebCore::LayoutContext::inPaintableState const):
(WebCore::LayoutContext::subtreeLayoutRoot const):
(WebCore::LayoutContext::clearSubtreeLayoutRoot):
(WebCore::LayoutContext::resetFirstLayoutFlag):
(WebCore::LayoutContext::didFirstLayout const):
(WebCore::LayoutContext::setNeedsFullRepaint):
(WebCore::LayoutContext::needsFullRepaint const):
(WebCore::LayoutContext::layoutDisallowed const):
(WebCore::LayoutContext::isLayoutSchedulingEnabled const):
(WebCore::LayoutContext::inAsynchronousTasks const):
- page/Page.cpp:
(WebCore::Page::setPageScaleFactor):
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::insertPositionedObject):
- rendering/RenderBox.cpp:
(WebCore::RenderBox::imageChanged):
(WebCore::RenderBox::computeLogicalWidthInFragment const):
- rendering/RenderElement.cpp:
(WebCore::RenderElement::clearSubtreeLayoutRootIfNeeded const):
(WebCore::RenderElement::checkForRepaintDuringLayout const):
- rendering/RenderFrameBase.cpp:
(WebCore::RenderFrameBase::performLayoutWithFlattening):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollTo):
- rendering/RenderObject.cpp:
(WebCore::scheduleRelayoutForSubtree):
- rendering/RenderTreeAsText.cpp:
(WebCore::write):
- rendering/RenderVideo.cpp:
(WebCore::RenderVideo::updatePlayer):
- rendering/RenderView.h:
- rendering/RenderWidget.cpp:
(WebCore::RenderWidget::updateWidgetPosition):
- svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::draw):
- testing/Internals.cpp:
(WebCore::Internals::layoutCount const):
Source/WebKitLegacy/mac:
- WebView/WebClipView.mm:
(-[WebClipView _immediateScrollToPoint:]):
- WebView/WebFrame.mm:
(-[WebFrame layoutCount]):
Source/WebKitLegacy/win:
- WebFrame.cpp:
(WebFrame::layout):
- 7:51 AM Changeset in webkit [224149] by
-
- 2 edits in trunk/Source/WebKit
Make postprocess-framework-headers.sh a little easier to read
https://bugs.webkit.org/show_bug.cgi?id=178971
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-10-28
Reviewed by Sam Weinig.
- mac/postprocess-framework-headers.sh:
- 7:36 AM Changeset in webkit [224148] by
-
- 3 edits in trunk/Source/WebCore
Cleanup PageDebuggable
https://bugs.webkit.org/show_bug.cgi?id=178972
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-10-28
Reviewed by Sam Weinig.
- page/PageDebuggable.cpp:
(WebCore::PageDebuggable::PageDebuggable):
- page/PageDebuggable.h:
- 7:35 AM Changeset in webkit [224147] by
-
- 13 edits1 copy in trunk/Source/WebCore
Extract a WorkerDebuggerProxy interface out of WorkerReportingProxy
https://bugs.webkit.org/show_bug.cgi?id=178975
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-10-28
Reviewed by Sam Weinig.
No new tests, just refactoring.
- workers/WorkerDebuggerProxy.h:
- workers/WorkerReportingProxy.h:
- WebCore.xcodeproj/project.pbxproj:
Extract a method from WorkerReportingProxy to WorkerDebuggerProxy and
rename it to be more general.
- inspector/WorkerToPageFrontendChannel.h:
(WebCore::WorkerToPageFrontendChannel::sendMessageToFrontend):
- workers/DedicatedWorkerThread.cpp:
(WebCore::DedicatedWorkerThread::DedicatedWorkerThread):
- workers/DedicatedWorkerThread.h:
- workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
(WebCore::WorkerMessagingProxy::postMessageToDebugger):
(WebCore::WorkerMessagingProxy::postMessageToPageInspector): Deleted.
- workers/WorkerMessagingProxy.h:
- workers/WorkerThread.cpp:
(WebCore::WorkerThread::WorkerThread):
- workers/WorkerThread.h:
(WebCore::WorkerThread::workerDebuggerProxy const):
- workers/service/context/ServiceWorkerThread.cpp:
(WebCore::ServiceWorkerThread::ServiceWorkerThread):
- workers/service/context/ServiceWorkerThread.h:
- workers/service/context/ServiceWorkerThreadProxy.cpp:
(WebCore::ServiceWorkerThreadProxy::create):
(WebCore::ServiceWorkerThreadProxy::ServiceWorkerThreadProxy):
Include a WorkerDebuggerProxy alongside the other proxies.
Use the renamed debugger proxy method.
- 2:17 AM Changeset in webkit [224146] by
-
- 7 edits in trunk/Source/WebCore
Style::Scope::flushPendingUpdate() can replace the entire document in XSLTProcessor::createDocumentFromSource
https://bugs.webkit.org/show_bug.cgi?id=178715
<rdar://problem/35144665>
Reviewed by Brent Fulgham.
Apply XLS tranforms when a 0s timer fires or the document finishes parsing or loading whichever comes first
instead of in the middle of collecting a list of stylesheets.
- dom/Document.cpp:
(WebCore::Document::Document): Initialize the newly added timer.
(WebCore::Document::implicitClose): Apply any pending XSLT before we fire load events since some of the event
handlers may be expecting to see the document after XSLT had been applied.
(WebCore::Document::scheduleToApplyXSLTransforms): Added.
(WebCore::Document::applyPendingXSLTransformsNowIfScheduled): Added.
(WebCore::Document::applyPendingXSLTransformsTimerFired): Added. Moved the logic to apply XSL transforms from
Style::Scope::collectActiveStyleSheets, and merged applyXSLTransform into this function.
(WebCore::Document::applyXSLTransform): Deleted.
(WebCore::Document::finishedParsing): Apply XSLT right before updating the style. This is where used to apply
inline XSLT and it happens much earlier than implicitClose.
(WebCore::Document::suspendScheduledTasks): Suspend the XSLT timer.
(WebCore::Document::resumeScheduledTasks): Reschedule the XSLT timer if m_hasPendingXSLTransforms is set.
- dom/Document.h:
- dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::checkStyleSheet): Schedule XSLT in the document instead of flushing pending
stylesheets, which would have synchronously applied XSLT. We can't apply XSLT synchronously here because this
function can be called from a non-script-resilient call stack.
(WebCore::ProcessingInstruction::sheetLoaded): Ditto.
- style/StyleScope.cpp:
(WebCore::Style::Scope::collectXSLTransforms): Added.
(WebCore::Style::Scope::collectActiveStyleSheets): Removed the code to apply XSLT. Skip ProcessingInstructions
that applies XSLT. Also use RefPtr<StyleSheet> instead of a raw pointer to store StyleSheet.
- style/StyleScope.h:
- xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::doEnd): Apply any pending XSLTs synchronously here as the comment suggests.
Oct 27, 2017:
- 9:17 PM Changeset in webkit [224145] by
-
- 2 edits in branches/safari-604-branch/Source/WebKit
Cherry-pick r222004. rdar://problem/35225406
- 9:17 PM Changeset in webkit [224144] by
-
- 12 edits1 add in branches/safari-604-branch
Cherry-pick r221233. rdar://problem/35228663
- 8:49 PM Changeset in webkit [224143] by
-
- 4 edits1 add in trunk/Tools
[Win] Detect Visual Studio 2017 location
https://bugs.webkit.org/show_bug.cgi?id=175275
Patch by Stephan Szabo <stephan.szabo@sony.com> on 2017-10-27
Reviewed by Per Arne Vollan.
- Scripts/build-jsc:
- Scripts/build-webkit:
- Scripts/update-vswhere.py: Added.
- Scripts/webkitdirs.pm:
(pickCurrentVisualStudioInstallation):
(pickLegacyVisualStudioInstallation):
(visualStudioInstallDir):
(visualStudioInstallDirVSWhere):
(visualStudioInstallDirLegacy):
(visualStudioInstallDirFallback):
(msBuildInstallDir):
(visualStudioVersion):
(visualStudioVersionFromInstallDir):
(generateBuildSystemFromCMakeProject):
- 6:58 PM Changeset in webkit [224142] by
-
- 18 edits in trunk
Web Inspector: Canvas Tab: no way to see backtrace of where a canvas context was created
https://bugs.webkit.org/show_bug.cgi?id=178799
<rdar://problem/35175805>
Reviewed by Brian Burg.
Source/JavaScriptCore:
- inspector/protocol/Canvas.json:
Add optional
backtraceto Canvas type that is an array of Console.CallFrame.
Source/WebCore:
No new tests, updated existing tests.
- inspector/InspectorCanvas.h:
- inspector/InspectorCanvas.cpp:
(iterateCallFrames):
(WebCore::InspectorCanvas::buildObjectForCanvas):
(WebCore::InspectorCanvas::buildAction):
- inspector/InspectorCanvasAgent.cpp:
(WebCore::InspectorCanvasAgent::didCreateCanvasRenderingContext):
If the Canvas agent is enabled, generate a backtrace and send it to the frontend with the canvas.
We do not do this for canvases created before the agent is enabled for performance reasons.
Source/WebInspectorUI:
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Models/Canvas.js:
(WI.Canvas.fromPayload):
(WI.Canvas.prototype.get backtrace):
- UserInterface/Views/CanvasDetailsSidebarPanel.css:
(.sidebar > .panel.details.canvas .details-section.canvas-backtrace .call-frame):
- UserInterface/Views/CanvasDetailsSidebarPanel.js:
(WI.CanvasDetailsSidebarPanel.prototype.initialLayout):
(WI.CanvasDetailsSidebarPanel.prototype.layout):
(WI.CanvasDetailsSidebarPanel.prototype._refreshBacktraceSection):
- UserInterface/Views/ResourceIcons.css:
(.canvas > .icon):
(.canvas .icon): Deleted.
LayoutTests:
- inspector/canvas/create-context-2d-expected.txt:
- inspector/canvas/create-context-webgl-expected.txt:
- inspector/canvas/create-context-webgl2-expected.txt:
- inspector/canvas/create-context-webgpu-expected.txt:
- inspector/canvas/resources/create-context-utilities.js:
(TestPage.registerInitializer.sanitizeURL):
(TestPage.registerInitializer.awaitCanvasAdded):
Pretty-print backtrace when canvases are added to the page.
- 6:48 PM Changeset in webkit [224141] by
-
- 2 edits in trunk/Source/JavaScriptCore
[JSC] Tweak ES6 generator function to allow inlining
https://bugs.webkit.org/show_bug.cgi?id=178935
Reviewed by Saam Barati.
We optimize builtins' generator helper functions to allow them inlined in the caller side.
This patch adjust the layer between @generatorResume, next(), throw(), and return() to allow
them inlined in DFG.
baseline patched
spread-generator.es6 301.2637+-11.1011 260.5905+-14.2258 definitely 1.1561x faster
generator.es6 269.6030+-13.2435 148.8840+-6.7614 definitely 1.8108x faster
- builtins/GeneratorPrototype.js:
(globalPrivate.generatorResume):
(next):
(return):
(throw):
- 6:39 PM Changeset in webkit [224140] by
-
- 2 edits in trunk/Tools
Create watchlist for files related WebInspector Recording
https://bugs.webkit.org/show_bug.cgi?id=178965
Reviewed by Joseph Pecoraro.
- Scripts/webkitpy/common/config/watchlist:
- 6:05 PM Changeset in webkit [224139] by
-
- 2 edits in trunk/LayoutTests
Skip test http/tests/security/mixedContent/insecure-download-redirects-to-basic-auth-secure-download.https.html on OS X El Capitan
For now skip this test that was added in r224134 on OS X El Capitan. OS X El Capitan uses the
legacy NSURLDownload code path for downloads. This code path is not happy with the self-signed
certificate we use when running HTTPS tests. See <https://bugs.webkit.org/show_bug.cgi?id=155132>
for more details.
- platform/mac-elcapitan/TestExpectations:
- 6:03 PM Changeset in webkit [224138] by
-
- 15 edits in trunk/Source/JavaScriptCore
Bytecode liveness should live on UnlinkedCodeBlock so it can be shared amongst CodeBlocks
https://bugs.webkit.org/show_bug.cgi?id=178949
Reviewed by Keith Miller.
This patch stores BytecodeLiveness on UnlinkedCodeBlock instead of CodeBlock
so that we don't need to recompute liveness for the same UnlinkedCodeBlock
more than once. To do this, this patch solidifies the invariant that CodeBlock
linking can't do anything that would change the result of liveness. For example,
it can't introduce new locals. This invariant was met my JSC before, because we
didn't do anything in bytecode linking that would change liveness. However, it is
now a correctness requirement that we don't do anything that would change the
result of running liveness. To support this change, I've refactored BytecodeGraph
to not be tied to a CodeBlockType*. Things that perform liveness will pass in
CodeBlockType* and the instruction stream as needed. This means that we may
compute liveness with one CodeBlock*'s instruction stream, and then perform
queries on that analysis with a different CodeBlock*'s instruction stream.
This seems to be a 2% JSBench progression.
- bytecode/BytecodeGeneratorification.cpp:
(JSC::BytecodeGeneratorification::BytecodeGeneratorification):
(JSC::BytecodeGeneratorification::graph):
(JSC::BytecodeGeneratorification::storageForGeneratorLocal):
(JSC::GeneratorLivenessAnalysis::run):
(JSC::BytecodeGeneratorification::run):
- bytecode/BytecodeGraph.h:
(JSC::BytecodeGraph::BytecodeGraph):
(JSC::BytecodeGraph::codeBlock const): Deleted.
(JSC::BytecodeGraph::instructions): Deleted.
(JSC::BytecodeGraph<Block>::BytecodeGraph): Deleted.
- bytecode/BytecodeLivenessAnalysis.cpp:
(JSC::BytecodeLivenessAnalysis::BytecodeLivenessAnalysis):
(JSC::BytecodeLivenessAnalysis::getLivenessInfoAtBytecodeOffset):
(JSC::BytecodeLivenessAnalysis::computeFullLiveness):
(JSC::BytecodeLivenessAnalysis::computeKills):
(JSC::BytecodeLivenessAnalysis::dumpResults):
(JSC::BytecodeLivenessAnalysis::operandIsLiveAtBytecodeOffset): Deleted.
(JSC::BytecodeLivenessAnalysis::compute): Deleted.
- bytecode/BytecodeLivenessAnalysis.h:
- bytecode/BytecodeLivenessAnalysisInlines.h:
(JSC::BytecodeLivenessPropagation::stepOverInstruction):
(JSC::BytecodeLivenessPropagation::computeLocalLivenessForBytecodeOffset):
(JSC::BytecodeLivenessPropagation::computeLocalLivenessForBlock):
(JSC::BytecodeLivenessPropagation::getLivenessInfoAtBytecodeOffset):
(JSC::BytecodeLivenessPropagation::runLivenessFixpoint):
- bytecode/BytecodeRewriter.cpp:
(JSC::BytecodeRewriter::applyModification):
(JSC::BytecodeRewriter::execute):
(JSC::BytecodeRewriter::adjustJumpTargetsInFragment):
- bytecode/BytecodeRewriter.h:
(JSC::BytecodeRewriter::BytecodeRewriter):
(JSC::BytecodeRewriter::removeBytecode):
(JSC::BytecodeRewriter::graph):
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::finishCreation):
(JSC::CodeBlock::ensureCatchLivenessIsComputedForBytecodeOffsetSlow):
(JSC::CodeBlock::validate):
(JSC::CodeBlock::livenessAnalysisSlow): Deleted.
- bytecode/CodeBlock.h:
(JSC::CodeBlock::livenessAnalysis):
- bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedCodeBlock::applyModification):
(JSC::UnlinkedCodeBlock::livenessAnalysisSlow):
- bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedCodeBlock::livenessAnalysis):
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::livenessFor):
(JSC::DFG::Graph::killsFor):
- dfg/DFGPlan.cpp:
(JSC::DFG::Plan::cleanMustHandleValuesIfNecessary):
- jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
- 5:09 PM Changeset in webkit [224137] by
-
- 6 edits2 adds in trunk/Source/WTF
[WinCairo] Add WTF files for wincairo webkit
https://bugs.webkit.org/show_bug.cgi?id=176894
Patch by Yousuke Kimoto <yousuke.kimoto@sony.com> on 2017-10-27
Reviewed by Alex Christensen.
- wtf/PlatformWin.cmake:
- wtf/WorkQueue.cpp:
- wtf/WorkQueue.h:
- wtf/win/Win32Handle.h:
- wtf/win/WorkItemContext.cpp: Added.
(WTF::WorkItemContext::WorkItemContext):
(WTF::WorkItemContext::create):
(WTF::WorkItemContext::~WorkItemContext):
- wtf/win/WorkItemContext.h: Added.
(WTF::WorkItemContext::handle):
(WTF::WorkItemContext::waitHandle):
(WTF::WorkItemContext::Function<void):
(WTF::WorkItemContext::queue const):
- wtf/win/WorkQueueWin.cpp:
(WTF::WorkQueue::handleCallback):
(WTF::WorkQueue::registerHandle):
(WTF::WorkQueue::unregisterAndCloseHandle):
(WTF::WorkQueue::unregisterWaitAndDestroyItemSoon):
(WTF::WorkQueue::unregisterWaitAndDestroyItemCallback):
- 4:45 PM Changeset in webkit [224136] by
-
- 7 edits1 move in trunk/Source
Add unified source list files and build scripts to Xcode project navigator
https://bugs.webkit.org/show_bug.cgi?id=178959
Reviewed by Andy Estes.
Source/JavaScriptCore:
Also, Add some extra source files for so new .cpp/.mm files don't cause the build
to fail right away. We already do this in WebCore.
- JavaScriptCore.xcodeproj/project.pbxproj:
- PlatformMac.cmake:
- SourcesCocoa.txt: Renamed from Source/JavaScriptCore/SourcesMac.txt.
Source/WebCore:
- WebCore.xcodeproj/project.pbxproj:
Source/WTF:
- WTF.xcodeproj/project.pbxproj:
- 4:40 PM Changeset in webkit [224135] by
-
- 2 edits in trunk/Source/WebKit
Attempt to fix the Apple El Capitan build following <https://trac.webkit.org/changeset/224134>
(https://bugs.webkit.org/show_bug.cgi?id=178919)
Move definition of NetworkLoad::isAllowedToAskUserForCredentials() outside of USE(NETWORK_SESSION)-guarded section.
- NetworkProcess/NetworkLoad.cpp:
(WebKit::NetworkLoad::isAllowedToAskUserForCredentials const):
- 3:31 PM Changeset in webkit [224134] by
-
- 16 edits29 adds in trunk
Only allow non-mixed content protected subresources to ask for credentials
https://bugs.webkit.org/show_bug.cgi?id=178919
<rdar://problem/35015245>
Reviewed by Alex Christensen.
Source/WebCore:
Only allow non-mixed content protected subresources to ask for credentials. It is not meaningful
to allow protected mixed-content subresources to ask for credentials.
Tests: http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image.html
http/tests/security/mixedContent/insecure-script-redirects-to-basic-auth-secure-script.html
http/tests/security/mixedContent/insecure-stylesheet-redirects-to-basic-auth-secure-stylesheet.html
http/tests/security/mixedContent/secure-redirect-to-insecure-redirect-to-basic-auth-secure-image.https.html
http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-insecure-image.https.html
http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image.https.html
- loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::ResourceLoader): Initialize m_canAskClientForCredentials based on the
specified resource loader options.
(WebCore::ResourceLoader::init): Update m_canAskClientForCredentials based on the URL of the initial
request.
(WebCore::ResourceLoader::isMixedContent const): Helper function to check if the specified URL
represents a mixed content resource.
(WebCore::ResourceLoader::willSendRequestInternal): If the original request or the redirect request
is mixed content then update state such that we will disallow asking for credentials.
(WebCore::ResourceLoader::isAllowedToAskUserForCredentials const): Modified to use m_canAskClientForCredentials
when determining whether the request is allowed to ask for credentials.
- loader/ResourceLoader.h:
Source/WebKit:
Only allow non-mixed content protected subresources to ask for credentials. It is not meaningful
to allow protected mixed-content subresources to ask for credentials.
- NetworkProcess/Downloads/PendingDownload.cpp:
(WebKit::PendingDownload::PendingDownload): Initialize m_isAllowedToAskUserForCredentials based on
the specified resource load parameters or NetworkLoad object.
- NetworkProcess/Downloads/PendingDownload.h: Add override for NetworkLoadClient::isAllowedToAskUserForCredentials().
- NetworkProcess/NetworkLoad.cpp:
(WebKit::NetworkLoad::isAllowedToAskUserForCredentials const): Added.
(WebKit::NetworkLoad::completeAuthenticationChallenge): Ask NetworkLoadClient whether the load is
allowed to prompt for credentials.
(WebKit::NetworkLoad::didReceiveAuthenticationChallenge): Ditto.
- NetworkProcess/NetworkLoad.h:
- NetworkProcess/NetworkLoadClient.h:
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::NetworkResourceLoader): Initialize m_isAllowedToAskUserForCredentials
based on the specified resource load parameters.
(WebKit::NetworkResourceLoader::willSendRedirectedRequest): We do not support prompting for credentials
for synchronous loads.
(WebKit::NetworkResourceLoader::continueWillSendRequest): Modified to take an argument as to whether the
load is allowed to ask the user for credentials and updates state.
- NetworkProcess/NetworkResourceLoader.h:
- NetworkProcess/NetworkResourceLoader.messages.in: Modified message ContinueWillSendRequest to take a
boolean as to whether the load is allowed to ask the user for credentials.
- NetworkProcess/PreconnectTask.h: Override NetworkLoadClient::isAllowedToAskUserForCredentials()
such that we never ask for credentials. This matches our current behavior.
- NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: Ditto.
- WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::willSendRequest): Query ResourceLoader as to whether the load is allowed to
ask the user for credentials and pass this state to NetworkResourceLoader.
LayoutTests:
- http/tests/security/mixedContent/insecure-download-redirects-to-basic-auth-secure-download.https-expected.txt: Added.
- http/tests/security/mixedContent/insecure-download-redirects-to-basic-auth-secure-download.https.html: Added.
- http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image-expected.txt: Added.
- http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image.html: Added.
- http/tests/security/mixedContent/insecure-script-redirects-to-basic-auth-secure-script-expected.https.txt: Added.
- http/tests/security/mixedContent/insecure-script-redirects-to-basic-auth-secure-script-expected.txt: Added.
- http/tests/security/mixedContent/insecure-script-redirects-to-basic-auth-secure-script.html: Added.
- http/tests/security/mixedContent/insecure-stylesheet-redirects-to-basic-auth-secure-stylesheet-expected.txt: Added.
- http/tests/security/mixedContent/insecure-stylesheet-redirects-to-basic-auth-secure-stylesheet.html: Added.
- http/tests/security/mixedContent/resources/frame-with-insecure-image-redirects-to-basic-auth-secure-image.html: Added.
- http/tests/security/mixedContent/resources/frame-with-insecure-script-redirects-to-basic-auth-secure-script.html: Added.
- http/tests/security/mixedContent/resources/frame-with-insecure-stylesheet-redirects-to-basic-auth-secure-stylesheet.html: Added.
- http/tests/security/mixedContent/resources/frame-with-programmatically-added-insecure-image-redirects-to-basic-auth-secure-image.html: Added.
- http/tests/security/mixedContent/resources/subresource/protected-image.php: Added.
- http/tests/security/mixedContent/resources/subresource/protected-pdf.php: Added.
- http/tests/security/mixedContent/resources/subresource/protected-script.php: Added.
- http/tests/security/mixedContent/resources/subresource/protected-stylesheet.php: Added.
- http/tests/security/mixedContent/secure-redirect-to-insecure-redirect-to-basic-auth-secure-image.https-expected.txt: Added.
- http/tests/security/mixedContent/secure-redirect-to-insecure-redirect-to-basic-auth-secure-image.https.html: Added.
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-insecure-image.https-expected.txt: Added.
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-insecure-image.https.html: Added.
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image.https-expected.txt: Added.
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image.https.html: Added.
- platform/ios-wk1/http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image.https-expected.txt: Added.
- platform/mac-wk1/http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image.https-expected.txt: Added.
- platform/win/http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image.https-expected.txt: Added.
- 3:28 PM Changeset in webkit [224133] by
-
- 5 edits13 adds in trunk/LayoutTests
Add tests for automatic decompression of gzip-compressed subresources
https://bugs.webkit.org/show_bug.cgi?id=178941
<rdar://problem/35230090>
Reviewed by Alex Christensen.
Although automatic decompression of gzip-compressed subresources is handled by CFNetwork
(<rdar://problem/5418646>) we should add tests to ensure that WebKit does not inadvertently
opt out of such functionality and to catch a regression in CFNetwork.
- TestExpectations: Skip the tests on all platforms. We will unskip on Cocoa platforms and Apple Windows.
- http/tests/gzip-content-encoding/gzip-encoded-script-expected.txt: Added.
- http/tests/gzip-content-encoding/gzip-encoded-script.html: Added.
- http/tests/gzip-content-encoding/gzip-encoded-script2-expected.txt: Added.
- http/tests/gzip-content-encoding/gzip-encoded-script2.html: Added.
- http/tests/gzip-content-encoding/gzip-encoded-stylesheet-expected.html: Added.
- http/tests/gzip-content-encoding/gzip-encoded-stylesheet.html: Added.
- http/tests/gzip-content-encoding/gzip-encoded-stylesheet2-expected.html: Added.
- http/tests/gzip-content-encoding/gzip-encoded-stylesheet2.html: Added.
- http/tests/gzip-content-encoding/resources/echo-data-encoding-with-gzip.php: Added.
- http/tests/gzip-content-encoding/resources/script.js.gz: Added.
- http/tests/gzip-content-encoding/resources/stylesheet.css.gz: Added.
- platform/ios/TestExpectations: Unskip tests.
- platform/mac/TestExpectations: Ditto.
- platform/win/TestExpectations: Ditto.
- 2:43 PM Changeset in webkit [224132] by
-
- 12 edits189 adds in trunk
Unskip more Service Workers tests
https://bugs.webkit.org/show_bug.cgi?id=178944
Reviewed by Sam Weinig.
LayoutTests/imported/w3c:
Land expected results for tests that have been unskipped.
- web-platform-tests/service-workers/cache-storage/serviceworker/credentials.https-expected.txt:
- web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/extendable-message-event.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/postmessage.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/registration-attribute.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/service-worker-error-event.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/unregister.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/update.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/activate-event-after-install-state-change.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/activation-after-registration.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/activation.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/active.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/appcache-ordering-main.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/claim-affect-other-registration.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/claim-fetch.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/claim-not-using-registration.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/claim-shared-worker-fetch.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/claim-using-registration.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/claim-with-redirect.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/claim-worker-fetch.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/client-id.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/client-navigate.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/clients-get-client-types.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/clients-get-cross-origin.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/clients-get.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/clients-matchall-client-types.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/clients-matchall-exact-controller.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/clients-matchall-include-uncontrolled.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/clients-matchall-order.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/clients-matchall.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/controller-on-disconnect.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/controller-on-load.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/controller-on-reload.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/extendable-event-async-waituntil.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/extendable-event-waituntil.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-csp.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-after-navigation-within-page.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-async-respond-with.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-network-error.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-redirect.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-referrer-policy.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-respond-with-argument.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-respond-with-readable-stream.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-respond-with-response-body-with-invalid-chunk.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-respond-with-stops-propagation.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-throws-after-respond-with.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-within-sw-manual.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event-within-sw.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-event.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-frame-resource.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-header-visibility.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-css-base-url.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-css-cross-origin-mime-check.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-css-images.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-fallback.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-html-imports.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-no-freshness-headers.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-redirect.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-resources.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-xhr-sync.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-request-xhr.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-response-xhr.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/fetch-waits-for-activate.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/foreign-fetch-cors.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/getregistration.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/getregistrations.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/immutable-prototype-serviceworker.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/import-scripts-resource-map.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/import-scripts-updated-flag.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/indexeddb.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/install-event-type.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/installing.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/interfaces-window.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/invalid-blobtype.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/invalid-header.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/iso-latin1-header.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/multi-globals/url-parsing.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/multiple-register.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/multiple-update.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigate-window.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-preload/chunked-encoding.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-preload/empty-preload-response-body.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-preload/get-state.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-preload/redirect.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-preload/request-headers.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-preload/resource-timing.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-redirect-body.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/navigation-redirect.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/onactivate-script-error.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/oninstall-script-error.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/opaque-response-preloaded.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/postmessage-blob-url.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/postmessage-from-waiting-serviceworker.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/postmessage-msgport-to-client.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/postmessage-to-client.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/postmessage.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/ready.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/redirected-response.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/referer.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/referrer-policy-header.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/register-closed-window.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/register-default-scope.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/register-link-header.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/register-same-scope-different-script-url.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/register-wait-forever-in-install-worker.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-basic.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-end-to-end.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-events.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-iframe.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-mime-types.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-scope.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-script-url.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-script.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-security-error.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-service-worker-attributes.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/registration-updateviacache.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/rejections.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/request-body-blob.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/request-end-to-end.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/resource-timing.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/serviceworker-message-event-historical.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/serviceworkerobject-scripturl.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/shared-worker-controlled.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/skip-waiting-installed.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/skip-waiting-using-registration.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/skip-waiting-without-using-registration.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/skip-waiting.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/state.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/synced-state.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/uncontrolled-page.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/unregister-controller.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/unregister-then-register-new-script.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/unregister-then-register.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/unregister.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/update-after-navigation-fetch-event.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/update-after-oneday.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/update-recovery.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/update.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/websocket.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/windowclient-navigate.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/worker-interception.https-expected.txt: Added.
- web-platform-tests/service-workers/service-worker/xhr.https-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.1-service-worker-obj-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.1.1-service-worker-scope-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.1.2-service-worker-url-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.1.3-service-worker-state-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2-navigator-service-worker-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister-expected.txt: Added.
- web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.1-service-worker-global-scope-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.2-client-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.3-service-worker-clients-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.3.1-get-serviced-method-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.3.2-reloadall-method-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.4-request-objects-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.5-response-objects-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.5.2-response-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.5.4-opaque-response-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.6-cache-objects-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.1-install-phase-event-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.2-install-event-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.2.1-install-event-section-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.2.2-replace-method-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.3-activate-event-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.4.3-default-method-expected.txt: Added.
- web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute-expected.txt: Added.
- web-platform-tests/service-workers/stub-5.1-origin-relativity-expected.txt: Added.
- web-platform-tests/service-workers/stub-5.2-cross-origin-resources-expected.txt: Added.
Source/WebCore:
Drop bad assertion that was causing the Service Worker WebProcess to crash and causing
tests to fail as a result.
- workers/service/ServiceWorkerGlobalScope.cpp:
(WebCore::ServiceWorkerGlobalScope::registration):
- workers/service/ServiceWorkerGlobalScope.h:
LayoutTests:
Unskip all Service Workers tests except for the 39 that are timing out.
- 2:35 PM Changeset in webkit [224131] by
-
- 5 edits in trunk/Source/WebCore
Unreviewed, rolling out r224011.
xsl LayoutTests hit an assertion added with this change since
r223999 was rolled out.
Reverted changeset:
"Assert that no script is executed during style recalc"
https://bugs.webkit.org/show_bug.cgi?id=178845
https://trac.webkit.org/changeset/224011
- 2:30 PM Changeset in webkit [224130] by
-
- 2 edits in trunk/LayoutTests
Adjusted expectations for fast/scrolling/arrow-key-scroll-in-rtl-document.html.
https://bugs.webkit.org/show_bug.cgi?id=173779
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 1:48 PM Changeset in webkit [224129] by
-
- 2 edits in trunk/LayoutTests
Adjusted expectations for multiple media/ Layout Tests.
https://bugs.webkit.org/show_bug.cgi?id=176054
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 1:29 PM Changeset in webkit [224128] by
-
- 8 edits2 adds in trunk
[Web Animations] Expose the currentTime property on AnimationTimeline
https://bugs.webkit.org/show_bug.cgi?id=178928
Reviewed by Dean Jackson.
Source/WebCore:
We add the currentTime property on AnimationTimeline and add an internals method
to set it in a test which will allow us to validate the timing model state for
a given time.
Test: webanimations/timeline-current-time.html
- animation/AnimationTimeline.cpp:
(WebCore::AnimationTimeline::bindingsCurrentTime const):
(WebCore::AnimationTimeline::setCurrentTime):
- animation/AnimationTimeline.h:
(WebCore::AnimationTimeline::currentTime const):
- animation/AnimationTimeline.idl:
- testing/Internals.cpp:
(WebCore::Internals::setTimelineCurrentTime):
- testing/Internals.h:
- testing/Internals.idl:
LayoutTests:
Add a new test that checks we can read the document's timeline currentTime
property and set it via the internals method.
- webanimations/timeline-current-time-expected.txt: Added.
- webanimations/timeline-current-time.html: Added.
- 1:17 PM Changeset in webkit [224127] by
-
- 3 edits in trunk/Source/WebCore
[Web Animations] Use Seconds vs. MonotonicTime to represent times
https://bugs.webkit.org/show_bug.cgi?id=178950
Reviewed by Dean Jackson.
Animation start times, all expressed in seconds, in the Web Animations API are relative to the timeline
originTime, itself relative to the page's nagigation time (Performance.navigationTime), so it makes more
sense to use Seconds to represent them as opposed to a MonotonicTime.
- animation/WebAnimation.cpp:
(WebCore::WebAnimation::bindingsStartTime const):
(WebCore::WebAnimation::setBindingsStartTime):
- animation/WebAnimation.h:
- 1:09 PM Changeset in webkit [224126] by
-
- 2 edits in trunk/LayoutTests
Skip two tests that are flaky crashes.
https://bugs.webkit.org/show_bug.cgi?id=177828
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 12:56 PM Changeset in webkit [224125] by
-
- 4 edits2 adds in trunk
DOMWindow::dispatchEvent() does not reset the event's dispatch flag
https://bugs.webkit.org/show_bug.cgi?id=178897
Reviewed by Darin Adler.
Source/WebCore:
Make sure we reset the currentTarget, dispatch flag, phase and propagation flags
after dispatching an event on a Window, as per:
This behavior is consistent with Firefox.
Test: fast/events/window-load-initEvent.html
- page/DOMWindow.cpp:
(WebCore::DOMWindow::dispatchEvent):
LayoutTests:
Add layout test coverage. I have verified that this test is passing in Firefox.
- fast/events/window-load-initEvent-expected.txt: Added.
- fast/events/window-load-initEvent.html: Added.
- 12:10 PM Changeset in webkit [224124] by
-
- 2 edits in trunk/Tools
Windows and WebViews are retained after re-configure
https://bugs.webkit.org/show_bug.cgi?id=178902
<rdar://problem/35211518>
Reviewed by Alexey Proskuryakov.
The test runner effectively leaks windows every time a test changes configuration.
We give each test it's own AutoreleasePool to fix this problem.
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::runTest): Add an AutoRelease pool scoping a test run
so that when a configuration changes, the old window and WebView are released.
- 11:56 AM Changeset in webkit [224123] by
-
- 7 edits in trunk/Source/WebCore
Move iOS specific sources to unified sources
https://bugs.webkit.org/show_bug.cgi?id=178915
Rubber-stamped by Tim Horton.
Source/WebCore:
- SourcesCocoa.txt:
- SourcesIOS.txt:
- SourcesMac.txt:
- WebCore.xcodeproj/project.pbxproj:
Source/WebCore/PAL:
- pal/spi/cocoa/QuartzCoreSPI.h: Add missing pragma once.
- 11:42 AM Changeset in webkit [224122] by
-
- 10 edits in trunk/Source/JavaScriptCore
WebAssembly: update arbitrary limits to what browsers use
https://bugs.webkit.org/show_bug.cgi?id=178946
<rdar://problem/34257412>
<rdar://problem/34501154>
Reviewed by Saam Barati.
https://github.com/WebAssembly/design/issues/1138 discusses the
arbitrary function size limit, which it turns out Chrome and
Firefox didn't enforce. We didn't use it because it was
ridiculously low and actual programs ran into that limit (bummer
for Edge which just shipped it...). Now that we agree on a high
arbitrary program limit, let's update it! While I'm doing this
there are a few other spots that I polished to use Checked or
better check limits overall.
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::addLocal):
- wasm/WasmFormat.cpp:
(JSC::Wasm::Segment::create):
- wasm/WasmFunctionParser.h:
(JSC::Wasm::FunctionParser<Context>::parse):
- wasm/WasmInstance.cpp:
- wasm/WasmLimits.h:
- wasm/WasmModuleParser.cpp:
(JSC::Wasm::ModuleParser::parseGlobal):
(JSC::Wasm::ModuleParser::parseCode):
(JSC::Wasm::ModuleParser::parseData):
- wasm/WasmSignature.h:
(JSC::Wasm::Signature::allocatedSize):
- wasm/WasmTable.cpp:
(JSC::Wasm::Table::Table):
- wasm/js/JSWebAssemblyTable.cpp:
(JSC::JSWebAssemblyTable::JSWebAssemblyTable):
(JSC::JSWebAssemblyTable::grow):
- 11:38 AM Changeset in webkit [224121] by
-
- 3 edits in trunk/Source/WebCore
NowPlayingInfo should contain a unique identifier
https://bugs.webkit.org/show_bug.cgi?id=178872
<rdar://problem/34924012>
Unreviewed, build fix.
- platform/audio/ios/MediaSessionManagerIOS.mm:
(WebCore::MediaSessionManageriOS::updateNowPlayingInfo): Call string.impl().hash() instead of
string.existingHash() because the later will assert in a debug build if the hash hasn't
been calculated yet.
- platform/audio/mac/MediaSessionManagerMac.mm:
(WebCore::MediaSessionManagerMac::updateNowPlayingInfo): Ditto.
- 10:48 AM Changeset in webkit [224120] by
-
- 3 edits in trunk/LayoutTests
Move TestExpectation for imported/w3c/web-platform-tests/XMLHttpRequest/open-url-worker-origin.htm.
https://bugs.webkit.org/show_bug.cgi?id=178190
Unreviewed test gardening.
- TestExpectations:
- platform/mac/TestExpectations:
- 10:39 AM Changeset in webkit [224119] by
-
- 3 edits in trunk/Source/WebCore
Fix accessibility/mac/aria-label-on-label-element.html after r224074
https://bugs.webkit.org/show_bug.cgi?id=178892
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::titleElementText const):
(WebCore::AccessibilityNodeObject::ariaLabeledByText const):
- accessibility/AccessibilityObject.h:
(WebCore::AccessibilityText::AccessibilityText):
Turns out my null checks changed behavior. This undoes them.
- 10:33 AM Changeset in webkit [224118] by
-
- 2 edits in trunk/Source/WebKit
[GTK][CMake] Incorrect conditional check when adding build dir to GIR runtime library path
https://bugs.webkit.org/show_bug.cgi?id=178936
Reviewed by Michael Catanzaro.
- PlatformGTK.cmake: Fix spelling of variable used in conditional.
- 10:16 AM Changeset in webkit [224117] by
-
- 2 edits in trunk/Tools
NowPlayingInfo should contain a unique identifier
https://bugs.webkit.org/show_bug.cgi?id=178872
<rdar://problem/34924012>
Unreviewed, fix a flakey test.
- TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
(-[NowPlayingTestWebView hasActiveNowPlayingSession]): Update _lastUpdatedElapsedTime.
(-[NowPlayingTestWebView _handleActiveNowPlayingSessionInfoResponse:title:duration:elapsedTime:]): Deleted.
- 10:06 AM Changeset in webkit [224116] by
-
- 7 edits in trunk/Source/WebCore
Unreviewed, rolling out r223999.
Caused xsl LayoutTest flakiness.
Reverted changeset:
"Style::Scope::flushPendingUpdate() can replace the entire
document in XSLTProcessor::createDocumentFromSource"
https://bugs.webkit.org/show_bug.cgi?id=178715
https://trac.webkit.org/changeset/223999
- 9:49 AM Changeset in webkit [224115] by
-
- 8 edits in trunk/Source/WebCore
Audit init*Event() method to make sure they reset internal data members
https://bugs.webkit.org/show_bug.cgi?id=178886
Reviewed by Ryosuke Niwa.
Audit init*Event() method to make sure they reset internal data members.
- dom/Event.cpp:
(WebCore::Event::initEvent):
- dom/KeyboardEvent.cpp:
(WebCore::KeyboardEvent::initKeyboardEvent):
- dom/MessageEvent.cpp:
(WebCore::MessageEvent::initMessageEvent):
- dom/MouseEvent.cpp:
(WebCore::MouseEvent::initMouseEvent):
- dom/MouseRelatedEvent.h:
(WebCore::MouseRelatedEvent::setIsSimulated):
- dom/TextEvent.cpp:
(WebCore::TextEvent::initTextEvent):
- dom/WheelEvent.cpp:
(WebCore::WheelEvent::initWheelEvent):
- 9:38 AM Changeset in webkit [224114] by
-
- 2 edits in trunk/Tools
autoinstall can't download from http://pypi.python.org
https://bugs.webkit.org/show_bug.cgi?id=178925
Patch by Fujii Hironori <Fujii Hironori> on 2017-10-27
Reviewed by Ryosuke Niwa.
The web server pypi.python.org rejects non secure http.
- Scripts/webkitpy/thirdparty/init.py:
(AutoinstallImportHook._install_mechanize): Use https instead of http.
(AutoinstallImportHook._install_pep8): Ditto.
(AutoinstallImportHook._install_pylint): Ditto.
(AutoinstallImportHook._install_buildbot): Ditto.
(AutoinstallImportHook._install_coverage): Ditto.
- 9:35 AM Changeset in webkit [224113] by
-
- 38 edits1 copy in trunk
Add initial support for serviceWorkerClient.postMessage()
https://bugs.webkit.org/show_bug.cgi?id=178794
Reviewed by Youenn Fablet.
Source/WebCore:
Add initial support for serviceWorkerClient.postMessage():
It is now possible to do bi-directional communication with a service worker
via postMessage().
No new tests, updated existing test.
- WebCore.xcodeproj/project.pbxproj:
- dom/Document.cpp:
(WebCore::generateDocumentIdentifier):
(WebCore::Document::allDocumentsMap):
(WebCore::Document::allDocuments):
(WebCore::m_identifier):
(WebCore::Document::~Document):
- dom/Document.h:
(WebCore::Document::identifier const):
- dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::serviceWorkerContainer):
- dom/ScriptExecutionContext.h:
- workers/service/ServiceWorker.cpp:
(WebCore::ServiceWorker::postMessage):
- workers/service/ServiceWorkerClient.cpp:
(WebCore::ServiceWorkerClient::ServiceWorkerClient):
(WebCore::ServiceWorkerClient::~ServiceWorkerClient):
(WebCore::ServiceWorkerClient::id const):
(WebCore::ServiceWorkerClient::postMessage):
- workers/service/ServiceWorkerClient.h:
(WebCore::ServiceWorkerClient::create):
- workers/service/ServiceWorkerClient.idl:
- workers/service/ServiceWorkerClientIdentifier.h: Copied from Source/WebCore/workers/service/ServiceWorkerClient.idl.
(WebCore::ServiceWorkerClientIdentifier::toString const):
- workers/service/ServiceWorkerRegistration.cpp:
(WebCore::ServiceWorkerRegistration::unregister):
- workers/service/ServiceWorkerWindowClient.cpp:
(WebCore::ServiceWorkerWindowClient::ServiceWorkerWindowClient):
- workers/service/ServiceWorkerWindowClient.h:
- workers/service/context/SWContextManager.cpp:
(WebCore::SWContextManager::postMessageToServiceWorkerGlobalScope):
- workers/service/context/SWContextManager.h:
- workers/service/context/ServiceWorkerThread.cpp:
(WebCore::ServiceWorkerThread::postMessageToServiceWorkerGlobalScope):
- workers/service/context/ServiceWorkerThread.h:
- workers/service/server/SWClientConnection.cpp:
(WebCore::SWClientConnection::postMessageToServiceWorkerClient):
- workers/service/server/SWClientConnection.h:
Source/WebKit:
Add initial support for serviceWorkerClient.postMessage():
It is now possible to do bi-directional communication with a service worker
via postMessage().
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ServiceWorkerClientIdentifier>::encode):
(IPC::ArgumentCoder<ServiceWorkerClientIdentifier>::decode):
- Shared/WebCoreArgumentCoders.h:
- StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
(WebKit::WebSWServerConnection::postMessageToServiceWorkerGlobalScope):
(WebKit::WebSWServerConnection::postMessageToServiceWorkerClient):
- StorageProcess/ServiceWorker/WebSWServerConnection.h:
- StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
- StorageProcess/StorageProcess.cpp:
(WebKit::StorageProcess::postMessageToServiceWorkerClient):
- StorageProcess/StorageProcess.h:
- StorageProcess/StorageProcess.messages.in:
- WebProcess/Storage/WebSWClientConnection.cpp:
(WebKit::WebSWClientConnection::postMessageToServiceWorkerGlobalScope):
(WebKit::WebSWClientConnection::postMessageToServiceWorkerClient):
- WebProcess/Storage/WebSWClientConnection.h:
- WebProcess/Storage/WebSWClientConnection.messages.in:
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
(WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerGlobalScope):
(WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerClient):
- WebProcess/Storage/WebSWContextManagerConnection.h:
- WebProcess/Storage/WebSWContextManagerConnection.messages.in:
LayoutTests:
Add layout test coverage.
- http/tests/workers/service/basic-ServiceWorker-postMessage.https-expected.txt:
- http/tests/workers/service/resources/basic-ServiceWorker-postMessage-worker.js:
- http/tests/workers/service/resources/basic-ServiceWorker-postMessage.js:
(then):
- 9:09 AM Changeset in webkit [224112] by
-
- 2 edits in trunk/LayoutTests
Skip failing service worker tests that were missed in r224066.
https://trac.webkit.org/changeset/224066/webkit
Unreviewed test gardening.
- 8:35 AM Changeset in webkit [224111] by
-
- 4 edits in branches/safari-604-branch/Source/WebKit
Cherry-pick r223993. rdar://problem/34771415
- 7:38 AM Changeset in webkit [224110] by
-
- 3 edits in trunk/Source/WebCore
Use auto for some variables in RenderLayerCompositor/Backing
https://bugs.webkit.org/show_bug.cgi?id=178570
Patch by Frederic Wang <fwang@igalia.com> on 2017-10-27
Reviewed by Darin Adler.
No new tests, behavior unchanged.
- rendering/RenderLayerBacking.cpp:
(WebCore::canvasCompositingStrategy):
(WebCore::RenderLayerBacking::RenderLayerBacking):
(WebCore::computePageTiledBackingCoverage):
(WebCore::RenderLayerBacking::layerWillBeDestroyed):
(WebCore::RenderLayerBacking::updateBackdropFiltersGeometry):
(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling):
(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateAfterWidgetResize):
(WebCore::RenderLayerBacking::updateAfterLayout):
(WebCore::RenderLayerBacking::updateConfiguration):
(WebCore::ComputedOffsets::fromAncestorGraphicsLayer):
(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::updateInternalHierarchy):
(WebCore::RenderLayerBacking::positionOverflowControlsLayers):
(WebCore::RenderLayerBacking::hasUnpositionedOverflowControlsLayers const):
(WebCore::RenderLayerBacking::compositingOpacity const):
(WebCore::isRestartedPlugin):
(WebCore::RenderLayerBacking::isDirectlyCompositedImage const):
(WebCore::RenderLayerBacking::updateImageContents):
(WebCore::RenderLayerBacking::setContentsNeedDisplay):
(WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
(WebCore::RenderLayerBacking::getCurrentTransform const):
(WebCore::RenderLayerBacking::logFilledVisibleFreshTile):
(WebCore::RenderLayerBacking::startAnimation):
(WebCore::RenderLayerBacking::compositedBoundsIncludingMargin const):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::flushPendingLayerChanges):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayersAfterFlushIncludingSubframes):
(WebCore::updateScrollingLayerWithClient):
(WebCore::RenderLayerCompositor::didFlushChangesForLayer):
(WebCore::RenderLayerCompositor::didPaintBacking):
(WebCore::RenderLayerCompositor::didChangeVisibleRect):
(WebCore::RenderLayerCompositor::enclosingCompositorFlushingLayers const):
(WebCore::RenderLayerCompositor::updateCompositingLayers):
(WebCore::RenderLayerCompositor::appendDocumentOverlayLayers):
(WebCore::RenderLayerCompositor::logLayerInfo):
(WebCore::checkIfDescendantClippingContextNeedsUpdate):
(WebCore::styleChangeRequiresLayerRebuild):
(WebCore::RenderLayerCompositor::canCompositeClipPath):
(WebCore::rendererForCompositingTests):
(WebCore::RenderLayerCompositor::updateBacking):
(WebCore::RenderLayerCompositor::repaintOnCompositingChange):
(WebCore::RenderLayerCompositor::repaintInCompositedAncestor):
(WebCore::RenderLayerCompositor::enclosingNonStackingClippingLayer const):
(WebCore::RenderLayerCompositor::setCompositingParent):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::hasCoordinatedScrolling const):
(WebCore::RenderLayerCompositor::updateScrollLayerPosition):
(WebCore::RenderLayerCompositor::positionForClipLayer const):
(WebCore::RenderLayerCompositor::frameViewDidLayout):
(WebCore::RenderLayerCompositor::rootFixedBackgroundsChanged):
(WebCore::RenderLayerCompositor::scrollingLayerDidChange):
(WebCore::RenderLayerCompositor::frameContentsCompositor):
(WebCore::RenderLayerCompositor::parentFrameContentLayers):
(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
(WebCore::RenderLayerCompositor::setIsInWindow):
(WebCore::RenderLayerCompositor::clearBackingForLayerIncludingDescendants):
(WebCore::RenderLayerCompositor::clippedByAncestor const):
(WebCore::RenderLayerCompositor::requiresCompositingForBackfaceVisibility const):
(WebCore::RenderLayerCompositor::requiresCompositingForCanvas const):
(WebCore::RenderLayerCompositor::requiresCompositingForPlugin const):
(WebCore::RenderLayerCompositor::requiresCompositingForAnimation const):
(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason const):
(WebCore::RenderLayerCompositor::isAsyncScrollableStickyLayer const):
(WebCore::RenderLayerCompositor::isViewportConstrainedFixedOrStickyLayer const):
(WebCore::RenderLayerCompositor::requiresScrollLayer const):
(WebCore::RenderLayerCompositor::supportsFixedRootBackgroundCompositing const):
(WebCore::RenderLayerCompositor::fixedRootBackgroundLayer const):
(WebCore::RenderLayerCompositor::resetTrackedRepaintRects):
(WebCore::RenderLayerCompositor::contentsScaleMultiplierForNewTiles const):
(WebCore::RenderLayerCompositor::documentUsesTiledBacking const):
(WebCore::RenderLayerCompositor::shouldCompositeOverflowControls const):
(WebCore::RenderLayerCompositor::updateLayerForHeader):
(WebCore::RenderLayerCompositor::updateLayerForFooter):
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
(WebCore::RenderLayerCompositor::ensureRootLayer):
(WebCore::RenderLayerCompositor::destroyRootLayer):
(WebCore::RenderLayerCompositor::attachRootLayer):
(WebCore::RenderLayerCompositor::detachRootLayer):
(WebCore::RenderLayerCompositor::rootLayerAttachmentChanged):
(WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
(WebCore::RenderLayerCompositor::deviceOrPageScaleFactorChanged):
(WebCore::RenderLayerCompositor::computeFixedViewportConstraints const):
(WebCore::RenderLayerCompositor::computeStickyViewportConstraints const):
(WebCore::enclosingScrollingNodeID):
(WebCore::scrollCoordinatedAncestorInParentOfFrame):
(WebCore::RenderLayerCompositor::reattachSubframeScrollLayers):
(WebCore::RenderLayerCompositor::attachScrollingNode):
(WebCore::RenderLayerCompositor::detachScrollCoordinatedLayer):
(WebCore::RenderLayerCompositor::updateScrollCoordinationForThisFrame):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
(WebCore::RenderLayerCompositor::unregisterAllScrollingLayers):
(WebCore::RenderLayerCompositor::willRemoveScrollingLayerWithBacking):
(WebCore::RenderLayerCompositor::didAddScrollingLayer):
(WebCore::RenderLayerCompositor::updateScrollSnapPropertiesWithFrameView):
- 3:27 AM Changeset in webkit [224109] by
-
- 1 copy in releases/WebKitGTK/webkit-2.18.2
WebKitGTK+ 2.18.2
- 3:25 AM Changeset in webkit [224108] by
-
- 4 edits in releases/WebKitGTK/webkit-2.18
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.18.2 release.
.:
- Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
- gtk/NEWS: Add release notes for 2.18.2.
- 2:35 AM Changeset in webkit [224107] by
-
- 6 edits in trunk
[GStreamer][MSE] Trim space between codecs
https://bugs.webkit.org/show_bug.cgi?id=178160
Patch by Alicia Boya García <aboya@igalia.com> on 2017-10-27
Reviewed by Xabier Rodriguez-Calvar.
Source/WebCore:
Modify supportsCodecs() to accept a Vector<String> instead of
receiving a string and parsing itself.
This improves passrate for
mediasource-is-type-supportedas it
ensures that whitespace between codecs is now trimmed and codec
strings such asvideo/webm;codecs="opus, vp9"are matched as a valid
type, as required by the spec.
This patch also renames supportCodecs() to supportAllCodecs() and adds
a new variant, supportCodec(), that checks for support of an
individual codec.
- platform/graphics/gstreamer/mse/AppendPipeline.cpp:
(WebCore::AppendPipeline::parseDemuxerSrcPadCaps):
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::supportsCodec):
(WebCore::MediaPlayerPrivateGStreamerMSE::supportsAllCodecs):
(WebCore::MediaPlayerPrivateGStreamerMSE::supportsType):
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
LayoutTests:
Update expected test output.
- platform/gtk/imported/w3c/web-platform-tests/media-source/mediasource-is-type-supported-expected.txt:
- 2:34 AM WebKitGTK/2.18.x edited by
- (diff)
- 2:31 AM Changeset in webkit [224106] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebDriver
Merge r224090 - WebDriver: unknown capabilities should produce an InvalidArgument error when validating capabilities
https://bugs.webkit.org/show_bug.cgi?id=178868
Reviewed by Brian Burg.
7.2 Processing Capabilities
https://w3c.github.io/webdriver/webdriver-spec.html#dfn-validate-capabilities
Fixes: imported/w3c/webdriver/tests/sessions/new_session/invalid_capabilities.py::test_invalid_extensions
- WebDriverService.cpp:
(WebDriver::WebDriverService::validatedCapabilities const):
- 2:31 AM Changeset in webkit [224105] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebDriver
Merge r224089 - WebDriver: deserializeTimeouts should fail if the value is not integer
https://bugs.webkit.org/show_bug.cgi?id=178866
Reviewed by Brian Burg.
If value is not an integer, or it is less than 0 or greater than 264 – 1, return error with error code invalid
argument.
https://w3c.github.io/webdriver/webdriver-spec.html#dfn-deserialize-as-a-timeout
Fixes: imported/w3c/webdriver/tests/sessions/new_session/invalid_capabilities.py::test_invalid_values[timeouts-value59-body0]
imported/w3c/webdriver/tests/sessions/new_session/invalid_capabilities.py::test_invalid_values[timeouts-value59-body1]
- WebDriverService.cpp:
(WebDriver::deserializeTimeouts):
- 2:31 AM Changeset in webkit [224104] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebDriver
Merge r224088 - WebDriver: failing to process capabilities should produce InvalidArgument error not SessionNotCreated
https://bugs.webkit.org/show_bug.cgi?id=178864
Reviewed by Brian Burg.
Fixes most of the tests in imported/w3c/webdriver/tests/sessions/new_session/invalid_capabilities.py.
7.2 Processing Capabilities
https://w3c.github.io/webdriver/webdriver-spec.html#processing-capabilities
- WebDriverService.cpp:
(WebDriver::WebDriverService::processCapabilities const):
- 2:27 AM Changeset in webkit [224103] by
-
- 3 edits1 add in releases/WebKitGTK/webkit-2.18
Merge r224047 - [WPE] Use proper shared object versioning for libWPEWebKit.so
https://bugs.webkit.org/show_bug.cgi?id=178878
Reviewed by Michael Catanzaro.
Move the CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE() to a new CMake include file,
and use it both for the GTK+ and WPE ports. Also add a SET_PROJECT_VERSION() macro to
unify setting the PROJECT_VERSION* family of variables.
- Source/cmake/OptionsGTK.cmake: Use the common macros imported from VersioningUtils.cmake.
- Source/cmake/OptionsWPE.cmake: Properly assign a shared object version to libWPEWebKit.so,
using the common macros from VersioningUtils.cmake.
- Source/cmake/VersioningUtils.cmake: Added.
- 2:20 AM Changeset in webkit [224102] by
-
- 7 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r223999 - Style::Scope::flushPendingUpdate() can replace the entire document in XSLTProcessor::createDocumentFromSource
https://bugs.webkit.org/show_bug.cgi?id=178715
<rdar://problem/35144665>
Reviewed by Brent Fulgham.
Apply XLS tranforms when a 0s timer fires or the document finishes parsing or loading whichever comes first
instead of in the middle of collecting a list of stylesheets.
- dom/Document.cpp:
(WebCore::Document::Document): Initialize the newly added timer.
(WebCore::Document::implicitClose): Apply any pending XSLT before we fire load events since some of the event
handlers may be expecting to see the document after XSLT had been applied.
(WebCore::Document::scheduleToApplyXSLTransforms): Added.
(WebCore::Document::applyPendingXSLTransformsNowIfScheduled): Added.
(WebCore::Document::applyPendingXSLTransformsTimerFired): Added. Moved the logic to apply XSL transforms from
Style::Scope::collectActiveStyleSheets, and merged applyXSLTransform into this function.
(WebCore::Document::applyXSLTransform): Deleted.
(WebCore::Document::finishedParsing): Apply XSLT right before updating the style. This is where used to apply
inline XSLT and it happens much earlier than implicitClose.
- dom/Document.h:
- dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::checkStyleSheet): Schedule XSLT in the document instead of flushing pending
stylesheets, which would have synchronously applied XSLT. We can't apply XSLT synchronously here because this
function can be called from a non-script-resilient call stack.
(WebCore::ProcessingInstruction::sheetLoaded): Ditto.
- style/StyleScope.cpp:
(WebCore::Style::Scope::collectXSLTransforms): Added.
(WebCore::Style::Scope::collectActiveStyleSheets): Removed the code to apply XSLT. Skip ProcessingInstructions
that applies XSLT. Also use RefPtr<StyleSheet> instead of a raw pointer to store StyleSheet.
- style/StyleScope.h:
- xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::doEnd): Apply any pending XSLTs synchronously here as the comment suggests.
- 2:02 AM Changeset in webkit [224101] by
-
- 8 edits in releases/WebKitGTK/webkit-2.18/Source
Merge r223965 - Unreviewed, rolling out r222945.
https://bugs.webkit.org/show_bug.cgi?id=178818
"It made WasmBench crash" (Requested by saamyjoon on #webkit).
Reverted changeset:
"bmalloc mutex should be adaptive"
https://bugs.webkit.org/show_bug.cgi?id=177839
https://trac.webkit.org/changeset/222945
- 2:00 AM Changeset in webkit [224100] by
-
- 15 edits in releases/WebKitGTK/webkit-2.18
Merge r223953 - [WPE] Remove GLib API functions which use Cairo
https://bugs.webkit.org/show_bug.cgi?id=178205
Reviewed by Michael Catanzaro.
Source/WebKit:
Add PLATFORM(GTK) guards for the parts of of the GLib API which use cairo_surface_t (web
page snapshots and favicons), and remove the affected function prototypes from public API
headers. This way, the WPE version of the API is not tied to Cairo.
- PlatformWPE.cmake:
- UIProcess/API/glib/WebKitFaviconDatabase.cpp:
- UIProcess/API/glib/WebKitFaviconDatabasePrivate.h:
- UIProcess/API/glib/WebKitInjectedBundleClient.cpp:
- UIProcess/API/glib/WebKitWebView.cpp:
(webkitWebViewConstructed):
(webkitWebViewGetProperty):
(webkitWebViewDispose):
(webkit_web_view_class_init):
(webkitWebViewLoadChanged):
- UIProcess/API/glib/WebKitWebViewPrivate.h:
- UIProcess/API/wpe/WebKitFaviconDatabase.h:
- UIProcess/API/wpe/WebKitWebView.h:
- WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp:
(webkitWebPageDidReceiveMessage):
Tools:
Add PLATFORM(GTK) guards for the API tests (or parts of them) which use cairo_surface_t (web
page snapshots and favicons) which are not available in the WPE version of the GLib API.
- TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
(testNotInitialized):
(testPrivateBrowsing):
(testFaviconDatabase):
- TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
(testFindControllerHide):
(beforeAll):
- TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
- TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
- 1:57 AM Changeset in webkit [224099] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/JavaScriptCore
Merge r223916 - [mips] fix offsets of branches that have to go over a jump
https://bugs.webkit.org/show_bug.cgi?id=153464
The jump() function creates 8 instructions, but the offsets of branches
meant to go over them only account for 6. In most cases, this is not an
issue as the last two instructions of jump() would be nops, but in the
rarer case where the jump destination is in a different 256 MB segment,
MIPSAssembler::linkWithOffset() will rewrite the code in a way in which
the last 4 instructions would be a 2 instruction load (lui/ori) into
$t9, a "j $t9" and then a nop. The wrong offset will mean that the
previous branches meant to go over the whole jump will branch to the
"j $t9" instruction, which would jump to whatever is currently in $t9
(since lui/ori would not be executed).
Reviewed by Michael Catanzaro.
- assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::branchAdd32):
(JSC::MacroAssemblerMIPS::branchMul32):
(JSC::MacroAssemblerMIPS::branchSub32):
Fix the offsets of branches meant to go over code generated by jump().
- 1:55 AM Changeset in webkit [224098] by
-
- 3 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r223887 - [GTK][X11] Windy.com shows always straight wind lines
https://bugs.webkit.org/show_bug.cgi?id=176718
Reviewed by Carlos Garcia Campos.
WebGL's GL_LUMINANCE_ALPHA format is not available in OpenGL when using a version >= 3.2
and a core profile. In that case, we need to replace it with GL_RG and swizzle the color
components appropriately.
No new behavior.
- platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::texImage2D):
- platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::texSubImage2D):
- 1:47 AM Changeset in webkit [224097] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/bmalloc
Merge r223844 - bmalloc::api::tryLargeMemalignVirtual() shouldn't assert on a failed allocation
https://bugs.webkit.org/show_bug.cgi?id=178654
Reviewed by Geoffrey Garen.
- bmalloc/bmalloc.h:
(bmalloc::api::tryLargeMemalignVirtual): Call Heap::tryAllocateLarge()
instead of Heap::allocateLarge(). The former will return a null pointer
upon a failed allocation, allowing the caller to fail gracefully just as
the API entrypoint implies, while the latter currently provokes a crash
in these circumstances.
- 1:45 AM Changeset in webkit [224096] by
-
- 4 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r223835 - Call FrameView::scheduleSelectionUpdate when selection needs repainting after layout instead of setting the RenderView dirty.
https://bugs.webkit.org/show_bug.cgi?id=178651
<rdar://problem/35117448>
Reviewed by Antti Koivisto.
Calling setNeedsLayout() on the RenderView to trigger selection update is problematic in 2 different ways:
- marking the root renderer dirty does not trigger layout (this is very specific to the root,
other renderers do trigger layout). It means that it works as long as someone else schedules a layout.
- when a subtree layout is already scheduled and we mark the root renderer dirty, the root gets stuck with
the dirty flag (since the entry point for the subsequent layout is a descendant of the root and not the root itself).
This patch addresses these issues by scheduling/converting subtree layout when needed.
Covered by fast/dynamic/remove-invisible-node-inside-selection.html/remove-node-inside-selection.html
- editing/FrameSelection.cpp:
(WebCore::FrameSelection::respondToNodeModification):
- page/FrameView.cpp:
(WebCore::FrameView::scheduleSelectionUpdate):
- page/FrameView.h:
- 1:36 AM Changeset in webkit [224095] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION (r224077): DeprecatedGlobalSettings::setAVKitEnabled() not protected by HAVE(AVKIT)
Unreviewed build fix.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences): Fix build.
- 1:28 AM Changeset in webkit [224094] by
-
- 4 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r223789 - When destroying a resource, register "only" the clients who are losing their resource as having pending resources
https://bugs.webkit.org/show_bug.cgi?id=178567
<rdar://problem/35064781>
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2017-10-20
Reviewed by Simon Fraser.
SVGResources::resourceDestroyed() will return a bool indicating whether
it had a reference to the destroyed resource or not. If it returns true
SVGResourcesCache::resourceDestroyed() will register the client Element
as having pending resources.
- rendering/svg/SVGResources.cpp:
(WebCore::paintingResourceFromSVGPaint):
(WebCore::SVGResources::removeClientFromCache const):
(WebCore::SVGResources::resourceDestroyed):
(WebCore::SVGResources::buildSetOfResources):
(WebCore::SVGResources::resetClipper):
(WebCore::SVGResources::resetFilter):
(WebCore::SVGResources::resetMarkerStart):
(WebCore::SVGResources::resetMarkerMid):
(WebCore::SVGResources::resetMarkerEnd):
(WebCore::SVGResources::resetMasker):
(WebCore::SVGResources::resetFill):
(WebCore::SVGResources::resetStroke):
(WebCore::SVGResources::resetLinkedResource):
- rendering/svg/SVGResources.h:
(WebCore::SVGResources::isEmpty const):
(WebCore::SVGResources::ClipperFilterMaskerData::ClipperFilterMaskerData): Deleted.
(WebCore::SVGResources::MarkerData::MarkerData): Deleted.
(WebCore::SVGResources::FillStrokeData::FillStrokeData): Deleted.
- rendering/svg/SVGResourcesCache.cpp:
(WebCore::SVGResourcesCache::resourceDestroyed):
- 1:26 AM Changeset in webkit [224093] by
-
- 7 edits4 adds in releases/WebKitGTK/webkit-2.18
Merge r223766 - AX: [ATK] Events missing and state incorrect for aria-activedescendant
https://bugs.webkit.org/show_bug.cgi?id=178523
Reviewed by Chris Fleizach.
Source/WebCore:
When the aria-activedescendant of an element changes, emit object:state-changed:focused.
When a focused element has a valid active descendant, do not expose the focused state on
the element, but rather on the active descendant. Also expose the focusable state on the
active descendant.
Tests: accessibility/gtk/aria-activedescendant-changed-notification.html
accessibility/gtk/aria-activedescendant.html
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::isActiveDescendantOfFocusedContainer const):
(WebCore::AccessibilityObject::ariaActiveDescendantReferencingElements const):
- accessibility/AccessibilityObject.h:
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::shouldNotifyActiveDescendant const):
- accessibility/atk/AXObjectCacheAtk.cpp:
(WebCore::AXObjectCache::postPlatformNotification):
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(setAtkStateSetFromCoreObject):
LayoutTests:
- accessibility/gtk/aria-activedescendant-changed-notification-expected.txt: Added.
- accessibility/gtk/aria-activedescendant-changed-notification.html: Added.
- accessibility/gtk/aria-activedescendant-expected.txt: Added.
- accessibility/gtk/aria-activedescendant.html: Added.
- 1:12 AM Changeset in webkit [224092] by
-
- 6 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r223688 - Overlapping text on all CSS fonts specs
https://bugs.webkit.org/show_bug.cgi?id=177585
<rdar://problem/34704078>
Reviewed by Daniel Bates.
Source/WebCore:
We were resetting StyleResolver::overrideDocumentElementStyle too early when resolving slot elements.
This resulted in 'rem' units being miscomputed.
Reduction by Zalan.
Test: fast/html/details-line-height-overlap.html
- style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::Scope::Scope):
(WebCore::Style::TreeResolver::Scope::~Scope):
Only reset overrideDocumentElementStyle when destroying the scope.
(WebCore::Style::TreeResolver::pushScope):
(WebCore::Style::TreeResolver::pushEnclosingScope):
(WebCore::Style::TreeResolver::popScope):
A scope can show up multiple times in scope stack.
- style/StyleTreeResolver.h:
LayoutTests:
- fast/html/details-line-height-overlap-expected.html: Added.
- fast/html/details-line-height-overlap.html: Added.
- platform/ios/fast/shadow-dom/copy-shadow-tree-expected.txt:
- 1:02 AM WebKitGTK/2.18.x edited by
- (diff)
- 12:41 AM Changeset in webkit [224091] by
-
- 2 edits in trunk/LayoutTests
Skip some copy & paste tests I wrote on GTK since they're are known to timeout/slow.
- platform/gtk/TestExpectations:
- 12:13 AM Changeset in webkit [224090] by
-
- 2 edits in trunk/Source/WebDriver
WebDriver: unknown capabilities should produce an InvalidArgument error when validating capabilities
https://bugs.webkit.org/show_bug.cgi?id=178868
Reviewed by Brian Burg.
7.2 Processing Capabilities
https://w3c.github.io/webdriver/webdriver-spec.html#dfn-validate-capabilities
Fixes: imported/w3c/webdriver/tests/sessions/new_session/invalid_capabilities.py::test_invalid_extensions
- WebDriverService.cpp:
(WebDriver::WebDriverService::validatedCapabilities const):
- 12:11 AM Changeset in webkit [224089] by
-
- 2 edits in trunk/Source/WebDriver
WebDriver: deserializeTimeouts should fail if the value is not integer
https://bugs.webkit.org/show_bug.cgi?id=178866
Reviewed by Brian Burg.
If value is not an integer, or it is less than 0 or greater than 264 – 1, return error with error code invalid
argument.
https://w3c.github.io/webdriver/webdriver-spec.html#dfn-deserialize-as-a-timeout
Fixes: imported/w3c/webdriver/tests/sessions/new_session/invalid_capabilities.py::test_invalid_values[timeouts-value59-body0]
imported/w3c/webdriver/tests/sessions/new_session/invalid_capabilities.py::test_invalid_values[timeouts-value59-body1]
- WebDriverService.cpp:
(WebDriver::deserializeTimeouts):
- 12:10 AM Changeset in webkit [224088] by
-
- 2 edits in trunk/Source/WebDriver
WebDriver: failing to process capabilities should produce InvalidArgument error not SessionNotCreated
https://bugs.webkit.org/show_bug.cgi?id=178864
Reviewed by Brian Burg.
Fixes most of the tests in imported/w3c/webdriver/tests/sessions/new_session/invalid_capabilities.py.
7.2 Processing Capabilities
https://w3c.github.io/webdriver/webdriver-spec.html#processing-capabilities
- WebDriverService.cpp:
(WebDriver::WebDriverService::processCapabilities const):
- 12:04 AM Changeset in webkit [224087] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Crash in WebCore::SelectionRangeData::apply
https://bugs.webkit.org/show_bug.cgi?id=177808
Reviewed by Carlos Garcia Campos.
The problem appears to be a name collision between WebCore::SelectionData and
WebCore::SelectionData. Yes, those are the same names. It seems the destructor for a
Source/WebCore/platform/gtk/SelectionData.h SelectionData is being called on a
Source/WebCore/rendering/SelectionRangeData.cpp SelectionData. Yikes. Can you forgive the
poor linker for not being magic?
This fixes crashes in approximately one bajillion tests.
- rendering/SelectionRangeData.cpp: Move SelectionData into an anonymous namespace.