Timeline



Jun 22, 2014:

9:28 PM Changeset in webkit [170282] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

Make offset from ancestor computation explicit by moving it to the callers.
https://bugs.webkit.org/show_bug.cgi?id=134168.

Reviewed by Simon Fraser.

Explicit offset computation helps code reading and less error-prone than passing
the offset pointer and compute it locally when it is null.

No change in functionality.

  • rendering/RenderLayer.cpp:

(WebCore::transparencyClipBox):
(WebCore::performOverlapTests):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::setupFilters):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::calculateClipRects):

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

(WebCore::RenderLayerCompositor::calculateCompositedBounds):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeLayers):

8:46 PM Changeset in webkit [170281] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

8:42 PM Changeset in webkit [170280] by Lucas Forschler
  • 1 copy in tags/Safari-538.42

New Tag.

7:25 PM Changeset in webkit [170279] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r170163): It made everything crash on EFL
https://bugs.webkit.org/show_bug.cgi?id=134097

Unreviewed EFL layout test and perforamcne crash fix.

  • WebProcess/WebPage/WebPage.cpp: Add a null check for m_mainFrame.

(WebKit::WebPage::didCompletePageTransition):

7:15 PM Changeset in webkit [170278] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed EFL build fix since r170274. Use reference for m_webPage member variable.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:

(WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea):
(WebKit::CoordinatedDrawingArea::setNeedsDisplay):
(WebKit::CoordinatedDrawingArea::setNeedsDisplayInRect):
(WebKit::CoordinatedDrawingArea::forceRepaint):
(WebKit::CoordinatedDrawingArea::updatePreferences):
(WebKit::CoordinatedDrawingArea::mainFrameContentSizeChanged):
(WebKit::CoordinatedDrawingArea::layerHostDidFlushLayers):
(WebKit::CoordinatedDrawingArea::updateBackingStoreState):
(WebKit::CoordinatedDrawingArea::sendDidUpdateBackingStoreState):
(WebKit::CoordinatedDrawingArea::suspendPainting):
(WebKit::CoordinatedDrawingArea::resumePainting):
(WebKit::CoordinatedDrawingArea::enterAcceleratedCompositingMode):
(WebKit::CoordinatedDrawingArea::display):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
6:32 PM Changeset in webkit [170277] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

[iOS][wk2] Swiping back sometimes results in a missing (not blank) swipe snapshot
https://bugs.webkit.org/show_bug.cgi?id=134181

Reviewed by Benjamin Poulain.

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::endSwipeGesture):
(WebKit::ViewGestureController::setRenderTreeSize):
(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewGestureController.h:

Make it explicit that we should only remove the swipe snapshot when a
big-enough render tree size arrives *after the swipe ends*.

6:19 PM Changeset in webkit [170276] by beidson@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

REGRESSION (r170257) http/tests/navigation/javascriptlink-frames.html fails on MountainLion
https://bugs.webkit.org/show_bug.cgi?id=134182

Unreviewed gardening.

  • platform/mac-mountainlion/TestExpectations: Added, skip the test.
6:02 PM Changeset in webkit [170275] by fpizlo@apple.com
  • 13 edits
    9 adds in branches/ftlopt

[ftlopt] Fold GetById/PutById to MultiGetByOffset/GetByOffset or MultiPutByOffset/PutByOffset, which implies handling non-singleton sets
https://bugs.webkit.org/show_bug.cgi?id=134090

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

This pretty much finishes off the work to eliminate the special-casing of singleton
structure sets by making it possible to fold GetById and PutById to various polymorphic
forms of the ByOffset nodes.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeForStubInfo):
(JSC::GetByIdStatus::computeFor):

  • bytecode/GetByIdStatus.h:
  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):

  • bytecode/PutByIdStatus.h:
  • bytecode/PutByIdVariant.h:

(JSC::PutByIdVariant::constantChecks):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::emitPutByOffset):
(JSC::DFG::ConstantFoldingPhase::addChecks):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToMultiGetByOffset):
(JSC::DFG::Node::convertToMultiPutByOffset):

  • dfg/DFGSpeculativeJIT64.cpp: Also convert all release assertions to DFG assertions in this file, because I was hitting some of them while debugging.

(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompareNull):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Strict):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt52):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGStructureAbstractValue.h:

(JSC::DFG::StructureAbstractValue::set):

LayoutTests:

  • js/regress/fold-get-by-id-to-multi-get-by-offset-expected.txt: Added.
  • js/regress/fold-get-by-id-to-multi-get-by-offset-rare-int-expected.txt: Added.
  • js/regress/fold-get-by-id-to-multi-get-by-offset-rare-int.html: Added.
  • js/regress/fold-get-by-id-to-multi-get-by-offset.html: Added.
  • js/regress/fold-put-by-id-to-multi-put-by-offset-expected.txt: Added.
  • js/regress/fold-put-by-id-to-multi-put-by-offset.html: Added.
  • js/regress/script-tests/fold-get-by-id-to-multi-get-by-offset-rare-int.js: Added.

(foo):
(fu):
(bar):
(.bar):
(Number):

  • js/regress/script-tests/fold-get-by-id-to-multi-get-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):
(Number):

  • js/regress/script-tests/fold-put-by-id-to-multi-put-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):

5:51 PM Changeset in webkit [170274] by timothy_horton@apple.com
  • 22 edits in trunk/Source/WebKit2

Thread some references through the remote layer tree code
https://bugs.webkit.org/show_bug.cgi?id=134177

Reviewed by Zalan Bujtas.

A first pass at references for never-null things (first pass because I didn't touch the collections).
Things that aren't straightforward reference-threading:

  • Shared/mac/RemoteLayerBackingStoreCollection.h:
  • Shared/mac/RemoteLayerBackingStoreCollection.mm:

Remove the unimplemented/nonexistant RemoteLayerBackingStoreCollection::create.
Make RemoteLayerBackingStoreCollection constructor not take a context, because m_context is never used.

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

Factor out grabbing the PlatformLayerID in a few places.

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

Use WebPage::mainFrameView() instead of WebPage::corePage()->mainFrame().view().

  • Shared/mac/RemoteLayerTreeTransaction.h:
  • Shared/mac/RemoteLayerTreeTransaction.mm:
  • WebProcess/WebPage/DrawingArea.cpp:
  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
  • WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
  • WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:om):
  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
  • Shared/mac/RemoteLayerBackingStore.mm:

References.

5:34 PM Changeset in webkit [170273] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

Transition layer offsets from LayoutPoint to LayoutSize.
https://bugs.webkit.org/show_bug.cgi?id=134156

Reviewed by Simon Fraser.

Use better representation for offset values.

No change in functionality.

  • platform/graphics/LayoutSize.h:

(WebCore::roundedForPainting):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::fragmentsBoundingBox):

  • rendering/RenderLayer.cpp:

(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::RenderLayer::convertToLayerCoords):
(WebCore::computeReferenceBox):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::setupFilters):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::createLocalTransformState):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::hitTestLayerByApplyingTransform):
(WebCore::RenderLayer::calculateClipRects):

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

(WebCore::RenderMultiColumnSet::collectLayerFragments):

5:13 PM Changeset in webkit [170272] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Attempted iOS build fix.

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::~GraphicsContext3D): Cast to WebGLLayer.

5:00 PM Changeset in webkit [170271] by dino@apple.com
  • 4 edits in trunk/Source/WebCore

[Apple] WebGL layer may use GC3D after free with remote layer hosting
https://bugs.webkit.org/show_bug.cgi?id=134179
<rdar://problem/17412931>

Reviewed by Tim Horton.

With remote layer hosting, a WebGLLayer may attempt to draw after
the GraphicsContext3D has been destroyed. We need to make sure
the GC3D tells the WebGLLayer that it is no longer valid.

While here, I changed some return 0 to return nullptr, the
name of the ObjC property member from m_context to _context,
and removed some unnecessary .get() calls.

This is tested by run-webkit-tests with the --remote-layer-tree
option.

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::GraphicsContext3D): No need for .get().
(WebCore::GraphicsContext3D::~GraphicsContext3D): Set the context reference on WebGLLayer
to be null.
(WebCore::GraphicsContext3D::setRenderbufferStorageFromDrawable): No need for .get().

  • platform/graphics/mac/WebGLLayer.h: Set the context reference on WebGLLayer

to be null.

  • platform/graphics/mac/WebGLLayer.mm:

(-[WebGLLayer initWithGraphicsContext3D:]): Rename m_context to _context.
(-[WebGLLayer copyCGLPixelFormatForDisplayMask:]): Check for null.
(-[WebGLLayer copyCGLContextForPixelFormat:]): Rename to _context.
(-[WebGLLayer drawInCGLContext:pixelFormat:forLayerTime:displayTime:]): Check for null.
(-[WebGLLayer copyImageSnapshotWithColorSpace:]): Ditto.
(-[WebGLLayer display]): Ditto.

11:35 AM Changeset in webkit [170270] by Simon Fraser
  • 4 edits
    3 adds in trunk

[WK2] Frameset frames are not scrollable after loading (and should be)
https://bugs.webkit.org/show_bug.cgi?id=134151
<rdar://problem/17403365>

Reviewed by Dan Bates.

Source/WebCore:
When loading a <frameset>, we could end up with an empty non-fast-scrollable
region for the main frame, because after the initial frameset document layout,
nothing updated the non-fast scrollable region as the subframes added their
scrollable areas to the the main frame's scrollable area set.

Fix by having addScrollableArea() and removeScrollableArea() trigger an update
of the non-fast scrollable region.

Test: platform/mac-wk2/tiled-drawing/scrolling/frames/frameset-frame-scrollability.html

  • page/FrameView.cpp:

(WebCore::FrameView::addScrollableArea):
(WebCore::FrameView::removeScrollableArea):
(WebCore::FrameView::scrollableAreaSetChanged):

  • page/FrameView.h:

LayoutTests:
Frameset test that dumps the scrolling tree.

  • platform/mac-wk2/tiled-drawing/scrolling/frames/frameset-frame-scrollability.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/resources/scrollable-page.html: Added.
11:21 AM Changeset in webkit [170269] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Replace a couple of uses of bind with lambdas
https://bugs.webkit.org/show_bug.cgi?id=134172

Reviewed by Sam Weinig.

  • Platform/IPC/Connection.cpp:

(IPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
(IPC::Connection::connectionDidClose):
(IPC::Connection::dispatchMessage):
(IPC::Connection::dispatchConnectionDidClose): Deleted.

  • Platform/IPC/Connection.h:
  • Shared/Plugins/NPObjectProxy.cpp:

(WebKit::NPObjectProxy::NP_Deallocate):

  • UIProcess/Storage/LocalStorageDatabase.cpp:

(WebKit::LocalStorageDatabase::scheduleDatabaseUpdate):

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::pluginThreadAsyncCall):
(WebKit::NetscapePlugin::handlePluginThreadAsyncCall): Deleted.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):
(WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):

11:09 AM Changeset in webkit [170268] by commit-queue@webkit.org
  • 36 edits in trunk/Source/WebCore

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

Broke editing tests (Requested by litherum on #webkit).

Reverted changeset:

"Use unsigneds instead of ints for indexes into a string in
text layout code"
https://bugs.webkit.org/show_bug.cgi?id=133592
http://trac.webkit.org/changeset/170265

11:06 AM Changeset in webkit [170267] by Simon Fraser
  • 11 edits in trunk

Have scrollingTreeAsText() dump the non-fast-scrollable region
https://bugs.webkit.org/show_bug.cgi?id=134149

Reviewed by Sam Weinig.

Source/WebCore:

Dump the non-fast-scrollable region (as an array of rects).

  • WebCore.exp.in:
  • page/scrolling/ScrollingStateFrameScrollingNode.cpp:

(WebCore::ScrollingStateFrameScrollingNode::dumpProperties):

Source/WebKit2:

Dump the non-fast-scrollable region (as an array of rects).

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(WebKit::RemoteScrollingTreeTextStream::dump):

LayoutTests:

Rebaselined.

  • platform/mac-wk2/tiled-drawing/scrolling/fixed/fixed-in-overflow-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-gain-scrolling-ancestor-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-lose-scrolling-ancestor-expected.txt:
10:49 AM Changeset in webkit [170266] by gyuyoung.kim@samsung.com
  • 2 edits in trunk

Disable gamepad feature on EFL and GTK ports by default
https://bugs.webkit.org/show_bug.cgi?id=134169

Reviewed by Brady Eidson.

  • Source/cmake/OptionsEfl.cmake: Disable ENABLE_GAMEPAD_DEPRECATED.
10:17 AM Changeset in webkit [170265] by mmaxfield@apple.com
  • 36 edits in trunk/Source/WebCore

Use unsigneds instead of ints for indexes into a string in text layout code
https://bugs.webkit.org/show_bug.cgi?id=133592

Reviewed by Zalan Bujtas.

Migrate much of the text-handling code to use unsigneds for indexes into a string.

No new tests because there is no behavior change.

  • WebCore.exp.in:
  • platform/graphics/Font.cpp:

(WebCore::Font::drawText):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::adjustSelectionRectForText):
(WebCore::computeUnderlineType):

  • platform/graphics/Font.h:
  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::getGlyphsAndAdvancesForSimpleText):
(WebCore::Font::drawSimpleText):
(WebCore::Font::drawEmphasisMarksForSimpleText):
(WebCore::Font::drawGlyphBuffer):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::adjustSelectionRectForSimpleText):

  • platform/graphics/GlyphBuffer.h:

(WebCore::GlyphBuffer::size):
(WebCore::GlyphBuffer::glyphs):
(WebCore::GlyphBuffer::advances):
(WebCore::GlyphBuffer::fontDataAt):
(WebCore::GlyphBuffer::advanceAt):
(WebCore::GlyphBuffer::offsetAt):
(WebCore::GlyphBuffer::reverse):
(WebCore::GlyphBuffer::offsetInString):
(WebCore::GlyphBuffer::swap):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::TextRunIterator::atEnd):

  • platform/graphics/Latin1TextIterator.h:

(WebCore::Latin1TextIterator::Latin1TextIterator):
(WebCore::Latin1TextIterator::currentCharacter):

  • platform/graphics/SimpleFontData.h:
  • platform/graphics/SurrogatePairAwareTextIterator.cpp:

(WebCore::SurrogatePairAwareTextIterator::SurrogatePairAwareTextIterator):

  • platform/graphics/SurrogatePairAwareTextIterator.h:

(WebCore::SurrogatePairAwareTextIterator::currentCharacter):

  • platform/graphics/TextRun.h:

(WebCore::TextRun::length):
(WebCore::TextRun::charactersLength):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::glyphDataForCharacter):
(WebCore::applyFontTransforms):
(WebCore::WidthIterator::advanceInternal):
(WebCore::WidthIterator::advance):
(WebCore::WidthIterator::advanceOneCharacter):

  • platform/graphics/WidthIterator.h:
  • platform/graphics/cairo/FontCairo.cpp:

(WebCore::Font::drawGlyphs):

  • platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:

(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::adjustSelectionRectForComplexText):

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::setNormalizedBuffer):

  • platform/graphics/mac/FontComplexTextMac.cpp:

(WebCore::Font::adjustSelectionRectForComplexText):
(WebCore::Font::getGlyphsAndAdvancesForComplexText):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::drawGlyphs):

  • platform/graphics/win/FontCGWin.cpp:

(WebCore::Font::drawGlyphs):

  • platform/graphics/win/FontWin.cpp:

(WebCore::Font::adjustSelectionRectForComplexText):
(WebCore::Font::getGlyphsAndAdvancesForComplexText):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):

  • platform/graphics/wince/FontWinCE.cpp:

(WebCore::Font::drawGlyphs):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::selectionRectForComplexText):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::isSelected):
(WebCore::InlineTextBox::selectionState):
(WebCore::adjustCharactersAndLengthForHyphen):
(WebCore::InlineTextBox::localSelectionRect):
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::selectionStartEnd):
(WebCore::InlineTextBox::paintSelection):
(WebCore::InlineTextBox::paintCompositionBackground):
(WebCore::InlineTextBox::paintDocumentMarker):
(WebCore::InlineTextBox::paintTextMatchMarker):
(WebCore::InlineTextBox::computeRectForReplacementMarker):
(WebCore::InlineTextBox::paintCompositionUnderline):
(WebCore::InlineTextBox::positionForOffset):
(WebCore::InlineTextBox::constructTextRun):

  • rendering/InlineTextBox.h:
  • rendering/RenderCombineText.cpp:

(WebCore::RenderCombineText::getStringToRender):

  • rendering/RenderCombineText.h:
  • rendering/svg/SVGInlineFlowBox.cpp:

(WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::positionForOffset):
(WebCore::SVGInlineTextBox::localSelectionRect):
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::mapStartEndPositionsIntoFragmentCoordinates):
(WebCore::SVGInlineTextBox::paintText):

  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::currentCharacterStartsSurrogatePair):
(WebCore::SVGTextMetricsBuilder::advance):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::mapStartEndPositionsIntoFragmentCoordinates):
(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):
(WebCore::SVGTextQuery::subStringLengthCallback):
(WebCore::SVGTextQuery::startPositionOfCharacterCallback):
(WebCore::SVGTextQuery::endPositionOfCharacterCallback):
(WebCore::SVGTextQuery::rotationOfCharacterCallback):
(WebCore::SVGTextQuery::extentOfCharacterCallback):
(WebCore::SVGTextQuery::characterNumberAtPositionCallback):

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

(WebCore::SVGGlyphToPathTranslator::SVGGlyphToPathTranslator):
(WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):

  • rendering/svg/SVGTextRunRenderingContext.h:
  • svg/SVGFontData.cpp:

(WebCore::SVGFontData::applySVGGlyphSelection):

  • svg/SVGFontData.h:
9:58 AM Changeset in webkit [170264] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add IPC decoding support to BackForwardListState
https://bugs.webkit.org/show_bug.cgi?id=134171

Reviewed by Dan Bernstein.

  • Shared/SessionState.cpp:

(WebKit::isValidEnum):
(WebKit::HTTPBody::Element::decode):
(WebKit::HTTPBody::decode):
(WebKit::FrameState::decode):
(WebKit::PageState::decode):
(WebKit::BackForwardListState::decode):

  • Shared/SessionState.h:
9:47 AM Changeset in webkit [170263] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Address a review comment.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::markInvalid):
(WebKit::decodeFormDataElement):

9:34 AM Changeset in webkit [170262] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Implement the rest of back forward tree decoding
https://bugs.webkit.org/show_bug.cgi?id=134166

Reviewed by Sam Weinig.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::decodeFormDataElement):
(WebKit::decodeFormData):
(WebKit::decodeBackForwardTreeNode):

9:33 AM Changeset in webkit [170261] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS] WKWebViewConfiguration.allowsInlineMediaPlayback has no effect
https://bugs.webkit.org/show_bug.cgi?id=134170

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]): Fixed a typo.

Jun 21, 2014:

10:52 PM Changeset in webkit [170260] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Disable gamepad feature on EFL and GTK ports by default
https://bugs.webkit.org/show_bug.cgi?id=134169

Reviewed by Brady Eidson.

EFL and GTK ports disabled Gamepad feature now. Besides current implementation
was treated to 'deprecated' status.

ENABLE_GAMEPAD_DEPRECATED is disabled for now. There is build break on EFL port.

  • Scripts/webkitperl/FeatureList.pm:
10:50 PM Changeset in webkit [170259] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

createCairoGLSurface should take in a FloatSize reference as its first parameter
https://bugs.webkit.org/show_bug.cgi?id=134159

Reviewed by Martin Robinson.

The ImageBuffer constructor operates with a FloatSize reference, which is also
passed to createCairoGLSurface when accelerated 2D canvas support is enabled.
That function should take in a reference to the same type.

  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::createCairoGLSurface):

10:46 PM Changeset in webkit [170258] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fixing the GTK+ build after r170253.

  • UIProcess/API/gtk/WebKitSettings.cpp:

(_WebKitSettingsPrivate::_WebKitSettingsPrivate): WebPreferences::create()
now takes an additional String argument.

4:55 PM Changeset in webkit [170257] by dino@apple.com
  • 46 edits
    3 adds in trunk

[Mac] Margins for new form controls need tweaking
https://bugs.webkit.org/show_bug.cgi?id=134135
<rdar://problem/17262164>

Reviewed by Sam Weinig.

Source/WebCore:
Take 2 of this patch. Only the mac-mountainlion LayoutTest
results are different from the first attempt.

With the newer animated controls in OS X Yosemite, we need
to tweak the fudge-factor margins for positioning. In a recent
patch I added another fudge, which I'm removing with this. I'm
not sure where the older values came from, but I've checked with
the latest AppKit sources and am using the sizes they implement
for the controls.

This will rebaseline a lot of tests, since I've made small tweaks
to the form layout.

  • platform/mac/ThemeMac.mm:

(WebCore::checkboxMargins): New margin amounts.
(WebCore::radioSizes): New sizes.
(WebCore::radioMargins): New margin amounts.
(WebCore::paintToggleButton): No need to call the positioning fudge any more.
(WebCore::checkboxOffsets): Deleted.
(WebCore::radioOffsets): Deleted.

LayoutTests:
Take 2 of this patch adds some Mountain Lion results.

Rebaseline a bunch of results since some <input> dimensions
changed slightly.

  • platform/mac-mountainlion/fast/block/margin-collapse/103-expected.txt:
  • platform/mac-mountainlion/fast/forms/basic-inputs-expected.png: Added.
  • platform/mac-mountainlion/fast/forms/basic-inputs-expected.txt:
  • platform/mac-mountainlion/fast/forms/box-shadow-override-expected.txt:
  • platform/mac-mountainlion/fast/forms/form-element-geometry-expected.png: Added.
  • platform/mac-mountainlion/fast/forms/form-element-geometry-expected.txt:
  • platform/mac-mountainlion/fast/forms/input-appearance-height-expected.txt:
  • platform/mac-mountainlion/fast/forms/input-value-expected.txt:
  • platform/mac-mountainlion/fast/replaced/replaced-breaking-expected.txt:
  • platform/mac-mountainlion/http/tests/navigation/javascriptlink-frame-expected.txt: Added.
  • platform/mac-mountainlion/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/mac/css1/box_properties/acid_test-expected.png:
  • platform/mac/css1/box_properties/acid_test-expected.txt:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.png:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.txt:
  • platform/mac/fast/block/basic/011-expected.png:
  • platform/mac/fast/block/basic/011-expected.txt:
  • platform/mac/fast/block/margin-collapse/103-expected.png:
  • platform/mac/fast/block/margin-collapse/103-expected.txt:
  • platform/mac/fast/forms/basic-inputs-expected.png:
  • platform/mac/fast/forms/basic-inputs-expected.txt:
  • platform/mac/fast/forms/box-shadow-override-expected.png:
  • platform/mac/fast/forms/box-shadow-override-expected.txt:
  • platform/mac/fast/forms/form-element-geometry-expected.png:
  • platform/mac/fast/forms/form-element-geometry-expected.txt:
  • platform/mac/fast/forms/formmove-expected.txt:
  • platform/mac/fast/forms/formmove2-expected.png:
  • platform/mac/fast/forms/formmove2-expected.txt:
  • platform/mac/fast/forms/input-appearance-height-expected.png:
  • platform/mac/fast/forms/input-appearance-height-expected.txt:
  • platform/mac/fast/forms/input-value-expected.png:
  • platform/mac/fast/forms/input-value-expected.txt:
  • platform/mac/fast/inline/positionedLifetime-expected.txt:
  • platform/mac/fast/replaced/replaced-breaking-expected.png:
  • platform/mac/fast/replaced/replaced-breaking-expected.txt:
  • platform/mac/fast/replaced/width100percent-radio-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.png:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.png:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/core/captions1-expected.png:
  • platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/core/captions2-expected.png:
  • platform/mac/tables/mozilla_expected_failures/core/captions2-expected.txt:
4:27 PM Changeset in webkit [170256] by weinig@apple.com
  • 39 edits in trunk/Source

Remove static tables for bindings that use eager reification
https://bugs.webkit.org/show_bug.cgi?id=134126

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

  • runtime/JSObject.cpp:

(JSC::JSObject::putDirectCustomAccessor):

  • runtime/Structure.h:

(JSC::Structure::setHasCustomGetterSetterProperties):
Change setHasCustomGetterSetterProperties to behave like setHasGetterSetterProperties, and set
the m_hasReadOnlyOrGetterSetterPropertiesExcludingProto bit if the property is not proto.
Without this, JSObject::put() won't think there are any setters on the prototype chain of an
object that has no static lookup table and uses eagerly reified custom getter/setter properties.

Source/WebCore:
This shaves about 1MB off of WebCore's .o files.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):
(GenerateConstructorHelperMethods):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.h:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:
  • bindings/scripts/test/JS/JSTestEventTarget.h:
  • bindings/scripts/test/JS/JSTestException.cpp:
  • bindings/scripts/test/JS/JSTestException.h:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestInterface.h:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.h:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestNode.h:
  • bindings/scripts/test/JS/JSTestNondeterministic.cpp:
  • bindings/scripts/test/JS/JSTestNondeterministic.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:
  • bindings/scripts/test/JS/JSTestTypedefs.h:
  • bindings/scripts/test/JS/JSattribute.cpp:
  • bindings/scripts/test/JS/JSattribute.h:
  • bindings/scripts/test/JS/JSreadonly.cpp:
  • bindings/scripts/test/JS/JSreadonly.h:
3:33 PM Changeset in webkit [170255] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Tried to fix the iOS build after r170235.

  • WebView/WebView.mm:
3:25 PM Changeset in webkit [170254] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

CallbackMap::put should be able to take an unwrapped function
https://bugs.webkit.org/show_bug.cgi?id=134104

Reviewed by Anders Carlsson.

  • UIProcess/GenericCallback.h:

(WebKit::CallbackMap::put): Added an overload that takes a function and creates and puts a
callback. Changed both overloads of put() to return the callback ID.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::validateCommand):
(WebKit::WebPageProxy::runJavaScriptInMainFrame):
(WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
(WebKit::WebPageProxy::getSourceForFrame):
(WebKit::WebPageProxy::getContentsAsString):
(WebKit::WebPageProxy::getBytecodeProfile):
(WebKit::WebPageProxy::getContentsAsMHTMLData):
(WebKit::WebPageProxy::getSelectionOrContentsAsString):
(WebKit::WebPageProxy::getSelectionAsWebArchiveData):
(WebKit::WebPageProxy::getMainResourceDataOfFrame):
(WebKit::WebPageProxy::getResourceDataFromFrame):
(WebKit::WebPageProxy::getWebArchiveOfFrame):
(WebKit::WebPageProxy::getMarkedRangeAsync):
(WebKit::WebPageProxy::getSelectedRangeAsync):
(WebKit::WebPageProxy::characterIndexForPointAsync):
(WebKit::WebPageProxy::firstRectForCharacterRangeAsync):
(WebKit::WebPageProxy::takeSnapshot):

3:02 PM Changeset in webkit [170253] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Make it possible to override debug preferences on a per-identifier basis as well as globally
https://bugs.webkit.org/show_bug.cgi?id=134164

Reviewed by Dan Bernstein.

  • Shared/WebPreferencesDefinitions.h:
  • Shared/WebPreferencesKeys.cpp:
  • Shared/WebPreferencesKeys.h:
  • Shared/WebPreferencesStore.cpp:

(WebKit::defaults):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesCreate):
(WKPreferencesCreateWithIdentifier):

  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences init]):

  • UIProcess/WebPageGroup.cpp:

(WebKit::WebPageGroup::WebPageGroup):

  • UIProcess/WebPreferences.cpp:

(WebKit::WebPreferences::create):
(WebKit::WebPreferences::createWithLegacyDefaults):
(WebKit::WebPreferences::WebPreferences):

  • UIProcess/WebPreferences.h:
  • UIProcess/mac/WebPreferencesMac.mm:

(WebKit::makeKey):
(WebKit::debugUserDefaultsValue):
(WebKit::setDebugBoolValueIfInUserDefaults):
(WebKit::WebPreferences::platformInitializeStore):

2:01 PM Changeset in webkit [170252] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Begin work on decoding form data
https://bugs.webkit.org/show_bug.cgi?id=134163

Reviewed by Sam Weinig.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::HistoryEntryDataDecoder::isValid):
(WebKit::isValidEnum):
(WebKit::decodeFormDataElement):
(WebKit::decodeFormData):
(WebKit::decodeBackForwardTreeNode):

1:05 PM Changeset in webkit [170251] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Only initialize WebPreferences from NSUserDefaults if there's an identifier
https://bugs.webkit.org/show_bug.cgi?id=134162

Reviewed by Sam Weinig.

We don't want to allow changing preferences by registering user defaults.

  • UIProcess/mac/WebPreferencesMac.mm:

(WebKit::makeKey):
(WebKit::WebPreferences::platformInitializeStore):

12:41 PM Changeset in webkit [170250] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Begin work on decoding the back/forward tree
https://bugs.webkit.org/show_bug.cgi?id=134161

Reviewed by Sam Weinig.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntries):
(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::HistoryEntryDataDecoder::decodeArithmeticType):
(WebKit::HistoryEntryDataDecoder::bufferIsLargeEnoughToContain):
(WebKit::decodeBackForwardTreeNode):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntryData):
(WebKit::HistoryEntryDataDecoder::decode): Deleted.

12:07 PM Changeset in webkit [170249] by beidson@apple.com
  • 22 edits
    9 moves
    1 add in trunk

Gamepad API - Deprecate the existing implementation
https://bugs.webkit.org/show_bug.cgi?id=134108

Reviewed by Timothy Hatcher.

-Add new "GAMEPAD_DEPRECATED" build flag, moving the existing implementation to use it

.:
-Add the "Deprecated" suffix to some implementation files

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:
-Move some implementation files into a "deprecated" subdirectory.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:
-Move some implementation files into a "deprecated" subdirectory.

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • PlatformGTK.cmake:
  • Modules/gamepad/deprecated/Gamepad.cpp: Renamed from Source/WebCore/Modules/gamepad/Gamepad.cpp.
  • Modules/gamepad/deprecated/Gamepad.h: Renamed from Source/WebCore/Modules/gamepad/Gamepad.h.
  • Modules/gamepad/deprecated/Gamepad.idl: Renamed from Source/WebCore/Modules/gamepad/Gamepad.idl.
  • Modules/gamepad/deprecated/GamepadList.cpp: Renamed from Source/WebCore/Modules/gamepad/GamepadList.cpp.
  • Modules/gamepad/deprecated/GamepadList.h: Renamed from Source/WebCore/Modules/gamepad/GamepadList.h.
  • Modules/gamepad/deprecated/GamepadList.idl: Renamed from Source/WebCore/Modules/gamepad/GamepadList.idl.
  • Modules/gamepad/deprecated/NavigatorGamepad.cpp: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.cpp.
  • Modules/gamepad/deprecated/NavigatorGamepad.h: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.h.
  • Modules/gamepad/deprecated/NavigatorGamepad.idl: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.idl.
  • platform/Gamepads.h:
  • platform/efl/GamepadsEfl.cpp:
  • platform/gtk/GamepadsGtk.cpp:
  • platform/linux/GamepadDeviceLinux.cpp:
  • platform/linux/GamepadDeviceLinux.h:

Source/WebKit/mac:
-Move some implementation files into a "deprecated" subdirectory.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:
-Move some implementation files into a "deprecated" subdirectory.

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:
-Move some implementation files into a "deprecated" subdirectory.

  • wtf/FeatureDefines.h:
11:52 AM Changeset in webkit [170248] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Implement more of HistoryEntryDataDecoder
https://bugs.webkit.org/show_bug.cgi?id=134146

Reviewed by Sam Weinig.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::HistoryEntryDataDecoder):
(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::HistoryEntryDataDecoder::decode):
(WebKit::HistoryEntryDataDecoder::decodeFixedLengthData):
(WebKit::HistoryEntryDataDecoder::alignBufferPosition):
(WebKit::HistoryEntryDataDecoder::alignedBuffer):
(WebKit::HistoryEntryDataDecoder::alignedBufferIsLargeEnoughToContain):
(WebKit::HistoryEntryDataDecoder::markInvalid):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntryData):

11:27 AM Changeset in webkit [170247] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Mark TextRun's constructors as explicit
https://bugs.webkit.org/show_bug.cgi?id=134124

Reviewed by Sam Weinig.

After r170072, nobody is implicitly converting a string to a TextRun. Therefore,
we can make the constructors explicit.

No new tests because there is no behavior change.

  • platform/graphics/TextRun.h:

(WebCore::TextRun::TextRun):

9:24 AM Changeset in webkit [170246] by commit-queue@webkit.org
  • 25 edits
    6 moves in trunk

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

GTK/EFL bindings generator works differently, making this
patch not work there. Will fix entire patch after a rollout.
(Requested by bradee-oh on #webkit).

Reverted changeset:

"Gamepad API - Deprecate the existing implementation"
https://bugs.webkit.org/show_bug.cgi?id=134108
http://trac.webkit.org/changeset/170244

8:55 AM Changeset in webkit [170245] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Fix the mismatched header build guards in WebKitDOMNodeFilterPrivate.h
which are throwing compilation warnings when building with Clang.

  • bindings/gobject/WebKitDOMNodeFilterPrivate.h:
8:43 AM Changeset in webkit [170244] by beidson@apple.com
  • 25 edits
    6 moves in trunk

Gamepad API - Deprecate the existing implementation
https://bugs.webkit.org/show_bug.cgi?id=134108

Reviewed by Timothy Hatcher.

-Add new "GAMEPAD_DEPRECATED" build flag, moving the existing implementation to use it
-Add the "Deprecated" suffix to some implementation files

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • CMakeLists.txt:
  • PlatformGTK.cmake:
  • Configurations/FeatureDefines.xcconfig:
  • Modules/gamepad/GamepadDeprecated.cpp: Renamed from Source/WebCore/Modules/gamepad/Gamepad.cpp.
  • Modules/gamepad/GamepadDeprecated.h: Renamed from Source/WebCore/Modules/gamepad/Gamepad.h.
  • Modules/gamepad/GamepadDeprecated.idl: Renamed from Source/WebCore/Modules/gamepad/Gamepad.idl.
  • Modules/gamepad/GamepadList.cpp:
  • Modules/gamepad/GamepadList.h:
  • Modules/gamepad/GamepadList.idl:
  • Modules/gamepad/NavigatorGamepadDeprecated.cpp: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.cpp.
  • Modules/gamepad/NavigatorGamepadDeprecated.h: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.h.
  • Modules/gamepad/NavigatorGamepadDeprecated.idl: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.idl.
  • platform/Gamepads.h:
  • platform/efl/GamepadsEfl.cpp:
  • platform/gtk/GamepadsGtk.cpp:
  • platform/linux/GamepadDeviceLinux.cpp:
  • platform/linux/GamepadDeviceLinux.h:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:
8:06 AM Changeset in webkit [170243] by gyuyoung.kim@samsung.com
  • 6 edits in trunk/Source/WebKit2

[CoordinatedGraphics][WK2][EFL] Page is moved to (0,0) position before rendering content
https://bugs.webkit.org/show_bug.cgi?id=133300

Reviewed by Csaba Osztrogonác.

When new page is loaded, PageViewportController::didCommitLoad() calls PageViewportController::syncVisibleContents()
with initial position via applyPositionAfterRenderingContents() before starting to render
new page by PageViewportController::didRenderFrame(). This call flow causes that webview shows
incomplete tiles to the user during a few milliseconds. To fix showing incomplete tiles during
the page loading, this patch adds a flag so that we don't show the incomplete tiles until showing
new page.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::EwkView):

  • UIProcess/API/efl/EwkView.h:

(EwkView::setWaitingForNewPage):
(EwkView::waitingForNewPage):

  • UIProcess/efl/PageLoadClientEfl.cpp:

(WebKit::PageLoadClientEfl::didCommitLoadForFrame):

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:

(WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):

  • UIProcess/efl/ViewClientEfl.cpp:

(WebKit::ViewClientEfl::didRenderFrame):
(WebKit::ViewClientEfl::didCompletePageTransition):

8:02 AM Changeset in webkit [170242] by commit-queue@webkit.org
  • 38 edits in trunk

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

Caused 9 layout test failures on Mountain Lion
http://build.webkit.org/builders/Apple%20MountainLion%20Release%20WK2%20(Tests)/builds/19216
(Requested by bradee-oh on #webkit).

Reverted changeset:

"[Mac] Margins for new form controls need tweaking"
https://bugs.webkit.org/show_bug.cgi?id=134135
http://trac.webkit.org/changeset/170228

7:59 AM Changeset in webkit [170241] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

[Mac] Create and attach the AVPlayerLayer to the AVPlayer immediately if the media element is <video>.
https://bugs.webkit.org/show_bug.cgi?id=134131

Reviewed by Eric Carlson.

The AVPlayer uses the presence of an AVPlayerLayer to decide which alternate to display in the case of
HLS streams with audio-only alternates. To give the AVPlayer the most information with which to make its
decision, always create and attach an AVPlayerLayer before attaching an AVPlayerItem to the AVPlayerLayer.
In addition, retrieve the <video> element bounds and create an AVPlayerLayer with a matching size, so that
the AVPlayer can choose an alternate with the correct dimensions.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::hasLayerRenderer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerLayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformLayer):

7:55 AM Changeset in webkit [170240] by jonowells@apple.com
  • 25 edits in trunk/Source/WebInspectorUI

Web Inspector: UI fonts should pull from system fonts automatically to whatever degree possible
https://bugs.webkit.org/show_bug.cgi?id=133966

Reviewed by Timothy Hatcher.

Updated font families to use -webkit-system-font, and set this on the body to be
inherited. Also made sure that popovers use Menlo as the default. Updated
autocompletions with system font names.

  • UserInterface/Models/CSSKeywordCompletions.js: Updated completions with available system fonts.
  • UserInterface/Controllers/CodeMirrorGradientEditingController.css:
  • UserInterface/Views/Breakpoint.css:
  • UserInterface/Views/ButtonNavigationItem.css:
  • UserInterface/Views/ButtonToolbarItem.css:
  • UserInterface/Views/CSSStyleDeclarationSection.css:
  • UserInterface/Views/CSSStyleDeclarationTextEditor.css:
  • UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
  • UserInterface/Views/CodeMirrorOverrides.css:
  • UserInterface/Views/DataGrid.css:
  • UserInterface/Views/DebuggerDashboardView.css:
  • UserInterface/Views/DetailsSection.css:
  • UserInterface/Views/FindBanner.css:
  • UserInterface/Views/GoToLineDialog.css:
  • UserInterface/Views/HierarchicalPathComponent.css:
  • UserInterface/Views/Main.css:
  • UserInterface/Views/NavigationSidebarPanel.css:
  • UserInterface/Views/ProbeSetDataGrid.css:
  • UserInterface/Views/RulesStyleDetailsPanel.css:
  • UserInterface/Views/ScopeBar.css:
  • UserInterface/Views/SourceCodeTextEditor.css:
  • UserInterface/Views/TimelineDataGrid.css:
  • UserInterface/Views/TimelineRuler.css:
  • UserInterface/Views/TimelineSidebarPanel.css:

Changes to fonts. Set default font stack to -webkit-system-font, sans-serif. Default size is
11px. Only changes to this default size or changes to the font (to Menlo, monospace usually) remain.

7:52 AM Changeset in webkit [170239] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Implement ios -[WAKWindow convertBaseToScreen:]
https://bugs.webkit.org/show_bug.cgi?id=134053

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-21
Reviewed by Eric Carlson.

  • platform/ios/wak/WAKWindow.mm:

(-[WAKWindow convertBaseToScreen:]):
Traverse layer hierarchy and convert point.

(-[WAKWindow convertScreenToBase:]):
Traverse layer hierarchy and convert point.

7:51 AM Changeset in webkit [170238] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Esc in quick console no longer toggles console drawer
https://bugs.webkit.org/show_bug.cgi?id=134068

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-06-21
Reviewed by Timothy Hatcher.

For Escape to toggle console behavior we were relying on the Escape
keyboard event to propagate up to the window and be handled by
QuickConsole's global keyboard shortcut. With CodeMirror 4, all
editors have a default "Esc" key handler to reduce multiple selections
to a single selection. Unfortunately this always prevents default,
which our keyboard shortcut respects and doesn't toggle the console.

Workaround this by putting a specific handler for when a Console
Prompt is empty and the Escape key is triggered. This does not go
through the normal ConsolePrompt delegate because the delegate
is never the QuickConsole, it is actually the JavaScript log.

  • UserInterface/Views/ConsolePrompt.js:

(WebInspector.ConsolePrompt):
(WebInspector.ConsolePrompt.prototype.set escapeKeyHandlerWhenEmpty):
(WebInspector.ConsolePrompt.prototype._handleEscapeKey):

  • UserInterface/Views/QuickConsole.js:

(WebInspector.QuickConsole.this.prompt.escapeKeyHandlerWhenEmpty):
(WebInspector.QuickConsole):

7:43 AM Changeset in webkit [170237] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Commit queue has been failing due to a build failure in WKFoundation.h
https://bugs.webkit.org/show_bug.cgi?id=134152

Patch by Ryosuke Niwa <rniwa@webkit.org> on 2014-06-21
Reviewed by Csaba Osztrogonác.
Landed by Brady Eidson.

The build failure was caused by WKFoundation.h erroneously redefining
NSURLSessionAuthChallengeDisposition even when building with 10.9 SDK.

The availability of this type depends on the version of SDK,
not the target operating system.

  • Shared/API/Cocoa/WKFoundation.h:
1:53 AM Changeset in webkit [170236] by Csaba Osztrogonác
  • 2 edits
    1 add in trunk/Tools

[Inspector][EFL] Can't resume a special break point on EFL inspector
https://bugs.webkit.org/show_bug.cgi?id=129294

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-06-21
Reviewed by Gyuyoung Kim.

Patch our EFL 1.9 with the fix landed in upstream EFL 1.10
by Ryuan Choi - <https://phab.enlightenment.org/D790>

  • efl/jhbuild.modules:
  • efl/patches/ecore.patch: Added.
1:49 AM Changeset in webkit [170235] by Csaba Osztrogonác
  • 39 edits in trunk

Removing PAGE_VISIBILITY_API compile guard.
https://bugs.webkit.org/show_bug.cgi?id=133844

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-21
Reviewed by Gavin Barraclough.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:
No new tests because no functional changes.

  • Configurations/FeatureDefines.xcconfig:
  • Modules/vibration/NavigatorVibration.cpp:

(WebCore::NavigatorVibration::vibrate):

  • dom/Document.cpp:

(WebCore::Document::hidden):

  • dom/Document.h:
  • dom/Document.idl:
  • dom/Element.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::registerWithDocument):
(WebCore::HTMLMediaElement::unregisterWithDocument):
(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLMediaElement.h:
  • page/Page.cpp:

(WebCore::Page::setIsVisibleInternal):
(WebCore::Page::visibilityState):
(WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):

  • page/Page.h:
  • page/PageVisibilityState.cpp:
  • page/PageVisibilityState.h:
  • page/Settings.cpp:

(WebCore::Settings::Settings):
(WebCore::Settings::setHiddenPageCSSAnimationSuspensionEnabled):

  • page/Settings.h:
  • platform/audio/MediaSession.cpp:

(WebCore::MediaSession::updateClientDataBuffering):

  • platform/audio/MediaSession.h:

Source/WebKit/efl:

  • ewk/ewk_view.cpp:

(ewk_view_visibility_state_set):
(ewk_view_visibility_state_get):

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):
(-[WebView _visibilityState]):

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.props:
  • win/tools/vsprops/FeatureDefinesCairo.props:
1:46 AM Changeset in webkit [170234] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

ARM traditional buildfix after r169942.
https://bugs.webkit.org/show_bug.cgi?id=134100

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-21
Reviewed by Zoltan Herczeg.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::abortWithReason): Added.

1:07 AM Changeset in webkit [170233] by fred.wang@free.fr
  • 2 edits in trunk/Source/WebCore

[GTK][EFL] Use OpenType MATH fonts by default.
https://bugs.webkit.org/show_bug.cgi?id=133604

Reviewed by Chris Fleizach.

In order to support stretching of horizontal operators and large
operators in display mode as well as to improve the drawing of radicals,
we need to use an OpenType MATH table. This commit makes the MathML code
try "Latin Modern Math" first, which is an OpenType version of Knuth's
popular Computer Modern font and is packaged with most TeX
distributions (e.g. TeX Live on Linux). This should work well on the
EFL & GTK ports for which the initial OpenType MATH support has been
tested. Other ports will be handled later.

No new tests. This is already tested in LayoutTests/mathml/opentype/.

  • css/mathml.css:

(math): Add "Latin Modern Math" as the first font-family of the <math> element.

Jun 20, 2014:

11:04 PM Changeset in webkit [170232] by fred.wang@free.fr
  • 6 edits
    23 moves
    1 add
    11 deletes in trunk/LayoutTests

Remove latinmodern-math.woff from LayoutTests/mathml/opentype
https://bugs.webkit.org/show_bug.cgi?id=134094

Reviewed by Martin Robinson.

We remove latinmodern-math.woff from the source and make mathml/opentype/*LatinModern* tests not font-specific, so that each platform will use whatever OpenType MATH is available.
Until bug 133604 is fixed and Latin Modern Math installed on the Linux bots, the tests are marked as failed. More generally, we need to fix bug 133603.
The test mathml/opentype/roots-LatinModern is removed since it will duplicate mathml/presentation/roots.xhtml when OpenType MATH fonts are available.

  • mathml/opentype/LICENSE-LatinModern.txt: Removed.
  • mathml/opentype/horizontal-munderover.html: Renamed from LayoutTests/mathml/opentype/horizontal-LatinModern-munderover.html.
  • mathml/opentype/horizontal.html: Renamed from LayoutTests/mathml/opentype/horizontal-LatinModern.html.
  • mathml/opentype/large-operators-LatinModern.html: Removed.
  • mathml/opentype/large-operators.html: Added.
  • mathml/opentype/latinmodern-math.woff: Removed.
  • mathml/opentype/opentype-stretchy-horizontal.html:
  • mathml/opentype/roots-LatinModern.html: Removed.
  • mathml/opentype/vertical.html: Renamed from LayoutTests/mathml/opentype/vertical-LatinModern.html.
  • platform/efl/TestExpectations:
  • platform/efl/mathml/opentype/horizontal-expected.txt: Renamed from LayoutTests/platform/efl/mathml/opentype/horizontal-LatinModern-expected.txt.
  • platform/efl/mathml/opentype/horizontal-munderover-expected.txt: Renamed from LayoutTests/platform/efl/mathml/opentype/horizontal-LatinModern-munderover-expected.txt.
  • platform/efl/mathml/opentype/large-operators-expected.png: Renamed from LayoutTests/platform/gtk/mathml/opentype/large-operators-LatinModern-expected.png.
  • platform/efl/mathml/opentype/large-operators-expected.txt: Renamed from LayoutTests/platform/efl/mathml/opentype/large-operators-LatinModern-expected.txt.
  • platform/efl/mathml/opentype/roots-LatinModern-expected.txt: Removed.
  • platform/efl/mathml/opentype/vertical-expected.png: Renamed from LayoutTests/platform/gtk/mathml/opentype/vertical-LatinModern-expected.png.
  • platform/efl/mathml/opentype/vertical-expected.txt: Renamed from LayoutTests/platform/efl/mathml/opentype/vertical-LatinModern-expected.txt.
  • platform/gtk/TestExpectations:
  • platform/gtk/mathml/opentype/horizontal-expected.png: Renamed from LayoutTests/platform/gtk/mathml/opentype/horizontal-LatinModern-expected.png.
  • platform/gtk/mathml/opentype/horizontal-expected.txt: Renamed from LayoutTests/platform/gtk/mathml/opentype/horizontal-LatinModern-expected.txt.
  • platform/gtk/mathml/opentype/horizontal-munderover-expected.png: Renamed from LayoutTests/platform/gtk/mathml/opentype/horizontal-LatinModern-munderover-expected.png.
  • platform/gtk/mathml/opentype/horizontal-munderover-expected.txt: Renamed from LayoutTests/platform/gtk/mathml/opentype/horizontal-LatinModern-munderover-expected.txt.
  • platform/gtk/mathml/opentype/large-operators-expected.png: Renamed from LayoutTests/platform/efl/mathml/opentype/large-operators-LatinModern-expected.png.
  • platform/gtk/mathml/opentype/large-operators-expected.txt: Renamed from LayoutTests/platform/gtk/mathml/opentype/large-operators-LatinModern-expected.txt.
  • platform/gtk/mathml/opentype/roots-LatinModern-expected.png: Removed.
  • platform/gtk/mathml/opentype/roots-LatinModern-expected.txt: Removed.
  • platform/gtk/mathml/opentype/vertical-expected.png: Renamed from LayoutTests/platform/efl/mathml/opentype/vertical-LatinModern-expected.png.
  • platform/gtk/mathml/opentype/vertical-expected.txt: Renamed from LayoutTests/platform/gtk/mathml/opentype/vertical-LatinModern-expected.txt.
  • platform/mac-wk2/mathml/opentype/large-operators-LatinModern-expected.txt: Removed.
  • platform/mac-wk2/mathml/opentype/vertical-LatinModern-expected.txt: Removed.
  • platform/mac/TestExpectations:
  • platform/mac/mathml/opentype/horizontal-expected.txt: Renamed from LayoutTests/platform/mac/mathml/opentype/horizontal-LatinModern-expected.txt.
  • platform/mac/mathml/opentype/horizontal-munderover-expected.txt: Renamed from LayoutTests/platform/mac/mathml/opentype/horizontal-LatinModern-munderover-expected.txt.
  • platform/mac/mathml/opentype/large-operators-expected.txt: Renamed from LayoutTests/platform/mac/mathml/opentype/large-operators-LatinModern-expected.txt.
  • platform/mac/mathml/opentype/roots-LatinModern-expected.txt: Removed.
  • platform/mac/mathml/opentype/vertical-expected.txt: Renamed from LayoutTests/platform/mac/mathml/opentype/vertical-LatinModern-expected.txt.
  • platform/win/TestExpectations:
  • platform/win/mathml/opentype/horizontal-expected.txt: Renamed from LayoutTests/platform/win/mathml/opentype/horizontal-LatinModern-expected.txt.
  • platform/win/mathml/opentype/horizontal-munderover-expected.txt: Renamed from LayoutTests/platform/win/mathml/opentype/horizontal-LatinModern-munderover-expected.txt.
  • platform/win/mathml/opentype/roots-LatinModern-expected.txt: Removed.
11:00 PM Changeset in webkit [170231] by ryuan.choi@samsung.com
  • 1 edit
    1 delete in trunk/LayoutTests

[EFL] Remove WebKit1 test results
https://bugs.webkit.org/show_bug.cgi?id=134137

Reviewed by Daniel Bates.

  • platform/efl-wk1: Removed entire directory which contains the WebKit1 EFL test results.
10:53 PM Changeset in webkit [170230] by ryuan.choi@samsung.com
  • 3 edits
    2 copies
    3 deletes in trunk/Tools

[EFL] Remove DumpRenderTree/efl and EWebLauncher
https://bugs.webkit.org/show_bug.cgi?id=134138

Reviewed by Gyuyoung Kim.

DumpRenderTree/efl and EWebLauncher are not necessary anymore because WebKit1 EFL will be removed.

  • CMakeLists.txt:
  • DumpRenderTree/PlatformEfl.cmake: Removed.
  • DumpRenderTree/efl: Removed entire directory.
  • EWebLauncher: Ditto.
  • WebKitTestRunner/InjectedBundle/efl/FontManagement.cpp: Renamed from Tools/DumpRenderTree/efl/FontManagement.cpp.

(buildPath):
(getCoreFontFiles):
(addFontDirectory):
(addFontFiles):
(getCustomBuildDir):
(getPlatformFontsPath):
(addFontsToEnvironment):

  • WebKitTestRunner/InjectedBundle/efl/FontManagement.h: Renamed from Tools/DumpRenderTree/efl/FontManagement.h.
  • WebKitTestRunner/PlatformEfl.cmake:
10:09 PM Changeset in webkit [170229] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed EFL build fix since r170224.

Add retainPlatformLayer() and releasePlatformLayer() in ScrollingStateNodeCoordinatedGraphics.cpp
as well. Thouse functions were missed in r170224.

  • page/scrolling/ScrollingStateNode.h:
  • page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp:

(WebCore::LayerRepresentation::retainPlatformLayer):
(WebCore::LayerRepresentation::releasePlatformLayer):

8:10 PM Changeset in webkit [170228] by dino@apple.com
  • 38 edits in trunk

[Mac] Margins for new form controls need tweaking
https://bugs.webkit.org/show_bug.cgi?id=134135
<rdar://problem/17262164>

Reviewed by Sam Weinig.

Source/WebCore:
With the newer animated controls in OS X Yosemite, we need
to tweak the fudge-factor margins for positioning. In a recent
patch I added another fudge, which I'm removing with this. I'm
not sure where the older values came from, but I've checked with
the latest AppKit sources and am using the sizes they implement
for the controls.

This will rebaseline a lot of tests, since I've made small tweaks
to the form layout.

  • platform/mac/ThemeMac.mm:

(WebCore::checkboxMargins): New margin amounts.
(WebCore::radioSizes): New sizes.
(WebCore::radioMargins): New margin amounts.
(WebCore::paintToggleButton): No need to call the positioning fudge any more.
(WebCore::checkboxOffsets): Deleted.
(WebCore::radioOffsets): Deleted.

LayoutTests:
Rebaseline a bunch of results since some <input> dimensions
changed slightly.

  • platform/mac/css1/box_properties/acid_test-expected.png:
  • platform/mac/css1/box_properties/acid_test-expected.txt:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.png:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.txt:
  • platform/mac/fast/block/basic/011-expected.png:
  • platform/mac/fast/block/basic/011-expected.txt:
  • platform/mac/fast/block/margin-collapse/103-expected.png:
  • platform/mac/fast/block/margin-collapse/103-expected.txt:
  • platform/mac/fast/forms/basic-inputs-expected.png:
  • platform/mac/fast/forms/basic-inputs-expected.txt:
  • platform/mac/fast/forms/box-shadow-override-expected.png:
  • platform/mac/fast/forms/box-shadow-override-expected.txt:
  • platform/mac/fast/forms/form-element-geometry-expected.png:
  • platform/mac/fast/forms/form-element-geometry-expected.txt:
  • platform/mac/fast/forms/formmove-expected.txt:
  • platform/mac/fast/forms/formmove2-expected.png:
  • platform/mac/fast/forms/formmove2-expected.txt:
  • platform/mac/fast/forms/input-appearance-height-expected.png:
  • platform/mac/fast/forms/input-appearance-height-expected.txt:
  • platform/mac/fast/forms/input-value-expected.png:
  • platform/mac/fast/forms/input-value-expected.txt:
  • platform/mac/fast/inline/positionedLifetime-expected.txt:
  • platform/mac/fast/replaced/replaced-breaking-expected.png:
  • platform/mac/fast/replaced/replaced-breaking-expected.txt:
  • platform/mac/fast/replaced/width100percent-radio-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.png:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.png:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/core/captions1-expected.png:
  • platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/core/captions2-expected.png:
  • platform/mac/tables/mozilla_expected_failures/core/captions2-expected.txt:
7:33 PM Changeset in webkit [170227] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix css jit on armv7.
https://bugs.webkit.org/show_bug.cgi?id=134143
<rdar://problem/17348060>

Patch by Alex Christensen <achristensen@webkit.org> on 2014-06-20
Reviewed by Benjamin Poulain.

This fixes the acid3 test.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::addFlagsToElementStyleFromContext):
Correct high and low bits.

5:11 PM Changeset in webkit [170226] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Implement more of LegacySessionStateDecoder
https://bugs.webkit.org/show_bug.cgi?id=134145

Reviewed by Sam Weinig.

  • Shared/SessionState.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntry):
(WebKit::HistoryEntryDataDecoder::HistoryEntryDataDecoder):
(WebKit::HistoryEntryDataDecoder::finishDecoding):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntryData):

  • UIProcess/mac/LegacySessionStateCoding.h:
4:48 PM Changeset in webkit [170225] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Implement more of LegacySessionStateDecoder
https://bugs.webkit.org/show_bug.cgi?id=134144

Reviewed by Sam Weinig.

  • Shared/SessionState.cpp:

(WebKit::BackForwardListState::encode):
(WebKit::SessionState::encode): Deleted.

  • Shared/SessionState.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::decodeSessionState):
(WebKit::LegacySessionStateDecoder::decodeSessionHistory):
(WebKit::LegacySessionStateDecoder::decodeV0SessionHistory):
(WebKit::LegacySessionStateDecoder::decodeV1SessionHistory):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntries):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntry):

  • UIProcess/mac/LegacySessionStateCoding.h:
4:44 PM Changeset in webkit [170224] by Beth Dakin
  • 5 edits
    1 move
    1 add in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=134117
Unreproducible crashes under WebCore::ScrollingTree::updateTreeFromStateNode()
from messaging a deleted Obj-C object
-and corresponding-
<rdar://problem/17149252>

Reviewed by Simon Fraser.

This is a speculative fix. It makes LayerRepresentation retain m_platformLayer.

  • WebCore.exp.in:
  • page/scrolling/ScrollingStateNode.h:

(WebCore::LayerRepresentation::LayerRepresentation):
(WebCore::LayerRepresentation::~LayerRepresentation):
(WebCore::LayerRepresentation::operator=):
(WebCore::LayerRepresentation::operator==):
(WebCore::LayerRepresentation::operator ==): Deleted.

Make this ASSERT an ASSERT_WITH_SECURITY_IMPLICATION

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::updateTreeFromStateNode):

Moved ScrollingStateNodeMac.mm, which was empty anyway, to cocoa/
ScrollingStateNode.mm so that iOS can use it too.

  • page/scrolling/cocoa: Added.
  • page/scrolling/cocoa/ScrollingStateNode.mm: Copied from page/scrolling/mac/ScrollingStateNodeMac.mm.

Actual implementation for retain and release.
(WebCore::LayerRepresentation::retainPlatformLayer):
(WebCore::LayerRepresentation::releasePlatformLayer):

Deleted.

  • page/scrolling/mac/ScrollingStateNodeMac.mm: Removed.
4:40 PM Changeset in webkit [170223] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed. build fix for the cmake based ports since r170188

  • CMakeLists.txt: Added LegacySessionState.cpp in source list.
4:37 PM Changeset in webkit [170222] by mitz@apple.com
  • 4 edits in trunk/Source/WebKit2

[Cocoa] No way to get the main frame’s main resource’s data
https://bugs.webkit.org/show_bug.cgi?id=134113

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _getMainResourceDataWithCompletionHandler:]): Added. Calls
WebPageProxy::getMainResourceDataOfFrame and invokes the completion handler form the
callback.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h: Declared new method.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getMainResourceDataOfFrame): Made it safe to pass a NULL frame into
this function.

4:21 PM Changeset in webkit [170221] by Alan Bujtas
  • 2 edits in trunk/Tools

Name moving. Unreviewed.

  • Scripts/webkitpy/common/config/contributors.json:
3:57 PM Changeset in webkit [170220] by Alan Bujtas
  • 6 edits in trunk/Source/WebCore

Introduce RenderLayer::offsetFromAncestorLayer() to make convertToLayerCoords() calls with
LayoutPoint(0, 0) as parameter more explicit.
https://bugs.webkit.org/show_bug.cgi?id=134092

Reviewed by Simon Fraser.

Most of the RenderLayer::convertToLayerCoords() callers are only interested in
the offset from the ancestor layer by passing LayoutPoint(0, 0) as the coordinate to convert.
Introducing offsetFromAncestorLayer() makes those calls more explicit/self-explanatory.
It helps simplifying the callsite's code.

No change in functionality.

  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::mapToContainer):
(WebCore::RenderGeometryMap::pushMappingsToAncestor):
(WebCore::RenderGeometryMap::push):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::computeOffsetFromRoot):
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::expandClipRectForRegionAndReflection):
(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::transparencyClipBox):
(WebCore::RenderLayer::convertToPixelSnappedLayerCoords):
(WebCore::accumulateOffsetTowardsAncestor):
(WebCore::RenderLayer::convertToLayerCoords):
(WebCore::RenderLayer::offsetFromAncestorLayer):
(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::createLocalTransformState):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::calculateClipRects):

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

(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateGeometry):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::repaintInCompositedAncestor):

3:46 PM Changeset in webkit [170219] by andersca@apple.com
  • 7 edits
    6 copies in trunk/Source/WebKit2

Introduce a WKSessionStateRef object
https://bugs.webkit.org/show_bug.cgi?id=134136

Reviewed by Tim Horton.

WKSessionStateRef is going to hold session state, making it possible to migrate state from one
webpage to another without having to do any serialization/deserialization.

  • Shared/API/c/WKBase.h:
  • Shared/APIObject.h:
  • Shared/SessionState.cpp:

(WebKit::SessionState::encode):

  • Shared/SessionState.h:
  • UIProcess/API/APISessionState.cpp: Added.

(API::SessionState::create):
(API::SessionState::SessionState):
(API::SessionState::~SessionState):

  • UIProcess/API/APISessionState.h:
  • UIProcess/API/C/WKAPICast.h:
  • UIProcess/API/C/WKSessionStateRef.cpp:

(WKSessionStateCreateFromData):

  • UIProcess/API/C/WKSessionStateRef.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::LegacySessionStateDecoder):
(WebKit::LegacySessionStateDecoder::~LegacySessionStateDecoder):
(WebKit::LegacySessionStateDecoder::decodeSessionState):

  • UIProcess/mac/LegacySessionStateCoding.h:
  • WebKit2.xcodeproj/project.pbxproj:
3:42 PM Changeset in webkit [170218] by enrica@apple.com
  • 4 edits in trunk/Source/WebKit2

iOS WebKit2: selection handles become too large when zooming a page.
https://bugs.webkit.org/show_bug.cgi?id=134084
<rdar://problem/16799164>

Reviewed by Benjamin Poulain.

Since the document view is zoomed, we add a subview that has the inverse transform
of the document view. This new view becomes the root for the selection hierarchy.
The new view has zero size, not to interfere with the existing gestures on the WKContenView
therefore we implement hitTest to detect interaction with the selection elements.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView unscaledView]):
(-[WKContentView inverseScale]):
(-[WKContentView _updateUnscaledView]):
(-[WKContentView hitTest:withEvent:::]):
(-[WKContentView selectedTextRange]):

3:40 PM Changeset in webkit [170217] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Snapshotting WKThumbnailViews should not tell Web processes backing unparented WKViews that they're in window
https://bugs.webkit.org/show_bug.cgi?id=134134
<rdar://problem/17402119>

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _setThumbnailView:]):
Re-evaluating our in-window state is only useful if we're going to use the live layer tree;
snapshots can be taken of unparented views with no trouble. Plus, doing so sets off a chain of
expensive things in the Web process which we can avoid if using snapshots.

3:38 PM Changeset in webkit [170216] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

WKThumbnailView should only use live layer trees before the snapshot arrives for parented WKViews
https://bugs.webkit.org/show_bug.cgi?id=134129
<rdar://problem/17401591>

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/_WKThumbnailView.mm:

(-[_WKThumbnailView initWithFrame:fromWKView:]):
Add a white background to WKThumbnailView, so that if we have no snapshot and no layer tree,
the view isn't transparent.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _updateThumbnailViewLayer]):
We currently pull the live layer tree into the WKThumbnailView even in snapshot mode,
before the snapshot arrives, to avoid flashing when transitioning a live WKView to a thumbnail view.
This is, however, not useful for unparented WKViews, because their layer tree will be detached
and we'll flash anyway. So, only do that when the WKView is parented.

3:27 PM Changeset in webkit [170215] by mhahnenberg@apple.com
  • 5 edits in branches/ftlopt/Source/JavaScriptCore

Merge r169903 to the branch.

2014-06-12 Mark Hahnenberg <mhahnenberg@apple.com>


Move structureHasRareData out of TypeInfo
https://bugs.webkit.org/show_bug.cgi?id=133800


Reviewed by Andreas Kling.


StructureHasRareData was originally put in TypeInfo to avoid making Structure bigger,
but we have a few spare bits in Structure so it would be nice to remove this hack.


  • runtime/JSTypeInfo.h: (JSC::TypeInfo::newImpurePropertyFiresWatchpoints): (JSC::TypeInfo::structureHasRareData): Deleted.
  • runtime/Structure.cpp: (JSC::Structure::Structure): (JSC::Structure::allocateRareData): (JSC::Structure::cloneRareDataFrom):
  • runtime/Structure.h: (JSC::Structure::previousID): (JSC::Structure::objectToStringValue): (JSC::Structure::setObjectToStringValue): (JSC::Structure::setPreviousID): (JSC::Structure::clearPreviousID): (JSC::Structure::previous): (JSC::Structure::rareData):
  • runtime/StructureInlines.h: (JSC::Structure::setEnumerationCache): (JSC::Structure::enumerationCache):
3:10 PM Changeset in webkit [170214] by ggaren@apple.com
  • 3 edits in trunk/Source/WebKit2

WebKit delegate methods should document their default behaviors
https://bugs.webkit.org/show_bug.cgi?id=134132

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKNavigationDelegate.h:
  • UIProcess/API/Cocoa/WKUIDelegate.h:
3:06 PM Changeset in webkit [170213] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Fix lots of WK2 test crashes.

We don't always have a ScrollingCoordinator.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::flushLayers):

3:05 PM Changeset in webkit [170212] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Always use XPC on iOS
https://bugs.webkit.org/show_bug.cgi?id=134130

Reviewed by Sam Weinig.

  • UIProcess/ios/WebProcessProxyIOS.mm:

(WebKit::WebProcessProxy::platformGetLaunchOptions):
(WebKit::shouldUseXPC): Deleted.

3:00 PM Changeset in webkit [170211] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • Shared/SessionState.cpp:
2:55 PM Changeset in webkit [170210] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add ArgumentEncoder support to PageState and friends
https://bugs.webkit.org/show_bug.cgi?id=134128

Reviewed by Andreas Kling.

Change the classes to structs, get rid of the constructors/destructors
and add encode member functions.

  • Shared/SessionState.cpp:

(WebKit::HTTPBody::Element::encode):
(WebKit::HTTPBody::encode):
(WebKit::FrameState::encode):
(WebKit::PageState::encode):
(WebKit::HTTPBody::Element::Element): Deleted.
(WebKit::HTTPBody::Element::~Element): Deleted.
(WebKit::FrameState::FrameState): Deleted.
(WebKit::FrameState::~FrameState): Deleted.
(WebKit::PageState::PageState): Deleted.
(WebKit::PageState::~PageState): Deleted.

  • Shared/SessionState.h:

(WebKit::HTTPBody::Element::type): Deleted.

2:36 PM Changeset in webkit [170209] by andersca@apple.com
  • 4 edits in trunk/Source

Add encoding and decoding support for WTF::Optional
https://bugs.webkit.org/show_bug.cgi?id=134125

Reviewed by Andreas Kling.

Source/WebKit2:

  • Platform/IPC/ArgumentCoders.h:

(IPC::ArgumentCoder<WTF::Optional<T>>::encode):
(IPC::ArgumentCoder<WTF::Optional<T>>::decode):

Source/WTF:

  • wtf/Optional.h:

(WTF::Optional::operator=):

2:21 PM Changeset in webkit [170208] by mmaxfield@apple.com
  • 4 edits
    30 deletes in trunk/Source/WebCore

Removing dead code in platform/graphics/gpu
https://bugs.webkit.org/show_bug.cgi?id=134065

Reviewed by Simon Fraser.

No new tests because there is no behavior change.

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/gpu/LoopBlinnClassifier.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnClassifier.h: Removed.
  • platform/graphics/gpu/LoopBlinnConstants.h: Removed.
  • platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Removed.
  • platform/graphics/gpu/LoopBlinnMathUtils.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnMathUtils.h: Removed.
  • platform/graphics/gpu/LoopBlinnPathCache.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnPathCache.h: Removed.
  • platform/graphics/gpu/LoopBlinnPathProcessor.h: Removed.
  • platform/graphics/gpu/LoopBlinnShader.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnShader.h: Removed.
  • platform/graphics/gpu/LoopBlinnSolidFillShader.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnSolidFillShader.h: Removed.
  • platform/graphics/gpu/LoopBlinnTextureCoords.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnTextureCoords.h: Removed.
  • platform/graphics/gpu/Shader.cpp: Removed.
  • platform/graphics/gpu/Shader.h: Removed.
  • platform/graphics/gpu/SharedGraphicsContext3D.cpp: Removed.
  • platform/graphics/gpu/SharedGraphicsContext3D.h: Removed.
  • platform/graphics/gpu/mac/DrawingBufferMac.mm: Removed.
  • platform/graphics/gpu/opencl/FilterContextOpenCL.cpp: Removed.
  • platform/graphics/gpu/opencl/FilterContextOpenCL.h: Removed.
  • platform/graphics/gpu/opencl/OpenCLFEColorMatrix.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFEFlood.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFEImage.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFEMerge.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFESourceAlpha.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFESourceGraphic.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFETurbulence.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLHandle.h: Removed.
2:17 PM Changeset in webkit [170207] by mmaxfield@apple.com
  • 3 edits
    3 adds in trunk

[iOS] Support Khmer and Lao fallback fonts
https://bugs.webkit.org/show_bug.cgi?id=134114

Reviewed by Enrica Casucci.

Source/WebCore:
iOS has fonts which have glyphs for the Khmer and Lao languages.

This patch also does a little refactoring of the language-specific fallback
font path to increase readability.

Test: fast/text/khmer-lao-font.html

  • platform/graphics/ios/FontCacheIOS.mm:

(WebCore::languageSpecificFallbackFont):
(WebCore::FontCache::systemFallbackForCharacters):

LayoutTests:
Simply dump the render tree of a page that includes Khmer and Lao text. The success
of this test depends on font font metrics being different than system fallback font
(which just shows rectangles instead of glyphs).

  • fast/text/khmer-lao-font.html: Added.
  • platform/ios-sim/fast/text/khmer-lao-font-expected.txt: Added.
  • platform/mac/fast/text/khmer-lao-font-expected.txt: Added.
2:08 PM Changeset in webkit [170206] by jfernandez@igalia.com
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers.

  • Scripts/webkitpy/common/config/contributors.json:
2:03 PM Changeset in webkit [170205] by andersca@apple.com
  • 4 edits in trunk/Source

Give NPAPI post requests a default content type
https://bugs.webkit.org/show_bug.cgi?id=134120

Reviewed by Andreas Kling.

Source/WebCore:

  • WebCore.exp.in:

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::loadURL):

2:00 PM Changeset in webkit [170204] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Always commit the scrolling tree when we flush layers
https://bugs.webkit.org/show_bug.cgi?id=134115

Reviewed by Beth Dakin.

The scrolling state tree contains bare pointers to GraphicsLayers, which get
converted to CALayers at commit time. To avoid a window of time where those
GraphicsLayer pointers go stale, commit the scrolling tree whenever we flush the
compositing layer tree.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::flushLayers):

1:56 PM Changeset in webkit [170203] by Simon Fraser
  • 4 edits
    2 adds in trunk

REGRESSION (r169972): fix issue when removing masks from compositing layers
https://bugs.webkit.org/show_bug.cgi?id=134118
<rdar://problem/17366654>

Reviewed by Dean Jackson.

Source/WebCore:
After r169972 when removing the mask, we could destroy the mask
layer before the call into m_graphicsLayer->setMaskLayer(), which would
try to call functions on the old mask. Fix by clearing the mask layer
on the GraphicsLayer before the mask layer gets destroyed.

Test: compositing/masks/toggle-mask.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateConfiguration):
(WebCore::RenderLayerBacking::updateMaskLayer):

  • rendering/RenderLayerBacking.h:

LayoutTests:
Test that toggles the mask on a composited element.

  • compositing/masks/toggle-mask-expected.txt: Added.
  • compositing/masks/toggle-mask.html: Added.
1:54 PM Changeset in webkit [170202] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Add copy/move constructors and assignment operators to WTF::Optional
https://bugs.webkit.org/show_bug.cgi?id=134119

Reviewed by Andreas Kling.

  • wtf/Optional.h:

(WTF::Optional::Optional):
(WTF::Optional::operator=):

1:48 PM Changeset in webkit [170201] by akling@apple.com
  • 4 edits in trunk/Source

[Cocoa] Release freed up blocks from the JS heap after simulated memory pressure.
<https://webkit.org/b/134112>

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

  • heap/BlockAllocator.h:

Source/WebCore:

  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::install):

1:36 PM Changeset in webkit [170200] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Remove redundant RenderLayer::computeOffsetFromRoot() function.
https://bugs.webkit.org/show_bug.cgi?id=134088

Reviewed by Benjamin Poulain.

No change in functionality.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::computeOffsetFromRoot): Deleted.

  • rendering/RenderLayer.h:
1:22 PM Changeset in webkit [170199] by Yusuke Suzuki
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers.

  • Scripts/webkitpy/common/config/contributors.json:
12:16 PM Changeset in webkit [170198] by Simon Fraser
  • 11 edits
    6 adds in trunk

[iOS WebKit2] Make -webkit-overflow-scrolling:touch work in iframes (breaks MSWord previews)
https://bugs.webkit.org/show_bug.cgi?id=134085

Source/WebCore:
<rdar://problem/16440586>

Reviewed by Tim Horton.

When nodes were detached from the scrolling tree, we would previously throw away
all descendant nodes, expecting that they would be re-attached as we walk the compositing
layer tree in RenderLayerCompositor.

However, this doesn't work across frame boundaries; the subframe may never update
its compositing layers again, so would lose all its scrolling nodes.

Fix by having ScrollingStateTree::detachNode() by default set aside subframe nodes
into a hash map. On reattach, we'll look in the hash map and pull out an existing node
(with its children intact) if possible.

Tests: platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-gain-scrolling-ancestor.html

platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-lose-scrolling-ancestor.html
platform/mac-wk2/tiled-drawing/scrolling/frames/remove-coordinated-frame.html

  • page/scrolling/ScrollingStateNode.cpp:

(WebCore::ScrollingStateNode::ScrollingStateNode):

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::detachNode):
(WebCore::ScrollingStateTree::clear):
(WebCore::ScrollingStateTree::removeNodeAndAllDescendants):
(WebCore::ScrollingStateTree::recursiveNodeWillBeRemoved):

  • page/scrolling/ScrollingStateTree.h:
  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::commitNewTreeState): Go back to removing the deleted
nodes from m_nodeMap first.
(WebCore::ScrollingTree::removeDestroyedNodes): There is no need for this to
actually make use of ScrollingTreeNode* any more; the ASSERT(!node->parent())
is bogus because it can fire when whole subtrees are removed, and to clear the
latched node we just need the ID.

Source/WebKit2:
<rdar://problem/16440586>

Reviewed by Tim Horton.

Add some debug-only assertions that check that the number of nodes we encoded is
the expected number.

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(WebKit::encodeNodeAndDescendants):
(WebKit::RemoteScrollingCoordinatorTransaction::encode):

LayoutTests:

Reviewed by Tim Horton.

Tests that add and remove a fixed container of a scroll-coordinated iframe.

  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-gain-scrolling-ancestor-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-gain-scrolling-ancestor.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-lose-scrolling-ancestor-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-lose-scrolling-ancestor.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/remove-coordinated-frame-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/remove-coordinated-frame.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/resources/doc-with-sticky.html:
12:14 PM Changeset in webkit [170197] by Simon Fraser
  • 9 edits in trunk/Source

Handle scrolling tree modifications which remove intermediate nodes
https://bugs.webkit.org/show_bug.cgi?id=134082

Reviewed by Tim Horton.

When updating the scrolling tree from the state tree, we failed to maintain
the children arrays correctly. Fix by removing all children on scrolling nodes,
and allowing the calls on children to add them back. A temporary hash map
keeps the nodes alive.

The state tree's m_nodesRemovedSinceLastCommit was also made into a HashSet,
to make it easier to handle removal followed by re-insertion.

Source/WebCore:

  • WebCore.exp.in:
  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::attachNode): If a node is (possibly re-)added,
remove it from m_nodesRemovedSinceLastCommit.remove.
(WebCore::ScrollingStateTree::willRemoveNode):
(WebCore::ScrollingStateTree::setRemovedNodes):

  • page/scrolling/ScrollingStateTree.h:

(WebCore::ScrollingStateTree::removedNodes):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::updateTreeFromStateNode): Clean up to have only one call
to updateBeforeChildren(), and remove all children from the scrolling node
before visiting state children.
(WebCore::ScrollingTree::removeDestroyedNodes): It was very wrong to assume
that all non-root nodes were parented in the root! Now we don't need to
remove from the parent anyway.

  • page/scrolling/ScrollingTree.h:
  • page/scrolling/ScrollingTreeNode.h:

(WebCore::ScrollingTreeNode::children):

Source/WebKit2:

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(WebKit::RemoteScrollingCoordinatorTransaction::decode):
(WebKit::RemoteScrollingTreeTextStream::dump):

12:14 PM Changeset in webkit [170196] by Simon Fraser
  • 29 edits in trunk/Source

Make ScrollingTreeNodes refounted, for easier tree reconfiguration
https://bugs.webkit.org/show_bug.cgi?id=134075

Reviewed by Tim Horton.

Make ScrollingTreeNode be ref-counted.

Source/WebCore:

  • page/scrolling/AsyncScrollingCoordinator.h:
  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::handleWheelEvent):
(WebCore::ScrollingTree::updateTreeFromStateNode):

  • page/scrolling/ScrollingTree.h:

(WebCore::ScrollingTree::rootNode):

  • page/scrolling/ScrollingTreeNode.cpp:

(WebCore::ScrollingTreeNode::appendChild):

  • page/scrolling/ScrollingTreeNode.h:
  • page/scrolling/ThreadedScrollingTree.cpp:

(WebCore::ThreadedScrollingTree::createNode):

  • page/scrolling/ThreadedScrollingTree.h:
  • page/scrolling/ios/ScrollingCoordinatorIOS.h:
  • page/scrolling/ios/ScrollingCoordinatorIOS.mm:

(WebCore::ScrollingCoordinatorIOS::createScrollingTreeNode):

  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:

(WebCore::ScrollingTreeFrameScrollingNodeIOS::create):

  • page/scrolling/ios/ScrollingTreeIOS.cpp:

(WebCore::ScrollingTreeIOS::createNode):

  • page/scrolling/ios/ScrollingTreeIOS.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::createScrollingTreeNode):

  • page/scrolling/mac/ScrollingTreeFixedNode.h:
  • page/scrolling/mac/ScrollingTreeFixedNode.mm:

(WebCore::ScrollingTreeFixedNode::create):

  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:

(WebCore::ScrollingTreeFrameScrollingNodeMac::create):

  • page/scrolling/mac/ScrollingTreeStickyNode.h:
  • page/scrolling/mac/ScrollingTreeStickyNode.mm:

(WebCore::ScrollingTreeStickyNode::create):

Source/WebKit2:

  • UIProcess/Scrolling/RemoteScrollingTree.cpp:

(WebKit::RemoteScrollingTree::createNode):

  • UIProcess/Scrolling/RemoteScrollingTree.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:

(WebKit::ScrollingTreeOverflowScrollingNodeIOS::create):

  • WebProcess/Scrolling/RemoteScrollingCoordinator.h:
  • WebProcess/Scrolling/RemoteScrollingCoordinator.mm:

(WebKit::RemoteScrollingCoordinator::createScrollingTreeNode):

12:05 PM Changeset in webkit [170195] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] No way to get the MIME type of the main frame
https://bugs.webkit.org/show_bug.cgi?id=134111

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _MIMEType]): Added. Returns the MIME type of the main frame, or nil.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
11:32 AM Changeset in webkit [170194] by timothy_horton@apple.com
  • 8 edits in trunk/Tools

Make WebKit2 more accessible in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=134099

Reviewed by Anders Carlsson.

  • MiniBrowser/mac/AppDelegate.h:
  • MiniBrowser/mac/AppDelegate.m:

(-[BrowserAppDelegate newWindow:]):
(-[BrowserAppDelegate applicationDidFinishLaunching:]):
(-[BrowserAppDelegate toggleUseWebKit2ByDefault:]):
(-[BrowserAppDelegate _useWebKit2ByDefault]):
(-[BrowserAppDelegate _updateNewWindowKeyEquivalents]):
(-[BrowserAppDelegate validateMenuItem:]):

  • MiniBrowser/mac/MainMenu.xib:

Add a "Use WebKit2 By Default" menu item to the top of the Debug menu.
When switched on, Cmd-N will make WebKit2 windows (and the default window will be WebKit2).
Make the non-default new-window menu item always show up, because people often don't find it
when you have to press option to have it show up.

  • MiniBrowser/mac/BrowserWindowController.h:
  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController initWithWindow:]):

  • MiniBrowser/mac/WK1BrowserWindowController.m:

(-[WK1BrowserWindowController validateMenuItem:]):

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController validateMenuItem:]):
Use the cached [menuItem action] like the earlier cases do.

11:29 AM Changeset in webkit [170193] by enrica@apple.com
  • 3 edits in trunk/Source/WebCore

iOS build fix after http://trac.webkit.org/changeset/170167.

Reviewed by Geoff Garen.

  • bindings/js/JSDeviceMotionEventCustom.cpp:
  • bindings/js/JSDeviceOrientationEventCustom.cpp:
10:58 AM Changeset in webkit [170192] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebKit2

[iOS]: Overrelease of RetainPtr object in file upload
https://bugs.webkit.org/show_bug.cgi?id=134072

Reviewed by Brady Eidson.

This ivar is a RetainPtr, the release will be done automatically
for us when we assign to nil or destruct.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView fileUploadPanelDidDismiss:]):

10:57 AM Changeset in webkit [170191] by andersca@apple.com
  • 2 edits
    2 adds in trunk/Source/WebKit2

Begin stubbing out new session state classes
https://bugs.webkit.org/show_bug.cgi?id=134110

Reviewed by Geoffrey Garen.

The basic idea is that these classes will replace the data blobs representing HistoryItems
that we currently send back and forth between the web and UI processes.

  • Shared/SessionState.cpp: Added.

(WebKit::HTTPBody::Element::Element):
(WebKit::HTTPBody::Element::~Element):
(WebKit::FrameState::FrameState):
(WebKit::FrameState::~FrameState):
(WebKit::PageState::PageState):
(WebKit::PageState::~PageState):

  • Shared/SessionState.h: Added.

(WebKit::HTTPBody::Element::type):

  • WebKit2.xcodeproj/project.pbxproj:
10:25 AM Changeset in webkit [170190] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Enable synchronous willSendRequest on iOS
https://bugs.webkit.org/show_bug.cgi?id=134081
<rdar://problem/17350927>

Reviewed by Andreas Kling.

We lost the call to make willSendrequest callbacks be synchronous if possible during code
refactoring. The call is present in ResourceHandleMac.mm but that code is not called when
we use the CFNetwork based loader. Call the SPI in setupRequest().

No new tests because existing tests should cover this functionality.

  • platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:

(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::setupRequest):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):

10:20 AM Changeset in webkit [170189] by dbates@webkit.org
  • 4 edits in trunk/Tools

Teach run-{safari, webkit-app} about iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=133986

Reviewed by David Kilzer.

Extract the logic from old-run-webkit-tests to install and launch {DumpRenderTree, WebKitTestRunnerApp}.app
into general-purpose routines in webkitdirs.pm so that they can be used both by script old-run-webkit-tests
and run-safari.

  • Scripts/old-run-webkit-tests:

(installAndLaunchDumpToolAppUsingNotification): Extracted logic to install and launch {DumpRenderTree,
WebKitTestRunnerApp}.app into webkitdirs::installAndLaunchIOSWebKitAppInSimulator() and modified code
to call it.
(openIPhoneSimulator): Deleted; moved logic to webkitdirs::openIOSSimulator().
(quitIPhoneSimulator): Deleted; moved logic to webkitdirs::quitIOSSimulator().

  • Scripts/run-webkit-app: Modified to call runIOSWebKitApp() when the iOS simulator SDK is used

(say, by specifying the optional command-line argument --simulator). For now, die() with an error
when the iOS device SDK is used as we don't support launching an app on the device at this time.

  • Scripts/webkitdirs.pm:

(xcodeSDKVersion): Added.
(setupIOSWebKitEnvironment): Added.
(installedMobileSafariBundle): Added.
(mobileSafariBundle): Added.
(plistPathFromBundle): Added.
(appIdentiferFromBundle): Added.
(appDisplayNameFromBundle): Added.
(loadIPhoneSimulatorNotificationIfNeeded): Added.
(openIOSSimulator): Added.
(quitIOSSimulator): Added.
(iosSimulatorDeviceByName): Added.
(iosSimulatorRuntime): Added.
(findOrCreateSimulatorForIOSDevice): Added.
(runIOSWebKitAppInSimulator): Added.
(installAndLaunchIOSWebKitAppInSimulator): Added.
(runIOSWebKitApp): Added.
(runSafari): Modified to call runIOSWebKitAppInSimulator() the iOS simulator SDK is used. For now,
die() with an error when the iOS device SDK is used as we don't support launching Safari on the
device at this time.

10:16 AM Changeset in webkit [170188] by andersca@apple.com
  • 8 edits
    2 moves in trunk/Source/WebKit2

Rename SessionState to LegacySessionState
https://bugs.webkit.org/show_bug.cgi?id=134107

Reviewed by Dan Bernstein.

  • Shared/LegacySessionState.cpp: Renamed from Source/WebKit2/Shared/SessionState.cpp.

(IPC::ArgumentCoder<RefPtr<T>>::encode):
(IPC::ArgumentCoder<RefPtr<T>>::decode):
(WebKit::LegacySessionState::LegacySessionState):
(WebKit::LegacySessionState::isEmpty):
(WebKit::LegacySessionState::encode):
(WebKit::LegacySessionState::decode):

  • Shared/LegacySessionState.h: Renamed from Source/WebKit2/Shared/SessionState.h.

(WebKit::LegacySessionState::list):
(WebKit::LegacySessionState::currentIndex):

  • Shared/WebPageCreationParameters.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):

  • UIProcess/cf/WebPageProxyCF.cpp:

(WebKit::WebPageProxy::restoreFromSessionStateData):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::restoreSession):
(WebKit::WebPage::restoreSessionAndNavigateToCurrentItem):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
9:35 AM Changeset in webkit [170187] by andersca@apple.com
  • 4 edits
    2 adds in trunk

Add WTF::Optional class
https://bugs.webkit.org/show_bug.cgi?id=134083

Reviewed by Andreas Kling.

Source/WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/Optional.h: Added.

(WTF::Optional::Optional):
(WTF::Optional::~Optional):
(WTF::Optional::operator bool):
(WTF::Optional::value):

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/Optional.cpp: Added.

(TestWebKitAPI::TEST):

8:39 AM Changeset in webkit [170186] by Ion Rosca
  • 2 edits in trunk/Tools

Adding myself to Commiters list.

6:47 AM Changeset in webkit [170185] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Document the underlying types of the WKWindowFeatures rect properties
https://bugs.webkit.org/show_bug.cgi?id=134103

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWindowFeatures.h:
3:24 AM Changeset in webkit [170184] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

[GTK] Do not build quota files when QUOTA is disabled
https://bugs.webkit.org/show_bug.cgi?id=134101

Reviewed by Philippe Normand.

  • CMakeLists.txt: Remove exception for GTK+ that is no longer

required since r170173.

  • PlatformGTK.cmake: Generate GObject DOM bindings for Quota when enabled.
1:49 AM Changeset in webkit [170183] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

PluginProcessMainUnix should only scan for plugins when X11 plugin architecture is enabled
https://bugs.webkit.org/show_bug.cgi?id=134098

Reviewed by Carlos Garcia Campos.

  • PluginProcess/unix/PluginProcessMainUnix.cpp: Guard the call to NetscapePluginModule::scanPlugin()

with PLUGIN_ARCHITECTURE(X11) since the declaration has the same build guard. In case the X11 plugin
architecture is not enabled the program exits with EXIT_FAILURE.

1:28 AM Changeset in webkit [170182] by Manuel Rego Casasnovas
  • 4 edits in trunk/Source/WebCore

[CSS Grid Layout] Add GridSpan::iterator
https://bugs.webkit.org/show_bug.cgi?id=134058

Reviewed by Bem Jones-Bey.

Once that GridResolvedPosition has been introduced in r169934, this
patch adds a GridSpan::iterator which allows to simplify the loops over
GridResolvedPositions.
From now on we could use range-based for loops.

No new tests as it is already covered by current tests
(fast/css-grid-layout/).

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computeNormalizedFractionBreadth): Change loop to
ranged-based for.
(WebCore::RenderGrid::insertItemIntoGrid): Ditto.
(WebCore::RenderGrid::gridAreaBreadthForChild): Ditto.

  • rendering/style/GridCoordinate.h: Define GridSpan::iterator.

(WebCore::GridSpan::begin): Return resolved initial position.
(WebCore::GridSpan::end): Return next to resolved final position.

  • rendering/style/GridResolvedPosition.h:

(WebCore::GridResolvedPosition::operator*): Add operator required by
range-based for loops.
(WebCore::GridResolvedPosition::operator!=): Add not equal operator.

12:55 AM Changeset in webkit [170181] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[EFL] Add gstreamer as dependecy of EFL after r169785
https://bugs.webkit.org/show_bug.cgi?id=134066

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-20
Reviewed by Gyuyoung Kim.

  • efl/jhbuild.modules:
12:35 AM Changeset in webkit [170180] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix GTK+ debug build after r170174.

  • bindings/gobject/WebKitDOMNodeFilter.cpp:

(WebKit::nodeFilterObjectDestroyedCallback):

12:33 AM Changeset in webkit [170179] by timothy_horton@apple.com
  • 15 edits in trunk/Source

LayerPool’d PlatformCALayerRemote/RemoteLayerBackingStore can have stale context pointers
https://bugs.webkit.org/show_bug.cgi?id=134050
<rdar://problem/17315114>

Reviewed by Simon Fraser.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
(WebKit::PlatformCALayerRemote::layerPool):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.h:

(WebKit::RemoteLayerTreeContext::layerPool):

  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

(WebKit::RemoteLayerTreeContext::buildTransaction):
Ensure that layers being committed are always in the context that is committing them.
Use a LayerPool per RemoteLayerTreeContext, to avoid moving layers between contexts.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::platformReleaseMemory):
Drain all LayerPools upon memory pressure.

  • platform/graphics/ca/LayerPool.cpp:

(WebCore::LayerPool::LayerPool):
(WebCore::LayerPool::~LayerPool):
(WebCore::LayerPool::allLayerPools):
(WebCore::LayerPool::sharedPool): Deleted.

  • platform/graphics/ca/LayerPool.h:
  • platform/graphics/ca/PlatformCALayer.cpp:

(WebCore::PlatformCALayer::createCompatibleLayerWithSize):
Add createCompatibleLayerWithSize, which optionally tries to take said layer from the LayerPool.

(WebCore::PlatformCALayer::moveToLayerPool):
Add moveToLayerPool, which moves the layer to the LayerPool.

(WebCore::PlatformCALayer::layerPool):
The LayerPool for each layer is obtained via PlatformCALayer::layerPool(), which subclasses can override for special behaviors.
The base class uses a global LayerPool.

  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/TileController.cpp:

(WebCore::TileController::createTileLayer):

  • platform/graphics/ca/TileGrid.cpp:

(WebCore::TileGrid::removeTiles):

12:31 AM Changeset in webkit [170178] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

WKContentViewInteraction isn't cleaned up when the Web Content process crashes
https://bugs.webkit.org/show_bug.cgi?id=134080
<rdar://problem/17387652> and <rdar://problem/16848360>

Reviewed by Benjamin Poulain.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView _processDidExit]):
Tear down WKContentViewInteraction when the process crashes.

(-[WKContentView _didRelaunchProcess]):
Set WKContentViewInteraction back up when the process is relaunched.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView cleanupInteraction]):
Clear the SmartMagnificationController, which is a message receiver and thus must be re-created with the new page.
Remove all gesture recognizers from the content view.
Clear _fileUploadPanel, else we'll get an assert the next time we try to open one.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::resetStateAfterProcessExited):
Give the PageClient a chance to clean up *before* we clean up internals;
it is at a higher level and some cleanup depends on WebPageProxy members
not having been cleared yet.

12:10 AM Changeset in webkit [170177] by ryuan.choi@samsung.com
  • 3 edits in trunk/Tools

[EFL] Merge url_utils.c to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=134095

Reviewed by Csaba Osztrogonác.

url_utils.c is simple code to share between EWebLauncher and MiniBrowser.
This patch removes the dependency of url_utils.c from MiniBrowser to drop WebKit1 EFL port.

  • MiniBrowser/efl/CMakeLists.txt:

Remove the EWebLauncher/ from the includes and url_utils.h from the source lists.

  • MiniBrowser/efl/main.c:

(has_scheme): Copied from url_utils.c
(url_from_user_input): Ditto.

12:00 AM Changeset in webkit [170176] by Csaba Osztrogonác
  • 4 edits in trunk/Tools

Fix webkitpy tests after EFL WK1 buildbot and EWS removal - r170172.

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-19
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/common/config/ports_unittest.py:

(DeprecatedPortTest.test_gtk_wk2_port):
(DeprecatedPortTest.test_efl_port): Deleted.

  • Scripts/webkitpy/style/checkers/test_expectations_unittest.py:

(TestExpectationsTestCase.test_determine_port_from_expectations_path):

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(TestRebaselineExpectations.test_rebaseline_expectations):

Jun 19, 2014:

11:52 PM Changeset in webkit [170175] by ryuan.choi@samsung.com
  • 4 edits in trunk

[EFL][CMAKE] Disable WebKit1 build as a default
https://bugs.webkit.org/show_bug.cgi?id=134093

Reviewed by Gyuyoung Kim.

.:
Disable WebKit1 build and enable WebKit2 build for the EFL port.

  • Source/cmake/OptionsEfl.cmake:

Tools:

  • CMakeLists.txt:
11:44 PM Changeset in webkit [170174] by Carlos Garcia Campos
  • 7 edits
    8 adds in trunk

[GTK] webkit_dom_document_create_tree_walker impossible to use due to WebKitDOMNodeFilter
https://bugs.webkit.org/show_bug.cgi?id=93002

Reviewed by Gustavo Noronha Silva.

Source/WebCore:
Add custom implementation of WebKitDOMNodeFilter to expose it as
an interface instead of a class.

  • PlatformGTK.cmake: Add new files to compilation.
  • bindings/gobject/GObjectNodeFilterCondition.cpp: Added.

(WebCore::GObjectNodeFilterCondition::~GObjectNodeFilterCondition):
Reset the NodeFilter WebCore object associated to the
WebKitDOMNodeFilter object.
(WebCore::GObjectNodeFilterCondition::acceptNode): Call webkit_dom_node_filter_accept_node().

  • bindings/gobject/GObjectNodeFilterCondition.h: Added.

(WebCore::GObjectNodeFilterCondition::create): Create a new
GObjectNodeFilterCondition for the given WebKitDOMNodeFilter.
(WebCore::GObjectNodeFilterCondition::GObjectNodeFilterCondition):

  • bindings/gobject/WebKitDOMNodeFilter.cpp: Added.

(webkit_dom_node_filter_default_init):
(webkit_dom_node_filter_accept_node):
(WebKit::nodeFilterMap): Map NodeFilter WebCore objects to
WebKitDOMNodeFilter objects.
(WebKit::nodeFilterObjectDestroyedCallback): Remove the node
filter form the map when the WebKitDOMNodeFilter objecrt is destroyed.
(WebKit::kit): Return the WebKitDOMNodeFilter object for the given
NodeFilter WebCore object.
(WebKit::core): Get or create a NodeFilter WebCore object
associated to the given WebKitDOMNodeFilter.

  • bindings/gobject/WebKitDOMNodeFilter.h: Added.
  • bindings/gobject/WebKitDOMNodeFilter.symbols: Added.
  • bindings/gobject/WebKitDOMNodeFilterPrivate.h: Added.
  • bindings/scripts/CodeGeneratorGObject.pm:

(GenerateFunction): Add exceptions for NodeFilter parameters since
the core method returns a PassRefPtr.

Tools:
Add unit tests to check WebKitDOMNodefilter API used from both
TreeWalker and NodeIterator.

  • Scripts/webkitpy/style/checker.py: Add exceptions for GTK+

public headers and add WebKitDOMNodeFilter to the list of exceptions.

  • TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: Add new files to compilation.
  • TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp: Added.

(webkitNodeFilterAcceptNode):
(webkitNodeFilterDOMNodeFilterIfaceInit):
(webkit_node_filter_init):
(webkit_node_filter_class_init):
(WebKitDOMNodeFilterTest::create):
(WebKitDOMNodeFilterTest::webPageFromArgs):
(WebKitDOMNodeFilterTest::testTreeWalker):
(WebKitDOMNodeFilterTest::testNodeIterator):
(WebKitDOMNodeFilterTest::runTest):
(registerTests):

  • TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNodeFilter.cpp: Added.

(runTest):
(testWebKitDOMNodeFilterTreeWalker):
(testWebKitDOMNodeFilterNodeIterator):
(beforeAll):
(afterAll):

  • gtk/webkitdom.py:

(WebKitDOMDocGeneratorSections.init):
(WebKitDOMDocGeneratorSections._symbol_list):
(WebKitDOMDocGeneratorSections.write_section):

11:24 PM Changeset in webkit [170173] by Carlos Garcia Campos
  • 29 edits in trunk

[GTK] Limit the amount of API exposed to GObject DOM bindings API
https://bugs.webkit.org/show_bug.cgi?id=133726

Reviewed by Gustavo Noronha Silva.

Source/WebCore:
Split the GObject DOM bindings API into stable and unstable. The
unstable API is not included in the main webkitdom.h file, so that
to use it users have to include the headers individually and
define a macro WEBKIT_DOM_USE_UNSTABLE_API. For unstable methods
of stable classes we generate a {ClassName}Unstable.h header file
containing the unstable API. From now on we only keep backwards
compatibility for the stable API.

  • PlatformGTK.cmake: Split GObject DOM bindings related variables

into Stable and Unstable. Add also

  • bindings/gobject/WebKitDOMCustom.cpp:

(webkit_dom_html_media_element_set_current_time): Deleted.
(webkit_dom_text_track_get_kind): Deleted.
(webkit_dom_text_track_get_mode): Deleted.
(webkit_dom_text_track_set_mode): Deleted.

  • bindings/gobject/WebKitDOMCustom.h:
  • bindings/gobject/WebKitDOMCustom.symbols: Remove custom symbols

added due to API changes.

  • bindings/gobject/WebKitDOMPrivate.h: Include webkitdomdefines-unstable.h.
  • bindings/gobject/webkitdom.symbols: Remove all unstable symbols.
  • bindings/scripts/CodeGeneratorGObject.pm:

(SkipFunction): Do not skip webkit_dom_html_media_element_set_current_time anymore.
(GenerateHeader): Only force single header include for stable
headers and add WEBKIT_DOM_USE_UNSTABLE_API #ifdef to unstable headers.
(GenerateFunction): Only add stable symbols to the symbols
array. Add function prototypes to main header or unstable header
depending on whether it's an unstable symbol for a stable class or
not. Also add Stability gtk-doc tag to unstable methods.
(GenerateEndHeader): Add required #endifs
(WriteData): Write also an Unstable.h header when appropriate and
only generate a symbols file for stable classes.
(ReadStableSymbols): Read the stable symbols for the current class.
(GenerateInterface): Call ReadStableSymbols.

  • bindings/scripts/gobject-generate-headers.pl: Generate webkitdomdefines-unstable.h.
  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
  • bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
  • bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
  • bindings/scripts/test/GObject/WebKitDOMTestException.h:
  • bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachable.h:
  • bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
  • bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNode.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNondeterministic.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
  • bindings/scripts/test/GObject/WebKitDOMattribute.h:
  • bindings/scripts/test/GObject/WebKitDOMreadonly.h:

Tools:
Don't make fatal finding files without a .symbols file, since now
only the stable DOM API has .symbols files.

  • gtk/webkitdom.py:

(get_all_webkitdom_symbol_files):

7:56 PM Changeset in webkit [170172] by gyuyoung.kim@samsung.com
  • 8 edits in trunk/Tools

Remove efl wk1 buildbot and ews
https://bugs.webkit.org/show_bug.cgi?id=134089

Reviewed by Benjamin Poulain.

EFL WK1 is not supported anymore. Removed all bots for EFL WK1 bots.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
  • QueueStatusServer/config/queues.py:
  • Scripts/webkitpy/common/config/ews.json:
  • Scripts/webkitpy/common/config/ports.py:

(DeprecatedPort.port):
(QtWK2Port.run_webkit_tests_command):
(EflPort): Deleted.
(EflPort.build_webkit_command): Deleted.

  • Scripts/webkitpy/port/builders.py:
  • TestResultServer/static-dashboards/flakiness_dashboard.js:
  • TestResultServer/static-dashboards/loader_unittests.js:
7:12 PM Changeset in webkit [170171] by achristensen@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed fix after r170130.

Corrected directory so it can find common.props when opening Visual Studio.

6:39 PM Changeset in webkit [170170] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

Removed unused SPI -[WKWebView _runJavaScriptInMainFrame:].

Rubber-stamped by Simon Fraser.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _runJavaScriptInMainFrame:]): Deleted.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
6:31 PM Changeset in webkit [170169] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

When simulating memory pressure, GC *after* releasing WebCore resources.

Since clearing the page cache is likely to create lots of garbage, defer the
synchronous GC until after the WebCore pressure relief, so we can see the
effect of clearing out all those pages.

Rubber-stamped by Gavin Barraclough.

  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::install):

5:49 PM Changeset in webkit [170168] by mitz@apple.com
  • 5 edits in trunk/Source/WebKit2

Use a single map for all callback types in WebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=134069

Reviewed by Tim Horton.

  • UIProcess/GenericCallback.h:

(WebKit::CallbackMap::take):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::printFinishedCallback):
(WebKit::WebPageProxy::resetState):
(WebKit::WebPageProxy::drawPagesForPrinting):

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::attributedSubstringForCharacterRangeAsync):
(WebKit::WebPageProxy::attributedStringForCharacterRangeCallback):

4:42 PM Changeset in webkit [170167] by weinig@apple.com
  • 86 edits in trunk/Source/WebCore

Move generate prototype and constructor classes into the generated implementation files
https://bugs.webkit.org/show_bug.cgi?id=134054

Reviewed by Oliver Hunt.

In an effort to reduce the size of the generated bindings headers, which is important
as the generated headers get included in a lot of places, this patch moves the prototype
and constructor declarations from the header to implementation file. This works because,
for the most part, no code cares about the prototype or constructors except the instance.

There are a few exceptions which had to be accounted for:

  • The global objects (JSDOMWindow and JSWorkerGlobalScope) need to have their prototypes available during initialization, so they remain in the header.
  • JSLocation requires customizing some aspects of the prototype behavior, so its prototype, and any future class that uses JSCustomNamedGetterOnPrototype or JSCustomDefineOwnPropertyOnPrototype, remains in the header.
  • A few classes had custom constructor functions. Instead of keeping the entire constructor in the header, I opted for pulling just the static constructor function into the header, and modifying the custom constructors to use the DOMConstructorObject type as the callee, since the more specific type was unnecessary.

As a result of making these changes, I was also able to remove the #include of JSDOMBinding.h from
all the headers, which brought in quite a bit.

  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::constructJSAudioContext):
(WebCore::JSAudioContextConstructor::constructJSAudioContext): Deleted.

  • bindings/js/JSBlobCustom.cpp:

(WebCore::constructJSBlob):
(WebCore::JSBlobConstructor::constructJSBlob): Deleted.

  • bindings/js/JSCryptoCustom.cpp:
  • bindings/js/JSDOMFormDataCustom.cpp:

(WebCore::constructJSDOMFormData):
(WebCore::JSDOMFormDataConstructor::constructJSDOMFormData): Deleted.

  • bindings/js/JSDOMMimeTypeArrayCustom.cpp:
  • bindings/js/JSDOMPluginArrayCustom.cpp:
  • bindings/js/JSDOMPluginCustom.cpp:
  • bindings/js/JSDataCueCustom.cpp:

(WebCore::constructJSDataCue):
(WebCore::JSDataCueConstructor::constructJSDataCue): Deleted.

  • bindings/js/JSDataTransferCustom.cpp:
  • bindings/js/JSEventCustom.cpp:
  • bindings/js/JSFileReaderCustom.cpp:
  • bindings/js/JSHistoryCustom.cpp:
  • bindings/js/JSIDBAnyCustom.cpp:
  • bindings/js/JSIDBDatabaseCustom.cpp:
  • bindings/js/JSIDBObjectStoreCustom.cpp:
  • bindings/js/JSImageConstructor.cpp:

(WebCore::JSImageConstructor::finishCreation):

  • bindings/js/JSImageDataCustom.cpp:
  • bindings/js/JSInspectorFrontendHostCustom.cpp:
  • bindings/js/JSLocationCustom.cpp:
  • bindings/js/JSMessagePortCustom.cpp:
  • bindings/js/JSMutationObserverCustom.cpp:

(WebCore::constructJSMutationObserver):
(WebCore::JSMutationObserverConstructor::constructJSMutationObserver): Deleted.

  • bindings/js/JSSQLResultSetRowListCustom.cpp:
  • bindings/js/JSSQLTransactionSyncCustom.cpp:
  • bindings/js/JSSVGLengthCustom.cpp:
  • bindings/js/JSSharedWorkerCustom.cpp:

(WebCore::constructJSSharedWorker):
(WebCore::JSSharedWorkerConstructor::constructJSSharedWorker): Deleted.

  • bindings/js/JSStorageCustom.cpp:
  • bindings/js/JSUserMessageHandlersNamespaceCustom.cpp:
  • bindings/js/JSWebKitPointCustom.cpp:

(WebCore::constructJSWebKitPoint):
(WebCore::JSWebKitPointConstructor::constructJSWebKitPoint): Deleted.

  • bindings/js/JSWorkerCustom.cpp:

(WebCore::constructJSWorker):
(WebCore::JSWorkerConstructor::constructJSWorker): Deleted.

  • bindings/js/SerializedScriptValue.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):
(GeneratePrototypeDeclaration):
(GenerateConstructorDeclaration):
(GenerateConstructorHelperMethods):
(HeaderNeedsPrototypeDeclaration):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.h:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:
  • bindings/scripts/test/JS/JSTestEventTarget.h:
  • bindings/scripts/test/JS/JSTestException.cpp:
  • bindings/scripts/test/JS/JSTestException.h:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestInterface.h:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.h:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestNode.h:
  • bindings/scripts/test/JS/JSTestNondeterministic.cpp:
  • bindings/scripts/test/JS/JSTestNondeterministic.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:
  • bindings/scripts/test/JS/JSTestTypedefs.h:
  • bindings/scripts/test/JS/JSattribute.cpp:
  • bindings/scripts/test/JS/JSattribute.h:
  • bindings/scripts/test/JS/JSreadonly.cpp:
  • bindings/scripts/test/JS/JSreadonly.h:
3:57 PM Changeset in webkit [170166] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Another build fix attempt.

  • Shared/API/Cocoa/WKFoundation.h:
3:50 PM Changeset in webkit [170165] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[iOS] Legacy processes are installed inside WebKit.framework
https://bugs.webkit.org/show_bug.cgi?id=134079

Reviewed by Anders Carlsson.

  • Configurations/All.xcconfig: Exclude the legacy processes on iOS so they don’t get copied.
  • Configurations/BaseLegacyProcess.xcconfig: Set SKIP_INSTALL to YES on iOS.
3:23 PM Changeset in webkit [170164] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

It's OS X, not OSX...

  • Shared/API/Cocoa/WKFoundation.h:
3:15 PM Changeset in webkit [170163] by Antti Koivisto
  • 4 edits in trunk/Source/WebKit2

Unfreeze the layer tree on DidFirstVisuallyNonEmptyLayout
https://bugs.webkit.org/show_bug.cgi?id=134073

Reviewed by Simon Fraser.

DidFirstLayout is too early and we usually get a blank page. This doesn't match the existing iOS behavior either.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidLayout):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

3:04 PM Changeset in webkit [170162] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the Mavericks build.

  • Shared/API/Cocoa/WKFoundation.h:
2:51 PM Changeset in webkit [170161] by fpizlo@apple.com
  • 2 edits in branches/ftlopt/Source/JavaScriptCore

[ftlopt] StructureSet::onlyStructure() should return nullptr if it's not a singleton (instead of asserting)
https://bugs.webkit.org/show_bug.cgi?id=134077

Reviewed by Sam Weinig.

This makes StructureSet and StructureAbstractValue more consistent and fixes a debug assert
in the abstract interpreter.

  • bytecode/StructureSet.h:

(JSC::StructureSet::onlyStructure):

1:54 PM Changeset in webkit [170160] by weinig@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Need SPI to determine if the WKWebView is displaying a standalone image
https://bugs.webkit.org/show_bug.cgi?id=134071

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _isDisplayingStandaloneImageDocument]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
1:47 PM Changeset in webkit [170159] by fpizlo@apple.com
  • 1 edit
    6 adds in branches/ftlopt/LayoutTests

[ftlopt] LICM should be able to hoist CheckStructure even if the loop clobbers structures so long as the structures being checked are watchable
https://bugs.webkit.org/show_bug.cgi?id=134056

Unreviewed, just landing the test cases for this attempted optimization. The test cases
will still be valid once we find a smart way of doing this optimization.

  • js/regress/hoist-poly-check-structure-effectful-loop-expected.txt: Added.
  • js/regress/hoist-poly-check-structure-effectful-loop.html: Added.
  • js/regress/hoist-poly-check-structure-expected.txt: Added.
  • js/regress/hoist-poly-check-structure.html: Added.
  • js/regress/script-tests/hoist-poly-check-structure-effectful-loop.js: Added.

(foo):
(test):

  • js/regress/script-tests/hoist-poly-check-structure.js: Added.

(foo):
(test):

12:59 PM Changeset in webkit [170158] by mitz@apple.com
  • 5 edits in trunk/Source/WebKit2

Use a single map for all callback types in WebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=134069

Reviewed by Anders Carlsson.

  • UIProcess/GenericCallback.h:

(WebKit::CallbackBase::as): Added. Performs a dynamic cast to a specific callback type.
(WebKit::CallbackBase::CallbackBase): Added a type parameter, which is used to initialize
the new m_type member.
(WebKit::GenericCallback::GenericCallback): Pass the type to the base class constructor.
(WebKit::GenericCallback::type): Added. Returns a unique type.
(WebKit::GenericCallback::invalidate): Now virtual.

(WebKit::CallbackMap::put): Adds the callback to the map.
(WebKit::CallbackMap::take): Removes the callback from the map, and dynamically casts it to
the specified type.
(WebKit::CallbackMap::invalidate): Invalidates the map.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::validateCommand):
(WebKit::WebPageProxy::runJavaScriptInMainFrame):
(WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
(WebKit::WebPageProxy::getSourceForFrame):
(WebKit::WebPageProxy::getContentsAsString):
(WebKit::WebPageProxy::getBytecodeProfile):
(WebKit::WebPageProxy::getSelectionOrContentsAsString):
(WebKit::WebPageProxy::getSelectionAsWebArchiveData):
(WebKit::WebPageProxy::getMainResourceDataOfFrame):
(WebKit::WebPageProxy::getResourceDataFromFrame):
(WebKit::WebPageProxy::getWebArchiveOfFrame):
(WebKit::WebPageProxy::forceRepaint):
(WebKit::WebPageProxy::clearLoadDependentCallbacks):
(WebKit::WebPageProxy::voidCallback):
(WebKit::WebPageProxy::dataCallback):
(WebKit::WebPageProxy::imageCallback):
(WebKit::WebPageProxy::stringCallback):
(WebKit::WebPageProxy::scriptValueCallback):
(WebKit::WebPageProxy::computedPagesCallback):
(WebKit::WebPageProxy::validateCommandCallback):
(WebKit::WebPageProxy::unsignedCallback):
(WebKit::WebPageProxy::editingRangeCallback):
(WebKit::WebPageProxy::rectForCharacterRangeCallback):
(WebKit::WebPageProxy::resetState):
(WebKit::WebPageProxy::computePagesForPrinting):
(WebKit::WebPageProxy::drawRectToImage):
(WebKit::WebPageProxy::drawPagesToPDF):
(WebKit::WebPageProxy::getMarkedRangeAsync):
(WebKit::WebPageProxy::getSelectedRangeAsync):
(WebKit::WebPageProxy::characterIndexForPointAsync):
(WebKit::WebPageProxy::firstRectForCharacterRangeAsync):
(WebKit::WebPageProxy::takeSnapshot):

  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::gestureCallback):
(WebKit::WebPageProxy::touchesCallback):
(WebKit::WebPageProxy::autocorrectionDataCallback):
(WebKit::WebPageProxy::dictationContextCallback):
(WebKit::WebPageProxy::autocorrectionContextCallback):
(WebKit::WebPageProxy::selectWithGesture):
(WebKit::WebPageProxy::updateSelectionWithTouches):
(WebKit::WebPageProxy::requestAutocorrectionData):
(WebKit::WebPageProxy::applyAutocorrection):
(WebKit::WebPageProxy::requestDictationContext):
(WebKit::WebPageProxy::requestAutocorrectionContext):
(WebKit::WebPageProxy::selectWithTwoTouches):

12:51 PM Changeset in webkit [170157] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

No way to handle HTTP Authentication with WKWebView
https://bugs.webkit.org/show_bug.cgi?id=134067
<rdar://problem/17317874>

Reviewed by Dan Bernstein.

Add a public webView:didReceiveAuthenticationChallenge:completionHandler: delegate method and get rid of the SPI.

  • Shared/API/Cocoa/WKFoundation.h:
  • UIProcess/API/Cocoa/WKNavigationDelegate.h:
  • UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::setNavigationDelegate):
(WebKit::NavigationState::LoaderClient::didReceiveAuthenticationChallengeInFrame):

12:23 PM Changeset in webkit [170156] by roger_fong@apple.com
  • 6 edits in trunk/Source/WebKit2

Don't kill the UIProcess until all local storage transactions have been committed.
https://bugs.webkit.org/show_bug.cgi?id=134042.
<rdar://problem/16660724>.

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm: Add a listener for the application will terminate notification.

(-[WKView _applicationWillTerminate:]):
(-[WKView initWithFrame:context:configuration:webView:]):

  • UIProcess/WebContext.cpp: Calls code in StorageManager to cleanup local storage transactions upon application termination.

(WebKit::WebContext::applicationWillTerminate):

  • UIProcess/WebContext.h:
  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::applicationWillTerminate):
Dispatch local storage cleanup task to background thread and make sure the UIProcess can't exit early.

  • UIProcess/Storage/StorageManager.h:
11:56 AM Changeset in webkit [170155] by oliver@apple.com
  • 2 edits in trunk/Source/WebKit2

2014-06-19 Oliver Hunt <oliver@apple.com>

Switch to using the process parameters during initialisation
to determine whether we hsould be using the network process.

RS=Sam Weinig

  • WebProcess/cocoa/WebProcessCocoa.mm: (WebKit::WebProcess::platformInitializeWebProcess):
11:33 AM Changeset in webkit [170154] by psolanki@apple.com
  • 6 edits in trunk/Source/WebKit2

Copy SharedBuffer data into IPC message directly
https://bugs.webkit.org/show_bug.cgi?id=133920

Reviewed by Anders Carlsson.

When data array callbacks are enabled, we currently merge all the CFDataRefs in SharedBuffer
into one contiguous memory buffer when creating IPC::DataReference. This patch creates a
subclass of DataReference that uses SharedBuffer::getSomeData() to copy the data directly
into the IPC message.

  • NetworkProcess/AsynchronousNetworkLoaderClient.cpp:

(WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):

  • Platform/IPC/ArgumentEncoder.cpp:

(IPC::ArgumentEncoder::reserve): Added.
(IPC::ArgumentEncoder::grow):

  • Platform/IPC/ArgumentEncoder.h:
  • Platform/IPC/DataReference.cpp:

(IPC::SharedBufferDataReference::encode):

  • Platform/IPC/DataReference.h:

(IPC::DataReference::~DataReference):

10:53 AM Changeset in webkit [170153] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Curl] Compile errors related to http header field names.
https://bugs.webkit.org/show_bug.cgi?id=134029

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-06-19
Reviewed by Brent Fulgham.

Http header field names should now be specified with an enum, not a string.

  • platform/network/curl/MultipartHandle.cpp:

(WebCore::MultipartHandle::didReceiveResponse):

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::getProtectionSpace):

10:48 AM Changeset in webkit [170152] by ddkilzer@apple.com
  • 3 edits in trunk/Tools

check-webkit-style does not understand Obj-C literal syntax for NSDictionary
<http://webkit.org/b/134061>

Reviewed by Dan Bernstein.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_spacing): Ignore '@' immediately before '{'.

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(CppStyleTest.test_spacing_before_braces): Add unit test for
'{' block syntax and '@{' Objective-C liternal NSDitionary
syntax.

10:41 AM Changeset in webkit [170151] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Put the divider in the right place.

  • DerivedSources.make:
10:41 AM Changeset in webkit [170150] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Address a review comment from Darin.

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::willLoadXHR):

10:29 AM Changeset in webkit [170149] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/win

Try to fix Windows build.

  • WebFrame.h:
10:29 AM Changeset in webkit [170148] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Simplify two HistoryController member functions
https://bugs.webkit.org/show_bug.cgi?id=134064

Reviewed by Dan Bernstein.

Remove the FrameLoadType parameter from recursiveSetProvisionalItem,
use early returns and modern loops.

  • loader/HistoryController.cpp:

(WebCore::HistoryController::goToItem):
(WebCore::HistoryController::recursiveSetProvisionalItem):
(WebCore::HistoryController::recursiveGoToItem):

  • loader/HistoryController.h:
9:32 AM Changeset in webkit [170147] by Dániel Bátyai
  • 56 edits in trunk

Remove ENABLE(LLINT) and ENABLE(LLINT_C_LOOP) guards
https://bugs.webkit.org/show_bug.cgi?id=130389

Reviewed by Mark Lam.

Removed ENABLE(LLINT) since we always build with it, and changed ENABLE(LLINT_C_LOOP)
into !ENABLE(JIT) since they are mutually exclusive.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • CMakeLists.txt:
  • assembler/MacroAssemblerCodeRef.h:

(JSC::MacroAssemblerCodePtr::createLLIntCodePtr):
(JSC::MacroAssemblerCodeRef::createLLIntCodeRef):

  • assembler/MaxFrameExtentForSlowPathCall.h:
  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::computeFromLLInt):

  • bytecode/CodeBlock.cpp:

(JSC::dumpStructure):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::~CodeBlock):
(JSC::CodeBlock::propagateTransitions):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::unlinkCalls):
(JSC::CodeBlock::unlinkIncomingCalls):
(JSC::CodeBlock::linkIncomingCall):
(JSC::CodeBlock::frameRegisterCount):

  • bytecode/CodeBlock.h:
  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):

  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFromLLInt):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitConstruct):

  • heap/Heap.cpp:

(JSC::Heap::gatherJSStackRoots):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::initialize):
(JSC::Interpreter::isOpcode):

  • interpreter/Interpreter.h:

(JSC::Interpreter::getOpcodeID):

  • interpreter/JSStack.cpp:

(JSC::JSStack::JSStack):
(JSC::JSStack::committedByteCount):

  • interpreter/JSStack.h:
  • interpreter/JSStackInlines.h:

(JSC::JSStack::ensureCapacityFor):
(JSC::JSStack::topOfFrameFor):
(JSC::JSStack::setStackLimit):

  • jit/ExecutableAllocatorFixedVMPool.cpp:

(JSC::FixedVMPoolExecutableAllocator::FixedVMPoolExecutableAllocator):

  • jit/JIT.h:

(JSC::JIT::compileCTINativeCall):

  • jit/JITExceptions.h:
  • jit/JITThunks.cpp:

(JSC::JITThunks::ctiNativeCall):
(JSC::JITThunks::ctiNativeConstruct):

  • llint/LLIntCLoop.cpp:
  • llint/LLIntCLoop.h:
  • llint/LLIntData.cpp:

(JSC::LLInt::initialize):
(JSC::LLInt::Data::performAssertions):

  • llint/LLIntData.h:

(JSC::LLInt::Data::performAssertions): Deleted.

  • llint/LLIntEntrypoint.cpp:
  • llint/LLIntEntrypoint.h:
  • llint/LLIntExceptions.cpp:
  • llint/LLIntExceptions.h:
  • llint/LLIntOfflineAsmConfig.h:
  • llint/LLIntOffsetsExtractor.cpp:

(JSC::LLIntOffsetsExtractor::dummy):

  • llint/LLIntOpcode.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LLIntSlowPaths.h:
  • llint/LLIntThunks.cpp:
  • llint/LLIntThunks.h:
  • llint/LowLevelInterpreter.cpp:
  • llint/LowLevelInterpreter.h:
  • runtime/CommonSlowPaths.cpp:
  • runtime/CommonSlowPaths.h:
  • runtime/ErrorHandlingScope.cpp:

(JSC::ErrorHandlingScope::ErrorHandlingScope):
(JSC::ErrorHandlingScope::~ErrorHandlingScope):

  • runtime/Executable.cpp:

(JSC::setupLLInt):

  • runtime/InitializeThreading.cpp:

(JSC::initializeThreading):

  • runtime/JSCJSValue.h:
  • runtime/JSCJSValueInlines.h:
  • runtime/Options.cpp:

(JSC::recomputeDependentOptions):

  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::sanitizeStackForVM):

  • runtime/VM.h:

(JSC::VM::canUseJIT): Deleted.

Source/WTF:

  • wtf/OSAllocatorPosix.cpp:

(WTF::OSAllocator::reserveAndCommit):

  • wtf/Platform.h:
9:22 AM Changeset in webkit [170146] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL() leaks an NSMutableArray
<http://webkit.org/b/134052>

Reviewed by Eric Carlson.

Fixes the following static analyzer warning:

WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:688:43: warning: Potential leak of an object stored into 'outOfBandTracks'

NSMutableArray* outOfBandTracks = [[NSMutableArray alloc] init];


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

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL):
Use RetainPtr<NSMutableArray> to prevent a leak. Use
Objective-C literals to clean up the code.

2:14 AM Changeset in webkit [170145] by mario.prada@samsung.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Updated text expectations after r170138.

  • platform/gtk/accessibility/image-map2-expected.txt: Updated.
  • platform/gtk/inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt: Updated.
12:25 AM Changeset in webkit [170144] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for failing svg/wicd/rightsizing-grid.xhtml layout test
https://bugs.webkit.org/show_bug.cgi?id=133982

Unreviewed gardening.

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-06-19

  • platform/efl/TestExpectations:

Jun 18, 2014:

10:54 PM Changeset in webkit [170143] by zandobersek@gmail.com
  • 14 edits in trunk/Source/WebCore

ScriptExecutionContext::Task, FileThread::Task parameters should be values
https://bugs.webkit.org/show_bug.cgi?id=134035

Reviewed by Anders Carlsson.

r170106 and similar previous changesets enforced ScriptExecutionContext::Task and
FileThread::Task parameters as rvalue references. There's technically nothing wrong
with that, but since both classes are move-only it is also not strictly required.
Accepting these parameters as values is more common in C++ value semantics as well.

  • dom/Document.cpp:

(WebCore::Document::postTask):

  • dom/Document.h:
  • dom/ScriptExecutionContext.h:
  • fileapi/FileThread.cpp:

(WebCore::FileThread::postTask):

  • fileapi/FileThread.h:
  • workers/DefaultSharedWorkerRepository.cpp:

(WebCore::SharedWorkerProxy::postTaskToLoader):
(WebCore::SharedWorkerProxy::postTaskForModeToWorkerGlobalScope):

  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::postTask):

  • workers/WorkerGlobalScope.h:
  • workers/WorkerLoaderProxy.h:
  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::postTaskToLoader):
(WebCore::WorkerMessagingProxy::postTaskForModeToWorkerGlobalScope):

  • workers/WorkerMessagingProxy.h:
  • workers/WorkerRunLoop.cpp:

(WebCore::WorkerRunLoop::postTask):
(WebCore::WorkerRunLoop::postTaskAndTerminate):
(WebCore::WorkerRunLoop::postTaskForMode):
(WebCore::WorkerRunLoop::Task::create):
(WebCore::WorkerRunLoop::Task::Task):

  • workers/WorkerRunLoop.h:
10:37 PM Changeset in webkit [170142] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fixing the GTK+ build after r170114.

  • UIProcess/API/gtk/WebKitAuthenticationRequest.cpp:

(webkit_authentication_request_get_proposed_credential):
The core() accessor has been renamed to credential().

9:34 PM Changeset in webkit [170141] by fpizlo@apple.com
  • 17 edits
    21 adds in branches/ftlopt

DFG AI and constant folder should be able to precisely prune MultiGetByOffset/MultiPutByOffset even if the base structure abstract value is not a singleton
https://bugs.webkit.org/show_bug.cgi?id=133918

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

This also adds pruning of PutStructure, since I basically had no choice but
to implement such logic within MultiPutByOffset.

Also adds a bunch of PutById cache status dumping to bytecode dumping.

  • bytecode/GetByIdVariant.cpp:

(JSC::GetByIdVariant::dumpInContext):

  • bytecode/GetByIdVariant.h:

(JSC::GetByIdVariant::structureSet):

  • bytecode/PutByIdVariant.h:

(JSC::PutByIdVariant::oldStructure):

  • bytecode/StructureSet.cpp:

(JSC::StructureSet::filter):
(JSC::StructureSet::filterArrayModes):

  • bytecode/StructureSet.h:
  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::changeStructure):
(JSC::DFG::AbstractValue::contains):

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::couldBeType):
(JSC::DFG::AbstractValue::isType):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::emitGetByOffset):
(JSC::DFG::ConstantFoldingPhase::emitPutByOffset):
(JSC::DFG::ConstantFoldingPhase::addBaseCheck):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::freezeStrong):

  • dfg/DFGGraph.h:
  • dfg/DFGStructureAbstractValue.h:

(JSC::DFG::StructureAbstractValue::operator=):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileMultiGetByOffset):

  • tests/stress/fold-multi-get-by-offset-to-get-by-offset-without-folding-the-structure-check.js: Added.

(foo):
(fu):
(bar):
(baz):
(.bar):
(.baz):

  • tests/stress/fold-multi-put-by-offset-to-put-by-offset-without-folding-the-structure-check.js: Added.

(foo):
(fu):
(bar):
(baz):
(.bar):
(.baz):

  • tests/stress/prune-multi-put-by-offset-replace-or-transition-variant.js: Added.

(foo):
(fu):
(bar):
(baz):
(.bar):
(.baz):

LayoutTests:

  • js/regress/fold-multi-get-by-offset-to-get-by-offset-expected.txt: Added.
  • js/regress/fold-multi-get-by-offset-to-get-by-offset.html: Added.
  • js/regress/fold-multi-get-by-offset-to-poly-get-by-offset-expected.txt: Added.
  • js/regress/fold-multi-get-by-offset-to-poly-get-by-offset.html: Added.
  • js/regress/fold-multi-put-by-offset-to-poly-put-by-offset-expected.txt: Added.
  • js/regress/fold-multi-put-by-offset-to-poly-put-by-offset.html: Added.
  • js/regress/fold-multi-put-by-offset-to-put-by-offset-expected.txt: Added.
  • js/regress/fold-multi-put-by-offset-to-put-by-offset.html: Added.
  • js/regress/fold-multi-put-by-offset-to-replace-or-transition-put-by-offset-expected.txt: Added.
  • js/regress/fold-multi-put-by-offset-to-replace-or-transition-put-by-offset.html: Added.
  • js/regress/fold-put-structure-expected.txt: Added.
  • js/regress/fold-put-structure.html: Added.
  • js/regress/script-tests/fold-multi-get-by-offset-to-get-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):

  • js/regress/script-tests/fold-multi-get-by-offset-to-poly-get-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):

  • js/regress/script-tests/fold-multi-put-by-offset-to-poly-put-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):

  • js/regress/script-tests/fold-multi-put-by-offset-to-put-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):

  • js/regress/script-tests/fold-multi-put-by-offset-to-replace-or-transition-put-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):

  • js/regress/script-tests/fold-put-structure.js: Added.

(foo):
(fu):
(bar):
(.bar):

9:16 PM Changeset in webkit [170140] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

Try to fix the Mountain Lion build.

  • UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::LoaderClient::didReceiveAuthenticationChallengeInFrame):

8:11 PM Changeset in webkit [170139] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebKit2

Remove RemoteLayerBackingStore’s RemoteLayerTreeContext pointer
https://bugs.webkit.org/show_bug.cgi?id=134055

Reviewed by Simon Fraser.

  • Shared/mac/RemoteLayerBackingStore.h:
  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::RemoteLayerBackingStore):
(WebKit::RemoteLayerBackingStore::~RemoteLayerBackingStore):
(WebKit::RemoteLayerBackingStore::ensureBackingStore):
(WebKit::RemoteLayerBackingStore::display):
(WebKit::RemoteLayerBackingStore::drawInContext):
Remove RemoteLayerBackingStore's RemoteLayerTreeContext pointer. Instead, use the PlatformCALayer's.
Pass the PlatformCALayer in to the constructor, and remove it from ensureBackingStore();
RemoteLayerBackingStore is (for now) strictly tied to a single layer.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::ensureBackingStore):
(WebKit::PlatformCALayerRemote::updateBackingStore):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:

(WebKit::PlatformCALayerRemote::context):

7:19 PM Changeset in webkit [170138] by jcraig@apple.com
  • 11 edits in trunk

Web Inspector: AXI: expose aria-relevant
https://bugs.webkit.org/show_bug.cgi?id=130913

Reviewed by Joseph Pecoraro.

Expose ARIA live region relevance in Web Inspector.
E.g. "Live: Assertive (Additions, Text)"

Source/WebCore:
Test: inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion.html

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties): Support for liveRegionRelevant.

  • inspector/protocol/DOM.json: Defined enum values and array passed to client.

Source/WebInspectorUI:

  • Localizations/en.lproj/localizedStrings.js: New strings.
  • UserInterface/Models/DOMNode.js: One additional property passed.
  • UserInterface/Views/DOMNodeDetailsSidebarPanel.js: UI updates to support new property.

LayoutTests:

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt: Minor update.
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion-expected.txt: Updated with new output.
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion.html: Updated with new elements.
5:30 PM Changeset in webkit [170137] by mitz@apple.com
  • 4 edits in trunk/Source/WebKit2

[Cocoa] Modernize one-method authentication
https://bugs.webkit.org/show_bug.cgi?id=134051

Reviewed by Anders Carlsson.

Instead of an NSURLConnection-style delegate method that takes a challenge and responds to
its sender, provide an NSURLSession-style method that takes a challenge and a completion
handler.

  • UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h: Declared new delegate method, replacing

old unused method.

  • UIProcess/Cocoa/NavigationState.h: Renamed flag in m_navigationDelegateMethods struct.
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::setNavigationDelegate): Check for new delegate method and update
new flag.

(WebKit::NavigationState::LoaderClient::canAuthenticateAgainstProtectionSpaceInFrame): If
the delegate implements the new method, return true (if it cannot handle the protection
space, it can reject it through the completion handler), except for server-trust
authentication, which is not supported yet.
(WebKit::NavigationState::LoaderClient::didReceiveAuthenticationChallengeInFrame): If the
delegate implements the new method, call it, passing a completion handler that calls the
right AuthenticationDecisionListener function based on its disposition and credential
parameters.

5:21 PM Changeset in webkit [170136] by Simon Fraser
  • 10 edits in trunk

Add rebeccapurple to CSS named color list
https://bugs.webkit.org/show_bug.cgi?id=133804

Reviewed by Jer Noble.

Source/WebCore:

Add the named color "rebeccapurple" (#639).

  • css/SVGCSSValueKeywords.in:
  • platform/ColorData.gperf:

Source/WebInspectorUI:

Add the named color "rebeccapurple" (#639).

  • UserInterface/External/CodeMirror/css.js:
  • UserInterface/Models/CSSKeywordCompletions.js:
  • UserInterface/Models/Color.js:

LayoutTests:

Add the named color "rebeccapurple" (#639).

  • fast/css/named-colors-expected.txt:
  • fast/css/named-colors.html:
5:20 PM Changeset in webkit [170135] by jpfau@apple.com
  • 4 edits in trunk

Fix flaky beforeload tests
https://bugs.webkit.org/show_bug.cgi?id=133685

Reviewed by David Kilzer.

Source/WebCore:

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadURL):

LayoutTests:

  • platform/wk2/TestExpectations: Unskip tests that are no longer flaky
5:13 PM Changeset in webkit [170134] by andersca@apple.com
  • 19 edits in trunk/Source

Make FrameLoadType a strongly typed enum
https://bugs.webkit.org/show_bug.cgi?id=134047

Reviewed by Andreas Kling.

Source/WebCore:

  • history/BackForwardController.cpp:

(WebCore::BackForwardController::goBackOrForward):
(WebCore::BackForwardController::goBack):
(WebCore::BackForwardController::goForward):

  • history/PageCache.cpp:

(WebCore::logCanCachePageDecision):
(WebCore::PageCache::canCache):

  • loader/FrameLoader.cpp:

(WebCore::isBackForwardLoadType):
(WebCore::FrameLoader::FrameLoader):
(WebCore::FrameLoader::loadURLIntoChildFrame):
(WebCore::FrameLoader::prepareForLoadStart):
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::reloadWithOverrideEncoding):
(WebCore::FrameLoader::reload):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::transitionToCommitted):
(WebCore::FrameLoader::isReplacing):
(WebCore::FrameLoader::setReplacing):
(WebCore::FrameLoader::subresourceCachePolicy):
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
(WebCore::FrameLoader::addExtraFieldsToRequest):
(WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
(WebCore::FrameLoader::shouldPerformFragmentNavigation):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
(WebCore::FrameLoader::loadDifferentDocumentItem):

  • loader/FrameLoaderTypes.h:
  • loader/HistoryController.cpp:

(WebCore::HistoryController::restoreDocumentState):
(WebCore::HistoryController::updateForReload):
(WebCore::HistoryController::isReplaceLoadTypeWithProvisionalItem):
(WebCore::HistoryController::isReloadTypeWithProvisionalItem):

  • loader/NavigationAction.cpp:

(WebCore::navigationType):

  • loader/PolicyChecker.cpp:

(WebCore::PolicyChecker::PolicyChecker):
(WebCore::PolicyChecker::checkNavigationPolicy):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::cachePolicy):

  • loader/icon/IconController.cpp:

(WebCore::IconController::startLoader):

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(toWebFrameLoadType):
(-[WebFrame _loadType]):

  • WebView/WebView.mm:

(-[WebView _loadBackForwardListFromOtherView:]):
(-[WebView goToBackForwardItem:]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::goToBackForwardItem):
(WebView::loadBackForwardListFromOtherView):

Source/WebKit2:

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didCommitLoadForFrame):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::goForward):
(WebKit::WebPage::goBack):
(WebKit::WebPage::goToBackForwardItem):
(WebKit::shouldReuseCommittedSandboxExtension):
(WebKit::WebPage::didCommitLoad):

5:11 PM Changeset in webkit [170133] by andersca@apple.com
  • 14 edits in trunk/Source/WebKit2

Simplify WebSecurityOrigin
https://bugs.webkit.org/show_bug.cgi?id=134049

Reviewed by Andreas Kling.

  • Shared/API/c/WKSecurityOrigin.cpp:

(WKSecurityOriginCreateFromString):
(WKSecurityOriginCreateFromDatabaseIdentifier):
(WKSecurityOriginCopyDatabaseIdentifier):
(WKSecurityOriginCopyToString):
(WKSecurityOriginCopyProtocol):
(WKSecurityOriginCopyHost):
(WKSecurityOriginGetPort):

  • Shared/WebSecurityOrigin.h:

(WebKit::WebSecurityOrigin::securityOrigin):
(WebKit::WebSecurityOrigin::createFromDatabaseIdentifier): Deleted.
(WebKit::WebSecurityOrigin::protocol): Deleted.
(WebKit::WebSecurityOrigin::host): Deleted.
(WebKit::WebSecurityOrigin::port): Deleted.
(WebKit::WebSecurityOrigin::databaseIdentifier): Deleted.
(WebKit::WebSecurityOrigin::toString): Deleted.

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::providerDidUpdateNotificationPolicy):
(WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies):

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::deleteEntriesForOrigin):

  • UIProcess/Storage/StorageManager.h:
  • UIProcess/WebApplicationCacheManagerProxy.cpp:

(WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin):

  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
(WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
(WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin):
(WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
(WebKit::WebDatabaseManagerProxy::setQuotaForOrigin):
(WebKit::WebDatabaseManagerProxy::didModifyOrigin):
(WebKit::WebDatabaseManagerProxy::didModifyDatabase):

  • UIProcess/WebKeyValueStorageManager.cpp:

(WebKit::didGetStorageDetailsByOrigin):

  • UIProcess/WebOriginDataManagerProxy.cpp:

(WebKit::WebOriginDataManagerProxy::deleteEntriesForOrigin):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::exceededDatabaseQuota):
(WebKit::WebPageProxy::requestGeolocationPermissionForFrame):

  • UIProcess/WebResourceCacheManagerProxy.cpp:

(WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin):

  • UIProcess/ios/WKGeolocationProviderIOS.mm:

(-[WKGeolocationProviderIOS decidePolicyForGeolocationRequestFromOrigin:frame:request:window:]):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::exceededDatabaseQuota):

5:06 PM Changeset in webkit [170132] by achristensen@apple.com
  • 4 edits in trunk/Source/WebCore

[curl] Unreviewed speculative build fix after r170021.

  • platform/network/curl/CurlCacheEntry.cpp:

(WebCore::CurlCacheEntry::setResponseFromCachedHeaders):
(WebCore::CurlCacheEntry::parseResponseHeaders):

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownload::didReceiveHeader):

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::getProtectionSpace):
(WebCore::headerCallback):
Use HTTPHeaderName constants.

4:49 PM Changeset in webkit [170131] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Move the removeNode() tree walking from ScrollingStateNote into ScrollingStateTree
https://bugs.webkit.org/show_bug.cgi?id=134043

Reviewed by Beth Dakin.

It's cleaner if ScrollingStateTree does the descendant walk when removing nodes.
We can simply start the "willBeRemoved" walk at the node in question.

Have willRemoveNode() just remove the node from the m_stateNodeMap directly, rather
than this happening in a separate walk of m_nodesRemovedSinceLastCommit.

  • page/scrolling/ScrollingStateNode.cpp:

(WebCore::ScrollingStateNode::removeDescendant): Deleted.
(WebCore::ScrollingStateNode::willBeRemovedFromStateTree): Deleted.

  • page/scrolling/ScrollingStateNode.h:
  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::detachNode):
(WebCore::ScrollingStateTree::clear):
(WebCore::ScrollingStateTree::removeNodeAndAllDescendants):
(WebCore::ScrollingStateTree::recursiveNodeWillBeRemoved):
(WebCore::ScrollingStateTree::willRemoveNode):
(WebCore::ScrollingStateTree::removeNode): Deleted.

  • page/scrolling/ScrollingStateTree.h:
4:42 PM Changeset in webkit [170130] by achristensen@apple.com
  • 7 edits
    5 adds in trunk/Source

Add FTL to Windows build.
https://bugs.webkit.org/show_bug.cgi?id=134015

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Added ftl source files.

Added ftl and llvm directories to include path.

(JSC::FTL::LowerDFGToLLVM::compileArithMinOrMax):
MSVC doesn't like to divide by zero while compiling. Use std::nan instead.

  • llvm/InitializeLLVMWin.cpp: Added.

(JSC::initializeLLVMImpl):
Implemented dynamic loading and linking for Windows.

Source/WebKit:

  • WebKit.vcxproj/WebKit.sln:

Added libllvmForJSC with a dependency on JavaScriptCoreGenerated, but don't build it yet.

4:16 PM Changeset in webkit [170129] by mhahnenberg@apple.com
  • 19 edits in branches/ftlopt/Source/JavaScriptCore

Remove CompoundType and LeafType
https://bugs.webkit.org/show_bug.cgi?id=134037

Reviewed by Filip Pizlo.

We don't use them for anything. We'll replace them with a generic CellType type for all
the objects that are JSCells, aren't JSObjects, and for which we generally don't care about
their JSType at runtime.

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions):

  • runtime/ArrayBufferNeuteringWatchpoint.cpp:

(JSC::ArrayBufferNeuteringWatchpoint::createStructure):

  • runtime/Executable.h:

(JSC::ExecutableBase::createStructure):
(JSC::NativeExecutable::createStructure):

  • runtime/JSPromiseDeferred.h:

(JSC::JSPromiseDeferred::createStructure):

  • runtime/JSPromiseReaction.h:

(JSC::JSPromiseReaction::createStructure):

  • runtime/JSPropertyNameIterator.h:

(JSC::JSPropertyNameIterator::createStructure):

  • runtime/JSType.h:
  • runtime/JSTypeInfo.h:

(JSC::TypeInfo::TypeInfo):

  • runtime/MapData.h:

(JSC::MapData::createStructure):

  • runtime/PropertyMapHashTable.h:

(JSC::PropertyTable::createStructure):

  • runtime/RegExp.h:

(JSC::RegExp::createStructure):

  • runtime/SparseArrayValueMap.cpp:

(JSC::SparseArrayValueMap::createStructure):

  • runtime/Structure.cpp:

(JSC::Structure::Structure):

  • runtime/StructureChain.h:

(JSC::StructureChain::createStructure):

  • runtime/StructureRareData.cpp:

(JSC::StructureRareData::createStructure):

  • runtime/SymbolTable.h:

(JSC::SymbolTable::createStructure):

  • runtime/WeakMapData.h:

(JSC::WeakMapData::createStructure):

4:14 PM Changeset in webkit [170128] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS WebGL] Fixed WEBGL_compressed_texture_pvrtc.
https://bugs.webkit.org/show_bug.cgi?id=133561

Based on Blink r153971 by bajones@chromium.org.

Reviewed by Dean Jackson.

No new tests, but this should fix webgl-compressed-texture-pvrtc.html.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::validateCompressedTexDimensions):
(WebCore::WebGLRenderingContext::validateCompressedTexSubDimensions):
Added checks for pvrtc.

4:13 PM Changeset in webkit [170127] by Lucas Forschler
  • 3 edits in tags/Safari-538.41/Source/WebKit2

Merged r170126.

4:04 PM Changeset in webkit [170126] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add back WKPageRunJavaScriptInMainFrame_b for now
https://bugs.webkit.org/show_bug.cgi?id=134045
<rdar://problem/17368879>

Reviewed by Tim Horton.

Reverted changeset:

"Remove WKPageRunJavaScriptInMainFrame_b"
https://bugs.webkit.org/show_bug.cgi?id=133926
http://trac.webkit.org/changeset/169991

3:57 PM Changeset in webkit [170125] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit/win

Remove IWebFramePrivate::loadType
https://bugs.webkit.org/show_bug.cgi?id=134044

Reviewed by Tim Horton.

  • Interfaces/IWebFramePrivate.idl:
  • WebFrame.cpp:

(WebFrame::loadType): Deleted.
(WebFrame::unused2): Deleted.

  • WebFrame.h:
3:32 PM Changeset in webkit [170124] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Work around a Windows compiler crash.

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::createFromSelection):

3:32 PM Changeset in webkit [170123] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Simplify WebPageProxy::saveRecentSearches and WebPageProxy::loadRecentSearches
https://bugs.webkit.org/show_bug.cgi?id=134041

Reviewed by Andreas Kling.

  • UIProcess/cf/WebPageProxyCF.cpp:

(WebKit::WebPageProxy::saveRecentSearches):
(WebKit::WebPageProxy::loadRecentSearches):

3:19 PM Changeset in webkit [170122] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

All of MiniBrowser's WKWebViews should share a configuration
https://bugs.webkit.org/show_bug.cgi?id=134017

Reviewed by Anders Carlsson.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):
Share a single WKWebViewConfiguration between all of MiniBrowser's views.
This means that they'll share things like preferences, visited links, etc.
It also means that we'll properly share processes once we hit the process limit.

3:10 PM Changeset in webkit [170121] by benjamin@webkit.org
  • 3 edits
    6 adds in trunk

Subtrees with :first-child and :last-child are not invalidated when siblings are added/removed
https://bugs.webkit.org/show_bug.cgi?id=133934

Reviewed by Antti Koivisto.

Source/WebCore:
When adding/removing nodes on an element, we try to invalidate only the elements that are
affected. In the case of :first-child and :last-child, that optimizations is implemented
through two types of flags that are updated during style resolution.

The first flag is childrenAffectedByFirstChildRules (childrenAffectedByLastChildRules),
set on the parent of any element that could be affected by :first-child (:last-child).

The other part of the optimization is marking the style itself with firstChildState (lastChildState)
to further reduce invalidations.

The problem in this case happen with a subtree of element is detached. Since there is no renderer,
the computed style is resolved ad-hoc and stored directly on the element. When the element is moved,
the computed style was never cleared because the invalidation optimizations were not handling
elements without style.

Credit to Yusuke Suzuki for discovering the issue and creating test cases.

Tests: fast/css/getComputedStyle/empty-update-without-renderer.html

fast/css/getComputedStyle/first-child-update-without-renderer.html
fast/css/getComputedStyle/last-child-update-without-renderer.html

  • dom/Element.cpp:

(WebCore::checkForEmptyStyleChange):
Clean up: pull the style directly from the function instead of expection the call sites to do that.
Refine the checks to avoid invalidation.

(WebCore::checkForSiblingStyleChanges):
Do not early return if the parent is detached, the children may still need invalidation.

When there is no renderer, assume the worst first-child/last-child and force the invalidation.

(WebCore::Element::childrenChanged):

LayoutTests:

  • fast/css/getComputedStyle/empty-update-without-renderer-expected.txt: Added.
  • fast/css/getComputedStyle/empty-update-without-renderer.html: Added.
  • fast/css/getComputedStyle/first-child-update-without-renderer-expected.txt: Added.
  • fast/css/getComputedStyle/first-child-update-without-renderer.html: Added.
  • fast/css/getComputedStyle/last-child-update-without-renderer-expected.txt: Added.
  • fast/css/getComputedStyle/last-child-update-without-renderer.html: Added.
2:52 PM Changeset in webkit [170120] by dbates@webkit.org
  • 7 edits
    10 adds in trunk

REGRESSION (r167856): Unable to log into HSBC app
https://bugs.webkit.org/show_bug.cgi?id=133991
<rdar://problem/17044839>

Reviewed by David Kilzer.

Source/WebCore:
Following <http://trac.webkit.org/changeset/167856> we disallow "navigation to any URL that is
invalid, except for JavaScript URLs, which need not be valid." A byproduct of this policy
decision is that we no longer notify the WebKit client to about a navigation if the destination
URL is invalid. And some apps, including the HSBC app for iOS, have logic to intercept URLs
as a means to pass data from their WebView-embedded web app to the WebView. We should expose a
setting called allowNavigationToInvalidURL (disabled by default on all ports and conditionally
enabled on iOS) to toggle whether WebCore allows navigation to any URL, even if its invalid,
so as to not break clients that intercept URLs and have custom logic to handle them.

Tests: fast/loader/allow-redirect-to-invalid-url-using-javascript.html

fast/loader/allow-redirect-to-invalid-url-using-meta-refresh.html
fast/loader/disallow-redirect-to-invalid-url-using-javascript.html
fast/loader/disallow-redirect-to-invalid-url-using-meta-refresh.html

  • loader/NavigationScheduler.cpp:

(WebCore::NavigationScheduler::shouldScheduleNavigation): Modified to only validate
the URL when the setting allowNavigationToInvalidURL is disabled.

  • page/Settings.in: Added setting allowNavigationToInvalidURL (disabled by default).

Source/WebKit/mac:
Only enable the setting allowNavigationToInvalidURL for iOS app linked against WebKit/UIKit before iOS 8.

  • Misc/WebKitVersionChecks.h: Added macro constant WEBKIT_FIRST_VERSION_WITH_NAVIGATION_URL_VALIDATION.
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]): Enable or disable the setting allowNavigationToInvalidURL as appropriate.

LayoutTests:
Add tests to ensure that the WebKit client will be notified to service a redirect to an invalid
URL when the setting allowNavigationToInvalidURL is enabled and will not be notified when
the setting is disabled.

  • fast/loader/allow-redirect-to-invalid-url-using-javascript-expected.txt: Added.
  • fast/loader/allow-redirect-to-invalid-url-using-javascript.html: Added.
  • fast/loader/allow-redirect-to-invalid-url-using-meta-refresh-expected.txt: Added.
  • fast/loader/allow-redirect-to-invalid-url-using-meta-refresh.html: Added.
  • fast/loader/disallow-redirect-to-invalid-url-using-javascript-expected.txt: Added.
  • fast/loader/disallow-redirect-to-invalid-url-using-javascript.html: Added.
  • fast/loader/disallow-redirect-to-invalid-url-using-meta-refresh-expected.txt: Added.
  • fast/loader/disallow-redirect-to-invalid-url-using-meta-refresh.html: Added.
  • fast/loader/resources/redirect-to-invalid-url-using-javascript.html: Added.
  • fast/loader/resources/redirect-to-invalid-url-using-meta-refresh.html: Added.
2:50 PM Changeset in webkit [170119] by achristensen@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed build fix after r170107.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithMod):
Use non-template sub for armv7s.

2:43 PM Changeset in webkit [170118] by Simon Fraser
  • 17 edits in trunk/Source

Make ScrollingStateNodes refcounted, and other minor cleanup
https://bugs.webkit.org/show_bug.cgi?id=134040

Reviewed by Beth Dakin.

Source/WebCore:
Prepare for future scrolling frame gyrations by making
ScrollingStateNodes refcounted.

Rename ScrollingStateNode::removeChild() to removeDescendant()
since that's what it does. Also rename didRemoveNode() to willRemoveNode()
to better match the behavior.

Use 'auto' in more places.

  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::syncChildPositions):

  • page/scrolling/ScrollingStateFixedNode.cpp:

(WebCore::ScrollingStateFixedNode::create):
(WebCore::ScrollingStateFixedNode::clone):

  • page/scrolling/ScrollingStateFixedNode.h:
  • page/scrolling/ScrollingStateFrameScrollingNode.cpp:

(WebCore::ScrollingStateFrameScrollingNode::create):
(WebCore::ScrollingStateFrameScrollingNode::clone):

  • page/scrolling/ScrollingStateFrameScrollingNode.h:
  • page/scrolling/ScrollingStateNode.cpp:

(WebCore::ScrollingStateNode::cloneAndReset):
(WebCore::ScrollingStateNode::appendChild):
(WebCore::ScrollingStateNode::removeDescendant):
(WebCore::ScrollingStateNode::willBeRemovedFromStateTree):
(WebCore::ScrollingStateNode::removeChild): Deleted.

  • page/scrolling/ScrollingStateNode.h:

(WebCore::ScrollingStateNode::children):

  • page/scrolling/ScrollingStateOverflowScrollingNode.cpp:

(WebCore::ScrollingStateOverflowScrollingNode::create):
(WebCore::ScrollingStateOverflowScrollingNode::clone):

  • page/scrolling/ScrollingStateOverflowScrollingNode.h:
  • page/scrolling/ScrollingStateStickyNode.cpp:

(WebCore::ScrollingStateStickyNode::create):
(WebCore::ScrollingStateStickyNode::clone):

  • page/scrolling/ScrollingStateStickyNode.h:
  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::removeNode):
(WebCore::ScrollingStateTree::willRemoveNode):
(WebCore::ScrollingStateTree::didRemoveNode): Deleted.

  • page/scrolling/ScrollingStateTree.h:

(WebCore::ScrollingStateTree::setRootStateNode):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::updateTreeFromStateNode):

Source/WebKit2:

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(WebKit::encodeNodeAndDescendants):

2:41 PM Changeset in webkit [170117] by ddkilzer@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

-[JSContext setName:] leaks NSString
<http://webkit.org/b/134038>

Reviewed by Joseph Pecoraro.

Fixes the following static analyzer warning:

JavaScriptCore/API/JSContext.mm:200:73: warning: Potential leak of an object

JSStringRef nameJS = name ? JSStringCreateWithCFString((CFStringRef)[name copy]) : nullptr;


  • API/JSContext.mm:

(-[JSContext setName:]): Autorelease the copy of |name|.

2:40 PM Changeset in webkit [170116] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS][WK2] Do not add padding when magnifying replaced elements
https://bugs.webkit.org/show_bug.cgi?id=134019

Reviewed by Tim Horton.

Having margins for regular blocks make sense to improve readability. For replaced elements,
we should follow iOS's UI and display edge to edge.

  • UIProcess/ios/SmartMagnificationController.mm:

(WebKit::SmartMagnificationController::didCollectGeometryForSmartMagnificationGesture):

2:38 PM Changeset in webkit [170115] by benjamin@webkit.org
  • 7 edits in trunk/Source/WebKit2

[iOS][WK2] Re-sync didCommitLoadForMainFrame with its corresponding tile update
https://bugs.webkit.org/show_bug.cgi?id=134009

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-18
Reviewed by Tim Horton.

WKWebView assumed the first _didCommitLayerTree: after _didCommitLoadForMainFrame
had the state of the page being loaded.

This is not always true. Sometimes, a set of tiles can be rendering asynchronously while the next
page is loaded, and does not flush the queue until after didCommitLoadForMainFrame is executed.

Tim introduced a transactionID with each layer tree update. This patch uses that to synchronize
WKWebView with the right set of tiles.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _didCommitLoadForMainFrame]):
(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView _updateVisibleContentRects]):

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:

(WebKit::RemoteLayerTreeDrawingAreaProxy::nextLayerTreeTransactionID):

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.messages.in:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::willCommitLayerTree):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):

1:56 PM Changeset in webkit [170114] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Simplify WebCredential
https://bugs.webkit.org/show_bug.cgi?id=134036

Reviewed by Andreas Kling.

  • UIProcess/API/C/WKCredential.cpp:

(WKCredentialCreate):
(WKCredentialCreateWithCertificateInfo):
(WKCredentialCopyUser):

  • UIProcess/Authentication/AuthenticationChallengeProxy.cpp:

(WebKit::AuthenticationChallengeProxy::useCredential):

  • UIProcess/Authentication/WebCredential.cpp:

(WebKit::WebCredential::credential):
(WebKit::WebCredential::core): Deleted.
(WebKit::WebCredential::user): Deleted.

  • UIProcess/Authentication/WebCredential.h:

(WebKit::WebCredential::create): Deleted.

12:40 PM Changeset in webkit [170113] by andersca@apple.com
  • 18 edits in trunk/Source

Adopt modern C++11 loops and fix WebArchive creation functions
https://bugs.webkit.org/show_bug.cgi?id=134032

Reviewed by Andreas Kling.

Source/WebCore:
Use modern loops in a couple of places, fix DocumentLoader::subresources() to return a Vector,
and stop using Vectors of PassRefPtrs.

  • WebCore.exp.in:
  • dom/Document.cpp:

(WebCore::Document::textInserted):
(WebCore::Document::textRemoved):
(WebCore::Document::textNodesMerged):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::subresources):
(WebCore::DocumentLoader::getSubresources): Deleted.

  • loader/DocumentLoader.h:
  • loader/appcache/ApplicationCache.cpp:

(WebCore::ApplicationCache::dump):

  • loader/appcache/ApplicationCache.h:

(WebCore::ApplicationCache::resources):
(WebCore::ApplicationCache::begin): Deleted.
(WebCore::ApplicationCache::end): Deleted.

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::didFinishLoadingManifest):

  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::fillResourceList):

  • loader/appcache/ApplicationCacheStorage.cpp:

(WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
(WebCore::ApplicationCacheStorage::store):
(WebCore::ApplicationCacheStorage::empty):
(WebCore::ApplicationCacheStorage::storeCopyOfCache):

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::create):
(WebCore::LegacyWebArchive::createFromSelection):

  • loader/archive/cf/LegacyWebArchive.h:
  • xml/XMLHttpRequestProgressEventThrottle.cpp:

(WebCore::XMLHttpRequestProgressEventThrottle::dispatchDeferredEvents):

Source/WebKit/mac:

  • WebView/WebArchive.mm:

(-[WebArchive initWithMainResource:subresources:subframeArchives:]):

  • WebView/WebDataSource.mm:

(-[WebDataSource subresources]):

Source/WebKit2:

  • Shared/APIWebArchive.cpp:

(API::WebArchive::WebArchive):

12:19 PM Changeset in webkit [170112] by jonowells@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: REGRESSION: Style declaration editor: placeholder misaligned
https://bugs.webkit.org/show_bug.cgi?id=134012

Reviewed by Timothy Hatcher.

Removed a rule needed to align the placeholder for selectors in
the style declation text editors with no rules declared in
http://trac.webkit.org/changeset/170077. The necessary
rule has been added back to fix the issue.

  • UserInterface/Views/CSSStyleDeclarationTextEditor.css:

(.css-style-text-editor > .CodeMirror .CodeMirror-placeholder):

12:19 PM Changeset in webkit [170111] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Give WKWebView on iOS a mobile user agent
https://bugs.webkit.org/show_bug.cgi?id=134034
<rdar://problem/17346489>

Reviewed by Enrica Casucci.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

12:14 PM Changeset in webkit [170110] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebKit2

Remove stale include, header was removed in r170101.

Unreviewed build fix.

  • Shared/API/Cocoa/WebKitPrivate.h:
11:57 AM Changeset in webkit [170109] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFGGraph::m_doubleConstantMap will not map 0 values correctly.
<https://webkit.org/b/133994>

Reviewed by Geoffrey Garen.

DFGGraph::m_doubleConstantsMap should not use a double as a key to its HashMap,
because it means two unfortunate things:

  • It will probably break for zero.
  • It will think that -0 is the same as +0 under some circumstances, size -0==+0 even though they are distinct values (for example 1/-0 != 1/+0).

The fix is to use std::unordered_map which does not require special empty
and deleted values, and to use the raw bits instead of the double value as
the key.

  • dfg/DFGGraph.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::addressOfDoubleConstant):

11:03 AM Changeset in webkit [170108] by andersca@apple.com
  • 4 edits
    1 add in trunk/Source

Add CF type cast function templates and use them in KeyedDecoder in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=134033

Reviewed by Sam Weinig.

Source/WebKit2:

  • Shared/cf/KeyedDecoder.cpp:

(WebKit::KeyedDecoder::KeyedDecoder):
(WebKit::KeyedDecoder::decodeBytes):
(WebKit::KeyedDecoder::decodeBool):
(WebKit::KeyedDecoder::decodeInt32):
(WebKit::KeyedDecoder::decodeInt64):
(WebKit::KeyedDecoder::decodeFloat):
(WebKit::KeyedDecoder::decodeDouble):
(WebKit::KeyedDecoder::decodeString):
(WebKit::KeyedDecoder::beginObject):
(WebKit::KeyedDecoder::beginArray):
(WebKit::KeyedDecoder::beginArrayElement):

Source/WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/cf/TypeCasts.h: Added.

(WTF::dynamic_cf_cast):
Returns null if the given CFTypeRef object doesn't have the right type.

(WTF::checked_cf_cast):
ASSERTs (with security implication) if the given CFTypeRef object is null or doesn't have the right type.

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

Remove duplicate code using sdiv.
https://bugs.webkit.org/show_bug.cgi?id=133764

Reviewed by Daniel Bates.

Source/JavaScriptCore:

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::sdiv):
Make sdiv a template to match arm64.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithDiv):
(JSC::DFG::SpeculativeJIT::compileArithMod):
Remove duplicate code that was identical except for sdiv not being a template.

Source/WebCore:

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::modulo):
Use template sdiv for apple armv7s and arm64.

10:53 AM Changeset in webkit [170106] by zandobersek@gmail.com
  • 12 edits in trunk/Source/WebCore

ScriptExecutionContext::Task parameters should always be rvalue references
https://bugs.webkit.org/show_bug.cgi?id=133615

Reviewed by Darin Adler.

ScriptExecutionContext::Task parameters should be rvalue references as the
passed-in objects are always ScriptExecutionContext::Task rvalues that were
implicitly constructed from a lambda function or rvalues of objects that
derive from ScriptExecutionContext::Task.

This isn't really necessary since ScriptExecutionContext::Task is non-copyable
and we have to use move semantics anyway, but it makes it clear that these
objects are expiring rvalues that must be properly dealt with.

  • dom/Document.cpp:

(WebCore::Document::postTask):

  • dom/Document.h:
  • dom/ScriptExecutionContext.h:
  • workers/DefaultSharedWorkerRepository.cpp:

(WebCore::SharedWorkerProxy::postTaskToLoader):
(WebCore::SharedWorkerProxy::postTaskForModeToWorkerGlobalScope):

  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::postTask):

  • workers/WorkerGlobalScope.h:
  • workers/WorkerLoaderProxy.h:
  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::postTaskToLoader):
(WebCore::WorkerMessagingProxy::postTaskForModeToWorkerGlobalScope):

  • workers/WorkerMessagingProxy.h:
  • workers/WorkerRunLoop.cpp:

(WebCore::WorkerRunLoop::postTask):
(WebCore::WorkerRunLoop::postTaskAndTerminate):
(WebCore::WorkerRunLoop::postTaskForMode):
(WebCore::WorkerRunLoop::Task::create):
(WebCore::WorkerRunLoop::Task::Task):

  • workers/WorkerRunLoop.h:
10:48 AM Changeset in webkit [170105] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[GTK] Bump the GLib and GTK+ dependencies in jhbuild-wayland.modules
https://bugs.webkit.org/show_bug.cgi?id=133971

Reviewed by Martin Robinson.

  • gtk/jhbuild-wayland.modules: Bump the GTK+ dependency that's required for

building for the Wayland target. The latest 3.12 version is required to match
the xdg_shell protocol version used in Weston 1.5. GLib dependency is bumped
as well due to GTK+ depending on a newer version.

10:21 AM Changeset in webkit [170104] by Lucas Forschler
  • 4 edits in tags/Safari-538.41/Source/WebKit2

Merged r170100.

10:20 AM Changeset in webkit [170103] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[WinCairo] Compile errors when trying to compile CA code.
https://bugs.webkit.org/show_bug.cgi?id=134030

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-06-18
Reviewed by Simon Fraser.

WinCairo does not USE(CA).

  • WebCore.vcxproj/WebCore.vcxproj:
  • platform/graphics/ca/TileController.h:
10:08 AM Changeset in webkit [170102] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

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

Introduced a layouttest failure to the mac bots (Requested by
bradeeoh on #webkit).

Reverted changeset:

"Mark mathml/wbr-in-mroot-crash.html as "Timeout Pass""
https://bugs.webkit.org/show_bug.cgi?id=130353
http://trac.webkit.org/changeset/170099

10:02 AM Changeset in webkit [170101] by mitz@apple.com
  • 6 edits
    1 delete in trunk/Source/WebKit2

Remove the unused _WKBackForwardListDidChangeNotification.

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKBackForwardList.mm:
  • UIProcess/API/Cocoa/WKBackForwardListInternal.h:
  • UIProcess/API/Cocoa/WKBackForwardListPrivate.h: Removed.
  • UIProcess/Cocoa/NavigationState.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::LoaderClient::didChangeBackForwardList): Deleted.

  • WebKit2.xcodeproj/project.pbxproj:
8:09 AM Changeset in webkit [170100] by akling@apple.com
  • 4 edits in trunk/Source/WebKit2

Set main thread QoS policies after IPC initialization.
<https://webkit.org/b/134014>

Something was flipping the QoS level back to "unspecified" after
setting it in the ChildProcess initialization code. Pending a better
understanding of what really happens, move the code to a later stage,
after IPC channels are up and running. Now the priority sticks.

Reviewed by Anders Carlsson.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):

  • Shared/ChildProcess.cpp:

(WebKit::ChildProcess::initialize):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess):

6:03 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
12:45 AM Changeset in webkit [170099] by fred.wang@free.fr
  • 3 edits in trunk/LayoutTests

Mark mathml/wbr-in-mroot-crash.html as "Timeout Pass"
https://bugs.webkit.org/show_bug.cgi?id=130353

Unreviewed gardening.

  • platform/efl/TestExpectations:
  • platform/mac/TestExpectations:
Note: See TracTimeline for information about the timeline view.