Timeline



Oct 17, 2014:

8:37 PM Changeset in webkit [174858] by gyuyoung.kim@samsung.com
  • 6 edits in trunk/Source/WebCore

Apply std::unique_ptr to FooFont classes
https://bugs.webkit.org/show_bug.cgi?id=137769

Reviewed by Andreas Kling.

As a step to use std::unique_ptr, this patch applies std::unique_ptr to Font classes.

No new tests, no behavior changes.

  • platform/graphics/Font.cpp:

(WebCore::retrieveOrAddCachedFontGlyphs):
(WebCore::Font::createLayout):

  • platform/graphics/SimpleFontData.cpp:

(WebCore::SimpleFontData::DerivedFontData::create):

  • platform/graphics/SimpleFontData.h:

Remove create() factory function because public ctor and std::make_unique<> can replace it.

  • platform/graphics/mac/ComplexTextController.cpp:

(WebCore::Font::createLayout):

8:35 PM Changeset in webkit [174857] by gyuyoung.kim@samsung.com
  • 8 edits in trunk/Source/WebCore

Use std::unique_ptr in WebCore/bindings
https://bugs.webkit.org/show_bug.cgi?id=137808

Reviewed by Andreas Kling.

Clean up PassOwnPtr|OwnPtr in WebCore/bindings by using std::unique_ptr, std::make_unique
and WTF::move.

No new tests, no behavior changes.

  • bindings/generic/ActiveDOMCallback.h:
  • bindings/js/JSMessageEventCustom.cpp:

(WebCore::handleInitMessageEvent):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::SerializedScriptValue):
(WebCore::SerializedScriptValue::transferArrayBuffers):
(WebCore::SerializedScriptValue::create):

  • bindings/js/SerializedScriptValue.h:
  • bindings/js/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::interruptAndRunTask):

  • bindings/js/WorkerScriptDebugServer.h:
  • inspector/WorkerDebuggerAgent.cpp:

(WebCore::WorkerDebuggerAgent::interruptAndDispatchInspectorCommands):

6:12 PM Changeset in webkit [174856] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Web Process crash when starting the web inspector after r174025.
<https://webkit.org/b/137340>

Reviewed by Filip Pizlo.

After r174025, we can generate a bad graph in the DFG fixup phase like so:

102:<!0:-> StoreBarrier(Check:KnownCell:@19, ..., bc#44)
60:<!0:-> PutStructure(Check:KnownCell:@19, ..., bc#44)
103:<!0:-> Check(Check:NotCell:@54, ..., bc#44)

-- PutByOffset's StoreBarrier has been elided and replaced
with a speculation check which can OSR exit.

61:<!0:-> PutByOffset(Check:KnownCell:@19, ..., bc#44)

As a result, the structure change will get executed even if we end up OSR
exiting before the PutByOffset. In the baseline JIT code, the structure now
erroneously tells the put operation that there is a value in that property
slot when it is actually uninitialized (hence, the crash).

The fix is to insert the Check at the earliest point possible:

  1. If the checked node is in the same bytecode as the PutByOffset, then the earliest point where we can insert the Check is right after the checked node.
  1. If the checked node is from a preceding bytecode (before the PutByOffset), then the earliest point where we can insert the Check is at the start of the current bytecode.

Also reverted the workaround from r174749: https://webkit.org/b/137758.

Benchmark results appear to be a wash on aggregate.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::indexOfNode):
(JSC::DFG::FixupPhase::indexOfFirstNodeOfExitOrigin):
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::insertCheck):

  • dfg/DFGInsertionSet.h:

(JSC::DFG::InsertionSet::insertOutOfOrder):
(JSC::DFG::InsertionSet::insertOutOfOrderNode):

5:25 PM Changeset in webkit [174855] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Calling glReadPixels with BGRA format on an NVIDIA machine with an opaque context returns the wrong alpha values.
https://bugs.webkit.org/show_bug.cgi?id=137793.
<rdar://problem/15408133>

Reviewed by Dean Jackson.

This fixes conformance test context/context-attribute-preserve-drawing-buffer.html.

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

(WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary):
On an NVIDIA machine, when the context has alpha turned off, call glReadPixels with RGBA format and then convert to RGBA.

5:21 PM Changeset in webkit [174854] by Chris Dumez
  • 29 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for all SVG RenderObjects
https://bugs.webkit.org/show_bug.cgi?id=137840

Reviewed by Benjamin Poulain.

Use is<>() / downcast<>() for all SVG RenderObjects and clean up the
surrounding code.

No new tests, no behaviro change.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::supportsPath):
(WebCore::AccessibilityRenderObject::elementPath):

  • page/FrameView.cpp:

(WebCore::FrameView::applyOverflowToViewport):
(WebCore::FrameView::forceLayoutParentViewIfNeeded):

  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::removeReferenceFilterClients):

  • rendering/svg/RenderSVGGradientStop.cpp:

(WebCore::RenderSVGGradientStop::styleDidChange):

  • rendering/svg/RenderSVGImage.h:
  • rendering/svg/RenderSVGInlineText.h:
  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):

  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::addResourceForClientInvalidation):

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGShape.h:
  • rendering/svg/RenderSVGText.cpp:

(WebCore::collectLayoutAttributes):
(WebCore::RenderSVGText::subtreeChildWillBeRemoved):
(WebCore::RenderSVGText::subtreeTextDidChange):
(WebCore::updateFontInAllDescendants):

  • rendering/svg/RenderSVGText.h:
  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::mapLocalToContainer):
(WebCore::SVGRenderSupport::pushMappingToContainer):
(WebCore::SVGRenderSupport::computeContainerBoundingBoxes):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeStyle):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::bufferForeground):

  • rendering/svg/SVGResourcesCycleSolver.cpp:

(WebCore::SVGResourcesCycleSolver::resolveCycles):

  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::renderSVGText):
(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):

  • svg/SVGCircleElement.cpp:

(WebCore::SVGCircleElement::svgAttributeChanged):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::svgAttributeChanged):

  • svg/SVGEllipseElement.cpp:

(WebCore::SVGEllipseElement::svgAttributeChanged):

  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::svgAttributeChanged):
(WebCore::SVGImageElement::didAttachRenderers):

  • svg/SVGLineElement.cpp:

(WebCore::SVGLineElement::svgAttributeChanged):

  • svg/SVGPolyElement.cpp:

(WebCore::SVGPolyElement::svgAttributeChanged):

  • svg/SVGRectElement.cpp:

(WebCore::SVGRectElement::svgAttributeChanged):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::localCoordinateSpaceTransform):
(WebCore::SVGSVGElement::currentViewBoxRect):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::setContainerSize):
(WebCore::SVGImage::containerSize):

4:59 PM Changeset in webkit [174853] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Avoid unnecessary isSVGFont() check in SimpleFontData::applyTransforms()
https://bugs.webkit.org/show_bug.cgi?id=137836

Reviewed by Andreas Kling.

Avoid unnecessary isSVGFont() check in SimpleFontData::applyTransforms().
This function is only called from WidthIterator::applyFontTransforms(),
which already makes sure to call applyTransforms() if isSVGFont()
returns false. This patch replaces the check with a simple assertion.

No new tests, no behavior change.

  • platform/graphics/SimpleFontData.h:
  • svg/SVGFontData.h:
4:50 PM Changeset in webkit [174852] by jonowells@apple.com
  • 2 edits
    2 adds in trunk/Source/WebInspectorUI

Web Inspector: Add ESLint open source library to the inspector
https://bugs.webkit.org/show_bug.cgi?id=137714

Reviewed by Joseph Pecoraro.

This adds back the eslint.js external library with a correction to Scripts/copy-user-interface-resources.pl
to prevent a build failure.

  • Scripts/copy-user-interface-resources.pl: Added copy commands for ESLint.js.
  • UserInterface/External/ESLint/LICENSE: Added.
  • UserInterface/External/ESLint/eslint.js: Added.
4:26 PM Changeset in webkit [174851] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/data/params

Update data/params after Bugzilla 4.2.11 upgrade

  • data/params:

(default_search_limit): Bump up the default search limit from
500 to 1000 because Timothy Horton asked nicely.
(maxattachmentsize): Make it an even 20 MB.
(maxlocalattachment): Bump up total amount of local attachments
stored on disk from 10 MB to 1 GB.
(smtp_debug): Let Bugzilla have its way with the config file.
(smtpserver): Fixed to use the correct mail server.
(sslbase): Fix test value that I checked in when I was testing
the update. This caused bug mail to be sent with a URL of
bugs-test.webkit.org instead of bugs.webkit.org until around
11:45 AM PDT on Thursday, October 16, 2014.
(urlbase): Ditto.

4:20 PM Changeset in webkit [174850] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/.htaccess

Prevent access to the /lib/ directory

  • .htaccess: Block access to the lib directory. This may be

removed once updated Perl modules are installed on the system.

4:19 PM Changeset in webkit [174849] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/mod_perl.pl

Add lib directory to mod_perl search path

mod_perl.pl: Add lib directory to mod_perl search path. I
accidentally installed updated Perl modules under the Bugzilla
root directory instead of in the system, so this path needed to
be added to make sure up-to-date modules were used. It may be
removed once Perl modules are updated on the system.

4:15 PM Changeset in webkit [174848] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/Bugzilla/User.pm

Disable database handle statement caching to fix Internal Server Errors

  • Bugzilla/User.pm:

(Bugzilla::User::visible_bugs): Disable database handle
statement caching. Apparently these statements would go bad
without the DBD module noticing, causing errors on numerous
pages.

3:58 PM Changeset in webkit [174847] by msaboff@apple.com
  • 11 edits in trunk

Don't create cached functions that access lexicalGlobalObject()
https://bugs.webkit.org/show_bug.cgi?id=137839

Reviewed by Geoffrey Garen.

Source/WebCore:

Made it so that all the JSDOMWindow special functions blur(), close(), focus() and postMessage()
are always created as needed for every prototype. Made it so that JSHTMLDocument does
the same for open(). Updated test to account for these methods not being cached

Updated tests accordingly.

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::getOwnPropertySlot): Updated to always create cached versions of the
special functions.

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::getOwnPropertySlot): Added to create an uncached open() method when
it is first accessed.

  • html/HTMLDocument.idl: Added CustomGetOwnPropertySlot and implemented it in JSHTMLDocumentCustom.cpp.

LayoutTests:

Updadted test that check for

  • fast/dom/wrapper-scope-expected.txt:
  • fast/dom/wrapper-scope.html:

Removed "close" and "postMessage" from functions to check for wrapper scope.

  • http/tests/security/cross-frame-access-put-expected.txt:
  • http/tests/security/resources/cross-frame-iframe-for-put-test.html:

Removed "blur", "close" and "focus" from the functions to test, since this tests that
a parent's and child window's instances are the same. Now they are always different.

  • js/dom/global-function-resolve-expected.txt:
  • js/dom/script-tests/global-function-resolve.js:

Removed "close" from this lists of functions to check.

3:30 PM Changeset in webkit [174846] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

[iOS] Speculative fix for a crash under RenderLayerCompositor::updateScrollCoordinatedLayer()
https://bugs.webkit.org/show_bug.cgi?id=137837
rdar://problem/18545452

Reviewed by Tim Horton.

Crash logs suggest that an iframe's RenderView's RenderLayer's backing can be null
in a call to updateScrollCoordinatedLayer(), so add an assertion (to help find a reproducible case)
and a null check.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::attachScrollingNode):

3:28 PM Changeset in webkit [174845] by commit-queue@webkit.org
  • 1 edit
    1 delete in trunk/Tools

Remove run-inspector-perf-tests.py there is no PerformanceTests/inspector anymore
https://bugs.webkit.org/show_bug.cgi?id=137835

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-17
Reviewed by Andreas Kling.

  • Scripts/run-inspector-perf-tests.py: Removed.

This script is stale, as PerformanceTests/inspector no longer exists.

3:12 PM Changeset in webkit [174844] by Simon Fraser
  • 2 edits in trunk/Tools

Fix typo: should be ios-simulator-wk2, not ios-simulator_wk2.

  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort.default_baseline_search_path):

3:10 PM Changeset in webkit [174843] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Re-arrange parentheses for compilation purposes.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatchesSelectorList):

3:05 PM Changeset in webkit [174842] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after r174838.

Use StackAllocator::addressOf() instead of the old way of grabbing at a stack reference.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatchesSelectorList):

2:52 PM Changeset in webkit [174841] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Build fix for 32-bit Yosemite

  • WebCoreSupport/WebContextMenuClient.mm:

(WebContextMenuClient::contextMenuForEvent):
Avoid using NSItemProvider in 32-bit, because it doesn't exist.

2:25 PM Changeset in webkit [174840] by Chris Dumez
  • 76 edits in trunk/Source

Use is<>() / downcast<>() for RenderBox
https://bugs.webkit.org/show_bug.cgi?id=137804

Reviewed by Andreas Kling.

Use is<>() / downcast<>() for RenderBox and clean up the surrounding
code.

Source/WebCore:

No new tests, no behavior change.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::accessibilityHitTest):
(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityRenderObject::scrollTo):

  • bindings/objc/DOMHTML.mm:

(-[DOMHTMLElement scrollYOffset]):
(-[DOMHTMLElement setScrollXOffset:scrollYOffset:adjustForIOSCaret:]):

  • bindings/objc/DOMUIKitExtensions.mm:

(-[DOMNode borderRadii]):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::sizingBox):
(WebCore::computedTransform):
(WebCore::zoomAdjustedPaddingOrMarginPixelValue):
(WebCore::ComputedStyleExtractor::propertyValue):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::getLowerRightCorner):

  • dom/Document.cpp:

(WebCore::Document::webkitWillEnterFullScreenForElement):

  • dom/Element.cpp:

(WebCore::Element::scrollByUnits):

  • dom/Node.cpp:

(WebCore::Node::defaultEventHandler):

  • dom/Position.cpp:

(WebCore::endsOfNodeAreVisuallyDistinctPositions):

  • editing/DeleteButtonController.cpp:

(WebCore::isDeletableElement):

  • editing/EditorCommand.cpp:

(WebCore::verticalScrollDistance):

  • editing/FrameSelection.cpp:

(WebCore::CaretBase::paintCaret):

  • editing/TextIterator.cpp:

(WebCore::fullyClipsContents):
(WebCore::shouldEmitExtraNewlineForNode):

  • editing/htmlediting.cpp:

(WebCore::absoluteBoundsForLocalCaretRect):

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::isFocusable):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::checkSizeChangeForSnapshotting):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):

  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::setPositionFromPoint):

  • inspector/InspectorOverlay.cpp:

(WebCore::buildObjectForElementInfo):

  • page/AutoscrollController.cpp:

(WebCore::AutoscrollController::updateAutoscrollRenderer):

  • page/EventHandler.cpp:

(WebCore::EventHandler::startPanScrolling):

  • page/FrameView.cpp:

(WebCore::FrameView::embeddedContentBox):

  • page/GestureTapHighlighter.cpp:
  • page/SpatialNavigation.cpp:

(WebCore::isScrollableNode):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::baselinePosition):

  • plugins/PluginView.cpp:

(WebCore::PluginView::invalidateWindowlessPluginRect):

  • rendering/InlineBox.cpp:

(WebCore::InlineBox::logicalHeight):
(WebCore::InlineBox::adjustPosition):

  • rendering/InlineElementBox.cpp:

(WebCore::InlineElementBox::deleteLine):
(WebCore::InlineElementBox::extractLine):
(WebCore::InlineElementBox::attachLine):
(WebCore::InlineElementBox::paint):
(WebCore::InlineElementBox::nodeAtPoint):

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::addToLine):
(WebCore::InlineFlowBox::addReplacedChildOverflow):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::simplifiedNormalFlowLayout):
(WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):
(WebCore::RenderBlock::clearPercentHeightDescendantsFrom):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
(WebCore::RenderBlock::addFocusRingRects):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats):
(WebCore::RenderBlockFlow::positionForPointWithInlineChildren):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):
(WebCore::RenderBlockFlow::layoutLineBoxes):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::findAutoscrollable):
(WebCore::computeBlockStaticDistance):
(WebCore::RenderBox::positionForPoint):
(WebCore::RenderBox::layoutOverflowRectForPropagation):

  • rendering/RenderBox.h:

(WebCore::RenderBox::previousSiblingBox):
(WebCore::RenderBox::nextSiblingBox):
(WebCore::RenderBox::parentBox):
(WebCore::RenderBox::firstChildBox):
(WebCore::RenderBox::lastChildBox):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent):
(WebCore::RenderBoxModelObject::computeStickyPositionConstraints):
(WebCore::RenderBoxModelObject::constrainingRectForStickyPosition):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::removeChildInternal):
(WebCore::RenderElement::styleWillChange):
(WebCore::RenderElement::repaintAfterLayoutIfNeeded):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::layout):

  • rendering/RenderFieldset.cpp:

(WebCore::RenderFieldset::findLegend):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent):
(WebCore::RenderFlowThread::currentActiveRenderBox):

  • rendering/RenderFlowThread.h:
  • rendering/RenderFullScreen.cpp:

(WebCore::RenderFullScreen::unwrapRenderer):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::layoutShadowControls):
(WebCore::RenderImage::computeIntrinsicRatioInformation):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::absoluteRects):
(WebCore::RenderInline::addFocusRingRects):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPosition):
(WebCore::RenderLayer::perspectiveTransform):
(WebCore::RenderLayer::perspectiveOrigin):
(WebCore::parentLayerCrossFrame):
(WebCore::RenderLayer::enclosingScrollableLayer):
(WebCore::RenderLayer::resize):
(WebCore::RenderLayer::scrollsOverflow):
(WebCore::computeReferenceBox):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateTransform):
(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::resetContentsRect):
(WebCore::RenderLayerBacking::positionOverflowControlsLayers):
(WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundImage):
(WebCore::RenderLayerBacking::contentsBox):
(WebCore::RenderLayerBacking::backgroundBoxForPainting):
(WebCore::RenderLayerBacking::startAnimation):
(WebCore::RenderLayerBacking::startTransition):

  • rendering/RenderLineBoxList.cpp:

(WebCore::RenderLineBoxList::rangeIntersectsRect):

  • rendering/RenderMediaControlElements.cpp:

(WebCore::RenderMediaVolumeSliderContainer::layout):

  • rendering/RenderMultiColumnFlowThread.cpp:

(WebCore::RenderMultiColumnFlowThread::firstColumnSetOrSpanner):
(WebCore::RenderMultiColumnFlowThread::nextColumnSetOrSpannerSiblingOf):
(WebCore::RenderMultiColumnFlowThread::previousColumnSetOrSpannerSiblingOf):
(WebCore::RenderMultiColumnFlowThread::resolveMovedChild):
(WebCore::isValidColumnSpanner):
(WebCore::RenderMultiColumnFlowThread::handleSpannerRemoval):

  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::getRanges):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::computeRectForRepaint):
(WebCore::RenderObject::showRegionsInformation):
(WebCore::RenderObject::showRenderObject):
(WebCore::RenderObject::mapLocalToContainer):
(WebCore::RenderObject::pushMappingToContainer):
(WebCore::RenderObject::mapAbsoluteToLocalPoint):
(WebCore::RenderObject::addAnnotatedRegions):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::nodeAtPoint):

  • rendering/RenderTextControlMultiLine.cpp:

(WebCore::RenderTextControlMultiLine::layoutSpecialExcludedChild):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::baselinePosition):

  • rendering/RenderThemeGtk.cpp:

(WebCore::RenderThemeGtk::baselinePosition):
(WebCore::centerRectVerticallyInParentInputElement):

  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::baselinePosition):

  • rendering/RenderThemeSafari.cpp:

(WebCore::RenderThemeSafari::baselinePosition):

  • rendering/RenderThemeWin.cpp:

(WebCore::RenderThemeWin::paintSearchFieldCancelButton):
(WebCore::RenderThemeWin::paintSearchFieldResultsDecorationPart):
(WebCore::RenderThemeWin::paintSearchFieldResultsButton):

  • rendering/RenderTreeAsText.cpp:

(WebCore::RenderTreeAsText::writeRenderObject):
(WebCore::externalRepresentation):

  • rendering/RenderView.cpp:

(WebCore::RenderView::paintBoxDecorations):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::setLineBreakInfo):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleOutOfFlowPositioned):
(WebCore::BreakingContext::handleFloat):
(WebCore::BreakingContext::handleReplaced):

  • rendering/line/LineBreaker.cpp:

(WebCore::LineBreaker::skipTrailingWhitespace):
(WebCore::LineBreaker::skipLeadingWhitespace):

  • rendering/mathml/RenderMathMLUnderOver.cpp:

(WebCore::RenderMathMLUnderOver::layout):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::embeddedContentBox):

Source/WebKit/mac:

  • WebCoreSupport/WebContextMenuClient.mm:

(WebContextMenuClient::clientFloatRectForNode):

  • WebView/WebFrame.mm:

(-[WebFrame renderedSizeOfNode:constrainedToWidth:]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::gestureNotify):

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::determinePrimarySnapshottedPlugIn):
(WebKit::WebPage::plugInIsPrimarySize):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::sendTapHighlightForNodeIfNecessary):

2:24 PM Changeset in webkit [174839] by akling@apple.com
  • 19 edits in trunk/Source/WebCore

Get rid of wrapperContext() in DOM bindings.
<https://webkit.org/b/137834>

Reviewed by Chris Dumez.

The "wrapper context" is always the DOMWrapperWorld, and since we're passing that around
already, we don't need a separate mechanism to get at the context.

The context is extra data stored in the DOM object's JSC::Weak (the wrapper GC object.)

  • bindings/js/JSDOMBinding.h:

(WebCore::setInlineCachedWrapper):
(WebCore::cacheWrapper):
(WebCore::wrapperContext): Deleted.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

2:21 PM Changeset in webkit [174838] by benjamin@webkit.org
  • 4 edits
    2 adds in trunk

Make a better use of the available registers when compiling nested selector lists
https://bugs.webkit.org/show_bug.cgi?id=137802

Reviewed by Andreas Kling.

Source/WebCore:

Previously, when compiling a nested selector list, the compiler would start by pushing all
the allocated registers to the stack to free them for the compiled selector list.
While neat to ensure register allocation is correct, this is very inefficient.

This patch brings the first step for reducing the overhead. Instead of pushing everything
to the stack, we just push as many registers as we need for compiling the selector list.

In most cases, we have so many registers that we don't even need to push anything to the stack.

Test: fast/selectors/nth-child-of-register-requirement.html

  • cssjit/SelectorCompiler.cpp:

Add an explicit type for SelectorList to keep information aggregated from all
SelectorFragmentList inside it.

SelectorFragmentList is also extended to include its register and stack requirements.
This information is then used to create a SelectorList and to compile the SelectorFragmentList.

(WebCore::SelectorCompiler::hasAnyCombinators):
We only change the elementAddressRegister when moving over combinators. This is used to detect
if a selector list clobber the elementAddressRegister or leave it untouched.

(WebCore::SelectorCompiler::computeBacktrackingMemoryRequirements):
(WebCore::SelectorCompiler::computeBacktrackingInformation):
Instead of returning a BacktrackingMemoryRequirements, update the SelectorFragmentList and SelectorList directly.

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatchesSelectorList):
This is where the fun happen.
First step is keep the input untouched. For now it is simply pushed on the stack. This can be improved later.

Then we find how many allocated registers we need to save to compile the input selector list. We push those registers
to the stack and give them back to the register allocator.

With enough registers we can now compile the nested selector list. The code has changed a bit for efficiency. Instead
of creating a shortcut for success case, the code now exit on error and proceed on success. This is the general pattern
of SelectorCompiler and it is quite a bit more efficient in the common cases.

Finally, we reallocate the registers and get their values back from the stack. The "tail" is duplicated but that's fine
because in the vast majority of cases it is 1 or 2 pop.

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChildOf):

  • cssjit/StackAllocator.h:

(WebCore::StackAllocator::push):

LayoutTests:

The register pressure cases are already well covered by fast/selectors/nth-child-of-boundaries-*.
The new test covers the maximum register pressure inside :nth-child(of) and having the selector with
max pressure inside a selector list instead of being alone/first.

  • fast/selectors/nth-child-of-register-requirement-expected.txt: Added.
  • fast/selectors/nth-child-of-register-requirement.html: Added.
2:12 PM Changeset in webkit [174837] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Fix the build with the public SDK.

  • WebCoreSupport/WebSelectionServiceController.mm:

We should transition all this SPI to real SPI headers as soon as possible.

2:12 PM Changeset in webkit [174836] by Chris Dumez
  • 12 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for StyleImage
https://bugs.webkit.org/show_bug.cgi?id=137824

Reviewed by Andreas Kling.

Use is<>() / downcast<>() for StyleImage and clean up the surrouding
code.

No new tests, no behavior change.

  • css/CSSCursorImageValue.cpp:

(WebCore::CSSCursorImageValue::detachPendingImage):
(WebCore::CSSCursorImageValue::cachedImage):
(WebCore::CSSCursorImageValue::cachedImageURL):

  • css/CSSImageSetValue.cpp:

(WebCore::CSSImageSetValue::detachPendingImage):
(WebCore::CSSImageSetValue::~CSSImageSetValue):
(WebCore::CSSImageSetValue::cachedImageSet):
(WebCore::CSSImageSetValue::hasFailedOrCanceledSubresources):

  • css/CSSImageValue.cpp:

(WebCore::CSSImageValue::detachPendingImage):
(WebCore::CSSImageValue::cachedImage):
(WebCore::CSSImageValue::hasFailedOrCanceledSubresources):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::loadPendingShapeImage):
(WebCore::StyleResolver::loadPendingImages):

  • page/PageSerializer.cpp:

(WebCore::PageSerializer::retrieveResourcesForProperties):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):

  • rendering/style/StyleCachedImage.h:
  • rendering/style/StyleCachedImageSet.h:
  • rendering/style/StyleGeneratedImage.h:
  • rendering/style/StyleImage.h:
  • rendering/style/StylePendingImage.h:
2:06 PM Changeset in webkit [174835] by Simon Fraser
  • 2 edits in trunk/Tools

[iOS] Simplify test fallback paths for iOS Simulator testing
https://bugs.webkit.org/show_bug.cgi?id=137830

Reviewed by Zalan Bujtas.

Make the fallback paths be:

ios-simulator -> generic
ios-simulator-wk2->ios-simulator -> generic

so don't include mac in the fallback path. Also remove the
version handling for simplicity.

  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort):
(IOSSimulatorPort.default_baseline_search_path):

2:03 PM Changeset in webkit [174834] by dburkart@apple.com
  • 2 edits in trunk/Tools

Fix typos in Dashboard config

1:51 PM Changeset in webkit [174833] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Unreviewed test gardening. Mark some tests as passing that have benefitted from recent bug fixes.

  • platform/win/TestExpectations:
1:35 PM Changeset in webkit [174832] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[Media] Always update controls for <audio> since they are always visible
https://bugs.webkit.org/show_bug.cgi?id=137829
<rdar://problem/18693987>

Reviewed by Brent Fulgham.

Revision 174756 made a change to only update the display of the controls
while they are visible. However, <audio> elements didn't detect visibility
the same way, since their controls do not auto-hide.

Change controlsAreHidden to check if we're an audio element.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.controlsAreHidden): Audio elements do not auto-hide their controls.

1:02 PM Changeset in webkit [174831] by Brent Fulgham
  • 6 edits in trunk/Tools

[Win] Allow WinLauncher to specify Custom User Agent strings
https://bugs.webkit.org/show_bug.cgi?id=137828

Reviewed by Dean Jackson.

  • WinLauncher/Common.cpp: Add support for custom user agent strings.
  • WinLauncher/WinLauncher.cpp: Add some convenience methods to get

and set the user agent strings.

  • WinLauncher/WinLauncher.h:
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.rc: Add new menu

resources and dialog for setting custom User Agent strings.

  • WinLauncher/WinLauncher.vcxproj/WinLauncherLibResource.h:
12:50 PM Changeset in webkit [174830] by commit-queue@webkit.org
  • 11 edits
    2 adds in trunk/Source

[WinCairo] Accelerated compositing is not implemented.
https://bugs.webkit.org/show_bug.cgi?id=137345

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-10-17
Reviewed by Brent Fulgham.

This patch is based on GTK, and the texture mapper graphics layer type.

Source/WebCore:

  • WebCore.vcxproj/copyForwardingHeaders.cmd: Copy texmap headers.
  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: Added method and flag indicating whether animation has started.

(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
(WebCore::GraphicsLayerTextureMapper::addAnimation):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h: Ditto.

(WebCore::GraphicsLayerTextureMapper::startedAnimation):

  • platform/graphics/texmap/TextureMapperShaderProgram.cpp: Use same precision for uniform in vertex shader as in fragment shader.

Otherwise glLinkProgram() will fail, and nothing will be rendered.

Source/WebKit:

  • WebKit.vcxproj/WebKit/WebKit.vcxproj: Added new accelerated compositing source files.
  • WebKit.vcxproj/WebKit/WebKit.vcxproj.filters: Ditto.

Source/WebKit/win:

  • WebCoreSupport/AcceleratedCompositingContext.cpp: Added.

(WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
(WebKit::getWebViewSize):
(WebKit::AcceleratedCompositingContext::initialize):
(WebKit::AcceleratedCompositingContext::~AcceleratedCompositingContext):
(WebKit::AcceleratedCompositingContext::stopAnyPendingLayerFlush):
(WebKit::AcceleratedCompositingContext::enabled):
(WebKit::AcceleratedCompositingContext::prepareForRendering):
(WebKit::AcceleratedCompositingContext::startedAnimation):
(WebKit::AcceleratedCompositingContext::compositeLayersToContext):
(WebKit::AcceleratedCompositingContext::setRootCompositingLayer):
(WebKit::AcceleratedCompositingContext::setNonCompositedContentsNeedDisplay):
(WebKit::AcceleratedCompositingContext::setNeedsDisplayInRect):
(WebKit::AcceleratedCompositingContext::resizeRootLayer):
(WebKit::AcceleratedCompositingContext::scrollNonCompositedContents):
(WebKit::AcceleratedCompositingContext::scheduleLayerFlush):
(WebKit::AcceleratedCompositingContext::flushPendingLayerChanges):
(WebKit::AcceleratedCompositingContext::flushPendingLayerChangesSoon):
(WebKit::AcceleratedCompositingContext::flushAndRenderLayers):
(WebKit::AcceleratedCompositingContext::layerFlushTimerFired):
(WebKit::AcceleratedCompositingContext::notifyAnimationStarted):
(WebKit::AcceleratedCompositingContext::notifyFlushRequired):
(WebKit::AcceleratedCompositingContext::paintContents):

  • WebCoreSupport/AcceleratedCompositingContext.h: Added.

(WebKit::AcceleratedCompositingContext::LayerFlushTimer::LayerFlushTimer):
(WebKit::AcceleratedCompositingContext::LayerFlushTimer::fired):

  • WebView.cpp:

(WebView::WebView):
(WebView::addToDirtyRegion):
(WebView::scrollBackingStore):
(WebView::sizeChanged):
(WebView::paint):
(WebView::setRootChildLayer):
(WebView::flushPendingGraphicsLayerChangesSoon):
(WebView::setAcceleratedCompositing):

  • WebView.h:
12:21 PM Changeset in webkit [174829] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/LayoutTests

Mark platform/mac/accessibility/select-text.html as Failure since we can't take
http://trac.webkit.org/changeset/172028 on branch

  • platform/mac/TestExpectations:
12:16 PM Changeset in webkit [174828] by akling@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

Add test for innerHTML mutations that yield identical DOM.
<https://webkit.org/b/137823>

Reviewed by Chris Dumez.

I made this test while working on an optimization, and it seems useful
to have in the tree since it adds additional coverage. The optimization
may come later.

The test works by creating little DOM subtrees like so:

<foo><bar>some text</bar></foo>

It then overwrites that subtree with an identical one by mutating the
containing element's innerHTML property. It then verifies that the DOM
structure is correct and that Node wrappers retain any custom properties
set on them.

  • fast/innerHTML/identical-mutations-expected.txt: Added.
  • fast/innerHTML/identical-mutations.html: Added.
11:49 AM Changeset in webkit [174827] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Crash when load is canceled while waiting for the user to type HTTP authentication credentials
https://bugs.webkit.org/show_bug.cgi?id=137826
rdar://problem/17329599

Reviewed by Brady Eidson.

No new tests, as we don't have a way to simulate details of user interaction with
an auth dialog.

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::receivedCredential):
(WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
(WebCore::ResourceHandle::receivedRequestToPerformDefaultHandling):
(WebCore::ResourceHandle::receivedChallengeRejection):
Added null checks before passing m_connection for CFNetwork functions, making this
match what Mac code does when sending a message to a nil receiver.

11:28 AM Changeset in webkit [174826] by dburkart@apple.com
  • 3 edits in branches/safari-600.1-branch/LayoutTests

Merge r171344

10:41 AM Changeset in webkit [174825] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix the iOS build.

  • platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm:

(WebCore::AVTrackPrivateAVFObjCImpl::languageForAVMediaSelectionOption):

10:30 AM Changeset in webkit [174824] by Simon Fraser
  • 8 edits in trunk

[iOS] Turn off font autosizing for iOS WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=137806

Reviewed by Sam Weinig.
Source/WebKit2:

Confusingly, WKPreferencesSetTextAutosizingEnabled() does nothing on iOS.
Instead, we have to add WKPreferencesSetMinimumZoomFontSize() and set it to 0
to disable font autosizing.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetMinimumZoomFontSize):
(WKPreferencesGetMinimumZoomFontSize):

  • UIProcess/API/C/WKPreferencesRefPrivate.h:

Tools:

Confusingly, WKPreferencesSetTextAutosizingEnabled() does nothing on iOS.
Instead, we have to add WKPreferencesSetMinimumZoomFontSize() and set it to 0
to disable font autosizing.

Add platformResetPreferencesToConsistentValues() and implement it in the iOS
test controller to set platform-specific prefs.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::TestController::platformResetPreferencesToConsistentValues):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/ios/TestControllerIOS.mm:

(WTR::TestController::platformResetPreferencesToConsistentValues):

  • WebKitTestRunner/mac/TestControllerMac.mm:

(WTR::TestController::platformResetPreferencesToConsistentValues):

9:40 AM Changeset in webkit [174823] by jer.noble@apple.com
  • 12 edits
    16 adds in trunk

[Mac] Represent AVMediaSelectionOptions as AudioTracks
https://bugs.webkit.org/show_bug.cgi?id=137474

Reviewed by Brent Fulgham.

Source/WebCore:

Test: http/tests/media/hls/hls-audio-tracks.html

Support selecting audio "tracks" in HLS streams by exposing AVMediaSelectionOptions
as entries in the video's AudioTrackList.

AVMediaSessionGroups and AVPlayerItems don't have KVO or notifications to track when options
are selected and deselected, so wrap AVMediaSessionGroup and AVMediaSessionOption in C++
wrappers. Each AVMediaSelectionGroup can have only one AVMediaSelectionOption selected at a
time, so the wrapper will take care of answering which AVMediaSelectionOption is currently
selected, as without KVO notifications, asking the AVMediaSelectionGroup directly is
inconsistent. Because setting the selected option multiple times in the same run-loop can
cause flakiness, coalesce calls to setSelectedOption() by setting a one-shot timer to do
the actual selection in the next run-loop.

  • platform/graphics/avfoundation/MediaSelectionGroupAVFObjC.h: Added.

(WebCore::MediaSelectionOptionAVFObjC::avMediaSelectionOption):
(WebCore::MediaSelectionOptionAVFObjC::clearGroup): Clear backpointer to group from option.
(WebCore::MediaSelectionGroupAVFObjC::selectedOption): Simple accessor.
(WebCore::MediaSelectionGroupAVFObjC::options): Simple accessor.
(WebCore::MediaSelectionGroupAVFObjC::avMediaSelectionGroup): Simple accessor.

  • platform/graphics/avfoundation/MediaSelectionGroupAVFObjC.mm: Added.

(WebCore::MediaSelectionOptionAVFObjC::create): Simple factory method.
(WebCore::MediaSelectionOptionAVFObjC::MediaSelectionOptionAVFObjC): Simple constructor.
(WebCore::MediaSelectionOptionAVFObjC::setSelected): Pass through to MediaSelectionGroupAVFObjC.
(WebCore::MediaSelectionOptionAVFObjC::selected): Ditto.
(WebCore::MediaSelectionOptionAVFObjC::index): Return index of this object in the group's object.
(WebCore::MediaSelectionGroupAVFObjC::create):
(WebCore::MediaSelectionGroupAVFObjC::MediaSelectionGroupAVFObjC):
(WebCore::MediaSelectionGroupAVFObjC::~MediaSelectionGroupAVFObjC):
(WebCore::MediaSelectionGroupAVFObjC::updateOptions): Discover added or removed options.
(WebCore::MediaSelectionGroupAVFObjC::setSelectedOption): Set a one shot timer to coalesce multiple calls.
(WebCore::MediaSelectionGroupAVFObjC::selectionTimerFired): Set the selected AVSelectionOption.

Modify AVTrackPrivateAVFObjCImpl to support both AVPlayerItemTracks and these new
MediaSelectionOptionAVFObjC objects.

  • platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.h:

(WebCore::AVTrackPrivateAVFObjCImpl::mediaSelectionOption): Simple accessor.

  • platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm:

(WebCore::AVTrackPrivateAVFObjCImpl::AVTrackPrivateAVFObjCImpl): Simple constructor.
(WebCore::AVTrackPrivateAVFObjCImpl::~AVTrackPrivateAVFObjCImpl): Simple destructor.
(WebCore::AVTrackPrivateAVFObjCImpl::enabled): Use MediaSelectionOptionAVFObjC, if present.
(WebCore::AVTrackPrivateAVFObjCImpl::setEnabled): Ditto.
(WebCore::AVTrackPrivateAVFObjCImpl::audioKind): Ditto.
(WebCore::AVTrackPrivateAVFObjCImpl::videoKind): Ditto.
(WebCore::AVTrackPrivateAVFObjCImpl::index): Ditto.
(WebCore::AVTrackPrivateAVFObjCImpl::id): Ditto.
(WebCore::AVTrackPrivateAVFObjCImpl::label): Ditto.
(WebCore::AVTrackPrivateAVFObjCImpl::language): Ditto.
(WebCore::AVTrackPrivateAVFObjCImpl::languageForAVMediaSelectionOption): Ditto.
(WebCore::AVTrackPrivateAVFObjCImpl::trackID): Ditto.

Allow AudioTrackPrivateAVFObjC and VideoTrackPrivateAVFObjC to be created with
a MediaSelectionOptionAVFObjC.

  • platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h:

(WebCore::AudioTrackPrivateAVFObjC::create): Takes a MediaSelectionOptionAVFObjC.

  • platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:

(WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC): Simple constructor.
(WebCore::AudioTrackPrivateAVFObjC::setMediaSelectionOption): Create a new AVTrackPrivateAVFObjCImpl.
(WebCore::AudioTrackPrivateAVFObjC::mediaSelectionOption): Simple accessor.

  • platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp:

(WebCore::VideoTrackPrivateAVFObjC::VideoTrackPrivateAVFObjC): Simple constructor.
(WebCore::VideoTrackPrivateAVFObjC::setMediaSelectonOption): Create a new AVTrackPrivateAVFObjCImpl.
(WebCore::VideoTrackPrivateAVFObjC::mediaSelectionOption): Simple accessor.

  • platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.h:

Because IDs are not necessarily unique across AVPlayerItemTracks and AVMediaSelectionOptions,
use the index of the track or option instead of it's self-declared ID for ordering for the
trackIndex.

  • platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:

(WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack):

  • platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.mm:

(WebCore::VideoTrackPrivateMediaSourceAVFObjC::resetPropertiesFromTrack):

Rather than making allowing the AVPlayerItem to automatically select the "best"
AVMediaSelectionOption, select the automatic options when creating the AVPlayerItem
and thereafter allow the users manual selections "stick".

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::ensureAVPlayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::ensureAVPlayerItem):

Determine whether any MediaSelectionOptionsAVFObjC have been added or removed and send trackChange events accordingly.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::determineChangedTracksFromNewTracksAndOldItems): Added.
(WebCore::MediaPlayerPrivateAVFoundationObjC::updateAudioTracks): Search for updated selection options.
(WebCore::MediaPlayerPrivateAVFoundationObjC::updateVideoTracks): Ditto.
(WebCore::MediaPlayerPrivateAVFoundationObjC::safeMediaSelectionGroupForAudibleMedia): Return selection group, if available.
(WebCore::MediaPlayerPrivateAVFoundationObjC::safeMediaSelectionGroupForVisualMedia): Ditto.
(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksDidChange): Filter out AVPlayerItemTracks without

AVAssetTracks, as these will be represented by MediaSelectionGroupObjCs instead.

Add new files to project.

  • WebCore.xcodeproj/project.pbxproj:

LayoutTests:

  • http/tests/media/hls/hls-audio-tracks-expected.txt: Added.
  • http/tests/media/hls/hls-audio-tracks.html: Added.
  • http/tests/media/resources/hls/audio-tracks.m3u8: Added.
  • http/tests/media/resources/hls/bipbop/iframe_index.m3u8: Added.
  • http/tests/media/resources/hls/bipbop/main0.ts: Added.
  • http/tests/media/resources/hls/bipbop/main1.ts: Added.
  • http/tests/media/resources/hls/bipbop/prog_index.m3u8: Added.
  • http/tests/media/resources/hls/french/main.aac: Added.
  • http/tests/media/resources/hls/french/prog_index.m3u8: Added.
  • http/tests/media/resources/hls/spanish/main.aac: Added.
  • http/tests/media/resources/hls/spanish/prog_index.m3u8: Added.
9:13 AM Changeset in webkit [174822] by Brent Fulgham
  • 1 edit
    6 deletes in trunk/LayoutTests

[Win] Test gardening after r174796.

Now that Windows DRT matches Mac's output, we can get rid of some custom test expecations.

  • platform/win/fast/dom/window-load-crash-expected.txt: Removed.
  • platform/win/fast/images/crossfade-client-not-removed-crash-expected.txt: Removed.
  • platform/win/fast/ruby/before-block-doesnt-crash-expected.txt: Removed.
  • platform/win/fast/ruby/before-table-doesnt-crash-expected.txt: Removed.
  • platform/win/fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Removed.
  • platform/win/loader/image-loader-adoptNode-assert-expected.txt: Removed.
9:07 AM Changeset in webkit [174821] by oliver@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Various arguments optimisations in codegen fail to account for arguments being in lexical record
https://bugs.webkit.org/show_bug.cgi?id=137617

Reviewed by Michael Saboff.

Rework the way we track |arguments| references so that we don't try
to use the |arguments| reference on the stack if it's not safe.

To do this without nuking performance it was necessary to update
the parser to track modification of the |arguments| reference
itself.

  • bytecode/CodeBlock.cpp:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::willResolveToArguments):
(JSC::BytecodeGenerator::uncheckedLocalArgumentsRegister):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitConstruct):
(JSC::BytecodeGenerator::emitEnumeration):
(JSC::BytecodeGenerator::uncheckedRegisterForArguments): Deleted.

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::hasSafeLocalArgumentsRegister):

  • bytecompiler/NodesCodegen.cpp:

(JSC::BracketAccessorNode::emitBytecode):
(JSC::DotAccessorNode::emitBytecode):
(JSC::getArgumentByVal):
(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):
(JSC::ArrayPatternNode::emitDirectBinding):

  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::Frame::existingArguments):

  • parser/Nodes.h:

(JSC::ScopeNode::modifiesArguments):

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseInner):

  • parser/Parser.h:

(JSC::Scope::getCapturedVariables):

  • parser/ParserModes.h:
3:51 AM Changeset in webkit [174820] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL] REGRESSION(r173929): It broke the Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=137522

Reviewed by Csaba Osztrogonác.

r173929 let web inspector use a separate web process. Besides it changed that the inspector is shown
as docking mode by default. However EFL port doesn't support to show web inspector as docking window yet.
This patch is to show web inspector on EFL new window as before. Docking mode should be implemented by
upcoming patch.

  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::platformAttach):

3:43 AM Changeset in webkit [174819] by g.czajkowski@samsung.com
  • 2 edits in trunk/Source/WebCore

[EFL] window.screen.width returns wrong value if more displays are available
https://bugs.webkit.org/show_bug.cgi?id=137778

Reviewed by Gyuyoung Kim.

ecore_x_screen_size_get() retrieves the size of Ecore_X_Screen, for example,
having two displays of 1680x1050, it will return 3360x1050.

Unlike EFL's MiniBrowser, Firefox and Chrome return screen of the current display.

No new tests. Hardware specific bug including multiple displays.

  • platform/efl/PlatformScreenEfl.cpp:

(WebCore::screenRect):
Use ecore's xrandr to determine the screen on which browser window is displayed.

3:10 AM Changeset in webkit [174818] by Carlos Garcia Campos
  • 7 edits in trunk/Source

[GLIB] Add API to GMainLoopSource to schedule sources after a delay in microseconds
https://bugs.webkit.org/show_bug.cgi?id=137782

Reviewed by Sergio Villar Senin.

Source/WebCore:

  • platform/gtk/SharedTimerGtk.cpp:

(WebCore::setSharedTimerFireInterval): Use microseconds instead of
milliseconds.

Source/WebKit2:

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::layerFlushTimerFired): Use microseconds
instead of milliseconds.

Source/WTF:

In some cases when we have a double with the time in seconds, the
conversion to milliseconds ends up truncating the value to 0, and
the source scheduled immediately.

  • wtf/gobject/GMainLoopSource.cpp:

(WTF::createMicrosecondsTimeoutSource): Use a custom timeout
source that handles the interval in microseconds instead of milliseconds.
(WTF::GMainLoopSource::scheduleAfterDelay): Use MicrosecondsTimeoutSource.
(WTF::GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy): Ditto.

  • wtf/gobject/GMainLoopSource.h:
3:04 AM Changeset in webkit [174817] by Carlos Garcia Campos
  • 8 edits
    2 deletes in trunk/Source

[GTK] Move touch events handling from Platform to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=137735

Reviewed by Sergio Villar Senin.

Source/WebCore:

Remove GtkTouchContextHelper.

  • PlatformGTK.cmake:
  • platform/gtk/GtkTouchContextHelper.cpp: Removed.
  • platform/gtk/GtkTouchContextHelper.h: Removed.

Source/WebKit2:

GtkTouchContextHelper was only used by WebKitWebViewBase, since
it's the only one that can create touch events. The code has been
simplified by processing the events in the view, and the native
touch events are now created with the native event and touch points.

  • Shared/NativeWebTouchEvent.h:

(WebKit::NativeWebTouchEvent::touchContext): Deleted.

  • Shared/gtk/NativeWebTouchEventGtk.cpp:

(WebKit::NativeWebTouchEvent::NativeWebTouchEvent): Pass touch
points instead of touch context to WebEventFactory::createWebTouchEvent().

  • Shared/gtk/WebEventFactory.cpp:

(WebKit::WebEventFactory::createWebTouchEvent): Create the
WebTouchEvent for the given native event and points.
(WebKit::touchPhaseFromEvents): Deleted.
(WebKit::appendTouchEvent): Deleted.

  • Shared/gtk/WebEventFactory.h:
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(appendTouchEvent): Helper function to create a
WebPlatformTouchPoint for the given native event and add it to the
list of touch points.
(webkitWebViewBaseGetTouchPointForEvent): Build the touch point
list for the event.
(webkitWebViewBaseTouchEvent): Process the touch event.
(webkitWebViewBaseDragDataReceived): Deleted.

3:00 AM Changeset in webkit [174816] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

Remove unused function in WorkerThreadableLoader.h
https://bugs.webkit.org/show_bug.cgi?id=137811

Reviewed by Csaba Osztrogonác.

mainThreadCreateLoader() isn't used anywhere. Even there is no implementation.

  • loader/WorkerThreadableLoader.h:
2:54 AM Changeset in webkit [174815] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source/JavaScriptCore

Use WTF::move() instead of std::move() to help ensure move semantics in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=137809

Reviewed by Csaba Osztrogonác.

Substitution of WTF::move() for std::move(). Clean up std::move() in JavaScriptCore.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeForStubInfo):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeForStubInfo):

  • bytecode/PutByIdVariant.cpp:

(JSC::PutByIdVariant::setter):

1:27 AM Changeset in webkit [174814] by mitz@apple.com
  • 2 edits in trunk/Source/WTF

Reverted incorrect build fix attempt.

  • wtf/Threading.cpp:
1:23 AM Changeset in webkit [174813] by mitz@apple.com
  • 2 edits in trunk/Source/WTF

Tried to fix the Yosemite build.

  • wtf/Threading.cpp:

Oct 16, 2014:

11:31 PM Changeset in webkit [174812] by Carlos Garcia Campos
  • 2 edits in trunk

REGRESSION(CMake): [GTK] WebKitSettings:enable-smooth-scrolling does nothing
https://bugs.webkit.org/show_bug.cgi?id=137781

Reviewed by Martin Robinson.

We used to enable smooth scrolling unconditionally in autotools
(via WebKitFeatures.m4), but since the switch to CMake it's
unconditionally disabled, so changing the setting doesn't have any
effect.

  • Source/cmake/OptionsGTK.cmake: Enable smooth scrolling.
10:34 PM Changeset in webkit [174811] by Yusuke Suzuki
  • 3 edits
    4 adds in trunk

CSS Selectors Level 4: Implement :matches in SelectorChecker
https://bugs.webkit.org/show_bug.cgi?id=137393

Reviewed by Benjamin Poulain.

Source/WebCore:

In this patch, we introduce initial :matches implementation.
In this current implementation, we don't consider pseudo elements.

Test: fast/selectors/querySelector-matches.html

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

LayoutTests:

  • fast/selectors/matches-selector-list-expected.txt: Added.
  • fast/selectors/matches-selector-list.html: Added.
  • fast/selectors/querySelector-matches-expected.txt: Added.
  • fast/selectors/querySelector-matches.html: Added.
10:17 PM Changeset in webkit [174810] by Yusuke Suzuki
  • 3 edits in trunk/Source/WebCore

CSS JIT: Introduce StackAllocator::addressOf
https://bugs.webkit.org/show_bug.cgi?id=137771

Reviewed by Benjamin Poulain.

Introduce StackAllocator::addressOf and drop offsetToStackReference, it's too primitive.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateParentElementTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::loadCheckingContext):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAdjacentBacktrackingTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDescendantBacktrackingTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstLink):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateStoreLastVisitedElement):

  • cssjit/StackAllocator.h:

(WebCore::StackAllocator::addressOf):
(WebCore::StackAllocator::offsetToStackReference):

10:14 PM Changeset in webkit [174809] by mitz@apple.com
  • 4 edits in trunk

OSObjectPtr is missing leakRef()
https://bugs.webkit.org/show_bug.cgi?id=137798

Reviewed by Sam Weinig.

Source/WTF:

  • wtf/OSObjectPtr.h:

Tools:

  • TestWebKitAPI/Tests/WTF/darwin/OSObjectPtr.cpp:

(TestWebKitAPI::TEST(OSObjectPtr, LeakRef)): Added.

8:26 PM Changeset in webkit [174808] by Lucas Forschler
  • 2 edits in trunk/Tools

Update target platform to remove Leopard, Snow Leopard, Lion.
Add Yosemite.

Unreviewed.

  • BuildSlaveSupport/build.webkit.org-config/wkbuild.py:

(_should_file_trigger_build):

7:17 PM Changeset in webkit [174807] by ap@apple.com
  • 3 edits
    2 adds in trunk

REGRESSION (r169024): Undetermined text is not displayed in the search field of Adobe Help Website
https://bugs.webkit.org/show_bug.cgi?id=137679
rdar://problem/18450335

Reviewed by Enrica Casucci.

Source/WebCore:

Test: platform/mac/editing/input/selected-composed-text-painting.html

  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paint): We do not paint

selection beckground for unconfirmed text with underlines, so we should use a regular
style for text painting, as well.

LayoutTests:

  • platform/mac/editing/input/selected-composed-text-painting-expected.html: Added.
  • platform/mac/editing/input/selected-composed-text-painting.html: Added.
6:54 PM Changeset in webkit [174806] by dburkart@apple.com
  • 3 edits in branches/safari-600.1-branch/LayoutTests

Merge r171301

6:54 PM Changeset in webkit [174805] by Chris Dumez
  • 14 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for BasicShape subclasses
https://bugs.webkit.org/show_bug.cgi?id=137766

Reviewed by Andreas Kling.

Use is<>() / downcast<>() for BasicShape subclasses and clean up the
surrounding code.

No new tests, no behavior change.

  • css/BasicShapeFunctions.cpp:

(WebCore::valueForBasicShape):
(WebCore::basicShapeForValue):

  • css/BasicShapeFunctions.h:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::shapePropertyValue):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):

  • rendering/ClipPathOperation.h:

(WebCore::ShapeClipPathOperation::create):
Take a PassRef<BasicShape> in argument to make it obvious it is never
null.

(WebCore::ShapeClipPathOperation::basicShape):
Return a reference instead of a pointer as it can never return null.

(WebCore::ShapeClipPathOperation::windRule):
(WebCore::ShapeClipPathOperation::pathForReferenceRect):
Make it non-const due to the const-correctness of Ref::get().

(WebCore::ShapeClipPathOperation::ShapeClipPathOperation):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::nodeAtPoint):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setupClipPath):

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape):

  • rendering/shapes/Shape.h:
  • rendering/shapes/ShapeOutsideInfo.cpp:

(WebCore::ShapeOutsideInfo::computedShape):

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShape::canBlend):
(WebCore::BasicShapeCircle::blend):
(WebCore::BasicShapeEllipse::blend):
(WebCore::BasicShapePolygon::blend):
(WebCore::BasicShapeInset::blend):

  • rendering/style/BasicShapes.h:
  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::prepareToRenderSVGContent):

6:53 PM Changeset in webkit [174804] by Chris Dumez
  • 9 edits in trunk/Source/WebCore

Leverage the new RenderElement::m_isCSSAnimating flag in more places
https://bugs.webkit.org/show_bug.cgi?id=137786

Reviewed by Simon Fraser.

Leverage the new RenderElement::m_isCSSAnimating flag that was introduced
in r174703 in more places, for performance. This avoids doing extra work
for renderers on which we are not running animations on. This patch also
updates the API a bit to use more references instead of pointers, making
it clear the RenderElement cannot be null and thus avoiding unnecessary
null checks.

No new tests, no behavior change.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::computeRenderStyleForProperty):

  • page/animation/AnimationController.cpp:

(WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
(WebCore::AnimationControllerPrivate::clear):
(WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
(WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
(WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
(WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
(WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
(WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
(WebCore::AnimationController::cancelAnimations):
(WebCore::AnimationController::updateAnimations):
(WebCore::AnimationController::getAnimatedStyleForRenderer):
(WebCore::AnimationController::notifyAnimationStarted):
(WebCore::AnimationController::isRunningAnimationOnRenderer):
(WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer):

  • page/animation/AnimationController.h:
  • page/animation/AnimationControllerPrivate.h:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::willBeDestroyed):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::currentTransform):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::notifyAnimationStarted):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
(WebCore::RenderLayerCompositor::isRunningAcceleratedTransformAnimation):

6:14 PM Changeset in webkit [174803] by commit-queue@webkit.org
  • 35 edits in trunk

Removing CUSTOM_PROTOCOLS guard
https://bugs.webkit.org/show_bug.cgi?id=137741

Patch by Pascal Jacquemart <p.jacquemart@samsung.com> on 2014-10-16
Reviewed by Benjamin Poulain.

.:

  • Source/cmake/OptionsEfl.cmake:

Source/WebKit2:

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):

  • Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm:
  • Shared/Network/CustomProtocols/CustomProtocolManager.h:
  • Shared/Network/CustomProtocols/CustomProtocolManager.messages.in:
  • Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp:
  • Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h:
  • Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp:
  • Shared/Network/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):

  • Shared/Network/NetworkProcessCreationParameters.h:
  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/API/C/soup/WKAPICastSoup.h:
  • UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.cpp:

(WKSoupCustomProtocolRequestManagerGetTypeID):
(WKSoupCustomProtocolRequestManagerSetClient):

  • UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
  • UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.messages.in:
  • UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
  • UIProcess/Network/CustomProtocols/soup/CustomProtocolManagerProxySoup.cpp:
  • UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.cpp:
  • UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.h:
  • UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManagerClient.cpp:
  • UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManagerClient.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::NetworkProcessProxy):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):
(WebKit::WebContext::unregisterGlobalURLSchemeAsHavingCustomProtocolHandlers):
(WebKit::WebContext::unregisterSchemeForCustomProtocol):

  • UIProcess/WebContext.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::WebProcessProxy):

  • UIProcess/WebProcessProxy.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::platformInitializeWebProcess):
(WebKit::WebContext::platformInitializeNetworkProcess):

  • WebKit2Prefix.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):

  • WebProcess/soup/WebKitSoupRequestGeneric.cpp:

(webkitSoupRequestGenericSendAsync):
(webkitSoupRequestGenericSendFinish):

  • WebProcess/soup/WebKitSoupRequestGeneric.h:
6:12 PM Changeset in webkit [174802] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Missing RefPtr.release() calls in TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=137777

Patch by Adrien Destugues <pulkomandy@gmail.com> on 2014-10-16
Reviewed by Chris Dumez.

No new tests: no functional change, cleanup/optimization.

Avoids useless ref/deref cycle when returning from functions.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::acquireTextureFromPool):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::paintIntoSurface):

5:35 PM Changeset in webkit [174801] by Chris Dumez
  • 6 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for ContentData subclasses
https://bugs.webkit.org/show_bug.cgi?id=137768

Reviewed by Andreas Kling.

Use is<>() / downcast<>() for ContentData subclasses.

No new tests, no behavior change.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::contentToCSSValue):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::loadPendingImages):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::createFor):

  • rendering/style/ContentData.h:

(WebCore::operator==):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::setContent):

4:55 PM Changeset in webkit [174800] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

commit-queue: fails to replace OO-PS! with reviewer name
<http://webkit.org/b/137795>

Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/common/net/bugzilla/bugzilla.py:

(Bugzilla.fetch_bug_dictionary): Bugzilla 4.2.x never gives out
email addresses to unauthenticated page loads, so we must always
authenticate before getting bug data so we get full email
addresses.

4:39 PM Changeset in webkit [174799] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

Crash under RemoteLayerTreeHost::getLayer() when closing a tab
https://bugs.webkit.org/show_bug.cgi?id=137796
rdar://problem/18547565

Reviewed by Tim Horton.

CA can call our animation delegate after the RemoteLayerTreeHost has been
destroyed. CAAnimation retains its delegate, so it's safe for us to null out
the WKAnimationDelegate's pointer to the RemoteLayerTreeHost when tearing down
the RemoteLayerTreeHost.

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::~RemoteLayerTreeHost):
(WebKit::RemoteLayerTreeHost::animationDidEnd):

  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:

(-[WKAnimationDelegate invalidate]):
(-[WKAnimationDelegate animationDidStart:]):
(-[WKAnimationDelegate animationDidStop:finished:]):

3:43 PM Changeset in webkit [174798] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

[Mac] Unreviewed gardening.

  • platform/mac/TestExpectations:
3:43 PM Changeset in webkit [174797] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

commit-queue: fails to close bugs after successfully landing patches
<http://webkit.org/b/137794>

Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/common/net/bugzilla/bugzilla.py:

(Bugzilla.clear_attachment_flags): Change 'nr=0' to 'nr=1' to
tell Mechanize to use the second <textarea> on the page with
name="comment".

3:08 PM Changeset in webkit [174796] by Brent Fulgham
  • 7 edits in trunk/Tools

[Win] Update DRT to match Mac Logic
https://bugs.webkit.org/show_bug.cgi?id=137787

Reviewed by Dean Jackson.

  • DumpRenderTree/win/DumpRenderTree.cpp:

(initialize): 0 -> nullptr
(runTest): Initialize MSG structure before using.
(main): Add CRT debug flags if building DRT with debug malloc on Windows.
Also, cleanly shut down COM when exiting.

  • DumpRenderTree/win/FrameLoadDelegate.cpp:

(FrameLoadDelegate::didChangeLocationWithinPageForFrame): Move from
header and add printf to match Mac.
(FrameLoadDelegate::windowScriptObjectAvailable): Ditto.

  • DumpRenderTree/win/FrameLoadDelegate.h:

(FrameLoadDelegate::didChangeLocationWithinPageForFrame): Deleted.
(FrameLoadDelegate::windowScriptObjectAvailable): Deleted.

  • DumpRenderTree/win/ResourceLoadDelegate.cpp:

(isLocalhost): Added.
(hostIsUsedBySomeTestsToGenerateError): Added.
(ResourceLoadDelegate::willSendRequest): Add logic to mimic Mac's use
of certain error and redirect host names.

  • DumpRenderTree/win/UIDelegate.cpp:

(UIDelegate::runJavaScriptAlertPanelWithMessage): Use 'done' flag to decide if
anything should be output to the console. This modifies behavior to match the Mac.
(UIDelegate::runJavaScriptConfirmPanelWithMessage): Ditto.
(UIDelegate::runJavaScriptTextInputPanelWithPrompt): Ditto.
(UIDelegate::runBeforeUnloadConfirmPanelWithMessage): Ditto.
(UIDelegate::webViewAddMessageToConsole): Ditto.

  • WinLauncher/PageLoadTestClient.cpp:

(PageLoadTestClient::pageLoadEndedAtTime): Drive-by-fix for an assertion that I
added last week.

3:02 PM Changeset in webkit [174795] by oliver@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

Use a single allocation for the Arguments object
https://bugs.webkit.org/show_bug.cgi?id=137751

Reviewed by Filip Pizlo.

This patch removes the secondary allocation for parameters in the Arguments
object. This is faily simple, but we needed to make it possible for the JIT
to allocate a variable GC object. To do this i've added a new
emitAllocateVariableSizedJSObject function to the JIT that does the work to
find the correct heap for a variable sized allocation and then bump that
allocator.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::emitAllocateArguments):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::emitAllocateVariableSizedJSObject):

  • heap/CopyToken.h:
  • heap/Heap.h:

(JSC::Heap::subspaceForObjectWithoutDestructor):
(JSC::Heap::subspaceForObjectNormalDestructor):
(JSC::Heap::subspaceForObjectsWithImmortalStructure):

  • heap/MarkedSpace.h:

(JSC::MarkedSpace::subspaceForObjectsWithNormalDestructor):
(JSC::MarkedSpace::subspaceForObjectsWithImmortalStructure):
(JSC::MarkedSpace::subspaceForObjectsWithoutDestructor):

  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::Frame::createArguments):

  • runtime/Arguments.cpp:

(JSC::Arguments::visitChildren):
(JSC::Arguments::copyBackingStore):
(JSC::Arguments::tearOff):
(JSC::Arguments::allocateRegisterArray): Deleted.

  • runtime/Arguments.h:

(JSC::Arguments::create):
(JSC::Arguments::isTornOff):
(JSC::Arguments::offsetOfRegisterArray):
(JSC::Arguments::registerArraySizeInBytes):
(JSC::Arguments::registerArray):
(JSC::Arguments::allocationSize): Deleted.

2:58 PM Changeset in webkit [174794] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r174744.
https://bugs.webkit.org/show_bug.cgi?id=137790

Caused another WebGL conformance test to fail (Requested by
rfong on #webkit).

Reverted changeset:

"glReadPixels on NVIDIA cards returns the wrong values for the
alpha channel when alpha is off."
https://bugs.webkit.org/show_bug.cgi?id=137752
http://trac.webkit.org/changeset/174744

2:57 PM Changeset in webkit [174793] by commit-queue@webkit.org
  • 4 edits in trunk

Unreviewed, rolling out r174754.
https://bugs.webkit.org/show_bug.cgi?id=137789

Speculative fix for Windows test was ineffective. (Requested
by rfong on #webkit).

Reverted changeset:

"[Windows] Add some more logging to debug Windows test
issues."
http://trac.webkit.org/changeset/174754

2:33 PM Changeset in webkit [174792] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

[Mac] Unreviewed gardening.

Unskip more subpixel related tests.

  • platform/mac/TestExpectations:
1:13 PM Changeset in webkit [174791] by timothy_horton@apple.com
  • 21 edits
    2 adds in trunk/Source

Implement selection services menu for Legacy WebKit
https://bugs.webkit.org/show_bug.cgi?id=137582
<rdar://problem/18604241>

Reviewed by Brady Eidson.

  • WebCore.exp.in:
  • editing/Editor.h:
  • editing/ios/EditorIOS.mm:

(WebCore::Editor::replaceSelectionWithAttributedString):

  • editing/mac/EditorMac.mm:

(WebCore::Editor::replaceSelectionWithAttributedString):
Add replaceSelectionWithAttributedString, which replaces the selection
with the given attributed string (converting to plain text if the destination
is not richly editable).

  • WebKit.xcodeproj/project.pbxproj:
  • Misc/WebSharingServicePickerController.h:

Move SPI into the header (in the near future it will be moved to a modern-style SPI header).
Add WebSharingServicePickerClient, which other classes can implement
instead of tying WebSharingServicePickerController strongly to WebContextMenuClient.
Make initWithData:... -> initWithItems:... instead, taking an array of NSItemProviders.

  • Misc/WebSharingServicePickerController.mm:

Pass in NSSharingServicePickerStyle, so that clients can specify the style.

(-[WebSharingServicePickerController clear]):
(-[WebSharingServicePickerController didShareImageData:confirmDataIsValidTIFFData:]):
(-[WebSharingServicePickerController sharingServicePicker:didChooseSharingService:]):
(-[WebSharingServicePickerController sharingService:sourceFrameOnScreenForShareItem:]):
(-[WebSharingServicePickerController sharingService:transitionImageForShareItem:contentRect:]):
(-[WebSharingServicePickerController sharingService:sourceWindowForShareItems:sharingContentScope:]):
Make use of WebSharingServicePickerClient.

(-[WebSharingServicePickerController sharingService:didShareItems:]):
If we're returned a NSAttributedString, paste it on top of the current selection,
similar to what the WebKit2 implementation currently does.

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::handleTelephoneNumberClick):
(WebChromeClient::handleSelectionServiceClick):
(WebChromeClient::hasRelevantSelectionServices):
Override the services-related ChromeClient functions, forward them to WebSelectionServiceController.

  • WebCoreSupport/WebContextMenuClient.h:
  • WebCoreSupport/WebContextMenuClient.mm:

(WebContextMenuClient::sharingServicePickerWillBeDestroyed):
(WebContextMenuClient::pageForSharingServicePicker):
(WebContextMenuClient::windowForSharingServicePicker):
(WebContextMenuClient::screenRectForCurrentSharingServicePickerItem):
(WebContextMenuClient::imageForCurrentSharingServicePickerItem):
(WebContextMenuClient::contextMenuForEvent):
(WebContextMenuClient::screenRectForHitTestNode): Deleted.
(WebContextMenuClient::renderedImageForControlledImage): Deleted.
(WebContextMenuClient::clearSharingServicePickerController): Deleted.
Have WebContextMenuClient implement WebSharingServicePickerClient to avoid
having WebSharingServicePickerController tightly bound to it.
Make an NSItemProvider array when instantiating WebSharingServicePickerController
instead of handing it data directly.

  • WebCoreSupport/WebSelectionServiceController.h: Copied from Source/WebKit/mac/WebCoreSupport/WebContextMenuClient.h.
  • WebCoreSupport/WebSelectionServiceController.mm: Added.

(WebSelectionServiceController::WebSelectionServiceController):
Add WebSelectionServiceController, which will act as the WebSharingServicePickerClient
for selection services.

(WebSelectionServiceController::handleSelectionServiceClick):
Create a WebSharingSericePickerController with the selection's attributed string, and show its menu.

(hasCompatibleServicesForItems):
(WebSelectionServiceController::hasRelevantSelectionServices):
Determine whether or not services are available.

(WebSelectionServiceController::sharingServicePickerWillBeDestroyed):
(WebSelectionServiceController::pageForSharingServicePicker):
(WebSelectionServiceController::windowForSharingServicePicker):
Implement the rest of the WebSharingServicePickerClient overrides.

(WebSelectionServiceController::screenRectForCurrentSharingServicePickerItem):
(WebSelectionServiceController::imageForCurrentSharingServicePickerItem):
These are only useful for image sharing services, so we don't need to
implement them (WebContextMenuClient does, on the other hand).

  • WebView/WebView.mm:

(-[WebView _selectionServiceController]):

  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:
  • WebView/WebViewInternal.h:

Keep a WebSelectionServiceController.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(-[WKSharingServicePickerDelegate sharingService:didShareItems:]):
Add a note that we should transition to using replaceSelectionWithAttributedString.

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::handleSelectionServiceClick):
Allow editor services in editable-but-not-rich-text areas, just like in WebKit1.

12:56 PM Changeset in webkit [174790] by fpizlo@apple.com
  • 2 edits
    1 add in trunk/Source/JavaScriptCore

Apparently we've had a hole in arguments capture all along
https://bugs.webkit.org/show_bug.cgi?id=137767

Reviewed by Oliver Hunt.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getArgument):

  • tests/stress/arguments-captured.js: Added.

(foo):
(bar):

12:55 PM Changeset in webkit [174789] by saambarati1@gmail.com
  • 16 edits in trunk/Source/JavaScriptCore

Have the ProfileType node in the DFG convert to a structure check where it can
https://bugs.webkit.org/show_bug.cgi?id=137596

Reviewed by Filip Pizlo.

TypeSet now keeps track of the live set of Structures it has seen.
It no longer nukes everything during GC. It now only removes unmarked
structures during GC. This modification allows the ProfileType node
to convert into a CheckStructure node safely in the DFG.

This change brings up the conversion rate from ProfileType to Check
or CheckStructrue from ~45% to ~65%. This change also speeds the
type profiler up significantly: consistently between 2x-20x faster.

This patch also does some slight refactoring: a few type profiler
related fields are moved from VM to TypeProfiler.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToCheckStructure):

  • heap/Heap.cpp:

(JSC::Heap::collect):

  • runtime/SymbolTable.cpp:

(JSC::SymbolTable::uniqueIDForVariable):

  • runtime/SymbolTable.h:
  • runtime/TypeLocationCache.cpp:

(JSC::TypeLocationCache::getTypeLocation):

  • runtime/TypeProfiler.cpp:

(JSC::TypeProfiler::TypeProfiler):
(JSC::TypeProfiler::nextTypeLocation):
(JSC::TypeProfiler::invalidateTypeSetCache):
(JSC::TypeProfiler::dumpTypeProfilerData):

  • runtime/TypeProfiler.h:

(JSC::TypeProfiler::getNextUniqueVariableID):

  • runtime/TypeProfilerLog.cpp:

(JSC::TypeProfilerLog::processLogEntries):

  • runtime/TypeSet.cpp:

(JSC::TypeSet::addTypeInformation):
(JSC::TypeSet::invalidateCache):

  • runtime/TypeSet.h:

(JSC::TypeSet::structureSet):

  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::enableTypeProfiler):
(JSC::VM::disableTypeProfiler):
(JSC::VM::dumpTypeProfilerData):
(JSC::VM::nextTypeLocation): Deleted.
(JSC::VM::invalidateTypeSetCache): Deleted.

  • runtime/VM.h:

(JSC::VM::typeProfiler):
(JSC::VM::getNextUniqueVariableID): Deleted.

  • tests/typeProfiler/dfg-jit-optimizations.js:
12:53 PM Changeset in webkit [174788] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Various crashes in ViewGestureControllerIOS when closing a tab while a swipe gesture is in progress
https://bugs.webkit.org/show_bug.cgi?id=137770
<rdar://problem/17916459>

Reviewed by Dan Bernstein.

When tearing down a WKWebView in the middle of a swipe gesture, a variety of
UI process crashes were observed. First, two uses of potentially deleted objects
(the WebBackForwardListItem and ViewGestureController), which were fixed by
extending the object's lifetime and checking for its liveness, respectively.
Second, a potential null-deref of DrawingArea if the timing of endSwipeGesture
vs. page teardown was such that DrawingArea was null but everything else was in line.
Lastly, another case of messaging a potentially deleted object (specifically,
the _UIViewControllerTransitionContext's animator) in a callback from CA, which
was fixed by nulling out the animator (and a few other properties) when tearing
down the ViewGestureController.

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(-[WKSwipeTransitionController invalidate]):
Clear the soon-to-be-invalid ViewGestureController pointer.

(WebKit::ViewGestureController::~ViewGestureController):
Call [WKSwipeTransitionController invalidate] upon destruction.
Clear our transition context's interactor and animator, and inform it that
the transition is not in flight. This avoids a crash when calling back
to the already-destroyed animator later.

(WebKit::ViewGestureController::beginSwipeGesture):
Keep a reference to the target WebBackForwardListItem; this avoids
it being deleted between here and the transition completion block firing.

Look up the ViewGestureController by pageID, just like we do in endSwipeGesture,
to avoid situations where the callback fires after the WKWebView/ViewGestureController
have gone away.

Hold on to our _UIViewControllerOneToOneTransitionContext, so that we can do the
aforementioned clearing upon deallocation.

(WebKit::ViewGestureController::endSwipeGesture):
Null check the DrawingArea. If it is null, instead of doing our normal delayed logic
for swipe snapshot teardown, just put things back together immediately.

(WebKit::ViewGestureController::removeSwipeSnapshot):
Clear m_swipeTransitionContext.

12:45 PM Changeset in webkit [174787] by ap@apple.com
  • 4 edits in trunk/Source/WebCore

Crashes in ResourceHandleCFURLConnectionDelegateWithOperationQueue due to unimplemented retain/release
https://bugs.webkit.org/show_bug.cgi?id=137779
rdar://problem/18679320

Reviewed by Brady Eidson.

  • platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp:

(WebCore::ResourceHandleCFURLConnectionDelegate::retain):
(WebCore::ResourceHandleCFURLConnectionDelegate::release):
(WebCore::ResourceHandleCFURLConnectionDelegate::makeConnectionClient):

  • platform/network/cf/ResourceHandleCFURLConnectionDelegate.h:

Implemented retain/release. They are necessary, as ResourceHandle goes away when
it's canceled, and there is noone else to keep the client object alive but
CFURLConnection itself.

  • platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:

(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveChallenge):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::canRespondToProtectionSpace):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveDataArray):
Added a FIXME about potential improvements that I spotted while invsestigating this.

12:14 PM Changeset in webkit [174786] by Alan Bujtas
  • 16 edits in trunk/LayoutTests

[Mac] Unreviewed gardening.

Unskip subpixel border tests.

  • platform/mac/TestExpectations:
  • platform/mac/css1/units/length_units-expected.txt:
  • platform/mac/fast/css/bidi-override-in-anonymous-block-expected.txt:
  • platform/mac/fast/repaint/repaint-during-scroll-with-zoom-expected.txt:
  • platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-initial-value-001-expected.txt:
  • platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-style-001-expected.txt:
  • platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-style-002-expected.txt:
  • platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-style-004-expected.txt:
  • platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-with-three-values-001-expected.txt:
  • platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-with-two-values-001-expected.txt:
  • platform/mac/ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-003-expected.txt:
  • platform/mac/media/video-zoom-expected.txt:
  • platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
  • platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt:
9:01 AM Changeset in webkit [174785] by ddkilzer@apple.com
  • 2 edits in trunk/Websites/bugs.webkit.org/template/en/default

Fix JavaScript alert() about missing search terms when submitting patch review

  • template/en/default/attachment/reviewform.html.tmpl: Pass

hide_content=1 argument when including global/header.html.tmpl.

  • template/en/default/global/header.html.tmpl: Add hide_content argument

that hides header content when including the file.

9:01 AM Changeset in webkit [174784] by ddkilzer@apple.com
  • 2 edits in trunk/Websites/bugs.webkit.org

Re-enable WebKit-based user matching

  • data/params: Disable Bugzilla's own user matching, which also

requires the JSON::RPC Perl module.

  • template/en/default/global/footer.html.tmpl: Include

committers-autocomplete.js everywhere. Every. Where.

9:01 AM Changeset in webkit [174783] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/code-review.js

Fix loading of legacy comments from older Bugzillas

  • code-review.js:

(fetchHistory): We must support both the old-style and new-style
formats for attachment comments since the old-style format is
quoted and stored as text in the database forever.

9:01 AM Changeset in webkit [174782] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/data/params

Update proxy URL parameter used by Bugzilla

  • data/params: Update proxy URL.
9:01 AM Changeset in webkit [174781] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/mod_perl.pl

Fix maximum unshared memory size of Apache processes

  • mod_perl.pl: Set the maximum unshared memory size of Apache

processes to 700 MB. According to the manpage, this is the
correct way to do it in a mod_perl config file.

9:01 AM Changeset in webkit [174780] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/.htaccess

Remove unneeded rule from .htaccess

  • .htaccess: Remove an old rule that doesn't match any files.
9:01 AM Changeset in webkit [174779] by ddkilzer@apple.com
  • 27 edits
    4 adds in trunk/Websites/bugs.webkit.org

Upgrade to Bugzilla 4.2.11.

9:01 AM Changeset in webkit [174778] by ddkilzer@apple.com
  • 14 edits
    3 copies
    1 delete in trunk/Websites/bugs.webkit.org/template/en

Move template/en/custom files onto template/en/default

9:01 AM Changeset in webkit [174777] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/template/en/custom/attachment/edit.html.tmpl

Do not hide details on attachment edit page

  • template/en/custom/attachment/edit.html.tmpl: Comment out the

call to toggle_attachment_details_visibility() that initially
hides the details.

9:01 AM Changeset in webkit [174776] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/js/field.js

Re-fix Bug 26950: Make the summary and alias fields support click-to-edit <https://bugs.webkit.org/show_bug.cgi?id=26950>

  • js/field.js: Port the changes from r45538 to Bugzilla 4.2.5.
9:01 AM Changeset in webkit [174775] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/migrate.pl

migrate.pl: remove unnecessary change

9:01 AM Changeset in webkit [174774] by ddkilzer@apple.com
  • 2 edits in trunk/Websites/bugs.webkit.org

Fix "View Diff" buttons on edit attachment page

  • js/attachment.js:

(viewPrettyPatch): Change code syntax from Perl to JavaScript.
When I moved this method from
template/en/custom/attachment/edit.html.tmpl into
js/attachment.js during the Bugzilla 4.2.1 merge, I wrote some
of the code using Perl syntax.

  • template/en/custom/attachment/edit.html.tmpl:
  • Fix 120-column truncation of code. (That's what you get for copying and pasting code from 'git diff' in a terminal window.)
  • Pass attachment_id into the viewPrettyPatch() method since the method expects it.
9:01 AM Changeset in webkit [174773] by ddkilzer@apple.com
  • 4 edits
    2 deletes in trunk/Websites/bugs.webkit.org

Remove references to Rietveld from bugs.webkit.org

Rietveld was an experiment that was added by Google. It was
never enabled for everyone, so it's safe to remove the changes
that reference it.

  • Bugzilla/Flag.pm: Remove code that prevented mail messages from

being sent for patches reviewed in Rietveld.

  • attachment.cgi: Remove reference to the "rietveldreview"

template.

  • template/en/custom/attachment/list.html.tmpl: Remove code

that handled the Rietveld review flag.

  • template/en/custom/attachment/reviewform.html.tmpl: Remove code

that handled the "rietveldReview" CGI parameter.

  • template/en/custom/attachment/rietveldreview.html.tmpl: Delete.
  • template/en/custom/flag/list.html.tmpl: Delete. After

removing the code to handle Rietveld reviews, there were no more
local WebKit changes to the custom template file, so it could be
removed.

9:01 AM Changeset in webkit [174772] by ddkilzer@apple.com
  • 3 edits in trunk/Websites/bugs.webkit.org

Display legal text when uploading a patch with a new bug

  • js/attachment.js:

(setContentTypeDisabledState): Make this work on the Enter Bug
page so that the "Submit Bug" button changes to
"Agree and Submit Bug" when the "patch" checkbox is checked, and
it changes back to "Submit Bug" when unchecked.

  • template/en/custom/attachment/createformcontents.html.tmpl:

Include the attachment/patchlegalese.html.tmpl template when
returning the page so that it will be shown when the "patch"
checkbox is checked. Set the 'product' variable from the CGI
variable of the same name.

  • template/en/custom/attachment/patchlegalese.html.tmpl: Add the

'expert_fields' class to the <tr> element so that it gets
shown/hidden when the Show/Hide Advanced Fields links are
clicked.

9:01 AM Changeset in webkit [174771] by ddkilzer@apple.com
  • 2 edits in trunk/Websites/bugs.webkit.org

Get rid of large blank area when adding non-patch attachment

  • js/attachment.js:
  • template/en/custom/attachment/patchlegalese.html.tmpl:
  • Use 'display: none;' and 'display: table-row;' instead of 'visibility: collapse;' and 'visibility: visible;' to hide and show the text.
9:01 AM Changeset in webkit [174770] by ddkilzer@apple.com
  • 1 edit
    1 add in trunk/Websites/bugs.webkit.org/template/en/custom/attachment

Move patch legalese into its own template file for reuse

  • template/en/custom/attachment/create.html.tmpl:
  • template/en/custom/attachment/patchlegalese.html.tmpl:
  • Extract patch legalese into its own file.
9:01 AM Changeset in webkit [174769] by ddkilzer@apple.com
  • 2 edits in trunk/Websites/bugs.webkit.org

Fix review form after Bugzilla 4.2.5 update

  • code-review.js:

(fetchHistory):

  • Trim author since new format adds a space before the name.
  • Update comment_marker to match the text now used by Bugzilla.
  • template/en/custom/attachment/reviewform.html.tmpl:
  • Add global/header.html.tmpl to make sure we get the standard HTML for including CSS, JavaScript, etc.
    • Remove redundant <link> tags.
    • Add CSS in local <style> to hide the header.
    • Change local <script> to be passed as an argument into global/header.html.tmpl when it is processed.
    • NOTE: local <style> tag should be passed as an argument into global/header.html.tmpl, but that breaks page layout, so it was skipped for now.
  • Fix fallout form moving flag_types into the attachment object when processing flag/list.html.tmpl.
9:01 AM Changeset in webkit [174768] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/template/en/custom/global/header.html.tmpl

Add back "WebKit Bugzilla" text in page header

9:01 AM Changeset in webkit [174767] by ddkilzer@apple.com
  • 3 adds in trunk/Websites/bugs.webkit.org

Add .htaccess files created by checksetup.pl

9:01 AM Changeset in webkit [174766] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/data/params

data/params: update after running checksetup.pl

9:01 AM Changeset in webkit [174765] by ddkilzer@apple.com
  • 101 edits
    1 add in trunk/Websites/bugs.webkit.org

Upgrade to Bugzilla 4.2.7.

Conflicts:

buglist.cgi
report.cgi

9:00 AM Changeset in webkit [174764] by ddkilzer@apple.com
  • 408 edits
    41 copies
    5 moves
    371 adds
    77 deletes in trunk/Websites/bugs.webkit.org

Upgrade bugs.webkit.org to Bugzilla 4.2
<http://webkit.org/b/55882>

Upgrade to Bugzilla 4.2.1.

Conflicts:

.htaccess
Bugzilla.pm
Bugzilla/Auth.pm
Bugzilla/Auth/Login/CGI.pm
Bugzilla/Auth/Persist/Cookie.pm
Bugzilla/Bug.pm
Bugzilla/BugMail.pm
Bugzilla/CGI.pm
Bugzilla/Config/Attachment.pm
Bugzilla/Config/Common.pm
Bugzilla/Config/General.pm
Bugzilla/Constants.pm
Bugzilla/DB/Mysql.pm
Bugzilla/DB/Oracle.pm
Bugzilla/DB/Schema.pm
Bugzilla/DB/Schema/Oracle.pm
Bugzilla/Error.pm
Bugzilla/Flag.pm
Bugzilla/FlagType.pm
Bugzilla/Hook.pm
Bugzilla/Install/DB.pm
Bugzilla/Install/Filesystem.pm
Bugzilla/Install/Localconfig.pm
Bugzilla/Install/Requirements.pm
Bugzilla/Install/Util.pm
Bugzilla/Mailer.pm
Bugzilla/Product.pm
Bugzilla/Search.pm
Bugzilla/Search/Quicksearch.pm
Bugzilla/Search/Saved.pm
Bugzilla/Series.pm
Bugzilla/Template.pm
Bugzilla/Template/Plugin/Hook.pm
Bugzilla/Token.pm
Bugzilla/User.pm
Bugzilla/Util.pm
Bugzilla/WebService.pm
Bugzilla/WebService/Bug.pm
Bugzilla/WebService/Bugzilla.pm
Bugzilla/WebService/Constants.pm
Bugzilla/WebService/Product.pm
Bugzilla/WebService/User.pm
attachment.cgi
buglist.cgi
checksetup.pl
colchange.cgi
collectstats.pl
contrib/bugzilla_ldapsync.rb
contrib/bzdbcopy.pl
contrib/gnats2bz.pl
contrib/recode.pl
contrib/sendbugmail.pl
contrib/yp_nomail.sh
docs/en/xml/Bugzilla-Guide.xml
docs/en/xml/about.xml
docs/en/xml/installation.xml
docs/en/xml/security.xml
docs/en/xml/troubleshooting.xml
editflagtypes.cgi
editparams.cgi
editproducts.cgi
editvalues.cgi
editwhines.cgi
email_in.pl
enter_bug.cgi
extensions/BmpConvert/Config.pm
extensions/OldBugMove/template/en/default/admin/params/oldbugmove.html.tmpl
extensions/Voting/template/en/default/hook/bug/process/header-title.html.tmpl
extensions/Voting/template/en/default/hook/search/search-report-select-rep_fields.html.tmpl
extensions/example/code/webservice-error_codes.pl
extensions/example/version.pl
images/favicon.ico
importxml.pl
index.cgi
install-module.pl
js/field.js
js/util.js
long_list.cgi
mod_perl.pl
post_bug.cgi
process_bug.cgi
quips.cgi
sanitycheck.cgi
show_bug.cgi
showattachment.cgi
sidebar.cgi
skins/contrib/Dusk/global.css
skins/contrib/Dusk/index.css
skins/standard/global.css
skins/standard/show_bug.css
t/008filter.t
template/en/custom/attachment/review.html.tmpl
template/en/default/account/prefs/saved-searches.html.tmpl
template/en/default/admin/classifications/delete.html.tmpl
template/en/default/admin/classifications/edit-common.html.tmpl
template/en/default/admin/classifications/footer.html.tmpl
template/en/default/admin/components/create.html.tmpl
template/en/default/admin/components/edit.html.tmpl
template/en/default/admin/params/attachment.html.tmpl
template/en/default/admin/sanitycheck/messages.html.tmpl
template/en/default/admin/users/confirm-delete.html.tmpl
template/en/default/admin/workflow/edit.html.tmpl
template/en/default/attachment/created.html.tmpl
template/en/default/attachment/diff-header.html.tmpl
template/en/default/attachment/edit.html.tmpl
template/en/default/attachment/list.html.tmpl
template/en/default/attachment/updated.html.tmpl
template/en/default/bug/comments.html.tmpl
template/en/default/bug/create/create-guided.html.tmpl
template/en/default/bug/create/create.html.tmpl
template/en/default/bug/create/created.html.tmpl
template/en/default/bug/edit.html.tmpl
template/en/default/bug/field.html.tmpl
template/en/default/bug/process/header.html.tmpl
template/en/default/bug/show.html.tmpl
template/en/default/bug/show.xml.tmpl
template/en/default/config.rdf.tmpl
template/en/default/email/whine.txt.tmpl
template/en/default/filterexceptions.pl
template/en/default/flag/list.html.tmpl
template/en/default/global/common-links.html.tmpl
template/en/default/global/confirm-action.html.tmpl
template/en/default/global/field-descs.none.tmpl
template/en/default/global/footer.html.tmpl
template/en/default/global/header.html.tmpl
template/en/default/global/user-error.html.tmpl
template/en/default/global/userselect.html.tmpl
template/en/default/list/edit-multiple.html.tmpl
template/en/default/list/list.html.tmpl
template/en/default/pages/fields.html.tmpl
template/en/default/pages/release-notes.html.tmpl
template/en/default/search/boolean-charts.html.tmpl
template/en/default/search/form.html.tmpl
template/en/default/search/search-report-graph.html.tmpl
template/en/default/search/search-report-table.html.tmpl
template/en/default/setup/strings.txt.pl
token.cgi
userprefs.cgi
xml.cgi
xmlrpc.cgi

8:26 AM Changeset in webkit [174763] by Antti Koivisto
  • 3 edits in trunk/Source/WebKit2

REGRESSION (r173356): Downloading a disk image appends ".txt" to it
https://bugs.webkit.org/show_bug.cgi?id=137493
<rdar://problem/18321947>

Reviewed by Alexey Proskuryakov.

  • Shared/Downloads/ios/DownloadIOS.mm:

(WebKit::Download::startWithHandle):

  • Shared/Downloads/mac/DownloadMac.mm:

(WebKit::Download::startWithHandle):

It appears that the synthesized NS/CFURLResponse fails to serialize the suggested filename correctly
unless it has been accessed first.

6:29 AM Changeset in webkit [174762] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Use isnan from std namespace in ProfileGenerator.cpp
https://bugs.webkit.org/show_bug.cgi?id=137653

Patch by Adrien Destugues <pulkomandy@gmail.com> on 2014-10-16
Reviewed by Darin Adler.

The C++ isnan() function is in the std namespace. The unprefixed isnan
may be available because of C99 headers leakage in C++, but should not
be used.

No new tests: no functional change, build fix on platforms which don't
export C99 functions in C++.

  • profiler/ProfileGenerator.cpp:

(JSC::ProfileGenerator::beginCallEntry):
(JSC::ProfileGenerator::endCallEntry):
(JSC::ProfileGenerator::didPause):
(JSC::ProfileGenerator::didContinue):

Oct 15, 2014:

11:50 PM Changeset in webkit [174761] by abucur@adobe.com
  • 17 edits
    4 adds in trunk

ASSERTION FAILED in WebCore::RenderFlowThread::getRegionRangeForBox
https://bugs.webkit.org/show_bug.cgi?id=135563

Reviewed by David Hyatt.

Source/WebCore:

The new multi-column code doesn't work correctly when the document contains nested fragmentation
contexts. The problem is the current flow thread concept that can store only one RenderFlowThread
at a time and use it during layout.

The stored flow thread is always correct for regions because named flow threads are absolutley positioned
so every child renderer is contained inside them (with the expcetion of fixed positioned elements which are
treated separately).

For multi-column elements this is no longer the case. An absolutely positioned element inside a static
multi-column element will be contained by a block outside the fragmentation context. It can even be
contained by a different multi-column element in the case of nested flow threads.

The patch below explores a solution that's not based on a current flow thread stored globally. The proposed
patch makes every block to store a pointer to its fragmentation context and a flag that states if this pointer
needs to be updated or not. If the renderer is not a block it will get its flow thread from the containing
block. Once the containing flow thread is requested for the block, the pointer is computed and cached until
invalidated:

  • when a subtree is removed from a flow thread
  • when the position property of an element inside a flow thread changes

The process is recursive and it doesn't affect elements that are not nested inside a flow thread. If a block
changes position from relative to static, any element that was contained by it can only be contained by an
ancestor of the block. This ancestor will still be outside of any flow thread. This ensures that non-fragmentation
code is not affected from a performance perspective.

The patch affects the results of the performance tests:

  • the regions layout tests have a decreased performance raging from 2% to 5-6%
  • the regions selection tests have an increased performance raging from 1-2% to 10%
  • the multicolumn layout tests (now pending review in b137687) have an increased performance

raging from 1.8% to 5%

Tests: fast/multicol/multicol-all-positioned-crash.html

fast/multicol/multicol-transform-containing-block.html

  • rendering/FlowThreadController.cpp:

(WebCore::FlowThreadController::FlowThreadController):

  • rendering/FlowThreadController.h:

(WebCore::FlowThreadController::currentRenderFlowThread): Deleted.
(WebCore::FlowThreadController::setCurrentRenderFlowThread): Deleted.

  • rendering/LayoutState.h:

(WebCore::LayoutState::currentRenderFlowThread):
(WebCore::LayoutState::setCurrentRenderFlowThread):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlockRareData::RenderBlockRareData):
(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::collapseAnonymousBoxChild):
(WebCore::RenderBlock::cachedFlowThreadContainingBlock):
(WebCore::RenderBlock::cachedFlowThreadContainingBlockNeedsUpdate):
(WebCore::RenderBlock::setCachedFlowThreadContainingBlockNeedsUpdate):
(WebCore::RenderBlock::updateCachedFlowThreadContainingBlock):
(WebCore::RenderBlock::locateFlowThreadContainingBlock):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::styleWillChange):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::borderBoxRectInRegion):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::updateAllLayerToRegionMappings):
(WebCore::RenderFlowThread::repaintRectangleInRegions):
(WebCore::CurrentRenderFlowThreadMaintainer::CurrentRenderFlowThreadMaintainer): Deleted.
(WebCore::CurrentRenderFlowThreadMaintainer::~CurrentRenderFlowThreadMaintainer): Deleted.
(WebCore::CurrentRenderFlowThreadDisabler::CurrentRenderFlowThreadDisabler): Deleted.
(WebCore::CurrentRenderFlowThreadDisabler::~CurrentRenderFlowThreadDisabler): Deleted.

  • rendering/RenderFlowThread.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::mapLayerClipRectsToFragmentationLayer):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::showRegionsInformation):
(WebCore::RenderObject::insertedIntoTree):
(WebCore::RenderObject::removeFromRenderFlowThread):
(WebCore::RenderObject::removeFromRenderFlowThreadIncludingDescendants):
(WebCore::RenderObject::invalidateFlowThreadContainingBlockIncludingDescendants):
(WebCore::RenderObject::currentRenderNamedFlowFragment):
(WebCore::RenderObject::locateFlowThreadContainingBlock):
(WebCore::RenderObject::locateFlowThreadContainingBlockNoCache): Deleted.
(WebCore::RenderObject::removeFromRenderFlowThreadRecursive): Deleted.

  • rendering/RenderObject.h:

(WebCore::RenderObject::flowThreadContainingBlock):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::computeOverflowFromFlowThread):

  • rendering/RenderView.cpp:

(WebCore::RenderView::pushLayoutStateForCurrentFlowThread):
(WebCore::RenderView::popLayoutStateForCurrentFlowThread):

  • rendering/RenderView.h:

LayoutTests:

A test verifying that positioned elements inside multi-column containers don't
cause assertions or crashes.

  • fast/multicol/multicol-all-positioned-crash-expected.txt: Added.
  • fast/multicol/multicol-all-positioned-crash.html: Added.
  • fast/multicol/multicol-transform-containing-block-expected.txt: Added.
  • fast/multicol/multicol-transform-containing-block.html: Added.
11:45 PM Changeset in webkit [174760] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Unreviewed, add myself to CoordinatedGraphics watchers.

  • Scripts/webkitpy/common/config/watchlist:
11:04 PM Changeset in webkit [174759] by Chris Dumez
  • 22 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for list-related render objects
https://bugs.webkit.org/show_bug.cgi?id=137764

Reviewed by Benjamin Poulain.

Use is<>() / downcast<>() for list-related render objects and clean up
the surrounding code.

No new tests, no behavior change.

  • accessibility/AccessibilityListBox.cpp:

(WebCore::AccessibilityListBox::visibleChildren):
(WebCore::AccessibilityListBox::elementAccessibilityHitTest):

  • accessibility/AccessibilityListBoxOption.cpp:

(WebCore::AccessibilityListBoxOption::elementRect):

  • accessibility/AccessibilityObject.cpp:

(WebCore::renderListItemContainerForNode):

  • accessibility/atk/WebKitAccessibleHyperlink.cpp:

(getRangeLengthForObject):

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:

(accessibilityObjectLength):
(offsetAdjustmentForListItem):
(webkitAccessibleTextGetText):

  • editing/BreakBlockquoteCommand.cpp:

(WebCore::BreakBlockquoteCommand::doApply):

  • html/HTMLLIElement.cpp:

(WebCore::HTMLLIElement::didAttachRenderers):
(WebCore::HTMLLIElement::parseValue):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::nextSelectableListIndexPageAway):
(WebCore::HTMLSelectElement::scrollToSelection):
(WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
(WebCore::HTMLSelectElement::selectOption):
(WebCore::HTMLSelectElement::platformHandleKeydownEvent):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):

  • html/HTMLSelectElementWin.cpp:

(WebCore::HTMLSelectElement::platformHandleKeydownEvent):

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::platformPrepareForWheelEvents):

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::addToLine):
(WebCore::InlineFlowBox::placeBoxRangeInInlineDirection):

  • rendering/RenderCounter.cpp:

(WebCore::planCounter):

  • rendering/RenderListBox.h:
  • rendering/RenderListItem.cpp:

(WebCore::nextListItem):
(WebCore::previousListItem):

  • rendering/RenderListItem.h:
  • rendering/RenderListMarker.h:
  • rendering/RenderMenuList.h:
  • rendering/RenderTreeAsText.cpp:

(WebCore::markerTextForListItem):

  • rendering/TextAutoSizing.cpp:

(WebCore::TextAutoSizingValue::adjustNodeSizes):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleReplaced):
(WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):

  • testing/Internals.cpp:

(WebCore::Internals::isSelectPopupVisible):

8:57 PM Changeset in webkit [174758] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebCore

Use std::unique_ptr for CachedResource
https://bugs.webkit.org/show_bug.cgi?id=137736

Reviewed by Darin Adler.

No new tests, no behavior change.

  • loader/cache/CachedResource.cpp: Use std::unique_ptr instead of PassOwnPtr|OwnPtr.

(WebCore::CachedResource::removeClient):

  • loader/cache/CachedResource.h: Set ctor from private to public.

(WebCore::CachedResource::CachedResourceCallback::schedule):

7:50 PM Changeset in webkit [174757] by gyuyoung.kim@samsung.com
  • 15 edits in trunk/Source/WebCore

Move TextCodec classes to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=137738

Reviewed by Darin Adler.

Replace uses of PassOwnPtr in code under TextCodecFoo class with std::unique_ptr.
To do this, ctor of TextCodecFoo classes is changed from private to public. Besides
related classes follow this change as well.

No new tests, no behavior change.

  • html/parser/HTMLMetaCharsetParser.h:
  • loader/TextResourceDecoder.cpp:

(WebCore::TextResourceDecoder::setEncoding):
(WebCore::TextResourceDecoder::flush):

  • loader/TextResourceDecoder.h:
  • platform/text/TextCodec.h:
  • platform/text/TextCodecICU.cpp:

(WebCore::TextCodecICU::create):

  • platform/text/TextCodecICU.h:
  • platform/text/TextCodecLatin1.cpp:

(WebCore::newStreamingTextDecoderWindowsLatin1):

  • platform/text/TextCodecUTF16.cpp:

(WebCore::newStreamingTextDecoderUTF16LE):
(WebCore::newStreamingTextDecoderUTF16BE):

  • platform/text/TextCodecUTF8.cpp:

(WebCore::TextCodecUTF8::create):

  • platform/text/TextCodecUTF8.h:
  • platform/text/TextCodecUserDefined.cpp:

(WebCore::newStreamingTextDecoderUserDefined):

  • platform/text/TextEncodingRegistry.cpp:

(WebCore::newTextCodec):

  • platform/text/TextEncodingRegistry.h:
  • platform/text/mac/TextCodecMac.cpp:

(WebCore::newTextCodecMac):

7:25 PM Changeset in webkit [174756] by dino@apple.com
  • 3 edits in trunk/Source/WebCore

[Media] Reduce style updates (painting) in controls
https://bugs.webkit.org/show_bug.cgi?id=137763
<rdar://problem/17833045>

Reviewed by Simon Fraser.

Media controls were causing a lot of repaints they were
constantly updating the style of the widgets, the value
of the forms, or the text in the display.

This is necessary when the controls are visible, but not
necessary when they are hidden. Return immediately in that case.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.createControls): Initialise the slider to a zero value.
(Controller.prototype.handleDurationChange): Force an update even though we might be hidden.
(Controller.prototype.updateProgress): Don't update if we're hidden.
(Controller.prototype.updateTime): Ditto.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS.prototype.updateProgress): Ditto.

6:41 PM Changeset in webkit [174755] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed, rolling out r174753.
https://bugs.webkit.org/show_bug.cgi?id=137761

caused layout tests to fail. (Requested by zalan on #webkit).

Reverted changeset:

"[Mac] Unreviewed gardening."
http://trac.webkit.org/changeset/174753

6:16 PM Changeset in webkit [174754] by roger_fong@apple.com
  • 4 edits in trunk

[Windows] Speculative Windows test fix.
Also add some more test logging.

  • DumpRenderTree/win/DumpRenderTree.cpp: Make sure that OLEAUT32.dll doesn't cache BSTRs.
  • WebActionPropertyBag.cpp:

(WebActionPropertyBag::Read): Add logging for testing purposes.

5:56 PM Changeset in webkit [174753] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

[Mac] Unreviewed gardening.

Unskip subpixel border tests.

  • platform/mac/TestExpectations:
5:29 PM Changeset in webkit [174752] by jonowells@apple.com
  • 1 edit
    2 deletes in trunk/Source/WebInspectorUI

Build fix. Rolling back changes in http://trac.webkit.org/changeset/174721.

  • Scripts/copy-user-interface-resources.pl:
  • UserInterface/External/ESLint/LICENSE: Removed.
  • UserInterface/External/ESLint/eslint.js: Removed.
5:28 PM Changeset in webkit [174751] by Lucas Forschler
  • 4 edits in branches/safari-600.1-branch/LayoutTests

Merged r173674.

5:17 PM Changeset in webkit [174750] by Alan Bujtas
  • 1 edit
    1 add in trunk/LayoutTests

[Mac] Unreviewed gardening(mountain-lion).

  • platform/mac-mountainlion/fast/text/international/hindi-spacing-expected.txt: Added.
5:14 PM Changeset in webkit [174749] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r174025): remote inspector crashes frequently when executing inspector frontend's JavaScript
https://bugs.webkit.org/show_bug.cgi?id=137758

Rubber stamped by Filip Pizlo.

Reverted r174025 for just PutByOffset Nodes.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

5:13 PM Changeset in webkit [174748] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

import-w3c-test rewrites relative src paths in ref files incorrectly
https://bugs.webkit.org/show_bug.cgi?id=137586

This patch fixes a bug in test_converter.py where src paths were getting
rewritten as ../../some-path instead of <script src="../../some-path>".
It also adds support for rewriting src paths in style elements, which was
missing before and it adds tests for this case.

Patch by Rebecca Hauck <rhauck@adobe.com> on 2014-10-15
Reviewed by Bem Jones-Bey.

  • Scripts/webkitpy/w3c/test_converter.py:

(_W3CTestConverter.convert_attributes_if_needed):

  • Scripts/webkitpy/w3c/test_converter_unittest.py:

(test_convert_attributes_if_needed):
(verify_reference_relative_paths):

5:09 PM Changeset in webkit [174747] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

[Mac] Fix inefficiencies in ResourceResponse::platformLazyInit(InitLevel) - Part 2
https://bugs.webkit.org/show_bug.cgi?id=137721

Reviewed by Darin Adler.

Follow-up patch to r174717 addressing review comments made after the patch landed:

  • Use modern C++ loop
  • Remove explicit calls to String(NSString*) constructor

No new tests, no new tests.

  • platform/network/mac/ResourceResponseMac.mm:

(WebCore::ResourceResponse::platformLazyInit):

5:05 PM Changeset in webkit [174746] by Chris Dumez
  • 24 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for InlineBox subclasses
https://bugs.webkit.org/show_bug.cgi?id=137749

Reviewed by Darin Adler.

Use is<>() / downcast<>() for InlineBox subclasses and clean up the
surrounding code.

No new tests, no behavior change.

  • dom/Position.cpp:

(WebCore::Position::upstream):
(WebCore::Position::downstream):

  • editing/VisibleUnits.cpp:

(WebCore::wordBreakIteratorForMinOffsetBoundary):
(WebCore::wordBreakIteratorForMaxOffsetBoundary):
(WebCore::visualWordPosition):
(WebCore::startPositionForLine):
(WebCore::endPositionForLine):

  • rendering/InlineBox.cpp:

(WebCore::InlineBox::root):
(WebCore::InlineBox::nextLeafChild):
(WebCore::InlineBox::prevLeafChild):
(WebCore::InlineBox::nextLeafChildIgnoringLineBreak):

  • rendering/InlineBox.h:
  • rendering/InlineElementBox.h:
  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::getFlowSpacingLogicalWidth):
(WebCore::InlineFlowBox::addToLine):
(WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
(WebCore::InlineFlowBox::placeBoxRangeInInlineDirection):
(WebCore::InlineFlowBox::requiresIdeographicBaseline):
(WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
(WebCore::InlineFlowBox::computeLogicalBoxHeights):
(WebCore::InlineFlowBox::placeBoxesInBlockDirection):
(WebCore::InlineFlowBox::computeMaxLogicalTop):
(WebCore::InlineFlowBox::flipLinesInBlockDirection):
(WebCore::InlineFlowBox::computeOverflow):
(WebCore::InlineFlowBox::firstLeafChild):
(WebCore::InlineFlowBox::lastLeafChild):
(WebCore::InlineFlowBox::computeOverAnnotationAdjustment):
(WebCore::InlineFlowBox::computeUnderAnnotationAdjustment):

  • rendering/InlineFlowBox.h:
  • rendering/InlineTextBox.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::positionForBox):

  • rendering/RenderBlockFlow.h:

(WebCore::RenderBlockFlow::firstRootBox):
(WebCore::RenderBlockFlow::lastRootBox):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::createLineBoxes):
(WebCore::RenderBlockFlow::constructLine):
(WebCore::setLogicalWidthForTextRun):
(WebCore::computeExpansionForJustifiedText):
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment):
(WebCore::RenderBlockFlow::computeBlockDirectionPositionsForLine):
(WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns):

  • rendering/RenderText.cpp:

(WebCore::RenderText::localCaretRect):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::isHyphenated):
(WebCore::RootInlineBox::ascentAndDescentForBox):

  • rendering/RootInlineBox.h:

(WebCore::RootInlineBox::nextRootBox):
(WebCore::RootInlineBox::prevRootBox):

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::localCaretRect):
(WebCore::RenderSVGInlineText::positionForPoint):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::positionForPoint):

  • rendering/svg/SVGInlineFlowBox.cpp:

(WebCore::SVGInlineFlowBox::paintSelectionBackground):
(WebCore::SVGInlineFlowBox::paint):
(WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):

  • rendering/svg/SVGInlineFlowBox.h:
  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeRenderSVGTextBox):
(WebCore::writeSVGInlineTextBoxes):

  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::paint):
(WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
(WebCore::SVGRootInlineBox::layoutChildBoxes):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):

  • rendering/svg/SVGRootInlineBox.h:
  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::collectTextBoxesInFlowBox):

3:36 PM Changeset in webkit [174745] by Alan Bujtas
  • 17 edits
    2 adds in trunk/LayoutTests

[Mac] Unreviewed gardening.

Rebaselining.

  • platform/mac/TestExpectations:
  • platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt:
  • platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt:
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt:
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt:
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt:
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt:
  • platform/mac/fast/block/float/overhanging-tall-block-expected.txt:
  • platform/mac/fast/events/constructors/mouse-event-constructor-expected.txt: Added.
  • platform/mac/fast/events/constructors/wheel-event-constructor-expected.txt: Added.
  • platform/mac/fast/text/international/hindi-spacing-expected.txt:
  • platform/mac/fast/text/international/vertical-text-glyph-test-expected.txt:
  • platform/mac/fast/text/orientation-sideways-expected.txt:
  • platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt:
  • platform/mac/fast/writing-mode/japanese-ruby-vertical-lr-expected.txt:
  • platform/mac/fast/writing-mode/japanese-ruby-vertical-rl-expected.txt:
  • platform/mac/fast/writing-mode/vertical-font-fallback-expected.txt:
  • platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
2:41 PM Changeset in webkit [174744] by roger_fong@apple.com
  • 3 edits in trunk/Source/WebCore

glReadPixels on NVIDIA cards returns the wrong values for the alpha channel when alpha is off.
https://bugs.webkit.org/show_bug.cgi?id=137752.
<rdar://problem/15408133>

Reviewed by Brent Fulgham.

This change fixed the 1.0.2 conformance test: context/context-attribute-preserve-drawing-buffer.html

  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

Manually set the alpha channel to 255 when alpha is off on the rendering context.

1:56 PM Changeset in webkit [174743] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Add --json flag to test-webkitpy to emit JSON formatted test results
to stdout
https://bugs.webkit.org/show_bug.cgi?id=137353

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-15
Reviewed by Daniel Bates.

  • Scripts/webkitpy/port/server_process_unittest.py:

Adds the read method to MockFile to allow the stdout of test_webkitpy
to be redirected without causing erroneous test failures.
In particular,
webkitpy.port.server_process_unittest.TestServerProcess.test_broken_pipe
and
webkitpy.port.server_process_unittest.TestServerProcess.test_cleanup
because when redirecting to a file, the
_wait_for_data_and_update_buffers_using_select method in
server_process.py will find that there is a read file descriptor in
its call to select.select, which eventually leads to it calling read()
on the MockFile object.
(MockFile.read):

  • Scripts/webkitpy/test/main.py:

Adds the _print_results_as_json method and the --json flag which
determines whether _print_results_as_json will get called.
(Tester._parse_args):
(Tester._print_results_as_json):
(Tester._print_results_as_json.result_dict_from_tuple):
(Tester._run_tests):

12:39 PM Changeset in webkit [174742] by mitz@apple.com
  • 4 edits
    1 add in trunk/Source/WebKit2

[Cocoa] "Plug-in will handle load" error isn't declared in the modern API
https://bugs.webkit.org/show_bug.cgi?id=137747

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKError.mm: Define _WKLegacyErrorDomain.
  • UIProcess/API/Cocoa/WKErrorInternal.h: Changed to import WKErrorPrivate.h.
  • UIProcess/API/Cocoa/WKErrorPrivate.h: Added. Declares _WKLegacyErrorDomain

and _WKLegacyErrorPlugInWillHandleLoad.

  • WebKit2.xcodeproj/project.pbxproj: Added new private header.
12:35 PM Changeset in webkit [174741] by Chris Fleizach
  • 9 edits in trunk

AX: Going back is broken for VoiceOver
https://bugs.webkit.org/show_bug.cgi?id=137382

Reviewed by Darin Adler.

Source/WebCore:

There were two issues preventing VoiceOver from navigating when using page history to go back/forward.

1) Existing AXLoadComplete does not get fired when you just move through page history.

There were existing frameLoad notifications used by GTK. I think we should use those which seem more reliable.

2) The AccessibilityScrollView cached its children, but on some history page loads, that cache was never cleared out.

Rather than trying to find those places to clear out the cache, it's easier to just add the elements to the children
array everytime it's asked for. Since there's only ever 3 elements (web area + 2 scroll bars) this should not be a performance hit.

Tests are not possible since they require monitoring notifications across multiple page loads.

  • accessibility/AXObjectCache.h:
  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::updateChildrenIfNecessary):

  • accessibility/ios/AXObjectCacheIOS.mm:

(WebCore::AXObjectCache::frameLoadingEventPlatformNotification):

  • accessibility/mac/AXObjectCacheMac.mm:

(WebCore::AXObjectCache::frameLoadingEventPlatformNotification):

  • dom/Document.cpp:

(WebCore::Document::implicitClose):

LayoutTests:

Update tests now that AXLoadComplete is sent more reliably.

  • platform/mac/accessibility/aria-expanded-notifications-expected.txt:
  • platform/mac/accessibility/aria-expanded-notifications.html:
12:18 PM Changeset in webkit [174740] by Simon Fraser
  • 3 edits
    3 adds in trunk

Sometimes can't scroll overflow:scroll areas in subframes
https://bugs.webkit.org/show_bug.cgi?id=137746
rdar://problem/18603560

Reviewed by Tim Horton.

Source/WebCore:

r169733 introduced a regression which caused us to no longer update the non-fast
scrollable region on every layout in subframes, by adding a bogus isMainFrame() check.
Revert to the previous code.

Test: platform/mac-wk2/tiled-drawing/scrolling/frames/scroll-region-after-frame-layout.html

  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):

LayoutTests:

Test that changes an overflow size in a subframe and then dumps the non-fast scrollable region.

  • platform/mac-wk2/tiled-drawing/scrolling/frames/resources/layouting-frame.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/scroll-region-after-frame-layout-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/scroll-region-after-frame-layout.html: Added.
12:15 PM Changeset in webkit [174739] by Chris Dumez
  • 21 edits in trunk/Source

Use is<>() / downcast<>() for TransformOperation subclasses
https://bugs.webkit.org/show_bug.cgi?id=137731

Reviewed by Darin Adler.

Use is<>() / downcast<>() for TransformOperation subclasses and clean
up the surrounding code.

Source/WebCore:

No new tests, no behavior change.

  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::validateTransformOperations):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::getTransformFunctionValue):

  • platform/graphics/transforms/IdentityTransformOperation.h:
  • platform/graphics/transforms/Matrix3DTransformOperation.cpp:

(WebCore::Matrix3DTransformOperation::operator==):

  • platform/graphics/transforms/Matrix3DTransformOperation.h:
  • platform/graphics/transforms/MatrixTransformOperation.cpp:

(WebCore::MatrixTransformOperation::operator==):
(WebCore::MatrixTransformOperation::blend):

  • platform/graphics/transforms/MatrixTransformOperation.h:
  • platform/graphics/transforms/PerspectiveTransformOperation.cpp:

(WebCore::PerspectiveTransformOperation::operator==):
(WebCore::PerspectiveTransformOperation::blend):

  • platform/graphics/transforms/PerspectiveTransformOperation.h:
  • platform/graphics/transforms/RotateTransformOperation.cpp:

(WebCore::RotateTransformOperation::operator==):
(WebCore::RotateTransformOperation::blend):

  • platform/graphics/transforms/RotateTransformOperation.h:
  • platform/graphics/transforms/ScaleTransformOperation.cpp:

(WebCore::ScaleTransformOperation::operator==):
(WebCore::ScaleTransformOperation::blend):

  • platform/graphics/transforms/ScaleTransformOperation.h:
  • platform/graphics/transforms/SkewTransformOperation.cpp:

(WebCore::SkewTransformOperation::operator==):
(WebCore::SkewTransformOperation::blend):

  • platform/graphics/transforms/SkewTransformOperation.h:
  • platform/graphics/transforms/TransformOperation.h:
  • platform/graphics/transforms/TranslateTransformOperation.cpp:

(WebCore::TranslateTransformOperation::operator==):
(WebCore::TranslateTransformOperation::blend):

  • platform/graphics/transforms/TranslateTransformOperation.h:

Source/WebKit2:

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(IPC::ArgumentCoder<TransformOperations>::encode):

12:04 PM Changeset in webkit [174738] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

[Mac] Unreviewed gardening.

Rebaselining.

  • css3/flexbox/flex-rounding.html:
11:34 AM Changeset in webkit [174737] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

[Mac] Unreviewed gardening.

Unskip some subpixel related tests.

  • platform/mac/TestExpectations:
11:04 AM Changeset in webkit [174736] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

[Mac] Unreviewed gardening.

css3/flexbox/flex-rounding.html passes now that subpixel is on.

  • platform/mac/TestExpectations:
11:00 AM Changeset in webkit [174735] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

[Mac] Allow some Kerberos related paths in sandbox
https://bugs.webkit.org/show_bug.cgi?id=137666
rdar://problem/17965010

Reviewed by Darin Adler.

  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • WebProcess/com.apple.WebProcess.sb.in:
11:00 AM Changeset in webkit [174734] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.4

New tag.

10:58 AM Changeset in webkit [174733] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

10:36 AM Changeset in webkit [174732] by Chris Dumez
  • 12 edits in trunk/Source

Use is<>() / downcast<>() for RenderTextControl / RenderTextControlSingleLine
https://bugs.webkit.org/show_bug.cgi?id=137727

Reviewed by Darin Adler.

Use is<>() / downcast<>() for RenderTextControl / RenderTextControlSingleLine.

Source/WebCore:

No new tests, no behavior change.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::selectedText):
(WebCore::AccessibilityRenderObject::selectedTextRange):
(WebCore::AccessibilityRenderObject::setSelectedTextRange):
(WebCore::AccessibilityRenderObject::visiblePositionForIndex):
(WebCore::AccessibilityRenderObject::indexForVisiblePosition):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::handleReplacedElement):

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::forwardEvent):

  • html/shadow/TextControlInnerElements.cpp:

(WebCore::TextControlInnerElement::customStyleForRenderer):

  • page/EventHandler.cpp:

(WebCore::EventHandler::capsLockStateMayHaveChanged):

  • page/ios/FrameIOS.mm:

(WebCore::ancestorRespondingToScrollWheelEvents):

  • rendering/RenderTextControl.h:
  • rendering/RenderTextControlSingleLine.h:
  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

Source/WebKit/ios:

  • WebCoreSupport/WebVisiblePosition.mm:

(-[DOMHTMLInputElement startPosition]):
(-[DOMHTMLInputElement endPosition]):
(-[DOMHTMLTextAreaElement startPosition]):
(-[DOMHTMLTextAreaElement endPosition]):

10:33 AM Changeset in webkit [174731] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Allow plug-ins to read managed preferences
https://bugs.webkit.org/show_bug.cgi?id=137665
<rdar://problem/18255601>

Reviewed by Darin Adler.

  • Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
10:21 AM Changeset in webkit [174730] by Alan Bujtas
  • 5 edits in trunk/LayoutTests

Subpixel layout: Unskip fast/sub-pixel directory.
https://bugs.webkit.org/show_bug.cgi?id=137732

Reviewed by Simon Fraser.

Unskip tests.

  • TestExpectations:
  • fast/sub-pixel/inline-block-with-padding-expected.txt: minor adjustment.
  • fast/sub-pixel/zoomed-em-border-expected.html: minor adjustment.
  • platform/mac/TestExpectations: we still have to skip couple of tests.
10:13 AM Changeset in webkit [174729] by Chris Dumez
  • 7 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for ClipPathOperation subclasses
https://bugs.webkit.org/show_bug.cgi?id=137733

Reviewed by Mihnea Ovidenie.

Use is<>() / downcast<>() for ClipPathOperation subclasses.

No new tests, no behavior change.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyClipPath::applyValue):

  • rendering/ClipPathOperation.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::nodeAtPoint):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setupClipPath):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::prepareToRenderSVGContent):

10:01 AM Changeset in webkit [174728] by dfarler@apple.com
  • 2 edits in trunk/Tools

[iOS] LayoutTestRelay: Detect broken pipe when reading simulator app's stdout and stderr.
https://bugs.webkit.org/show_bug.cgi?id=137662

Reviewed by Darin Adler.

The layout test harness can close LayoutTestRelay's subprocess
stdout and stderr in the case of a timeout or if a run is
cancelled and the FIFOs are cleaned up. If LayoutTestRelay
finds that no one is listening to its stdout/stderr (broken
pipe), then just exit(1), there is nothing to report.

  • LayoutTestRelay/LayoutTestRelay/LTRelayController.m:

(-[LTRelayController didReceiveStdoutData:]):
Add @try/@catch for NSFileHandleOperationException.
(-[LTRelayController didReceiveStderrData:]):
Add @try/@catch for NSFileHandleOperationException.

9:53 AM Changeset in webkit [174727] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

[Mac] Use CFDictionaryContainsKey() in ImageSource::isSizeAvailable()
https://bugs.webkit.org/show_bug.cgi?id=137723

Reviewed by Simon Fraser.

Use CFDictionaryContainsKey() in ImageSource::isSizeAvailable() instead
of CFDictionaryGetValue() as we are not actually interested in the
value.

No new tests, no behavior change.

  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::ImageSource::isSizeAvailable):

6:37 AM Changeset in webkit [174726] by abucur@adobe.com
  • 2 edits
    6 adds in trunk/PerformanceTests

[Multicol] Start adding performance tests for the multi-column implementation
https://bugs.webkit.org/show_bug.cgi?id=137687

Reviewed by Mihnea Ovidenie.

This patch creates a Multicol folder inside the Layout performance tests suite. It adds only two tests
as described below.

The tests are skipped until the implementation stabilizes.

  • Layout/Multicol/MulticolManyColumns.html: Added.

This test verifies the performance of the multi-column implementation with two nested multi-column
containers, the first having 20 columns and the second 10 columns.

  • Layout/Multicol/MulticolNested.html: Added.

This test verifies the performance of nesting multi-column containers in the presence
of floats.

  • Layout/Multicol/resources/multicol-content-many-columns.html: Added.
  • Layout/Multicol/resources/multicol-content-nested.html: Added.
  • Skipped: Skip the Multicol folder for now.
1:31 AM Changeset in webkit [174725] by mihnea@adobe.com
  • 3 edits in trunk/Source/WebCore

Use modern loops in subtrees selection code
https://bugs.webkit.org/show_bug.cgi?id=137688

Reviewed by Andreas Kling.

No new tests as no change in functionality.

  • rendering/RenderView.cpp:

(WebCore::RenderView::splitSelectionBetweenSubtrees):
(WebCore::RenderView::updateSelectionForSubtrees):
(WebCore::RenderView::clearSubtreeSelection):
(WebCore::RenderView::applySubtreeSelection):

  • rendering/RenderView.h:
12:33 AM Changeset in webkit [174724] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Minibrowser : Add keyboard support for zoom in , zoom out and default zoom in GTK Minibrowser
https://bugs.webkit.org/show_bug.cgi?id=137060

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-10-15
Reviewed by Philippe Normand.

Add keyboard support for zoom in , zoom out and default zoom using 'Ctrl' + '+', 'Ctrl' + '-' and 'Ctrl' + '0' respectively.

  • MiniBrowser/gtk/BrowserWindow.c:

(zoomInCallback):
(zoomOutCallback):
(defaultZoomCallback): Callback for default zoom keyboard support.
(browser_window_init):

Oct 14, 2014:

10:05 PM Changeset in webkit [174723] by gyuyoung.kim@samsung.com
  • 17 edits in trunk/Source

Clean up unnecessary PassOwnPtr.h inclusion
https://bugs.webkit.org/show_bug.cgi?id=137726

Reviewed by Chris Dumez.

Source/JavaScriptCore:

  • API/JSCallbackObject.h: Remove PassOwnPtr.h inclusion.
  • bytecode/DFGExitProfile.cpp: ditto.

Source/WebCore:

No new tests, no behavior changes.

  • dom/Document.h: Remove PassOwnPtr.h inclusion.
  • loader/ResourceBuffer.h: ditto.
  • loader/cocoa/DiskCacheMonitorCocoa.mm: ditto.
  • page/scrolling/AxisScrollSnapOffsets.h: ditto.
  • page/scrolling/ScrollingStateScrollingNode.h: ditto.
  • platform/ColorChooserClient.h: ditto.
  • platform/ScrollableArea.cpp: ditto.
  • platform/ScrollbarThemeClient.h: ditto.
  • platform/SharedBuffer.cpp: ditto.
  • platform/Supplementable.h: ditto.
  • platform/graphics/surfaces/GraphicsSurface.h: ditto.
  • platform/graphics/surfaces/GraphicsSurfaceToken.h: ditto.
  • platform/graphics/win/WKCAImageQueue.cpp: ditto.
  • platform/win/CursorWin.cpp: ditto.
10:01 PM Changeset in webkit [174722] by Chris Dumez
  • 17 edits in trunk/Source/WebCore

Have offsetFromContainer() / offsetFromAncestorContainer() take a RenderElement&
https://bugs.webkit.org/show_bug.cgi?id=137728

Reviewed by Benjamin Poulain.

Have offsetFromContainer() / offsetFromAncestorContainer() take a RenderElement&
instead of a RenderObject*. The argument passed is never null and the type
should be a RenderElement as the argument is a container.

No new tests, no behavior change.

  • editing/htmlediting.cpp:

(WebCore::localCaretRectInRendererForCaretPainting):

  • page/GestureTapHighlighter.cpp:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::mapLocalToContainer):
(WebCore::RenderBox::pushMappingToContainer):
(WebCore::RenderBox::offsetFromContainer):
(WebCore::RenderBox::computeRectForRepaint):

  • rendering/RenderBox.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::computeRectForRepaint):
(WebCore::RenderInline::offsetFromContainer):
(WebCore::RenderInline::mapLocalToContainer):
(WebCore::RenderInline::pushMappingToContainer):

  • rendering/RenderInline.h:
  • rendering/RenderMultiColumnFlowThread.cpp:

(WebCore::RenderMultiColumnFlowThread::offsetFromContainer):

  • rendering/RenderMultiColumnFlowThread.h:
  • rendering/RenderNamedFlowFragment.cpp:

(WebCore::RenderNamedFlowFragment::offsetFromContainer):

  • rendering/RenderNamedFlowFragment.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::offsetFromContainer):
(WebCore::RenderObject::offsetFromAncestorContainer):

  • rendering/RenderObject.h:
  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::offsetFromContainer):

  • rendering/RenderTableCell.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::convertToPaintingRect):

8:28 PM Changeset in webkit [174721] by jonowells@apple.com
  • 2 edits
    3 adds in trunk/Source/WebInspectorUI

Web Inspector: Add ESLint open source library to the inspector
https://bugs.webkit.org/show_bug.cgi?id=137714

Reviewed by Timothy Hatcher.

This adds the eslint.js external library for static analysis and the necessary license.

6:21 PM Changeset in webkit [174720] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION (r159208): Crash when clicking scrubber after navigating away/back to video
https://bugs.webkit.org/show_bug.cgi?id=137715

Reviewed by Darin Adler.

Simple null-check of m_player in refreshCachedTime.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::refreshCachedTime):

5:53 PM Changeset in webkit [174719] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][EFL] Fix the problem that threads created by a DispatchQueueEfl are not destroyed
even after the DispatchQueueEfl has been destructed
https://bugs.webkit.org/show_bug.cgi?id=137195

Patch by Joonghun Park <jh718.park@samsung.com> on 2014-10-14
Reviewed by Gyuyoung Kim.

Linux and Unix System's pthreads are created in joinable state by default.
If threads aren't destructed explicitly, it will be still live
until process which created the thread is dead.
Besides it may cause out of capacity range of thread creation in a process.
It is one of hidden defects.
This patch calls detachThread() to detach thread immediately after it is created.
So the thread can be destroyed as soon as the thread's ThreadContext::function()
returns.

  • Platform/efl/DispatchQueueEfl.cpp:

(DispatchQueue::ThreadContext::start):

5:50 PM Changeset in webkit [174718] by rniwa@webkit.org
  • 4 edits
    1 delete in trunk/Websites/perf.webkit.org

Remove unused jobs table
https://bugs.webkit.org/show_bug.cgi?id=137724

Reviewed by Daniel Bates.

Removed jobs table in the database as well as related code.

  • init-database.sql:
  • public/admin/jobs.php: Removed.
  • public/admin/tests.php:
  • public/include/admin-header.php:
5:44 PM Changeset in webkit [174717] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

[Mac] Fix inefficiencies in ResourceResponse::platformLazyInit(InitLevel)
https://bugs.webkit.org/show_bug.cgi?id=137721

Reviewed by Geoffrey Garen.

There were several inefficiencies with the Mac implementation of
ResourceResponse::platformLazyInit(InitLevel):

  1. We end up initializing uncommon fields even if called with 'CommonFieldsOnly' initLevel.
  2. If called with 'AllFields' initLevel (and if currently uninitialized), we end up populating m_httpHeaderFields twice, once with only the common headers, then a second time with ALL the headers. We can skip the common-header case in this case to avoid wasting CPU time.

This patch addresses both inefficiencies and cleans up the code a
little bit to reduce variable scope and to use fast enumeration of
header names.

As a result, we spend almost twice as little time in platformLazyInit()
when loading msn.com (~30ms -> ~18ms).

No new tests, no behavior change.

  • platform/network/mac/ResourceResponseMac.mm:

(WebCore::ResourceResponse::platformLazyInit):

5:42 PM Changeset in webkit [174716] by Alan Bujtas
  • 3 edits
    2 adds in trunk

REGRESSION (Safari 7.1/8.0): Border-radius and overflow hidden renders incorrectly.
https://bugs.webkit.org/show_bug.cgi?id=137205

Reviewed by Simon Fraser.

Child layer should not reset radius clipping behaviour.

Source/WebCore:

Test: fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

  • fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping-expected.html: Added.
  • fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html: Added.
5:41 PM Changeset in webkit [174715] by Chris Dumez
  • 20 edits in trunk/Source

Use is<>() / downcast<>() for PlatformCAAnimation subclasses
https://bugs.webkit.org/show_bug.cgi?id=137722

Reviewed by Simon Fraser.

Use is<>() / downcast<>() for PlatformCAAnimation subclasses and clean
up the surrounding code.

Source/WebCore:

No new tests, no behavior change.

  • page/mac/ServicesOverlayController.mm:

(WebCore::ServicesOverlayController::Highlight::fadeIn):
(WebCore::ServicesOverlayController::Highlight::fadeOut):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::moveOrCopyLayerAnimation):
(WebCore::GraphicsLayerCA::updateAnimations):
(WebCore::GraphicsLayerCA::setAnimationOnLayer):
(WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCAAnimation.h:
  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCAAnimationMac.h:
  • platform/graphics/ca/mac/PlatformCAAnimationMac.mm:

(PlatformCAAnimationMac::copy):
(PlatformCAAnimationMac::copyTimingFunctionFrom):
(PlatformCAAnimationMac::copyFromValueFrom):
(PlatformCAAnimationMac::copyToValueFrom):
(PlatformCAAnimationMac::copyValuesFrom):
(PlatformCAAnimationMac::copyKeyTimesFrom):
(PlatformCAAnimationMac::copyTimingFunctionsFrom):

  • platform/graphics/ca/mac/PlatformCALayerMac.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayerMac::addAnimationForKey):

  • platform/graphics/ca/win/PlatformCAAnimationWin.cpp:

(PlatformCAAnimationWin::copy):
(PlatformCAAnimationWin::copyTimingFunctionFrom):
(PlatformCAAnimationWin::copyFromValueFrom):
(PlatformCAAnimationWin::copyToValueFrom):
(PlatformCAAnimationWin::copyValuesFrom):
(PlatformCAAnimationWin::copyKeyTimesFrom):
(PlatformCAAnimationWin::copyTimingFunctionsFrom):

  • platform/graphics/ca/win/PlatformCAAnimationWin.h:
  • platform/graphics/ca/win/PlatformCALayerWin.cpp:

(PlatformCALayerWin::addAnimationForKey):

  • platform/graphics/ca/win/PlatformCALayerWin.h:

Source/WebKit2:

  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.h:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:

(WebKit::PlatformCAAnimationRemote::copy):
(WebKit::PlatformCAAnimationRemote::copyTimingFunctionFrom):
(WebKit::PlatformCAAnimationRemote::copyFromValueFrom):
(WebKit::PlatformCAAnimationRemote::copyToValueFrom):
(WebKit::PlatformCAAnimationRemote::copyValuesFrom):
(WebKit::PlatformCAAnimationRemote::copyKeyTimesFrom):
(WebKit::PlatformCAAnimationRemote::copyTimingFunctionsFrom):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::addAnimationForKey):
(WebKit::PlatformCALayerRemote::animationStarted):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):

5:29 PM Changeset in webkit [174714] by Chris Dumez
  • 31 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for RenderInline
https://bugs.webkit.org/show_bug.cgi?id=137704

Reviewed by Darin Adler.

Use is<>() / downcast<>() for RenderInline and clean up the surrounding
code.

No new tests, no behavior change.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::firstChildInContinuation):

  • editing/SimplifyMarkupCommand.cpp:

(WebCore::SimplifyMarkupCommand::doApply):

  • inspector/InspectorOverlay.cpp:

(WebCore::buildRendererHighlight):

  • page/FrameView.cpp:

(WebCore::FrameView::paintContents):

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
(WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
(WebCore::InlineFlowBox::attachLineBoxToRenderObject):
(WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
(WebCore::InlineFlowBox::nodeAtPoint):
(WebCore::InlineFlowBox::paint):

  • rendering/InlineIterator.h:

(WebCore::bidiFirstSkippingEmptyInlines):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::willBeDestroyed):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::inlineElementContinuation):
(WebCore::RenderBlock::addFocusRingRects):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::willBeDestroyed):
(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths):

  • rendering/RenderBlockFlow.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::constructBidiRunsForSegment):
(WebCore::RenderBlockFlow::layoutLineBoxes):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::offsetFromContainer):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
(WebCore::RenderBox::computePositionedLogicalWidthUsing):
(WebCore::RenderBox::computePositionedLogicalWidthReplaced):
(WebCore::RenderBox::layoutOverflowRectForPropagation):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::accumulateInFlowPositionOffsets):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::willBeRemovedFromTree):

  • rendering/RenderElement.h:

(WebCore::RenderElement::dirtyLinesFromChangedChild):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::addRegionsOverflowFromChild):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::willBeDestroyed):
(WebCore::RenderInline::updateAlwaysCreateLineBoxes):
(WebCore::RenderInline::clippedOverflowRectForRepaint):

  • rendering/RenderInline.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPosition):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLineBoxList.cpp:

(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):

  • rendering/RenderLineBoxList.h:
  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::decorationsClipRectForBoxInNamedFlowFragment):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::insertedIntoTree):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::overflowRectForFlowThreadPortion):
(WebCore::RenderRegion::visualOverflowRectForBox):
(WebCore::RenderRegion::visualOverflowRectForBoxForPropagation):

  • rendering/RenderRegion.h:
  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::willBeDestroyed):

  • rendering/RenderTextLineBoxes.cpp:

(WebCore::RenderTextLineBoxes::removeAllFromParent):
(WebCore::RenderTextLineBoxes::dirtyRange):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::inlineLogicalWidth):
(WebCore::BreakingContext::handleEmptyInline):

  • rendering/line/LineInlineHeaders.h:

(WebCore::requiresLineBox):
(WebCore::setStaticPositions):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::paint):

5:02 PM Changeset in webkit [174713] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Win] Unreviewed build fix after r174710.

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::createSession):

4:58 PM Changeset in webkit [174712] by mitz@apple.com
  • 10 edits in trunk

URLs that start with http:/// and https:/// lose two slashes when parsed, causing assertion failure and inconsistent behavior
https://bugs.webkit.org/show_bug.cgi?id=137718

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Added cases to fast/loader/url-parse-1.html.

  • platform/URL.cpp:

(WebCore::URL::parse): In hierarchical schemes other than file:, ignore any additional
slashes after the :, as prescribed by the authority-ignore-slashes state in the current
URL spec.

LayoutTests:

  • fast/loader/url-parse-1-expected.txt: Updated results.
  • fast/loader/url-parse-1.html: Added a few test cases.
  • fast/url/file-http-base-expected.txt: Updated results.
  • fast/url/host-expected.txt: Ditto.
  • fast/url/invalid-urls-utf8-expected.txt: Ditto.
  • fast/url/relative-expected.txt: Ditto.
  • fast/url/standard-url-expected.txt: Ditto.
4:46 PM Changeset in webkit [174711] by rniwa@webkit.org
  • 9 edits in trunk/Websites/perf.webkit.org

New perf dashboard should have an ability to search commits by a keyword
https://bugs.webkit.org/show_bug.cgi?id=137675

Reviewed by Geoffrey Garen.

/api/commits/ now accepts query parameters to search a commit by a keyword. Its output format changed to
include "authorEmail" and "authorName" directly as columns instead of including an "author" object.
This API change allows fetch_commits_between to generate results without processing Postgres query results.

In the front end side, we've added a search pane in pane controller, and the interactive chart component
now has a concept of highlighted items which is used to indicate commits found by the search pane.

  • public/api/commits.php:

(main): Extract query parameters: keyword, from, and to and use that to fetch appropriate commits.
(fetch_commits_between): Moved some code from main. Now takes a search term as the third argument.
We look for a commit if its author name or email contains the keyword or if its revision matches the keyword.
(format_commit): Renamed from format_commits. Now only formats one commit.

  • public/include/db.php:

(Database::query_and_fetch_all): Now returns array() when the query results is empty (instead of false).

  • public/v2/app.css: Renamed .close-button to .icon-button since it's used by a search button as well.
  • public/v2/app.js:

(App.Pane.searchCommit): Added. Finds the commits by a search term and assigns 'highlightedItems',
which is a hash table that contains highlighted items' measurements' ids as keys.
(App.PaneController.actions.toggleSearch): Toggles the visibility of the search pane. Also sets
the default commit repository.
(App.PaneController.actions.searchCommit): Delegates the work to App.Pane.searchCommit.
(App.InteractiveChartComponent._constructGraphIfPossible): Fixed a bug that we weren't removing old this._dots.
Added the code to initialize this._highlights.
(App.InteractiveChartComponent._updateDimensionsIfNeeded): Updates dimensions of highlight lines.
(App.InteractiveChartComponent._updateHighlightPositions): Added. Ditto.
(App.InteractiveChartComponent._highlightedItemsChanged): Adds vertical lines for highlighted items and deletes
the existing lines for the old highlighted items.
(App.CommitsViewerComponent.commitsChanged): Updated the code per JSON API change mentioned above.
Also fixed a bug that the code tries to update the commits viewer even if the viewer had already been destroyed.

  • public/v2/chart-pane.css: Added style for the search pane and the search button.
  • public/v2/data.js: Turned FetchCommitsForTimeRange into a class: CommitLogs.

(CommitLogs): Added.
(CommitLogs.fetchForTimeRange): Renamed from FetchCommitsForTimeRange. Takes a search term as an argument.
(CommitLogs._cachedCommitsBetween): Extracted from FetchCommitsForTimeRange.
(CommitLogs._cacheConsecutiveCommits): Ditto.
(FetchCommitsForTimeRange._cachedCommitsByRepository): Deleted.
(Measurement.prototype.commitTimeForRepository): Extracted from formattedRevisions.
(Measurement.prototype.formattedRevisions): Uses formattedRevisions. Deleted the unused code for commitTime.

  • public/v2/index.html: Added the search pane and the search button. Also removed the unused attribute binding

for showingDetails since this property is no longer used.

  • public/v2/manifest.js:

(App.Manifest.repositories): Added.
(App.Manifest.repositoriesWithReportedCommits): Ditto. Used by App.PaneController.actions.toggleSearch to find
the default repository to search.
(App.Manifest._fetchedManifest): Populates repositories and repositoriesWithReportedCommits.

4:43 PM Changeset in webkit [174710] by Brent Fulgham
  • 5 edits in trunk/Source/WebCore

[Win] Unreviewed build fix after r174698 and r174709.

  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.cpp:
  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.h:
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::supportsKeySystem):
(WebCore::AVFWrapper::shouldWaitForLoadingOfResource):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
4:31 PM Changeset in webkit [174709] by Brent Fulgham
  • 4 edits in trunk/Source/WebCore

[Win] Unreviewed build fix after r174698

  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.cpp:
  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.h:
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::createSession):

4:23 PM Changeset in webkit [174708] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION (r165356): Issues with Japanese text input
https://bugs.webkit.org/show_bug.cgi?id=137719
rdar://problem/18431952
rdar://problem/18483741

Reviewed by Darin Adler.

  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::didChangeSelection):

In sync code path, ensure consistent message delivery order by adding
a DispatchMessageEvenWhenWaitingForSyncReply flag. This way, delayed
EditorStateChanged messages won't confuse UI process.

4:17 PM Changeset in webkit [174707] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Re-adding fast/hidpi/image-srcset-relative-svg-canvas.html, as it still fails on bots

3:43 PM Changeset in webkit [174706] by roger_fong@apple.com
  • 2 edits
    43 adds in trunk/LayoutTests

[Windows] Unreviewed gardening following r174585.

  • platform/win/TestExpectations:
  • platform/win/editing/inserting/4960120-1-expected.txt: Added.
  • platform/win/editing/selection/select-across-readonly-input-1-expected.txt: Added.
  • platform/win/editing/selection/select-across-readonly-input-2-expected.txt: Added.
  • platform/win/editing/selection/select-across-readonly-input-3-expected.txt: Added.
  • platform/win/editing/selection/select-across-readonly-input-4-expected.png: Added.
  • platform/win/editing/selection/select-across-readonly-input-4-expected.txt: Added.
  • platform/win/editing/selection/select-across-readonly-input-5-expected.png: Added.
  • platform/win/editing/selection/select-across-readonly-input-5-expected.txt: Added.
  • platform/win/fast/block/positioning/inline-block-relposition-expected.txt: Added.
  • platform/win/fast/css/resize-corner-tracking-expected.png: Added.
  • platform/win/fast/css/resize-corner-tracking-expected.txt: Added.
  • platform/win/fast/css/text-input-with-webkit-border-radius-expected.txt: Added.
  • platform/win/fast/dom/html-link-element-activation-behavior-url-is-null-expected.txt: Added.
  • platform/win/fast/dynamic/positioned-movement-with-positioned-children-expected.txt: Added.
  • platform/win/fast/events/shadow-event-path-2-expected.txt: Added.
  • platform/win/fast/forms/003-expected.txt: Added.
  • platform/win/fast/forms/004-expected.txt: Added.
  • platform/win/fast/forms/button-default-title-expected.txt: Added.
  • platform/win/fast/forms/button-generated-content-expected.png: Added.
  • platform/win/fast/forms/button-generated-content-expected.txt: Added.
  • platform/win/fast/forms/menulist-clip-expected.png: Added.
  • platform/win/fast/forms/menulist-clip-expected.txt: Added.
  • platform/win/fast/forms/menulist-deselect-update-expected.txt: Added.
  • platform/win/fast/forms/menulist-style-color-expected.png: Added.
  • platform/win/fast/forms/menulist-style-color-expected.txt: Added.
  • platform/win/fast/forms/menulist-width-change-expected.txt: Added.
  • platform/win/fast/forms/option-script-expected.txt: Added.
  • platform/win/fast/forms/option-text-clip-expected.png: Added.
  • platform/win/fast/forms/option-text-clip-expected.txt: Added.
  • platform/win/fast/forms/select-writing-direction-natural-expected.png: Added.
  • platform/win/fast/forms/select-writing-direction-natural-expected.txt: Added.
  • platform/win/fast/forms/textarea-placeholder-visibility-1-expected.txt: Added.
  • platform/win/fast/forms/textarea-placeholder-visibility-2-expected.txt: Added.
  • platform/win/fast/forms/textarea-scrollbar-expected.png: Added.
  • platform/win/fast/forms/textarea-scrollbar-expected.txt: Added.
  • platform/win/fast/repaint/control-clip-expected.png: Added.
  • platform/win/fast/repaint/control-clip-expected.txt: Added.
  • platform/win/fast/repaint/selection-gap-fixed-child-expected.txt: Added.
  • platform/win/fast/repaint/selection-gap-flipped-fixed-child-expected.txt: Added.
  • platform/win/fast/table/append-cells2-expected.txt: Added.
  • platform/win/fast/table/remove-td-display-none-expected.txt: Added.
  • platform/win/fast/text/atsui-rtl-override-selection-expected.txt: Added.
  • platform/win/tables/mozilla/bugs/bug30559-expected.txt: Added.
3:31 PM Changeset in webkit [174705] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Hide the find indicator when starting a swipe
https://bugs.webkit.org/show_bug.cgi?id=137711

Reviewed by Tim Horton.

  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::navigationGestureDidBegin):

3:23 PM Changeset in webkit [174704] by mmaxfield@apple.com
  • 6 edits in trunk/Source

Improve debug description of WAKViews
https://bugs.webkit.org/show_bug.cgi?id=137716

Reviewed by Simon Fraser.

Source/WebCore:

No new tests because there is no behavior change.

  • platform/ios/wak/WAKView.mm:

(-[WAKView description]):

  • platform/ios/wak/WKView.h:
  • platform/ios/wak/WKView.mm:

(WKViewGetOrigin):

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _touchEventRegions]): Adding a comment.

2:50 PM Changeset in webkit [174703] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Introduce an isCSSAnimated flag on RenderElement for performance
https://bugs.webkit.org/show_bug.cgi?id=137583

Reviewed by Simon Fraser.

I noticed when profiling the ebay.com page load that isRunningAnimationOnRenderer()
and isRunningAcceleratedAnimationOnRenderer() were called frequently, causing
~4.7 millions m_compositeAnimations HashMap lookups.

This patch introduces an isCSSAnimated flag on RenderElement to return early if
there is no animation on the renderer, thus avoiding HashMap lookups. This reduces
the number of HashMap lookups from ~4.7 millions to ~68k. On my machine, I see
the following performance improvements:

  • isRunning*AnimationOnRenderer() / computeCompositingRequirements()
    • before: ~45ms / ~90ms
    • after: ~4ms / ~30ms

No new tests, no behavior change.

  • page/animation/AnimationController.cpp:

(WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
(WebCore::AnimationControllerPrivate::clear):
(WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
(WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
(WebCore::AnimationController::isRunningAnimationOnRenderer):
(WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::RenderElement):

  • rendering/RenderElement.h:

(WebCore::RenderElement::isCSSAnimating):
(WebCore::RenderElement::setIsCSSAnimating):

2:33 PM Changeset in webkit [174702] by Simon Fraser
  • 2 edits in trunk/Tools

[Mac] DRT stderr logging after the test completes gets attributed to the next test

Reviewed by Alexey Proskuryakov.

DRT would send "#EOF" to stderr just after doing so to stdout, which cause any later
logging to stderr to get associated with the next test.

Fix by logging #EOF to stderr later, after we've completely finished with this test.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(dumpTestResults):
(runTest):

2:33 PM Changeset in webkit [174701] by Simon Fraser
  • 30 edits in trunk/LayoutTests

Rebaseline some compositing tests that are sensitive to the visible rect, and skip
tests that rely on media loading.

  • platform/ios-simulator/TestExpectations:
  • platform/ios-simulator/compositing/columns/hittest-composited-in-paginated-expected.txt:
  • platform/ios-simulator/compositing/contents-scale/animating-expected.txt:
  • platform/ios-simulator/compositing/contents-scale/rounded-contents-scale-expected.txt:
  • platform/ios-simulator/compositing/contents-scale/scaled-ancestor-expected.txt:
  • platform/ios-simulator/compositing/contents-scale/simple-scale-expected.txt:
  • platform/ios-simulator/compositing/contents-scale/z-translate-expected.txt:
  • platform/ios-simulator/compositing/geometry/partial-layout-update-expected.txt:
  • platform/ios-simulator/compositing/geometry/root-layer-update-expected.txt:
  • platform/ios-simulator/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt:
  • platform/ios-simulator/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants-expected.txt:
  • platform/ios-simulator/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2-expected.txt:
  • platform/ios-simulator/compositing/overflow/overflow-positioning-expected.txt:
  • platform/ios-simulator/compositing/tiling/rotated-tiled-clamped-expected.txt:
  • platform/ios-simulator/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
  • platform/ios-simulator/compositing/tiling/tile-cache-zoomed-expected.txt:
  • platform/ios-simulator/compositing/tiling/tiled-layer-resize-expected.txt:
  • platform/ios-simulator/compositing/transitions/singular-scale-transition-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/2d-transformed-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/3d-transform-style-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/3d-transformed-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/animated-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/animated-from-none-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/clipped-by-viewport-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/clipped-visible-rect-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/flipped-preserve-3d-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/iframe-and-layers-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/nested-transform-expected.txt:
  • platform/ios-simulator/compositing/visible-rect/scrolled-expected.txt:
1:59 PM Changeset in webkit [174700] by dino@apple.com
  • 11 edits in trunk/Source/WebCore

Crash in WebCore::UserGestureIndicator::processingUserGesture with WebWorkers
https://bugs.webkit.org/show_bug.cgi?id=137676
<rdar://problem/15735049>

Reviewed by Alexey Proskuryakov.

Remove the code I added that tracks the timestamp of the most recent
user gesture from the event handling dispatch, as it was both
a silly place to do it and it originally crashed when events were fired from
Worker threads (although this was fixed in r152238).

It's now recorded by going through UserGestureIndicator, which is good because
it knows when a user has triggered an event. Its constructor now takes
a pointer to Document, and updates the timestamp there if necessary.

Not all UserGestureIndicator instances needed to reset the timestamp; Those did
not have to pass along the Document.

This is untestable due to the fix mentioned above.

  • WebCore.exp.in: Change constructor signature.
  • accessibility/AccessibilityNodeObject.cpp: Pass a pointer to the Document into the UserGestureIndicator.

(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):

  • accessibility/AccessibilityObject.cpp: Ditto.

(WebCore::AccessibilityObject::press):

  • dom/Document.cpp:

(WebCore::Document::updateLastHandledUserGestureTimestamp): Renamed.

  • dom/Document.h:
  • dom/EventTarget.cpp: Remove the code to update the timestamp.

(WebCore::EventTarget::fireEventListeners):

  • dom/UserGestureIndicator.cpp:

(WebCore::UserGestureIndicator::UserGestureIndicator): If there is a Document and
this is a user gesture, then reset the timestamp.

  • dom/UserGestureIndicator.h:
  • page/EventHandler.cpp: Pass a pointer to the Document.

(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseDoubleClickEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::keyEvent):
(WebCore::EventHandler::handleTouchEvent):

  • rendering/HitTestResult.cpp: Ditto.

(WebCore::HitTestResult::toggleMediaFullscreenState):
(WebCore::HitTestResult::enterFullscreenForVideo):

1:36 PM Changeset in webkit [174699] by Brent Fulgham
  • 11 edits in trunk

Source/JavaScriptCore:
[Win] Unreviewed gardening. Ignore Visual Studio *.sdf files.

Source/WebCore:
[Win] Unreviewed gardening. Ignore Visual Studio *.sdf files.

  • WebCore.vcxproj: Modified property svn:ignore.

Source/WebKit:
[Win] Unreviewed gardening. Ignore Visual Studio *.sdf files.

  • WebKit.vcxproj: Modified property svn:ignore.

Source/WTF:
[Win] Unreviewed gardening. Ignore Visual Studio *.sdf files.

  • WTF.vcxproj: Modified property svn:ignore.

Tools:
[Win] Unreviewed gardening. Ignore Visual Studio *.sdf temporary files.

  • DumpRenderTree/DumpRenderTree.vcxproj: Modified property svn:ignore.
1:09 PM Changeset in webkit [174698] by Brent Fulgham
  • 5 edits in trunk

[Win] Enable Encrypted Media Support
https://bugs.webkit.org/show_bug.cgi?id=137710
<rdar://problem/18652699>

Reviewed by Jer Noble.

Source/WebCore:

This feature is covered by existing media tests.

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::destroyAVFWrapper): Remove redundant ASSERT.

  • platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:

(displayOnMainThreadContext::displayOnMainThreadContext): Added.
(redispatchOnMainQueue): Added.
(PlatformCALayerWinInternal::displayCallback): Check if a display
call is happening on a background queue, and re-dispatch on the
main thread if necessary.

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.props: Activate the

ENCRYPTED_MEDIA_V2 flag on Windows.

12:30 PM Changeset in webkit [174697] by jdiggs@igalia.com
  • 6 edits in trunk/LayoutTests

REGRESSION(r174567): [GTK] Layout Tests platform/gtk/accessibility/aria-table-hierarchy.html and platform/gtk/accessibility/table-hierarchy.html fail
https://bugs.webkit.org/show_bug.cgi?id=137697

These tests were overlooked when updating tests to reflect the correct
mapping for ColumnHeaderRole and RowHeaderRole in ATK.

Reviewed by Chris Fleizach.

  • platform/gtk/TestExpectations: Remove two failing tests.
  • platform/gtk/accessibility/aria-table-hierarchy-expected.txt: Updated expectations.
  • platform/gtk/accessibility/aria-table-hierarchy.html: Updated in-test shouldBe values for headers.
  • platform/gtk/accessibility/table-hierarchy-expected.txt: Updated expectations.
  • platform/gtk/accessibility/table-hierarchy.html: Updated in-test shouldBe values for headers.
12:29 PM Changeset in webkit [174696] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebInspectorUI

Web Inspector: paint flashing mode should be disabled when remote inspecting legacy iOS versions
https://bugs.webkit.org/show_bug.cgi?id=137575

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-14
Reviewed by Simon Fraser.

Remove setShowPaintRects from the legacy iOS protocol definitions.
The methods were unimplemented by the backends, so they should
not advertise supporting it.

  • UserInterface/Protocol/Legacy/6.0/InspectorWebBackendCommands.js:
  • UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js:
  • UserInterface/Protocol/Legacy/8.0/InspectorWebBackendCommands.js:
  • Versions/Inspector-iOS-6.0.json:
  • Versions/Inspector-iOS-7.0.json:
  • Versions/InspectorWeb-iOS-8.0.json:
12:24 PM Changeset in webkit [174695] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

[Mac] Avoid unnecessary dictionary lookup in ImageSource::isSizeAvailable()
https://bugs.webkit.org/show_bug.cgi?id=137701

Reviewed by Simon Fraser.

The CG implementation of ImageSource::isSizeAvailable() was looking up
both the width and the height keys in the dictionary before determining
if the size is available. We can abort early and return false if the
first key (the width) is missing, thus avoiding an extra dictionary
lookup in this case.

This is a small win but ImageSource::isSizeAvailable() is called quite
frequently during page loads

No new tests, no behavior change.

  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::ImageSource::isSizeAvailable):

12:22 PM Changeset in webkit [174694] by mmirman@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Removes references to LLVMJIT which is no longer part of LLVM
https://bugs.webkit.org/show_bug.cgi?id=137708

Reviewed by Filip Pizlo.

  • Configurations/LLVMForJSC.xcconfig: removed -lLLVMJIT
  • llvm/LLVMAPIFunctions.h: removed LinkInJIT
12:12 PM Changeset in webkit [174693] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[cmake] Fix the make build after r174683
https://bugs.webkit.org/show_bug.cgi?id=137703

Reviewed by Martin Robinson.

  • Scripts/webkitdirs.pm:

(buildCMakeGeneratedProject):

11:36 AM Changeset in webkit [174692] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebKit/win

[Windows] Add some logging to debug random crashing when running layout tests on Windows.

  • WebActionPropertyBag.cpp:

(WebActionPropertyBag::Read):

11:32 AM Changeset in webkit [174691] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Remove unnecessary logging from SimpleFontData
https://bugs.webkit.org/show_bug.cgi?id=137699

Reviewed by Andreas Kling.

Because of web fonts, fonts that don't have a glyph page 0 are common and expected. Printing out a
message is not helpful, especially if you're not dealing with a font-related piece of WebKit.

No new tests because there is no behavior change.

  • platform/graphics/SimpleFontData.cpp:

(WebCore::SimpleFontData::platformGlyphInit):

11:24 AM Changeset in webkit [174690] by mmaxfield@apple.com
  • 2 edits in trunk/Tools

Adding myself to the watchlist to CachedFont

Unreviewed.

  • Scripts/webkitpy/common/config/watchlist:
11:05 AM Changeset in webkit [174689] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Addressing post-review comment.
https://bugs.webkit.org/show_bug.cgi?id=137550

Unreviewed.

  • WebView/WebHTMLView.mm:

(fontNameForDescription):
(-[WebHTMLView _addToStyle:fontA:fontB:]):

10:57 AM Changeset in webkit [174688] by mhock@apple.com
  • 2 edits in trunk/Source/WebCore

Update ViewportConfiguration whenever its size attributes change
https://bugs.webkit.org/show_bug.cgi?id=137682
rdar://problem/18643655

Reviewed by Benjamin Poulain.

  • page/ViewportConfiguration.cpp:

(WebCore::ViewportConfiguration::setMinimumLayoutSize):
(WebCore::ViewportConfiguration::setMinimumLayoutSizeForMinimalUI):

10:53 AM Changeset in webkit [174687] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Web Inspector: Processing Instruction Nodes appear poorly in DOM Tree
https://bugs.webkit.org/show_bug.cgi?id=137681

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-14
Reviewed by Timothy Hatcher.

Source/WebCore:

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):
Include the nodeName, localName, and nodeValue (string data)
properties for processing instruction nodes.

Source/WebInspectorUI:

Handle processing instruction node types in more places. The
backend sends the contents as a pure string, not as attribute
pairs, so just include the string in the UI.

  • UserInterface/Models/DOMSearchMatchObject.js:

(WebInspector.DOMSearchMatchObject.prototype._generateClassName):
(WebInspector.DOMSearchMatchObject.titleForDOMNode):

  • UserInterface/Views/DOMTreeElement.js:

(WebInspector.DOMTreeElement.prototype._nodeTitleInfo):
Display the value in the UI.

  • UserInterface/Views/DOMTreeElementPathComponent.js:

(WebInspector.DOMTreeElementPathComponent):
Include an icon like DOCTYPE.

  • UserInterface/Views/SyntaxHighlightingDefaultTheme.css:

(.syntax-highlighted .html-processing-instruction):
Style gray like a DOCTYPE.

10:31 AM Changeset in webkit [174686] by Chris Dumez
  • 6 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for RenderFrame / RenderFrameSet
https://bugs.webkit.org/show_bug.cgi?id=137696

Reviewed by Darin Adler.

Use is<>() / downcast<>() for RenderFrame / RenderFrameSet.

No new tests, no behavior change.

  • html/HTMLFrameSetElement.cpp:

(WebCore::HTMLFrameSetElement::defaultEventHandler):

  • rendering/RenderFrame.cpp:

(WebCore::RenderFrame::updateFromElement):

  • rendering/RenderFrame.h:
  • rendering/RenderFrameSet.cpp:

(WebCore::RenderFrameSet::computeEdgeInfo):
(WebCore::RenderFrameSet::positionFramesWithFlattening):

  • rendering/RenderFrameSet.h:
10:29 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
10:18 AM Changeset in webkit [174685] by clopez@igalia.com
  • 13 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Report new failures and update expectations.
  • platform/gtk/css3/selectors3/html/css3-modsel-61-expected.txt: Rebaseline after r174535.
  • platform/gtk/css3/selectors3/html/css3-modsel-83-expected.txt: Rebaseline after r174535.
  • platform/gtk/css3/selectors3/xhtml/css3-modsel-61-expected.txt: Rebaseline after r174535.
  • platform/gtk/css3/selectors3/xhtml/css3-modsel-83-expected.txt: Rebaseline after r174535.
  • platform/gtk/css3/selectors3/xml/css3-modsel-61-expected.txt: Rebaseline after r174535.
  • platform/gtk/css3/selectors3/xml/css3-modsel-83-expected.txt: Rebaseline after r174535.
  • platform/gtk/fast/borders/bidi-002-expected.txt: Rebaseline after r174160.
  • platform/gtk/fast/borders/bidi-009a-expected.txt: Rebaseline after r174160.
  • platform/gtk/fast/selectors/061-expected.txt: Rebaseline after r174535.
  • platform/gtk/fast/selectors/083-expected.txt: Rebaseline after r174535.
  • platform/gtk/mathml/opentype/horizontal-expected.txt: Rebaseline after r174540.
10:10 AM Changeset in webkit [174684] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

[XHR] Abort method execution when m_loader->cancel() in internalAbort() caused reentry
https://bugs.webkit.org/show_bug.cgi?id=126975

Patch by Youenn Fablet <youennf@gmail.com> on 2014-10-14
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Merging https://chromium.googlesource.com/chromium/blink/+/0d75daf2053631518606ae15daaece701a25b2c4
Ensuring new test from https://codereview.chromium.org/76133002/ is passing.

Test: http/tests/xmlhttprequest/reentrant-cancel-abort.html

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::open): exit early if internalAbort asks so
(WebCore::XMLHttpRequest::abort): exit early if internalAbort asks so
(WebCore::XMLHttpRequest::internalAbort): ask calling function to exit early if a new loader is created during the cancellation of the loader (potential reentrant case through window.onload callback)
(WebCore::XMLHttpRequest::didTimeout): exit early if internalAbort asks so

  • xml/XMLHttpRequest.h:

LayoutTests:

Adding reentrant-cancel-abort.html (from https://codereview.chromium.org/76133002/)
that crashes without the patch
Updated reentrant-cancel.html test to expect the exception
that is now hit in initSend function (since a XHR open() call is aborted)

  • http/tests/xmlhttprequest/reentrant-cancel-abort-expected.txt: Added.
  • http/tests/xmlhttprequest/reentrant-cancel-abort.html: Added.
  • http/tests/xmlhttprequest/reentrant-cancel.html:
9:42 AM Changeset in webkit [174683] by evab.u-szeged@partner.samsung.com
  • 2 edits in trunk/Tools

[EFL][GTK] Make it possible to get verbose output with ninja
https://bugs.webkit.org/show_bug.cgi?id=137606

Reviewed by Csaba Osztrogonác.

  • Scripts/webkitdirs.pm:

(buildCMakeGeneratedProject):

9:25 AM Changeset in webkit [174682] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[Win32] Thunk is not implemented.
https://bugs.webkit.org/show_bug.cgi?id=137691

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-10-14
Reviewed by Mark Lam.

Thunks for functions with double operands (floor, etc.) are not implemented on Win32.

  • jit/ThunkGenerators.cpp:
9:03 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
5:09 AM Changeset in webkit [174681] by evab.u-szeged@partner.samsung.com
  • 3 edits in trunk/Tools

[EFL] Make it possible to use ninja for EFL build too
https://bugs.webkit.org/show_bug.cgi?id=137605

Reviewed by Csaba Osztrogonác.

  • Scripts/webkitdirs.pm:

(generateBuildSystemFromCMakeProject):

  • efl/install-dependencies:
3:56 AM Changeset in webkit [174680] by alex
  • 1 edit
    2 adds in trunk/LayoutTests

Add test to check stretchy value is case sensitive
https://bugs.webkit.org/show_bug.cgi?id=137602

Reviewed by Darin Adler.

  • mathml/presentation/mo-stretchy-case-sensitive-expected.html: Added.
  • mathml/presentation/mo-stretchy-case-sensitive.html: Added.
3:49 AM Changeset in webkit [174679] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

[GTK] Minibrowser : Add home buton and keyboard support for home page load
https://bugs.webkit.org/show_bug.cgi?id=137486

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-10-14
Reviewed by Philippe Normand.

  • MiniBrowser/gtk/BrowserWindow.c:

(loadHomePage): Callback for home page load.
(browser_window_init):

  • MiniBrowser/gtk/BrowserWindow.h:
  • MiniBrowser/gtk/main.c:

(main):

3:05 AM Changeset in webkit [174678] by alex
  • 5 edits in trunk/Source/WebCore

Multiple refactors in RenderMathMLOperator
https://bugs.webkit.org/show_bug.cgi?id=137611

Reviewed by Darin Adler.

The changes include:

  • Rename m_operator to m_textContent.
  • Make most of the functions private, we needed to create some

public member functions to be able to make the some funtions private
and move trailingSpaceError to RenderMathMLOperator.

  • Fix incorrect capitalization of setOperatorProperties function.
  • Make all data members private and move them to the end of the

class defition.

No new tests as no change in functionality.

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::RenderMathMLOperator):
(WebCore::RenderMathMLOperator::setOperatorProperties): Renamed,
incorrect capitalization
(WebCore::RenderMathMLOperator::stretchTo):
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
(WebCore::RenderMathMLOperator::rebuildTokenContent):
(WebCore::RenderMathMLOperator::updateFromElement):
(WebCore::RenderMathMLOperator::updateOperatorProperties):
(WebCore::RenderMathMLOperator::shouldAllowStretching):
(WebCore::RenderMathMLOperator::updateStyle):
(WebCore::RenderMathMLOperator::trailingSpaceError):
(WebCore::RenderMathMLOperator::SetOperatorProperties): Deleted.
(WebCore::RenderMathMLOperator::advanceForGlyph): Deleted.
(WebCore::RenderMathMLOperator::updateTokenContent): Deleted.
(WebCore::RenderMathMLOperator::getGlyphAssemblyFallBack): Deleted.

  • rendering/mathml/RenderMathMLOperator.h:

(WebCore::RenderMathMLOperator::setLeadingSpace): Added.
(WebCore::RenderMathMLOperator::setTrailingSpace): Added.
(WebCore::RenderMathMLOperator::textContent): Added.
(WebCore::RenderMathMLOperator::isInvisibleOperator):

  • rendering/mathml/RenderMathMLRadicalOperator.cpp:

(WebCore::RenderMathMLRadicalOperator::setOperatorProperties):
Renamed, incorrect capitalization
(WebCore::RenderMathMLRadicalOperator::SetOperatorProperties): Deleted.
(WebCore::RenderMathMLRadicalOperator::trailingSpaceError): Deleted.

  • rendering/mathml/RenderMathMLRadicalOperator.h:
2:53 AM Changeset in webkit [174677] by alex
  • 6 edits in trunk

Changes in the stretchy attribute do not update rendering
https://bugs.webkit.org/show_bug.cgi?id=136883

Reviewed by Darin Adler.

Source/WebCore:

Test: mathml/presentation/mo-stretch-update.html

We need to relayout when a change in the stretchy attribute
happens.

  • mathml/MathMLTextElement.cpp:

(WebCore::MathMLTextElement::parseAttribute): Parse the
modifications of the stretchy attribute.

  • mathml/MathMLTextElement.h:
  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::setOperatorFlagAndScheduleLayoutIfNeeded):
Add function that receives the value instead of looking for it and
checks if the change should schedule a layout.
(WebCore::RenderMathMLOperator::setOperatorFlagFromAttribute):
(WebCore::RenderMathMLOperator::setOperatorFlagFromAttributeValue):
Add function that receives the value instead of looking for it.

  • rendering/mathml/RenderMathMLOperator.h:

LayoutTests:

The test updates the stretchy value in a timeout.

  • mathml/presentation/mo-stretch-update-expected.html: Added.
  • mathml/presentation/mo-stretch-update.html: Added.
2:07 AM Changeset in webkit [174676] by Chris Dumez
  • 31 edits in trunk/Source

Use is<>() / downcast<>() for RenderImage
https://bugs.webkit.org/show_bug.cgi?id=137683

Reviewed by Mihnea Ovidenie.

Use is<>() / downcast<>() for RenderImage.

Source/WebCore:

No new tests, no behavior change.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::alternativeText):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::addImageMapChildren):
(WebCore::AccessibilityRenderObject::remoteSVGRootElement):

  • bindings/objc/DOM.mm:

(-[DOMElement image]):
(-[DOMElement _imageTIFFRepresentation]):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::handleReplacedElement):

  • editing/cocoa/HTMLConverter.mm:

(fileWrapperForElement):

  • editing/gtk/EditorGtk.cpp:

(WebCore::getImageForElement):

  • editing/ios/EditorIOS.mm:

(WebCore::getImage):

  • editing/mac/EditorMac.mm:

(WebCore::getImage):

  • html/HTMLAnchorElement.cpp:

(WebCore::appendServerMapMousePosition):

  • html/HTMLAreaElement.cpp:

(WebCore::HTMLAreaElement::setFocus):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::setBestFitURLAndDPRFromImageCandidate):
(WebCore::HTMLImageElement::parseAttribute):
(WebCore::HTMLImageElement::didAttachRenderers):
(WebCore::HTMLImageElement::createImageControls):
(WebCore::HTMLImageElement::destroyImageControls):

  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::didAttachRenderers):
(WebCore::HTMLVideoElement::parseAttribute):

  • html/ImageInputType.cpp:

(WebCore::ImageInputType::altAttributeChanged):
(WebCore::ImageInputType::attach):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::size):

  • html/shadow/mac/ImageControlsRootElementMac.cpp:

(WebCore::RenderImageControls::updateLogicalWidth):
(WebCore::RenderImageControls::computeLogicalHeight):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::renderImageResource):

  • page/ContextMenuController.cpp:

(WebCore::imageFromImageElementNode):

  • page/DragController.cpp:

(WebCore::getCachedImage):
(WebCore::getImage):

  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::writeImage):
(WebCore::getCachedImage):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::image):

  • rendering/RenderImage.h:
  • rendering/RenderImageResource.cpp:

(WebCore::RenderImageResource::getImageSize):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::isDirectlyCompositedImage):
(WebCore::RenderLayerBacking::updateImageContents):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeAspectRatioInformationForRenderBox):

  • rendering/shapes/ShapeOutsideInfo.cpp:

(WebCore::ShapeOutsideInfo::createShapeForImage):

Source/WebKit/mac:

  • Misc/WebNSPasteboardExtras.mm:

(imageFromElement):
(-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:

(WebKit::cachedImage):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::performActionOnElement):

1:18 AM Changeset in webkit [174675] by commit-queue@webkit.org
  • 9 edits
    2 adds in trunk

[AX] Improve AccessibilityTableCell columnHeaders and rowHeaders functions.
https://bugs.webkit.org/show_bug.cgi?id=136818

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-10-14
Reviewed by Chris Fleizach.

Source/WebCore:

Take into account that <th> elements can be both the column headers and row headers
improved the operation of two functions: columnHeaders and rowHeaders.

Test: accessibility/table-headers.html

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::isColumnHeaderCell):
A new function that helps the main goal.
(WebCore::AccessibilityTableCell::isRowHeaderCell):
A new function that helps the main goal.
(WebCore::AccessibilityTableCell::columnHeaders):
Use isColumnHeaderCell instead of isTableHeaderCell.
(WebCore::AccessibilityTableCell::rowHeaders):
Use isRowHeaderCell also includes <th> row header element next to the scope attribute.

  • accessibility/AccessibilityTableCell.h:

Adds new functions to the header file.

LayoutTests:

  • accessibility/table-headers-expected.txt: Added.
  • accessibility/table-headers.html: Added.
  • platform/mac/accessibility/table-attributes-expected.txt:
  • platform/mac/accessibility/table-cells-expected.txt:
  • platform/mac/accessibility/table-sections-expected.txt:
1:14 AM Changeset in webkit [174674] by Csaba Osztrogonác
  • 5 edits in trunk/Source/WebCore

Fix the !ENABLE(VIDEO) build after r174353
https://bugs.webkit.org/show_bug.cgi?id=137655

Reviewed by Darin Adler.

  • dom/Document.cpp:
  • dom/Document.h:
  • page/Page.cpp:
  • page/Page.h:
1:11 AM Changeset in webkit [174673] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Curl] Compile error in CurlDownload.cpp.
https://bugs.webkit.org/show_bug.cgi?id=137654

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-10-14
Reviewed by Philippe Normand.

A template specialization is not needed anymore.

  • platform/network/curl/CurlDownload.cpp:
1:08 AM Changeset in webkit [174672] by Manuel Rego Casasnovas
  • 4 edits in trunk/Tools

import-w3c-tests doesn't prefix property values
https://bugs.webkit.org/show_bug.cgi?id=137600

Reviewed by Bem Jones-Bey.

Some property values are prefixed in WebKit. Modified the W3C import
script in order to prefix property values and not only properties.
The patch re-uses most of the already existent logic to prefix
properties.

  • Scripts/webkitpy/w3c/test_converter.py: Read prefixed property values

from CSSValueKeywords.in and adapt converter to modify both properties
and property values.
(convert_for_webkit):
(_W3CTestConverter.init):
(_W3CTestConverter.output):
(_W3CTestConverter.read_webkit_prefixed_css_property_list):
(_W3CTestConverter):
(_W3CTestConverter.add_webkit_prefix_to_unprefixed_properties_and_values):
(_W3CTestConverter.add_webkit_prefix_following_regex):
(_W3CTestConverter.convert_reference_relpaths):
(_W3CTestConverter.convert_style_data):
(_W3CTestConverter.convert_attributes_if_needed):
(_W3CTestConverter.add_webkit_prefix_to_unprefixed_properties): Deleted.

  • Scripts/webkitpy/w3c/test_converter_unittest.py: Updated unit test to

include checks for property values too.
(W3CTestConverterTest.test_read_prefixed_property_list):
(verify_no_conversion_happened):
(verify_prefixed_properties):
(verify_prefixed_property_values):
(generate_test_content_properties_and_values):
(generate_test_content):

  • Scripts/webkitpy/w3c/test_importer.py: Modified importer to manage

prefixed property values and inform about them.
(TestImporter.import_tests):
(TestImporter.write_import_log):

Oct 13, 2014:

11:58 PM Changeset in webkit [174671] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

[GTK][CMake] Non-ninja build is broken since r174422
https://bugs.webkit.org/show_bug.cgi?id=137656

Reviewed by Philippe Normand.

Make WebKit2-forwarding-headers depend only on static,
non-generated sources.

  • CMakeLists.txt:
  • PlatformGTK.cmake:
9:43 PM Changeset in webkit [174670] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Paint Flashing button does not match page state after reload
https://bugs.webkit.org/show_bug.cgi?id=137680

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-13
Reviewed by Timothy Hatcher.

  • UserInterface/Base/Main.js:

(WebInspector.loaded):
Make paint flashing a frontend setting. Enable it when the inspector
is opened if it was previously enabled.

  • UserInterface/Views/DOMTreeContentView.js:

(WebInspector.DOMTreeContentView):
(WebInspector.DOMTreeContentView.prototype._togglePaintFlashing):
(WebInspector.DOMTreeContentView.prototype._showPaintRectsSettingChanged):
Have the paint flashing button always match the global setting.

6:31 PM Changeset in webkit [174669] by benjamin@webkit.org
  • 1 edit
    4 adds in trunk/LayoutTests

Add test coverage for the more complex cases of :not()
https://bugs.webkit.org/show_bug.cgi?id=137671

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-10-13
Reviewed by Andreas Kling.

Those tests cover the future CSS JIT support of :not(). I'll to the implementation
split over multiple patch, better put the tests first.

  • fast/selectors/not-backtracking-expected.txt: Added.
  • fast/selectors/not-backtracking.html: Added.
  • fast/selectors/not-boundaries-expected.txt: Added.
  • fast/selectors/not-boundaries.html: Added.
6:30 PM Changeset in webkit [174668] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Source/WebCore:
Web Inspector: Remove unused stale Page protocol methods
https://bugs.webkit.org/show_bug.cgi?id=137678

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-13
Reviewed by Andreas Kling.

  • inspector/InspectorClient.h:

(WebCore::InspectorClient::canShowDebugBorders): Deleted.
(WebCore::InspectorClient::setShowDebugBorders): Deleted.
(WebCore::InspectorClient::canShowFPSCounter): Deleted.
(WebCore::InspectorClient::setShowFPSCounter): Deleted.
(WebCore::InspectorClient::canContinuouslyPaint): Deleted.
(WebCore::InspectorClient::setContinuousPaintingEnabled): Deleted.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::canShowDebugBorders): Deleted.
(WebCore::InspectorPageAgent::setShowDebugBorders): Deleted.
(WebCore::InspectorPageAgent::canShowFPSCounter): Deleted.
(WebCore::InspectorPageAgent::setShowFPSCounter): Deleted.
(WebCore::InspectorPageAgent::canContinuouslyPaint): Deleted.
(WebCore::InspectorPageAgent::setContinuousPaintingEnabled): Deleted.

  • inspector/InspectorPageAgent.h:
  • inspector/protocol/Page.json:

Source/WebInspectorUI:
Web Inspector: Improve appearance of alpha color swatches
https://bugs.webkit.org/show_bug.cgi?id=137627

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-13
Reviewed by Andreas Kling.

  • UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js:
  • UserInterface/Protocol/Legacy/8.0/InspectorWebBackendCommands.js:
  • Versions/Inspector-iOS-7.0.json:
  • Versions/InspectorWeb-iOS-8.0.json:
6:16 PM Changeset in webkit [174667] by jer.noble@apple.com
  • 2 edits in trunk/Tools

MediaPlayer::characteristicChanged() is not called when new tracks are found in SourceBufferPrivateAVFObjC
https://bugs.webkit.org/show_bug.cgi?id=137533

Reviewed by Andy Estes.

Follow up patch; bail out of the test early (without failing) if the platform does not support MSE.

  • TestWebKitAPI/Tests/WebKit2/WKPageIsPlayingAudio.cpp:

(TestWebKitAPI::isMSEEnabledCallback):
(TestWebKitAPI::TEST):

5:22 PM Changeset in webkit [174666] by eric.carlson@apple.com
  • 11 edits in trunk/Source/WebCore

[iOS] Refactor AirPlay monitoring code
https://bugs.webkit.org/show_bug.cgi?id=137645
<rdar://problem/18444817>

Reviewed by Jer Noble.

Refactor AirPlay route change monitoring code:
+ Have MediaSessionManager register/unregister for route changes depending on the state of

all sessions so it does the right thing when there is more than one media element.

+ Make HTMLMediaElement unregister with MediaSession as soon as the media player is cleared

because there can be no wireless playback without a player.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::~HTMLMediaElement): Call mediaSession->setHasPlaybackTargetAvailabilityListeners

when there are target availability changed listeners.

(WebCore::HTMLMediaElement::clearMediaPlayer): Ditto.
(WebCore::HTMLMediaElement::wirelessRoutesAvailableDidChange): New, media session client method.

  • html/HTMLMediaElement.h:
  • html/HTMLMediaSession.cpp:

(WebCore::HTMLMediaSession::HTMLMediaSession): Initialize m_hasPlaybackTargetAvailabilityListeners.
(WebCore::HTMLMediaSession::setHasPlaybackTargetAvailabilityListeners): Remember whether or not

the client has a target availability listener and tell the media session manager to reconfigure
itself instead of telling it to start or stop listening for route changes so it does the
right thing when there is more than one media element.

  • html/HTMLMediaSession.h:

(WebCore::HTMLMediaSession::requiresPlaybackTargetRouteMonitoring): Return true when the client

has a target availability listener, false otherwise.

  • platform/audio/MediaSession.cpp:

(WebCore::MediaSession::wirelessRoutesAvailableDidChange): Inform the client that routes have changed.

  • platform/audio/MediaSession.h:

(WebCore::MediaSession::requiresPlaybackTargetRouteMonitoring):
(WebCore::MediaSessionClient::wirelessRoutesAvailableDidChange):

  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::wirelessRoutesAvailableChanged): Implement it.

  • platform/audio/MediaSessionManager.h:

(WebCore::MediaSessionManager::configureWireLessTargetMonitoring):
(WebCore::MediaSessionManager::hasWirelessTargetsAvailable):
(WebCore::MediaSessionManager::sessions):
(WebCore::MediaSessionManager::startMonitoringAirPlayRoutes): Deleted.
(WebCore::MediaSessionManager::stopMonitoringAirPlayRoutes): Deleted.

  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::configureWireLessTargetMonitoring): Start or stop monitoring

for route changes depending on client state.

(WebCore::MediaSessionManageriOS::startMonitoringAirPlayRoutes): Deleted.
(WebCore::MediaSessionManageriOS::stopMonitoringAirPlayRoutes): Deleted.

4:46 PM Changeset in webkit [174665] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

[Mac] Return value of createImageSourceOptions() is leaked in ImageSourceCG
https://bugs.webkit.org/show_bug.cgi?id=137677

Reviewed by Simon Fraser.

The return value of createImageSourceOptions() was leaked in
ImageSourceCG.cpp. It was returning a CFDictionaryRef created using
CFDictionaryCreate(). Therefore, the return value should have been
released but wasn't.

This patch makes createImageSourceOptions() return a
RetainPtr<CFDictionaryRef> to make sure the CFDictionaryRef properly
gets released after use.

No new tests, no behavior change.

  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::createImageSourceOptions):
(WebCore::imageSourceOptions):
(WebCore::ImageSource::isSizeAvailable):
(WebCore::ImageSource::allowSubsamplingOfFrameAtIndex):
(WebCore::ImageSource::frameSizeAtIndex):
(WebCore::ImageSource::orientationAtIndex):
(WebCore::ImageSource::getHotSpot):
(WebCore::ImageSource::repetitionCount):
(WebCore::ImageSource::createFrameAtIndex):
(WebCore::ImageSource::frameDurationAtIndex):

4:10 PM Changeset in webkit [174664] by Brent Fulgham
  • 15 edits
    4 adds in trunk

[Win] Implement a page load profiling tool
https://bugs.webkit.org/show_bug.cgi?id=137673

Reviewed by Dean Jackson.

Source/WebKit/win:

Add a new predicate (isMainFrame) to the IWebFrame interface so
that we can make decisions about a frames position in the page
load hierarchy in client programs.

  • Interfaces/IWebFrame.idl: Added new isMainFrame

predicate to interface definition.

  • WebFrame.cpp:

(WebFrame::isMainFrame): Added.

  • WebFrame.h:

Tools:

Add a tool to capture and summarize page load statistics.

  • WinLauncher/Common.cpp:

(parseCommandLine): Move from WinMain.cpp so that it can
be shared with internal tools.

  • WinLauncher/PageLoadTestClient.cpp: Added.

(PageLoadTestClient::PageLoadTestClient):
(PageLoadTestClient::pageLoadStartedAtTime):
(PageLoadTestClient::didStartProvisionalLoad):
(PageLoadTestClient::didCommitLoad):
(PageLoadTestClient::didFirstLayoutForMainFrame):
(PageLoadTestClient::didHandleOnLoadEvents):
(PageLoadTestClient::didFinishLoad):
(PageLoadTestClient::didFailLoad):
(PageLoadTestClient::didInitiateResourceLoad):
(PageLoadTestClient::didEndResourceLoad):
(PageLoadTestClient::pageLoadEndedAtTime):
(PageLoadTestClient::endPageLoad):
(PageLoadTestClient::clearPageLoadState):
(PageLoadTestClient::shouldConsiderPageLoadEnded):
(PageLoadTestClient::maybeEndPageLoadSoon):
(PageLoadTestClient::setPageURL):
(PageLoadTestClient::dumpRunStatistics):

  • WinLauncher/PrintWebUIDelegate.cpp:

(PrintWebUIDelegate::createWebViewWithRequest): Handle
nullptr URL properly.

  • WinLauncher/ResourceLoadDelegate.cpp: Added.

(ResourceLoadDelegate::QueryInterface):
(ResourceLoadDelegate::AddRef):
(ResourceLoadDelegate::Release):
(ResourceLoadDelegate::identifierForInitialRequest):
(ResourceLoadDelegate::willSendRequest):
(ResourceLoadDelegate::didReceiveAuthenticationChallenge):
(ResourceLoadDelegate::didCancelAuthenticationChallenge):
(ResourceLoadDelegate::didReceiveResponse):
(ResourceLoadDelegate::didReceiveContentLength):
(ResourceLoadDelegate::didFinishLoadingFromDataSource):
(ResourceLoadDelegate::didFailLoadingWithError):
(ResourceLoadDelegate::plugInFailedWithError):

  • WinLauncher/ResourceLoadDelegate.h: Added.

(ResourceLoadDelegate::ResourceLoadDelegate):

  • WinLauncher/WinLauncher.cpp:

(WinLauncher::WinLauncher): Accept argument to indicate we want to capture
page loading statistics.
(WinLauncher::setFrameLoadDelegatePrivate): Get rid of stub implementation
and set private load delegate state.
(WinLauncher::setResourceLoadDelegate): Replace stub with a full implementation
that sets the view's resource load delegate.
(WinLauncher::loadURL): If no URL is passed, load the test document.

  • WinLauncher/WinLauncher.h:

(WinLauncher::pageLoadTestClient):

  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj: Updated for new source files.
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj.filters: Ditto.
  • WinLauncher/WinLauncherWebHost.cpp:

(WinLauncherWebHost::updateAddressBar): Hook into page load statistics routine.
(WinLauncherWebHost::loadURL): Moved 'SendMessage' call to its own method so that
it could be used from other source files.
(WinLauncherWebHost::didFinishLoadForFrame): Added overload to capture statistics.
(WinLauncherWebHost::didStartProvisionalLoadForFrame): Ditto.
(WinLauncherWebHost::didFailLoadWithError): Ditto.
(WinLauncherWebHost::didHandleOnloadEventsForFrame): Ditto.
(WinLauncherWebHost::didFirstLayoutInFrame): Ditto.
(WinLauncherWebHost::didFinishDocumentLoadForFrame): Ditto.
(WinLauncherWebHost::didFirstVisuallyNonEmptyLayoutInFrame): Ditto.
(WinLauncherWebHost::didStartProvisionalLoadForFrame): Deleted.

  • WinLauncher/WinLauncherWebHost.h:
  • WinLauncher/WinMain.cpp:

(wWinMain): Create and use new delegates for gathering page load data.

  • WinLauncher/stdafx.h: Need to add <wtf/Platform> include for various macros used in build.
3:46 PM Changeset in webkit [174663] by Yusuke Suzuki
  • 7 edits
    2 adds in trunk

CSS JIT: Implement :visited pseudo class
https://bugs.webkit.org/show_bug.cgi?id=135293

Reviewed by Benjamin Poulain.

Source/WebCore:

This patch implements CSS JIT for :visited. And it makes :not(:link) JIT-ed.
Following the design discussed at the other bug[1], implemented :visited JIT
without tracking VisitedMatchEnabled state.

In this patch, we change the semantics of :visited / :link
inside functional pseudo classes for further CSS Selector Level 4 extensions.

Edge cases are tested by the existing tests.
:not(:link)

fast/history/link-inside-not.html

:not(:visited)

fast/history/visited-inside-not.html

:-webkit-any(:link)

fast/history/link-inside-any.html

:-webkit-any(:visited)

fast/history/visited-inside-any.html

[1]: https://bugs.webkit.org/show_bug.cgi?id=135639

Test: fast/history/link-inside-not-inside-any.html

To cover the :-webkit-any(:not(:link)), added new tests.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::constructFragments):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorCheckerExcludingPseudoElements):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateRightmostTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementLinkMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstLink):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateStoreLastVisitedElement):

LayoutTests:

To cover the :-webkit-any(:not(:link)), added new tests.

  • TestExpectations:
  • fast/history/link-inside-not-expected.txt:
  • fast/history/link-inside-not-inside-any-expected.txt: Added.
  • fast/history/link-inside-not-inside-any.html: Added.
  • fast/history/link-inside-not.html:
3:44 PM Changeset in webkit [174662] by Simon Fraser
  • 5 edits in trunk

Improve the test image diffs page
https://bugs.webkit.org/show_bug.cgi?id=137674

Reviewed by Alexey Proskuryakov.

Tools:

Don't treat the input file as a format string, otherwise we have to escape special
characters. Just do a couple of replaces.

  • Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:

(TestResultWriter.write_image_diff_files):

LayoutTests:

New version of the image diff page that has the diff images in-place, and allows
for control of the image toggling.

  • fast/harness/image-diff-template-expected.txt:
  • fast/harness/image-diff-template.html:
3:35 PM Changeset in webkit [174661] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Use modern loops in RenderLayerCompositor
https://bugs.webkit.org/show_bug.cgi?id=137670

Reviewed by Simon Fraser.

Use modern range for-loops in RenderLayerCompositor.

No new tests, no behavior change.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::OverlapMapContainer::overlapsLayers):
(WebCore::RenderLayerCompositor::OverlapMap::RectList::intersects):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayersAfterFlush):
(WebCore::RenderLayerCompositor::updateCustomLayersAfterFlush):
(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirementsForNamedFlowFixed):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::computeRegionCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTreeForNamedFlowFixed):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::rebuildRegionCompositingLayerTree):
(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
(WebCore::RenderLayerCompositor::recursiveRepaintLayer):
(WebCore::resetTrackedRepaintRectsRecursive):
(WebCore::RenderLayerCompositor::layerHas3DContent):
(WebCore::RenderLayerCompositor::registerAllViewportConstrainedLayers):
(WebCore::RenderLayerCompositor::registerAllScrollingLayers):
(WebCore::RenderLayerCompositor::unregisterAllScrollingLayers):

3:30 PM Changeset in webkit [174660] by Antti Koivisto
  • 2 edits in trunk/Source/WTF

Add StringCapture helper for thread-safe lambda capture
https://bugs.webkit.org/show_bug.cgi?id=137664

Reviewed by Anders Carlsson.

There is currently no clean way to capture a String in a thread-safe manner. This will now work:

StringCapture stringCapture(string);
auto lambdaThatRunsInAnotherThread = [stringCapture] { String string = stringCapture.string(); ... }

This type won't be necessary with C++14 initialized lambda capture: [string = string.isolatedCopy()].

  • wtf/text/WTFString.h:

(WTF::StringCapture::StringCapture): Create isolated copy in copy-constructor.
(WTF::StringCapture::string):

2:58 PM Changeset in webkit [174659] by rniwa@webkit.org
  • 3 edits in trunk/Websites/perf.webkit.org

Unreviewed build fix after r174555.

  • public/include/manifest.php:

(ManifestGenerator::generate): Assign an empty array to $repositories_with_commit when there are no commits.

  • tests/admin-regenerate-manifest.js: Fixed the test case.
2:33 PM Changeset in webkit [174658] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Drop unnecessary overlapMap null checks in computeCompositingRequirements()
https://bugs.webkit.org/show_bug.cgi?id=137668

Reviewed by Andreas Kling.

Drop unnecessary overlapMap null checks in computeCompositingRequirements().
The function is never called with a null overlapMap so we can make the
argument a reference and drop all the null checks.

No new tests, no behavior change.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateCompositingLayers):
(WebCore::RenderLayerCompositor::computeCompositingRequirementsForNamedFlowFixed):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::computeRegionCompositingRequirements):

  • rendering/RenderLayerCompositor.h:
1:59 PM Changeset in webkit [174657] by Chris Dumez
  • 19 edits in trunk/Source

Use is<>() / downcast<>() for PlatformCALayer subclasses
https://bugs.webkit.org/show_bug.cgi?id=137661

Reviewed by Simon Fraser.

Source/WebCore:

Use is<>() / downcast<>() for PlatformCALayer subclasses and clean up
the surrounding code.

No new tests, no behavior change.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::ensureStructuralLayer):
(WebCore::GraphicsLayerCA::updateContentsRects):
(WebCore::GraphicsLayerCA::updateReplicatedLayers):
(WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
(WebCore::GraphicsLayerCA::fetchCloneLayers): Deleted.

  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/TileCoverageMap.cpp:

(WebCore::TileCoverageMap::TileCoverageMap):

  • platform/graphics/ca/TileGrid.cpp:

(WebCore::TileGrid::ensureTilesForRect):

  • platform/graphics/ca/mac/PlatformCALayerMac.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayerMac::clone):
(PlatformCALayerMac::appendSublayer):
(PlatformCALayerMac::insertSublayer):
(PlatformCALayerMac::replaceSublayer):
(PlatformCALayerMac::adoptSublayers):
(PlatformCALayerMac::copyFiltersFrom):

  • platform/graphics/ca/win/CACFLayerTreeHost.cpp:

(WebCore::CACFLayerTreeHost::setRootChildLayer):

  • platform/graphics/ca/win/PlatformCALayerWin.cpp:

(PlatformCALayerWin::clone):
(PlatformCALayerWin::rootLayer):
(PlatformCALayerWin::appendSublayer):
(PlatformCALayerWin::insertSublayer):
(PlatformCALayerWin::replaceSublayer):
(PlatformCALayerWin::adoptSublayers):
(PlatformCALayerWin::copyFiltersFrom):

  • platform/graphics/ca/win/PlatformCALayerWin.h:
  • platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:

(PlatformCALayerWinInternal::insertSublayer):

  • platform/graphics/ca/win/PlatformCALayerWinInternal.h:

Source/WebKit/win:

Use is<>() / downcast<>() for PlatformCALayer subclasses and clean up
the surrounding code.

  • FullscreenVideoController.cpp:

(FullscreenVideoController::enterFullscreen):

Source/WebKit2:

Use is<>() / downcast<>() for PlatformCALayer subclasses and clean up
the surrounding code.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::~PlatformCALayerRemote):
(WebKit::PlatformCALayerRemote::updateClonedLayerProperties):
(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
(WebKit::PlatformCALayerRemote::setSublayers):
(WebKit::PlatformCALayerRemote::appendSublayer):
(WebKit::PlatformCALayerRemote::insertSublayer):
(WebKit::PlatformCALayerRemote::replaceSublayer):
(WebKit::PlatformCALayerRemote::adoptSublayers):
(WebKit::PlatformCALayerRemote::setMask):
(WebKit::PlatformCALayerRemote::copyFiltersFrom):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
  • WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

(WebKit::RemoteLayerTreeContext::buildTransaction):

11:50 AM Changeset in webkit [174656] by clopez@igalia.com
  • 2 edits in trunk/Tools

[XvfbDriver] Regular expression used to match running X servers fails on Fedora 21.
https://bugs.webkit.org/show_bug.cgi?id=137659

Reviewed by Martin Robinson.

  • Scripts/webkitpy/port/xvfbdriver.py:

(XvfbDriver._next_free_display): Update the regular expression to also match Xorg.bin

11:46 AM Changeset in webkit [174655] by ap@apple.com
  • 3 edits in trunk/Tools

Add more detailed wait time information to EWS metrics
https://bugs.webkit.org/show_bug.cgi?id=137649

Reviewed by Daniel Bates.

Added average and worst time (we used to only have median), and also a percentage
of patches that took a non-trivial time to start. Non-trivial is defined as 3 minutes.

There is always some wait due to the polling nature of the queues, which is well understood
and doesn't need to be measured. What needs to be measured is whether there is enough
bot machines to process patches as soon as they are submitted.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsAnalyzer.js:

(Analyzer.prototype._analyzeBubblePerformance):

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsBubbleView.js:

(MetricsBubbleView.prototype._update):

11:28 AM Changeset in webkit [174654] by Chris Dumez
  • 17 edits in trunk/Source

Use is<>() / downcast<>() for Filter / FilterOperation subclasses
https://bugs.webkit.org/show_bug.cgi?id=137644

Reviewed by Darin Adler.

Use is<>() / downcast<>() for Filter / FilterOperation subclasses.

Source/WebCore:

No new tests, no behavior change.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::valueForFilter):

  • platform/graphics/ca/mac/PlatformCAFiltersMac.mm:

(PlatformCAFilters::filterValueForOperation):
(PlatformCAFilters::colorMatrixValueForFilter):

  • platform/graphics/filters/Filter.h:
  • platform/graphics/filters/FilterOperation.cpp:

(WebCore::DefaultFilterOperation::operator==):
(WebCore::ReferenceFilterOperation::operator==):
(WebCore::BasicColorMatrixFilterOperation::blend):
(WebCore::BasicColorMatrixFilterOperation::operator==):
(WebCore::BasicComponentTransferFilterOperation::blend):
(WebCore::BasicComponentTransferFilterOperation::operator==):
(WebCore::BlurFilterOperation::operator==):
(WebCore::BlurFilterOperation::blend):
(WebCore::DropShadowFilterOperation::operator==):
(WebCore::DropShadowFilterOperation::blend):

  • platform/graphics/filters/FilterOperation.h:
  • platform/graphics/filters/FilterOperations.cpp:

(WebCore::FilterOperations::outsets):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build):

  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):

  • rendering/svg/RenderSVGResourceFilterPrimitive.cpp:

(WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion):

  • svg/graphics/filters/SVGFilter.h:

(isType):

Source/WebKit2:

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(IPC::ArgumentCoder<WebCore::FilterOperations>::encode):

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<FilterOperation>::encode):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTextStream::operator<<):

11:21 AM Changeset in webkit [174653] by Chris Dumez
  • 26 edits in trunk/Source/WebCore

Use is<>() / downcast<>() for Table render objects
https://bugs.webkit.org/show_bug.cgi?id=137641

Reviewed by Mihnea Ovidenie.

Use is<>() / downcast<>() for table-related render objects and clean
up the surrounding code.

No new tests, no behavior change.

  • accessibility/AccessibilityARIAGrid.cpp:

(WebCore::AccessibilityARIAGrid::addChildren):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::tableElement):
(WebCore::AccessibilityTable::isDataTable):
(WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
(WebCore::AccessibilityTable::addChildren):

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::parentTable):
(WebCore::AccessibilityTableCell::rowIndexRange):
(WebCore::AccessibilityTableCell::columnIndexRange):
(WebCore::AccessibilityTableCell::titleUIElement):

  • accessibility/AccessibilityTableColumn.cpp:

(WebCore::AccessibilityTableColumn::headerObject):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::removeNode):

  • editing/TextIterator.cpp:

(WebCore::shouldEmitTabBeforeNode):
(WebCore::shouldEmitNewlinesBeforeAndAfterNode):

  • html/HTMLTableCellElement.cpp:

(WebCore::HTMLTableCellElement::parseAttribute):
(WebCore::HTMLTableCellElement::cellAbove):

  • html/HTMLTableColElement.cpp:

(WebCore::HTMLTableColElement::parseAttribute):

  • mathml/MathMLElement.cpp:

(WebCore::MathMLElement::parseAttribute):

  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::recalcColumn):
(WebCore::shouldScaleColumns):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::computeIntrinsicLogicalWidths):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::layoutOverflowRectForPropagation):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::addChild):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::addChild):
(WebCore::RenderTable::layout):
(WebCore::RenderTable::firstColumn):
(WebCore::RenderTable::recalcSections):
(WebCore::RenderTable::sectionAbove):
(WebCore::RenderTable::sectionBelow):
(WebCore::RenderTable::bottomSection):

  • rendering/RenderTable.h:
  • rendering/RenderTableCaption.cpp:

(WebCore::RenderTableCaption::table):

  • rendering/RenderTableCell.h:

(WebCore::RenderTableCell::nextCell):
(WebCore::RenderTableCell::previousCell):
(WebCore::RenderTableRow::firstCell):
(WebCore::RenderTableRow::lastCell):

  • rendering/RenderTableCol.cpp:

(WebCore::RenderTableCol::table):
(WebCore::RenderTableCol::enclosingColumnGroup):
(WebCore::RenderTableCol::nextColumn):

  • rendering/RenderTableCol.h:

Make updateFromElement() public to allow the callers to use tighter
typing and devitualize the call as the class is final.

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::addChild):

  • rendering/RenderTableRow.h:

(WebCore::RenderTableSection::firstRow):
(WebCore::RenderTableSection::lastRow):
(WebCore::RenderTableRow::nextRow):
(WebCore::RenderTableRow::previousRow):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::addChild):
(WebCore::RenderTableSection::layoutRows):
(WebCore::RenderTableSection::paintCell):

  • rendering/RenderTableSection.h:
  • rendering/RenderTreeAsText.cpp:

(WebCore::writeTextRun):
(WebCore::writeSimpleLine):

10:56 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
10:49 AM Changeset in webkit [174652] by jer.noble@apple.com
  • 7 edits
    2 adds in trunk

MediaPlayer::characteristicChanged() is not called when new tracks are found in SourceBufferPrivateAVFObjC
https://bugs.webkit.org/show_bug.cgi?id=137533

Reviewed by Darin Adler.

Source/WebCore:

When a new AVAsset is returned out of the AVStreamDataParser, notify the HTMLMediaElement that
characteristics of the player may have changed.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::characteristicsChanged):

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset):

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/WKPageIsPlayingAudio.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/file-with-mse.html: Added.
  • TestWebKitAPI/Tests/WebKit2/test-mse.mp4: Added.
10:44 AM Changeset in webkit [174651] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

[iOS] Stop listening for wireless playback target availability when the default controls are hidden.
https://bugs.webkit.org/show_bug.cgi?id=137633

Reviewed by Dean Jackson.

In order to minimize the excess bandwidth and power consumption required for actively listening
for wireless playback target availablity, unregister for those notifications while the controls
are hidden due to playback, or when the element's document is hidden.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS.prototype.createBase): Register for document visiblity change notfications.
(ControllerIOS.prototype.setControlsType): Call updateShouldListenForPlaybackTargetAvailabilityEvent()

instead of setShouldListenForPlaybackTargetAvailabilityEvent()

(ControllerIOS.prototype.hideControls): Ditto.
(ControllerIOS.prototype.showControls): Ditto.
(ControllerIOS.prototype.updateStatusDisplay): Ditto.
(ControllerIOS.prototype.handleVisibilityChange): Ditto.
(ControllerIOS.prototype.updateShouldListenForPlaybackTargetAvailabilityEvent): Added. Only listen

for target availability when the video has no errors, is not in the initial "big play button"
controls state, and when the controls are not hidden.

  • platform/audio/ios/MediaSessionManagerIOS.mm:

(-[WebMediaSessionHelper stopMonitoringAirPlayRoutes]): Explicitly set the discoveryMode to "disabled"

rather than waiting for the autoreleasepool to destroy our routing controller.

10:33 AM Changeset in webkit [174650] by Simon Fraser
  • 6 edits in trunk

iOS DRT snapshots are limited to the page visible area
https://bugs.webkit.org/show_bug.cgi?id=137650

Reviewed by Daniel Bates.
Source/WebCore:

LegacyTileCache drawing was limited to the window's visible area, found by
crawling up the layer hierarchy to the root layer. This caused test snapshots to
be missing non-composited content outside the iPhone visible area, which hinders
testing.

Fix by adding a test-only mode where the window visible area is the entire window.

  • platform/ios/wak/WAKWindow.h:
  • platform/ios/wak/WAKWindow.mm:

(-[WAKWindow setEntireWindowVisibleForTesting:]):
(-[WAKWindow _visibleRectRespectingMasksToBounds:]):

Tools:

LegacyTileCache drawing was limited to the window's visible area, found by
crawling up the layer hierarchy to the root layer. This caused test snapshots to
be missing non-composited content outside the iPhone visible area, which hinders
testing.

Fix by adding a test-only mode where the window visible area is the entire window.

  • DumpRenderTree/ios/PixelDumpSupportIOS.mm:

(dumpWebViewAsPixelsAndCompareWithExpected): Drive-by RetainPtr fix.

  • DumpRenderTree/mac/DumpRenderTreeWindow.mm:

(-[DumpRenderTreeWindow initWithLayer:]): Call setEntireWindowVisibleForTesting:YES
for the DRT window.

9:08 AM Changeset in webkit [174649] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Gardening.

  • platform/mac/TestExpectations:
7:33 AM Changeset in webkit [174648] by mihnea@adobe.com
  • 6 edits in trunk/Source/WebCore

[CSSRegions] Make RenderNamedFlowFragment::computeStyleInRegion const
https://bugs.webkit.org/show_bug.cgi?id=137604

Reviewed by Andrei Bucur.

The method computeStyleInRegion should be const as it does not modify
the state of the RenderNamedFlowFragment instance. Make pointers to
the region used for styling const along the way. No new tests as no
change in functionality.

  • css/ElementRuleCollector.h:

(WebCore::ElementRuleCollector::ElementRuleCollector):
(WebCore::ElementRuleCollector::setRegionForStyling):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::State::initForStyleResolve):
(WebCore::StyleResolver::styleForElement):

  • css/StyleResolver.h:
  • rendering/RenderNamedFlowFragment.cpp:

(WebCore::RenderNamedFlowFragment::computeStyleInRegion):

  • rendering/RenderNamedFlowFragment.h:
5:16 AM Changeset in webkit [174647] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.6.1

WebKitGTK+ 2.6.1

4:59 AM Changeset in webkit [174646] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.6

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.6.1 release.

.:

  • Source/cmake/OptionsGTK.cmake: Bump version numbers.

Source/WebKit2:

  • gtk/NEWS: Add release notes for 2.6.1.
4:56 AM Changeset in webkit [174645] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.6

Unreviewed. Fix make distcheck.

Source/WebKit2:

  • CMakeLists.txt:
  • PlatformGTK.cmake:

Tools:

  • TestWebKitAPI/PlatformGTK.cmake:
2:19 AM Changeset in webkit [174644] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.6/Source/WebKit2

Merge r174639 - [SOUP] [WK2] WebProcess and NetworkProcess initialization clears cache contents
https://bugs.webkit.org/show_bug.cgi?id=137489

Reviewed by Carlos Garcia Campos.

Temporarily set the SoupCache's maximum size to a huge value
before calling soup_cache_load() so that the cache is not shrinked
to the default value.

  • NetworkProcess/soup/NetworkProcessSoup.cpp:

(WebKit::NetworkProcess::platformInitializeNetworkProcess):

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess):

1:44 AM Changeset in webkit [174643] by svillar@igalia.com
  • 7 edits in trunk

[CSS Grid Layout] Pass the valid set of tracks to grow beyond growth limits
https://bugs.webkit.org/show_bug.cgi?id=137253

Reviewed by Darin Adler.

Source/WebCore:

Section 10.4 of the specs describe how to resolve content based
track sizing functions. Among others it describes the "distribute
extra space" algorithm. The 3rd bullet of that algorithm specifies
how to distribute (and also the target tracks) the extra space
once all the tracks have reached their growth limits.

Our implementation had 2 problems. First we were not passing a
valid subset of tracks (instead we were always using all of
them). Now we use a function that filters the right tracks to be
the target of the extra space distribution depending on whether
we're computing the min track function or the max track function.

Secondly the algorithm that was distributing the extra space was
not using that list of passed in tracks (it iterated over all of
them). From now on it will use the set of tracks selected using
the filter function described above.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
(WebCore::RenderGrid::distributeSpaceToTracks):

  • rendering/RenderGrid.h:
  • rendering/style/GridTrackSize.h:

(WebCore::GridTrackSize::hasMinContentMinTrackBreadthAndMinOrMaxContentMaxTrackBreadth):
(WebCore::GridTrackSize::hasMaxContentMinTrackBreadthAndMaxContentMaxTrackBreadth):

LayoutTests:

  • fast/css-grid-layout/grid-content-sized-columns-resolution-expected.txt:
  • fast/css-grid-layout/grid-content-sized-columns-resolution.html:
Note: See TracTimeline for information about the timeline view.