Timeline



Jun 13, 2013:

9:58 PM Changeset in webkit [151581] by Simon Fraser
  • 6 edits in trunk/Source/WebCore

Sometimes we stick in slow scrolling mode even after leaving a page
https://bugs.webkit.org/show_bug.cgi?id=117622

Reviewed by Sam Weinig.

ScrollingCoordinator, and thus the scrolling state tree, is owned by Page,
and so persists when navigating between cached pages. We do give the ScrollingStateTree
a new ScrollingStateScrollingNode on navigation, however the ScrollingStateScrollingNode
would not have dirty flags set for, say, WheelEventHandlerCount if the document had
no wheel handlers. And because that dirty flag wasn't set, ScrollingTree::commitNewTreeState()
would fail to update m_hasWheelEventHandlers, so we'd remain in slow scrolling.

Fix by having ScrollingStateTree remember if it's been given a new root ScrollingStateScrollingNode,
and making ScrollingTree::commitNewTreeState() to the right thing in that case.

Also fix a couple of issues with the tiled scrolling indicator. First, on cached page
navigation, the indicator color would show the state for the old page, because
ScrollingCoordinatorMac::commitTreeState() checked scrollingTree()->hasWheelEventHandlers()
before the scrolling thread has committed the new scrolling tree.

Second, the color change would animate, so stop that.

Not testable, since tests can only dump the scrolling state tree.

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::ScrollingStateTree):
(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::commit):

  • page/scrolling/ScrollingStateTree.h:

(WebCore::ScrollingStateTree::hasNewRootStateNode):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::commitNewTreeState):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::commitTreeState):

  • platform/graphics/ca/mac/TileController.mm:

(-[WebTiledScrollingIndicatorLayer init]): Turn off borderColor implicit animations.

9:47 PM Changeset in webkit [151580] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[curl] Merge http response header values
https://bugs.webkit.org/show_bug.cgi?id=117342

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-06-13
Reviewed by Brent Fulgham.

According to the HTTP RFC some HTTP header values should be
merged if multiple entries for the same header exists.

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::isAppendableHeader):
(WebCore::headerCallback):

9:32 PM Changeset in webkit [151579] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Should not call firePaintRelatedMilestones() for "update control tints" paint pass
https://bugs.webkit.org/show_bug.cgi?id=117624

Reviewed by Sam Weinig.

When window activation changes, we do a fake paint pass that is just used to
invalidate controls that change their appearance in background windows. This fake
paint should not be recorded in the inspector, and it should not cause paint-related
milestones to fire.

  • page/FrameView.cpp:

(WebCore::FrameView::paintContents):

8:43 PM Changeset in webkit [151578] by rniwa@webkit.org
  • 4 edits in trunk/Source

Remove LiteralIdentifierTable
https://bugs.webkit.org/show_bug.cgi?id=117613

Reviewed by Geoffrey Garen.

Removed LiteralIdentifierTable since it doesn't seem to have any perf. impact now.

Source/JavaScriptCore:

  • runtime/Identifier.cpp:

(JSC::Identifier::add):

Source/WTF:

  • wtf/WTFThreadData.h:
7:55 PM Changeset in webkit [151577] by gyuyoung.kim@samsung.com
  • 3 edits
    30 adds in trunk/LayoutTests

Unreviewed. Added new baselines for some tests as r151533 on EFL port.

  • platform/efl-wk1/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/efl/editing/selection/select-across-readonly-input-1-expected.png: Added.
  • platform/efl/editing/selection/select-across-readonly-input-1-expected.txt: Added.
  • platform/efl/editing/selection/select-across-readonly-input-2-expected.png: Added.
  • platform/efl/editing/selection/select-across-readonly-input-2-expected.txt: Added.
  • platform/efl/editing/selection/select-across-readonly-input-3-expected.png: Added.
  • platform/efl/editing/selection/select-across-readonly-input-3-expected.txt: Added.
  • platform/efl/editing/selection/select-across-readonly-input-4-expected.png: Added.
  • platform/efl/editing/selection/select-across-readonly-input-4-expected.txt: Added.
  • platform/efl/editing/selection/select-across-readonly-input-5-expected.png: Added.
  • platform/efl/editing/selection/select-across-readonly-input-5-expected.txt: Added.
  • platform/efl/editing/selection/select-all-002-expected.png: Added.
  • platform/efl/editing/selection/select-all-002-expected.txt: Added.
  • platform/efl/editing/selection/select-all-003-expected.png: Added.
  • platform/efl/editing/selection/select-all-003-expected.txt: Added.
  • platform/efl/editing/selection/select-all-004-expected.png: Added.
  • platform/efl/editing/selection/select-all-004-expected.txt: Added.
  • platform/efl/editing/selection/select-all-005-expected.png: Added.
  • platform/efl/editing/selection/select-all-005-expected.txt: Added.
  • platform/efl/editing/selection/select-all-006-expected.png: Added.
  • platform/efl/editing/selection/select-all-006-expected.txt: Added.
  • platform/efl/editing/selection/select-box-expected.png: Added.
  • platform/efl/editing/selection/select-box-expected.txt: Added.
  • platform/efl/editing/selection/select-element-paragraph-boundary-expected.png: Added.
  • platform/efl/editing/selection/select-element-paragraph-boundary-expected.txt: Added.
  • platform/efl/editing/selection/select-from-textfield-outwards-expected.png: Added.
  • platform/efl/editing/selection/select-from-textfield-outwards-expected.txt: Added.
  • platform/efl/editing/selection/selection-actions-expected.png: Added.
  • platform/efl/editing/selection/selection-actions-expected.txt: Added.
  • platform/efl/editing/selection/selection-button-text-expected.png: Added.
  • platform/efl/editing/selection/selection-button-text-expected.txt: Added.
6:20 PM Changeset in webkit [151576] by dino@apple.com
  • 4 edits in trunk/Source/WebCore

Clicking on snapshotting plug-ins does not restart them
https://bugs.webkit.org/show_bug.cgi?id=117620
<rdar://problem/13821729>

Reviewed by Simon Fraser.

HTMLPlugInElement has an event handler which would return
immediately if the element was not snapshotted, restarting
or playing. There is a case it missed, which was snapshotting
(WaitingForSnapshot to be precise). If we get a click in this
state then it should immediately restart.

  • html/HTMLPlugInElement.h: Move defaultEventHandler to public (we call it from the child class).
  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::defaultEventHandler): If there is a click on a snapshotting
plug-in, then call restart.

  • html/HTMLPlugInImageElement.h: Virtual defaultEventHandler declaration.
5:39 PM Changeset in webkit [151575] by zoltan@webkit.org
  • 10 edits in trunk/Source/WebCore

Use borderAndPadding[Before,After]() instead of border[Before,After]() + padding[Before,After]()
https://bugs.webkit.org/show_bug.cgi?id=117611

Reviewed by Dirk Schulze.

I added a new function called borderAndPaddingAfter(), since we already had borderAndPaddingBefore(). I changed
every separate additions to the old/new function. This change makes the code shorter and more straightforward.

Behavior hasn't changed, no new tests were needed.

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::placeBoxesInBlockDirection):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::marginBeforeEstimateForChild):
(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::paintColumnRules):
(WebCore::RenderBlock::columnRectAt):
(WebCore::RenderBlock::relayoutForPagination):
(WebCore::RenderBlock::adjustRectForColumns):
(WebCore::RenderBlock::flipForWritingModeIncludingColumns):
(WebCore::RenderBlock::adjustStartEdgeForWritingModeIncludingColumns):
(WebCore::RenderBlock::adjustForColumns):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLineInFlowThread):
(WebCore::RenderBlock::layoutInlineChildren):

  • rendering/RenderBoxModelObject.h:

(WebCore::RenderBoxModelObject::borderAndPaddingStart):
(WebCore::RenderBoxModelObject::borderAndPaddingBefore):
(WebCore::RenderBoxModelObject::borderAndPaddingAfter):
(WebCore::RenderBoxModelObject::borderAndPaddingLogicalHeight):

  • rendering/RenderMultiColumnBlock.cpp:

(WebCore::RenderMultiColumnBlock::layoutSpecialExcludedChild):

  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::heightAdjustedForSetOffset):
(WebCore::RenderMultiColumnSet::prepareForLayout):
(WebCore::RenderMultiColumnSet::columnRectAt):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::computeIntrinsicPadding):
(WebCore::RenderTableCell::cellBaselinePosition):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::calcRowLogicalHeight):
(WebCore::RenderTableSection::layoutRows):
(WebCore::RenderTableSection::firstLineBoxBaseline):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::lineSnapAdjustment):
(WebCore::RootInlineBox::selectionTop):
(WebCore::RootInlineBox::ascentAndDescentForBox):

4:54 PM Changeset in webkit [151574] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

<http://webkit.org/b/117615> Web Inspector: JS PrettyPrinting Should have space between "do" and "{"

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-06-13
Reviewed by Timothy Hatcher.

  • UserInterface/CodeMirrorFormatters.js:
4:33 PM Changeset in webkit [151573] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

<http://webkit.org/b/117612> Web Inspector: "Search Resource Content" should cancel when I remove all text search text

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-06-13
Reviewed by Timothy Hatcher.

  • UserInterface/ResourceSidebarPanel.js:

(WebInspector.ResourceSidebarPanel):
(WebInspector.ResourceSidebarPanel.prototype._searchFieldInput):

3:47 PM Changeset in webkit [151572] by akling@apple.com
  • 7 edits in trunk/Source/WebCore

Move Node::shouldUseInputMethod() to Element.
<http://webkit.org/b/117603>

Reviewed by Antti Koivisto.

This method is only ever called on Elements, so move it off of Node.

  • dom/Element.cpp:

(WebCore::Element::shouldUseInputMethod):

  • dom/Element.h:
  • dom/Node.cpp:
  • dom/Node.h:
  • html/HTMLInputElement.h:
  • html/HTMLTextAreaElement.h:
3:32 PM Changeset in webkit [151571] by mvujovic@adobe.com
  • 3 edits
    2 adds in trunk

[CSS Regions] Selection dragged from a region paints its background
https://bugs.webkit.org/show_bug.cgi?id=117607

Reviewed by Alexandru Chiculita.

.:

Add a manual test for the painting of a dragged selection from a region. We don't have an
automated way to test this yet. This test is similar to the other manual selection dragging
tests (e.g. ManualTests/drag-image.html).

  • ManualTests/regions/drag-selection-painting.html: Added.

Source/WebCore:

When a RenderFlowThread is in the selection paint phase, tell its layer to paint with the
selection only behavior. This way, only foregrounds and not backgrounds will be painted in
the dragged selection.

Manual test: ManualTests/regions/drag-selection-painting.html

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::paintFlowThreadPortionInRegion):

2:09 PM Changeset in webkit [151570] by zoltan@webkit.org
  • 4 edits
    8 adds in trunk

[CSS Shapes][CSS Regions] Respect bottom positioned shapes and content adjustment inside shapes
https://bugs.webkit.org/show_bug.cgi?id=117599

Reviewed by David Hyatt.

In r150478 I added support for multiple positioned shape-insides on regions, this patch covers the cases when a shape
is positioned to the bottom of the region or the region contains a shape which forces the content to be adjusted inside
the shape (e.g. we have a triangle shape and the first line needs to be started at the first position where it fits).
I introduced a new helper function to update the current shape and the current line segments in the flow thread cases. With
this new helper function all the logic which calculates the segments for shape-inside on regions is located in one function.

Source/WebCore:

Tests: fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes.html

fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment.html
fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes.html
fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment.html

  • rendering/RenderBlock.h: Add new helper's declaration
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::LineLayoutState::LineLayoutState): Add a member to carry adjustment for flow thread cases.
(WebCore::LineLayoutState::adjustedLogicalLineTop): Add new member.
(WebCore::LineLayoutState::setAdjustedLogicalLineTop): Add new setter for the new member.
(WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLine): Move flow thread case to its helper function.
(WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLineInFlowThread): Added new helper for flow thread cases.
(WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded): Save adjustment for flow thread cases.

LayoutTests:

  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment.html: Added.
1:51 PM Changeset in webkit [151569] by fpizlo@apple.com
  • 30 edits
    12 adds in branches/dfgFourthTier

fourthTier: DFG should support op_in and it should use patching to make it fast
https://bugs.webkit.org/show_bug.cgi?id=117385

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Implement op_in in the DFG and give it patching. The code we generate is just
a jump on the hot path, and the slow paths generate stubs and link the jump to
them. I didn't want to bother with patching structures and load offsets and
the like, although I probably could have.

This is a ginormous speed-up on microbenchmarks for "in", obviously.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpAssumingJITType):
(JSC::CodeBlock::resetStubInternal):
(JSC::structureStubInfoLessThan):
(JSC):
(JSC::CodeBlock::sortStructureStubInfos):

  • bytecode/CodeBlock.h:

(CodeBlock):

  • bytecode/StructureStubInfo.cpp:

(JSC::StructureStubInfo::deref):
(JSC::StructureStubInfo::visitWeakReferences):

  • bytecode/StructureStubInfo.h:

(JSC::isInAccess):
(JSC):
(StructureStubInfo):
(JSC::StructureStubInfo::initInList):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCCallHelpers.h:

(JSC::DFG::CCallHelpers::setupResults):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGGPRInfo.h:

(JSC::DFG::JSValueRegs::payloadOnly):
(JSValueRegs):
(JSC::DFG::JSValueRegs::JSValueRegs):
(JSC::DFG::JSValueRegs::operator!):
(JSC::DFG::JSValueSource::operator!):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::InRecord::InRecord):
(InRecord):
(DFG):
(JITCompiler):
(JSC::DFG::JITCompiler::addIn):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryRepatchIn):
(DFG):
(JSC::DFG::dfgRepatchIn):
(JSC::DFG::dfgResetIn):

  • dfg/DFGRepatch.h:

(DFG):
(JSC::DFG::dfgResetIn):

  • dfg/DFGSlowPathGenerator.h:

(JSC::DFG::CallSlowPathGenerator::CallSlowPathGenerator):
(JSC::DFG::CallSlowPathGenerator::tearDown):
(JSC::DFG::CallResultAndNoArgumentsSlowPathGenerator::generateInternal):
(JSC::DFG::CallResultAndOneArgumentSlowPathGenerator::generateInternal):
(JSC::DFG::CallResultAndTwoArgumentsSlowPathGenerator::generateInternal):
(JSC::DFG::CallResultAndThreeArgumentsSlowPathGenerator::generateInternal):
(JSC::DFG::CallResultAndFourArgumentsSlowPathGenerator::generateInternal):
(JSC::DFG::CallResultAndFiveArgumentsSlowPathGenerator::generateInternal):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileIn):
(DFG):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::extractResult):
(DFG):
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::callOperation):
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):
(JSC::DFG::SpeculativeJIT::appendCallSetResult):
(JSC::DFG::JSValueOperand::tagGPR):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • runtime/JSCJSValue.cpp:

(JSC::JSValue::dump):

  • runtime/JSString.h:

(JSString):
(JSC::JSString::tryGetValueImpl):
(JSC):

  • runtime/Operations.h:

(JSC::normalizePrototypeChainForChainAccess):

Source/WTF:

Reviewed by Geoffrey Garen.

Now if you pass a null StringImpl* then something will still get printed instead
of crashing. I figure that this is broadly useful for debug code, and I make use
of it in the JSC portion of this patch.

  • wtf/PrintStream.cpp:

(WTF::printInternal):

LayoutTests:

Reviewed by Geoffrey Garen.

Test coverage for op_in performance.

  • fast/js/regress/in-four-cases-expected.txt: Added.
  • fast/js/regress/in-four-cases.html: Added.
  • fast/js/regress/in-one-case-false-expected.txt: Added.
  • fast/js/regress/in-one-case-false.html: Added.
  • fast/js/regress/in-one-case-true-expected.txt: Added.
  • fast/js/regress/in-one-case-true.html: Added.
  • fast/js/regress/in-two-cases-expected.txt: Added.
  • fast/js/regress/in-two-cases.html: Added.
  • fast/js/regress/script-tests/in-four-cases.js: Added.

(foo):
(bar):

  • fast/js/regress/script-tests/in-one-case-false.js: Added.

(foo):
(bar):

  • fast/js/regress/script-tests/in-one-case-true.js: Added.

(foo):
(bar):

  • fast/js/regress/script-tests/in-two-cases.js: Added.

(foo):
(bar):

12:03 PM Changeset in webkit [151568] by Christophe Dumez
  • 2 edits in trunk/Source/WebKit

Unreviewed build fix after rr151563.

Export needed symbols for Windows.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
11:34 AM Changeset in webkit [151567] by commit-queue@webkit.org
  • 1 edit
    16 adds in trunk/LayoutTests

Add tests to validate CSS Background Blending

This patch set removes the test case of adding bg blend mode through script, as it
is now part of bug#117223

https://bugs.webkit.org/show_bug.cgi?id=117537

Patch by Mihai Tica <mitica@adobe.com> on 2013-06-13
Reviewed by Dirk Schulze.

  • css3/compositing/background-blend-mode-default-value.html: Added.
  • css3/compositing/background-blend-mode-different-image-formats.html: Added.
  • css3/compositing/background-blend-mode-image-color.html: Added.
  • css3/compositing/background-blend-mode-image-image.html: Added.
  • css3/compositing/background-blend-mode-single-layer-no-blending.html: Added.
  • css3/compositing/resources/ducky.jpg: Added.
  • platform/mac/css3/compositing/background-blend-mode-default-value-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-default-value-expected.txt: Added.
  • platform/mac/css3/compositing/background-blend-mode-different-image-formats-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-different-image-formats-expected.txt: Added.
  • platform/mac/css3/compositing/background-blend-mode-image-color-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-image-color-expected.txt: Added.
  • platform/mac/css3/compositing/background-blend-mode-image-image-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-image-image-expected.txt: Added.
  • platform/mac/css3/compositing/background-blend-mode-single-layer-no-blending-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-single-layer-no-blending-expected.txt: Added.
11:25 AM Changeset in webkit [151566] by commit-queue@webkit.org
  • 3 edits
    7 adds in trunk

[CSS Background Blending] Enable CSS Background blending for layers with SVGs.

Source/WebCore:

The change implies adding the blending parameter for SVGImage
https://bugs.webkit.org/show_bug.cgi?id=117588

Patch by Mihai Tica <mitica@adobe.com> on 2013-06-13
Reviewed by Dirk Schulze.

Tests: css3/compositing/background-blend-mode-image-svg.html

css3/compositing/background-blend-mode-svg-color.html

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::draw):

LayoutTests:

Adding tests for SVGs over simple background colors and images blending with SVGs.
https://bugs.webkit.org/show_bug.cgi?id=117588

Patch by Mihai Tica <mitica@adobe.com> on 2013-06-13
Reviewed by Dirk Schulze.

  • css3/compositing/background-blend-mode-image-svg-expected.txt: Added.
  • css3/compositing/background-blend-mode-image-svg.html: Added.
  • css3/compositing/background-blend-mode-svg-color-expected.txt: Added.
  • css3/compositing/background-blend-mode-svg-color.html: Added.
  • css3/compositing/resources/red-circle.svg: Added.
  • platform/mac/css3/compositing/background-blend-mode-image-svg-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-svg-color-expected.png: Added.
11:24 AM Changeset in webkit [151565] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Updating the -webkit-background-blend-mode property dynamically does not trigger a redraw of the element.

Source/WebCore:

Adding krit's fix: actual blending values should be compared, not the sets.
https://bugs.webkit.org/show_bug.cgi?id=117223

Patch by Mihai Tica <mitica@adobe.com> on 2013-06-13
Reviewed by Dirk Schulze.

Test: css3/compositing/background-blend-mode-image-color-dynamic.html

  • rendering/style/FillLayer.cpp:

(WebCore::FillLayer::operator==):

LayoutTests:

Adding test that sets background blend modes from script, after the page is loaded.
https://bugs.webkit.org/show_bug.cgi?id=117223

Patch by Mihai Tica <mitica@adobe.com> on 2013-06-13
Reviewed by Dirk Schulze.

  • fast/repaint/background-blend-mode-image-color-dynamic-expected.html: Added.
  • fast/repaint/background-blend-mode-image-color-dynamic.html: Added.
11:22 AM Changeset in webkit [151564] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

Headers and footers should be pinned to the left edge of the window when scrolling
horizontally, even when zoomed
https://bugs.webkit.org/show_bug.cgi?id=117562
-and corresponding-
<rdar://problem/14006745>

Reviewed by Sam Weinig.

We really want to use the width value from scrollOffsetForFixedPosition() for the
banner with a scaled factor of 1. So if there is a different scale factor, re-
compute this value specifically for the banners.

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):

11:13 AM Changeset in webkit [151563] by Christophe Dumez
  • 24 edits in trunk

Support byte and octet types in bindings generators
https://bugs.webkit.org/show_bug.cgi?id=117547

Reviewed by Kentaro Hara.

Source/WebCore:

Add support for byte and octet IDL types to the bindings
generator:
http://dev.w3.org/2006/webapi/WebIDL/#idl-byte
http://dev.w3.org/2006/webapi/WebIDL/#idl-octet

No new tests, covered by existing layout tests and by new
bindings tests.

No new tests, covered by bindings tests and:
fast/js/webidl-type-mapping.html

  • WebCore.exp.in: Export new symbols for mac port.
  • bindings/js/JSDOMBinding.cpp:
  • bindings/js/JSDOMBinding.h: Add toInt8() / toUInt8()

methods to convert from JSValue to int8_t / uint8_t as
specified by Web IDL.

  • bindings/js/JSDataViewCustom.cpp: Remove custom code for

getInt8, getUInt8, setInt8, setUInt8 now that byte and octet
types are supported by the bindings generator.

  • bindings/scripts/CodeGeneratorCPP.pm:
  • bindings/scripts/CodeGeneratorGObject.pm:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/CodeGeneratorObjC.pm:
  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  • bindings/scripts/test/CPP/WebDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:
  • bindings/scripts/test/TestObj.idl: Add tests for byte and octet types.
  • html/canvas/DataView.idl: Remove [Custom] extended attribute for

getInt8, getUInt8, setInt8, setUInt8 and use newly supported byte / octet
types.

LayoutTests:

Update fast/js/webidl-type-mapping.html to cover byte and octet
Web IDL types with and without [EnforceRange].

  • fast/js/webidl-type-mapping-expected.txt:
  • fast/js/webidl-type-mapping.html:
11:06 AM Changeset in webkit [151562] by timothy@apple.com
  • 2 edits in trunk/Source/WebCore

Revert r150339 since it causes a hang while paused in the Web Inspector in other apps.

https://bugs.webkit.org/show_bug.cgi?id=117596

Reviewed by Joseph Pecoraro.

  • platform/mac/EventLoopMac.mm:

(WebCore::EventLoop::cycle):

10:48 AM Changeset in webkit [151561] by Brent Fulgham
  • 2 edits in trunk/Source/WTF

[WinCairo] Correct FeatureDefines.h Default for ENABLE_VIEW_MODE_CSS_MEDIA
https://bugs.webkit.org/show_bug.cgi?id=114396

Reviewed by Dean Jackson.

  • wtf/FeatureDefines.h: The WinCairo port does not (currently) support Media elements,

so make sure we do not enable this feature by default for that port.

10:44 AM Changeset in webkit [151560] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Windows] Unreviewed gardening. Remove dangling 'strings' folder from solution.

  • WebCore.vcxproj/WebCore.vcxproj.filters: Get rid of 'strings' that was orphaned by

recent file reorganization.

10:33 AM Changeset in webkit [151559] by Brent Fulgham
  • 3 edits in trunk/Source/WTF

[Windows] Unreviewed gardening.

  • WTF.vcxproj/WTF.vcxproj: Add FeatureDefines.h to visible files.
  • WTF.vcxproj/WTF.vcxproj.filters: Ditto.
10:03 AM Changeset in webkit [151558] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Avoid unwanted thread hops in ScriptProcessorNode when 'onaudioprocess' listener is not set.
https://bugs.webkit.org/show_bug.cgi?id=117578.

Patch by Praveen R Jadhav <praveen.j@samsung.com> on 2013-06-13
Reviewed by Darin Adler.

ScriptProcessorNode process operation continues to dispatch AudioProcessingEvent
even though 'onaudioprocess' listener is not set. This results in unwanted thread hops.
Code is optimized to dispatch AudioProcessingEvent only if the listener is set.

No new tests, already covered by existing tests.

  • Modules/webaudio/ScriptProcessorNode.cpp:

(WebCore::ScriptProcessorNode::ScriptProcessorNode):
(WebCore::ScriptProcessorNode::process):
(WebCore::ScriptProcessorNode::setOnaudioprocess):

  • Modules/webaudio/ScriptProcessorNode.h:

(WebCore::ScriptProcessorNode::onaudioprocess):

10:02 AM Changeset in webkit [151557] by Brent Fulgham
  • 3 edits in trunk/Source/WebKit

[Windows] Revise WebKit project to show generated export definition file.
https://bugs.webkit.org/show_bug.cgi?id=109629

Reviewed by Mark Rowe.

  • WebKit.vcxproj/WebKit/WebKit.vcxproj: Add generated file.
  • WebKit.vcxproj/WebKit/WebKit.vcxproj.filters: Ditto
9:56 AM Changeset in webkit [151556] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WTF

Optimize String::fromUTF8 for ASCII
https://bugs.webkit.org/show_bug.cgi?id=117586

Reviewed by Brent Fulgham.

From Blink r152243 by <abarth@chromium.org>

Current String::fromUTF8() implementation converts 8 bit ASCII character into 16 bit.
Instead of always trying to convert into a 16 bit buffer, we can add a call to charactersAreAllASCII.
In the common case when characters are ASCII, we directly copy it into an 8 bit string buffer.

  • wtf/text/WTFString.cpp:

(WTF::String::fromUTF8):

9:50 AM Changeset in webkit [151555] by mvujovic@adobe.com
  • 4 edits
    2 adds in trunk

[CSS Regions] -webkit-background-clip: text; does not clip the background in regions
https://bugs.webkit.org/show_bug.cgi?id=117566

Reviewed by Alexandru Chiculita.

Source/WebCore:

This patch enables -webkit-background-clip: text; on regions.

Test: fast/regions/webkit-background-clip-text.html

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::paintFlowThreadPortionInRegion):

Force black text if we're in the text clip paint phase. This makes sure the text's alpha
channel does not affect the final opacity of the background clipping result. Rather,
the text's alpha channel affects the amount of blending between the text color
and the background.

  • rendering/RenderRegion.cpp:

(WebCore::shouldPaintRegionContentsInPhase):

Factor out a function to check if we should paint the region contents in a particular
phase. Add "PaintPhaseTextClip" so that we draw the contents in the text clipping phase.

(WebCore::RenderRegion::paintObject):

Call shouldPaintRegionContentsInPhase instead of doing the phase checks directly in this
function. Move, update, and clarify the surrounding comments.

LayoutTests:

  • fast/regions/webkit-background-clip-text-expected.html: Added.
  • fast/regions/webkit-background-clip-text.html: Added.
9:49 AM Changeset in webkit [151554] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk

[CSS Regions] Regions auto-height and absolute positioning bug
https://bugs.webkit.org/show_bug.cgi?id=111092

Patch by Anton Obzhirov <Anton Obzhirov> on 2013-06-13
Reviewed by David Hyatt.

During last layout that should update the auto-height regions new auto-height region height
is calculated correctly based on the text content, but it requires extra step
to reposition the render block after new logical height is set (correct logical height becomes
available only during last layout).

Tests: fast/regions/autoheight-abspos-bottom-align.html

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::updateLogicalHeight):

9:47 AM Changeset in webkit [151553] by commit-queue@webkit.org
  • 2 edits in trunk

[GTK] [WK2] Found missing symbol when running some tests
https://bugs.webkit.org/show_bug.cgi?id=117598

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-06-13
Reviewed by Martin Robinson.

  • Source/autotools/symbols.filter: Added missing

_ZN7WebCore28notImplementedLoggingChannelEv.

9:20 AM Changeset in webkit [151552] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[WinCairo] Unreviewed build correction.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add

missing symbols needed by TestWebKitAPI on WinCairo build.

9:18 AM Changeset in webkit [151551] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[WinCairo] Unreviewed build correction.

  • WebCore.vcxproj/WebCoreCairo.props: Use proper WebKit_Libraries

environment variable, rather than older WebKitLibraries.

9:12 AM Changeset in webkit [151550] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

Avoid duplicate isInt32() / isUInt32() checks in JSDOMBindings
https://bugs.webkit.org/show_bug.cgi?id=117593

Reviewed by Geoffrey Garen.

Avoid duplicate isInt32() / isUInt32() checks in JSDOMBindings by
calling asInt32() / asUInt32() instead of toInt32() / toUInt32()
when we already know the value is a int32 / uint32.

No new tests, no behavior change.

  • bindings/js/JSDOMBinding.cpp:
9:01 AM EFLWebKit edited by bfulgham@webkit.org
(diff)
9:00 AM SettingUpDevelopmentEnvironmentForN9 edited by bfulgham@webkit.org
(diff)
8:59 AM TinOS edited by bfulgham@webkit.org
(diff)
8:59 AM BuildingQtOnOSX edited by bfulgham@webkit.org
(diff)
8:58 AM BuildingQtOnLinux edited by bfulgham@webkit.org
(diff)
8:57 AM BuildingCairoOnWindows edited by bfulgham@webkit.org
(diff)
8:37 AM Changeset in webkit [151549] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Setting overflow:hidden on position:absolute does not repaint hidden content
https://bugs.webkit.org/show_bug.cgi?id=116994

Patch by Yuki Sekiguchi <yuki.sekiguchi@access-company.com> on 2013-06-13
Reviewed by Simon Fraser.

Source/WebCore:

Since a container which has overflow clip of RenderBox which has self painting layer doesn't have a rect of the RenderBox as visual overflow,
the container should not clip request repainting rect of the RenderBox.

Test: fast/repaint/change-overflow-and-display-of-relative.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeRectForRepaint):

  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::shouldUseClipForRepaint): If this has self painting layer, we should not clip for repaint.

  • rendering/RenderLayerModelObject.h:

LayoutTests:

  • fast/repaint/change-overflow-and-display-of-relative-expected.txt: Added.
  • fast/repaint/change-overflow-and-display-of-relative.html: Added.
8:29 AM Changeset in webkit [151548] by ggaren@apple.com
  • 11 edits in branches/dfgFourthTier/Source/JavaScriptCore

The Math object should not be polymorphic
https://bugs.webkit.org/show_bug.cgi?id=117576

Reviewed by Oliver Hunt.

Fill in the Math object eagerly, to avoid its structure changing during
execution. There are lots of ways to skin this cat; this one seemed
easiest, and justified given the relative hotness of math operations.

20% speedup on DSP-filtrr tests, small speedups on a few Kraken tests.

  • DerivedSources.make:
  • JavaScriptCore.order:
  • create_hash_table:
  • interpreter/CallFrame.h:

(JSC::ExecState::jsonTable): Removed the Math object's static table.

  • runtime/JSObject.cpp:

(JSC::JSObject::putDirectNativeFunctionWithoutTransition):

  • runtime/JSObject.h:
  • runtime/MathObject.cpp:

(JSC::MathObject::finishCreation):

  • runtime/MathObject.h:

(JSC::MathObject::create): Set up the Math object at construction time.

  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::~VM):

  • runtime/VM.h: Removed the Math object's static table.
8:05 AM Changeset in webkit [151547] by commit-queue@webkit.org
  • 4 edits
    12 adds in trunk

[CSS Background Blending] Gradients don't blend with any of the layers behind.
First, allow the layers behind opaque gradients to be drawn, then add the blending filters
when working with gradients.

Source/WebCore:

https://bugs.webkit.org/show_bug.cgi?id=117532

Patch by Mihai Tica <mitica@adobe.com> on 2013-06-13
Reviewed by Dirk Schulze.

Tests: css3/compositing/background-blend-mode-gradient-color.html

css3/compositing/background-blend-mode-gradient-gradient.html
css3/compositing/background-blend-mode-gradient-image.html
css3/compositing/background-blend-mode-multiple-background-layers.html

  • platform/graphics/GeneratorGeneratedImage.cpp:

(WebCore::GeneratorGeneratedImage::draw):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintFillLayers):

LayoutTests:

https://bugs.webkit.org/show_bug.cgi?id=117532
Patch by Mihai Tica <mitica@adobe.com> on 2013-06-13
Reviewed by Dirk Schulze.

  • css3/compositing/background-blend-mode-gradient-color-expected.txt: Added.
  • css3/compositing/background-blend-mode-gradient-color.html: Added.
  • css3/compositing/background-blend-mode-gradient-gradient-expected.txt: Added.
  • css3/compositing/background-blend-mode-gradient-gradient.html: Added.
  • css3/compositing/background-blend-mode-gradient-image-expected.txt: Added.
  • css3/compositing/background-blend-mode-gradient-image.html: Added.
  • css3/compositing/background-blend-mode-multiple-background-layers-expected.txt: Added.
  • css3/compositing/background-blend-mode-multiple-background-layers.html: Added.
  • platform/mac/css3/compositing/background-blend-mode-gradient-color-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-gradient-gradient-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-gradient-image-expected.png: Added.
  • platform/mac/css3/compositing/background-blend-mode-multiple-background-layers-expected.png: Added.
7:42 AM Changeset in webkit [151546] by michael.bruning@digia.com
  • 4 edits in trunk

[Qt][Mac] Disable QTKit video on OS X.
https://bugs.webkit.org/show_bug.cgi?id=117591

Reviewed by Tor Arne Vestbø.

Source/WebCore:

Deployment of the same Qt binaries to different
Mac OS X version makes it impossible to link against
the correct WebKitSystemInterface version at build time.

No new tests, no behavioural change.

  • WebCore.pri:

Tools:

Deployment of Qt binaries to different Mac OS X
platform version makes it impossible to link against
the correct version of the WebKitSystemInterface library,
so we need to disable QTKit for media elements.

  • qmake/mkspecs/features/features.prf:
7:11 AM Changeset in webkit [151545] by commit-queue@webkit.org
  • 11 edits
    32 adds in trunk

Column balancing support in the region based multicol implementation
https://bugs.webkit.org/show_bug.cgi?id=116033

Source/WebCore:

Start by setting the column height to the flow thread's height divided
by the number of columns. Then stretch the column height until
contents fits without creating overflowing columns, or until the
maximum allowed column height is reached, whichever comes first. This
may require several layout iterations (but normally only a
couple). For each time we stretch, stretch by the least amount
required to make a difference to which box goes where.

Also make sure that the columns get tall enough to honor orphans
and widows settings.

This change takes some tiny steps in preparing for multiple column
set support. There is also some minor cleanup and bugfixing; see
details below.

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-06-13
Reviewed by David Hyatt.

Tests: fast/multicol/newmulticol/balance-images.html

fast/multicol/newmulticol/balance-maxheight1.html
fast/multicol/newmulticol/balance-maxheight2.html
fast/multicol/newmulticol/balance1.html
fast/multicol/newmulticol/balance2.html
fast/multicol/newmulticol/balance3.html
fast/multicol/newmulticol/balance4.html
fast/multicol/newmulticol/balance5.html
fast/multicol/newmulticol/balance6.html
fast/multicol/newmulticol/balance7.html
fast/multicol/newmulticol/balance8.html
fast/multicol/newmulticol/balance9.html
fast/multicol/newmulticol/cell-shrinkback.html
fast/multicol/newmulticol/columns-shorthand-parsing.html
fast/multicol/newmulticol/orphans-and-widows-balance.html
fast/multicol/newmulticol/single-line.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::adjustForUnsplittableChild):
(WebCore::RenderBlock::setPageBreak):
(WebCore):
(WebCore::RenderBlock::updateMinimumPageHeight):
(WebCore::calculateMinimumPageHeight):
(WebCore::RenderBlock::adjustLinePositionForPagination):
(WebCore::RenderBlock::adjustBlockChildForPagination): If no lines
cross the boundaries, we need to report where blocks cross
instead, so that the column balancer knows how much to stretch
columns if necessary.

  • rendering/RenderBlock.h:
  • rendering/RenderFlowThread.h:
  • rendering/RenderMultiColumnBlock.cpp:

(WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
(WebCore::RenderMultiColumnBlock::checkForPaginationLogicalHeightChange):
(WebCore::RenderMultiColumnBlock::relayoutForPagination):
(WebCore::RenderMultiColumnBlock::layoutSpecialExcludedChild):

  • rendering/RenderMultiColumnBlock.h:

(WebCore::RenderMultiColumnBlock::columnHeightAvailable):
(WebCore::RenderMultiColumnBlock::requiresBalancing):
(RenderMultiColumnBlock):

  • rendering/RenderMultiColumnFlowThread.cpp:

(WebCore::RenderMultiColumnFlowThread::autoGenerateRegionsToBlockOffset):
(WebCore::RenderMultiColumnFlowThread::setPageBreak):
(WebCore):
(WebCore::RenderMultiColumnFlowThread::updateMinimumPageHeight):

  • rendering/RenderMultiColumnFlowThread.h:

(RenderMultiColumnFlowThread):

  • rendering/RenderMultiColumnSet.cpp: Get rid of

RenderMultiColumnSet::updateLogicalHeight() override. Make
RenderMultiColumnSet behave more like normal blocks, by having
computeLogicalHeight() calculate logical top in addition to
height, just like any other block.
(WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
(WebCore::RenderMultiColumnSet::heightAdjustedForSetOffset): This
method will become more meaningful once we add support for
multiple column sets.
(WebCore):
(WebCore::RenderMultiColumnSet::pageLogicalTopForOffset):
(WebCore::RenderMultiColumnSet::setAndConstrainColumnHeight):
(WebCore::RenderMultiColumnSet::calculateBalancedHeight):
(WebCore::RenderMultiColumnSet::recordSpaceShortage):
(WebCore::RenderMultiColumnSet::updateLogicalWidth):
(WebCore::RenderMultiColumnSet::prepareForLayout):
(WebCore::RenderMultiColumnSet::computeLogicalHeight):
(WebCore::RenderMultiColumnSet::columnCount):
(WebCore::RenderMultiColumnSet::columnIndexAtOffset):
repaintFlowThreadContent() could end up in an infinite loop
because columnIndexAtOffset() could return UINT_MAX
(subtracting 1 from unsigned 0, which columnCount() could return),
which an unsigned integer obviously can never become larger
than. Also always call columnIndexAtOffset() if we want to get the
column index for some offset, rather than doing it on our own
sometimes. To make this work also during layout, we cannot just
return the last column created so far if we're past it, since
adding new columns is exactly what we want to do at this point.

  • rendering/RenderMultiColumnSet.h:

(RenderMultiColumnSet):

LayoutTests:

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-06-13
Reviewed by David Hyatt.

  • fast/multicol/newmulticol/balance-images-expected.txt: Added.
  • fast/multicol/newmulticol/balance-images.html: Added.
  • fast/multicol/newmulticol/balance-maxheight1-expected.txt: Added.
  • fast/multicol/newmulticol/balance-maxheight1.html: Added.
  • fast/multicol/newmulticol/balance-maxheight2-expected.txt: Added.
  • fast/multicol/newmulticol/balance-maxheight2.html: Added.
  • fast/multicol/newmulticol/balance1-expected.txt: Added.
  • fast/multicol/newmulticol/balance1.html: Added.
  • fast/multicol/newmulticol/balance2-expected.txt: Added.
  • fast/multicol/newmulticol/balance2.html: Added.
  • fast/multicol/newmulticol/balance3-expected.txt: Added.
  • fast/multicol/newmulticol/balance3.html: Added.
  • fast/multicol/newmulticol/balance4-expected.txt: Added.
  • fast/multicol/newmulticol/balance4.html: Added.
  • fast/multicol/newmulticol/balance5-expected.txt: Added.
  • fast/multicol/newmulticol/balance5.html: Added.
  • fast/multicol/newmulticol/balance6-expected.txt: Added.
  • fast/multicol/newmulticol/balance6.html: Added.
  • fast/multicol/newmulticol/balance7-expected.txt: Added.
  • fast/multicol/newmulticol/balance7.html: Added.
  • fast/multicol/newmulticol/balance8-expected.txt: Added.
  • fast/multicol/newmulticol/balance8.html: Added.
  • fast/multicol/newmulticol/balance9-expected.txt: Added.
  • fast/multicol/newmulticol/balance9.html: Added.
  • fast/multicol/newmulticol/cell-shrinkback-expected.html: Added.
  • fast/multicol/newmulticol/cell-shrinkback.html: Added.
  • fast/multicol/newmulticol/columns-shorthand-parsing-expected.html: Added.
  • fast/multicol/newmulticol/columns-shorthand-parsing.html: Added.
  • fast/multicol/newmulticol/orphans-and-widows-balance-expected.txt: Added.
  • fast/multicol/newmulticol/orphans-and-widows-balance.html: Added.
  • fast/multicol/newmulticol/single-line-expected.html: Added.
  • fast/multicol/newmulticol/single-line.html: Added.
5:53 AM Changeset in webkit [151544] by zarvai@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipping passing test and move to the right place.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-06-13

  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt/TestExpectations:
2:45 AM Changeset in webkit [151543] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[ARM] Unreviewed gardening, skip one more test to paint the bot green.

  • platform/qt-arm/TestExpectations:
2:17 AM Changeset in webkit [151542] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.
Adding failure expectations for most of the current failures.

  • platform/gtk-wk1/TestExpectations:
  • platform/gtk/TestExpectations:
1:23 AM Changeset in webkit [151541] by commit-queue@webkit.org
  • 8 edits in trunk

[EFL][WK2] Wrong context menu and popup menu positions when scroll is applied
https://bugs.webkit.org/show_bug.cgi?id=116610

Patch by Michał Pakuła vel Rutka <Michał Pakuła vel Rutka> on 2013-06-13
Reviewed by Noam Rosenthal.

Source/WebKit2:

WebKit2 EFL uses fixed layout - because of this ScrollView::contentsToWindow, does
not take scroll into account, as it is meant to be handled by UI application.
When popup and context menu are created, after calling contentsToWindow their position
are not adjusted to page scroll.
Added two functions to EwkView and WKView, converting contents position to user viewport
coordinates, to adjust popup and context menu positions.

  • UIProcess/API/C/CoordinatedGraphics/WKView.cpp:

(WKViewContentsToUserViewport):

  • UIProcess/API/C/CoordinatedGraphics/WKView.h:
  • UIProcess/API/efl/EwkView.cpp:

(EwkView::showContextMenu):
(EwkView::requestPopupMenu):

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::contentsToUserViewport):

  • UIProcess/CoordinatedGraphics/WebView.h:

Tools:

Remove unnecessary code adjusting context menu position to webview position.
Now position is calculcated in EwkView.

  • MiniBrowser/efl/main.c:

(on_context_menu_show):

12:52 AM Changeset in webkit [151540] by ryuan.choi@samsung.com
  • 7 edits in trunk/Source/WebKit/efl

[EFL] Refactor ewk_view_scroll to remove internal structure.
https://bugs.webkit.org/show_bug.cgi?id=115713

Reviewed by Gyuyoung Kim.

After removed c-ism from WebKit/Efl, There is no reason to keep internal
structures like Ewk_Scroll_Request.
This patch refactored ewk_view_scroll to use WTF instead of Ewk_Scroll_Request
and scrolls of SmartData.

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::scroll):

  • ewk/ewk_view.cpp: Removed functions to manage Ewk_Scroll_Request.

(_Ewk_View_Private_Data):
(_ewk_view_scrolls_flush):
(_ewk_view_priv_del):
(_ewk_view_smart_calculate):
(ewk_view_scroll_offsets_get):
(ewk_view_scroll_rects_get):
(ewk_view_scroll):

  • ewk/ewk_view.h: Removed Ewk_Scroll_Request which is private structure.
  • ewk/ewk_view_private.h:

(WebCore):

  • ewk/ewk_view_single.cpp:

(_ewk_view_single_scroll_process_single):
(_ewk_view_single_smart_scrolls_process):

  • ewk/ewk_view_tiled.cpp:

(_ewk_view_tiled_smart_scrolls_process):

12:15 AM Changeset in webkit [151539] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

12:04 AM Changeset in webkit [151538] by Lucas Forschler
  • 1 copy in tags/Safari-537.45

New Tag.

Jun 12, 2013:

11:10 PM Changeset in webkit [151537] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[ARM] Unreviewed gardening, skip one more test to paint the bot green.

  • platform/qt-arm/TestExpectations:
10:58 PM Changeset in webkit [151536] by Brent Fulgham
  • 3 edits in trunk/WebKitLibraries

[WinCairo] Unreviewed build correction.

  • win/tools32/vsprops/WinCairo.props: Switch from using the $WebKitLibraries environment variable to the newer $WebKit_Libraries.
  • win/tools32/vsprops/debug_wincairo.props: Ditto.
6:48 PM Changeset in webkit [151535] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Turn on WinEWS test now that AppleWin port uses new-run-webkit-tests.

  • Scripts/webkitpy/common/config/ews.json:
6:15 PM Changeset in webkit [151534] by roger_fong@apple.com
  • 4 edits
    3 moves in trunk/Websites/webkit.org

Update webkit.org build instructions for Apple Windows port.
https://bugs.webkit.org/show_bug.cgi?id=117563.

Reviewed by Brent Fulgham.

  • building/build.html:
  • building/debug.html:
  • building/launch-debugger-vs2005.png: Removed.
  • building/launch-debugger-vs2010.png: Copied from webkit.org/building/launch-debugger-vs2005.png.
  • building/set-as-startup-project-vs2005.png: Removed.
  • building/set-as-startup-project-vs2010.png: Copied from webkit.org/building/set-as-startup-project-vs2005.png.
  • building/set-debugging-properties-vs2005.png: Removed.
  • building/set-debugging-properties-vs2010.png: Copied from webkit.org/building/set-debugging-properties-vs2005.png.
  • building/tools.html:
6:13 PM Changeset in webkit [151533] by gyuyoung.kim@samsung.com
  • 3 edits
    29 adds in trunk/LayoutTests

Unreviewed. EFL Gardening. Needs to add new baseline for some tests, which are passing on EFL bots.

  • platform/efl-wk1/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/efl/editing/selection/3690703-2-expected.png: Added.
  • platform/efl/editing/selection/3690703-2-expected.txt: Added.
  • platform/efl/editing/selection/3690703-expected.png: Added.
  • platform/efl/editing/selection/3690703-expected.txt: Added.
  • platform/efl/editing/selection/3690719-expected.png: Added.
  • platform/efl/editing/selection/3690719-expected.txt: Added.
  • platform/efl/editing/selection/4397952-expected.png: Added.
  • platform/efl/editing/selection/4397952-expected.txt: Added.
  • platform/efl/editing/selection/4895428-3-expected.png: Added.
  • platform/efl/editing/selection/4895428-3-expected.txt: Added.
  • platform/efl/editing/selection/4975120-expected.png: Added.
  • platform/efl/editing/selection/4975120-expected.txt: Added.
  • platform/efl/editing/selection/5007143-2-expected.png: Added.
  • platform/efl/editing/selection/5007143-2-expected.txt: Added.
  • platform/efl/editing/selection/5007143-expected.png: Added.
  • platform/efl/editing/selection/5007143-expected.txt: Added.
  • platform/efl/editing/selection/5057506-expected.png: Added.
  • platform/efl/editing/selection/5057506-expected.txt: Added.
  • platform/efl/editing/selection/5195166-1-expected.txt: Added.
  • platform/efl/editing/selection/7152-2-expected.png: Added.
  • platform/efl/editing/selection/7152-2-expected.txt: Added.
  • platform/efl/editing/selection/caret-before-select-expected.png: Added.
  • platform/efl/editing/selection/caret-before-select-expected.txt: Added.
  • platform/efl/editing/selection/caret-ltr-right-expected.png: Added.
  • platform/efl/editing/selection/caret-ltr-right-expected.txt: Added.
  • platform/efl/editing/selection/caret-rtl-2-left-expected.png: Added.
  • platform/efl/editing/selection/caret-rtl-2-left-expected.txt: Added.
  • platform/efl/editing/selection/caret-rtl-right-expected.png: Added.
  • platform/efl/editing/selection/caret-rtl-right-expected.txt: Added.
6:00 PM Changeset in webkit [151532] by Brent Fulgham
  • 2 edits in trunk/Websites/planet.webkit.org

Remove irrelevant blog from Planet WebKit.
https://bugs.webkit.org/show_bug.cgi?id=117572

Reviewed by Mark Rowe.

  • config.ini: Remove Chromium blog from planet.webkit.org
5:59 PM Changeset in webkit [151531] by Brent Fulgham
  • 2 edits in trunk/Source/WTF

[Windows] Activate supported C++11 Features for VS2010
https://bugs.webkit.org/show_bug.cgi?id=117569

Reviewed by Anders Carlsson.

  • wtf/Compiler.h: Turn on rvalue references and static_assert

when compiling with VS2010 (or newer)

5:34 PM Changeset in webkit [151530] by andersca@apple.com
  • 18 edits in trunk/Source

Remove the notion of inactive plug-ins
https://bugs.webkit.org/show_bug.cgi?id=117570
<rdar://problem/13484213>

Reviewed by Tim Horton.

Source/WebCore:

Remove RenderEmbeddedObject::PluginInactive and the replacement text.

  • English.lproj/Localizable.strings:
  • platform/LocalizedStrings.cpp:
  • platform/LocalizedStrings.h:
  • rendering/RenderEmbeddedObject.cpp:

(WebCore::unavailablePluginReplacementText):

  • rendering/RenderEmbeddedObject.h:

Source/WebKit/mac:

Remove code that deals with inactive plug-ins.

  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::shouldUnavailablePluginMessageBeButton):
(WebChromeClient::unavailablePluginButtonClicked):

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::createPlugin):

Source/WebKit2:

Remove code that deals with inactive plug-ins. We still keep around the kWKPluginLoadPolicyInactive API enum for now.

  • Shared/Plugins/PluginModuleInfo.h:
  • UIProcess/API/C/WKAPICast.h:

(WebKit::toWKPluginLoadPolicy):
(WebKit::toPluginModuleLoadPolicy):

  • UIProcess/Plugins/PluginInfoStore.cpp:
  • UIProcess/Plugins/PluginInfoStore.h:
  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:

(WebKit::PluginInfoStore::shouldUsePlugin):
(WebKit::PluginInfoStore::defaultLoadPolicyForPlugin):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::findPlugin):
(WebKit::WebPageProxy::unavailablePluginButtonClicked):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::shouldUnavailablePluginMessageBeButton):
(WebKit::WebChromeClient::unavailablePluginButtonClicked):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):

5:10 PM BuildingOnWindows edited by roger_fong@apple.com
(diff)
5:05 PM Changeset in webkit [151529] by Brent Fulgham
  • 18 edits
    7 adds in trunk

[Windows] Implement Accessibility2 APIs in Windows.
https://bugs.webkit.org/show_bug.cgi?id=117561

Reviewed by Anders Carlsson.

Source/WebKit:

  • WebKit.vcxproj/Interfaces/Interfaces.vcxproj: Add new IAccessible2 IDL files.
  • WebKit.vcxproj/Interfaces/Interfaces.vcxproj.filters: Ditto.
  • WebKit.vcxproj/Interfaces/InterfacesCommon.props: Reference new Accessible2 folder.
  • WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj: Build IAccessible2 symbols.
  • WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj.filters: Ditto.

Source/WebKit/win:

  • AccessibleBase.cpp: Add stubs for IAccessible2 interface, replace attributeValue

method with get_attribute from IAccessible2 API.

  • AccessibleBase.h: Ditto.
  • AccessibleDocument.cpp: Revise signatures for IAccessible2.
  • AccessibleDocument.h: Ditto.
  • AccessibleImage.cpp: Revise signatures for IAccessible2.
  • AccessibleImage.h: Ditto.
  • Interfaces/Accessible2: Added.
  • Interfaces/Accessible2/Accessible2.idl: Added.
  • Interfaces/Accessible2/Accessible2_2.idl: Added.
  • Interfaces/Accessible2/AccessibleApplication.idl: Added.
  • Interfaces/Accessible2/AccessibleRelation.idl: Added.
  • Interfaces/Accessible2/AccessibleStates.idl: Added.
  • Interfaces/Accessible2/IA2CommonTypes.idl: Added.
  • Interfaces/AccessibleComparable.idl:
  • Interfaces/WebKit.idl: Reference IAccessible2 types.
  • WebFrame.cpp:

(WebFrame::accessible): Pass window handle to IAccessible types.

4:55 PM Changeset in webkit [151528] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Change default Traditional Chinese serif font on 10.9
https://bugs.webkit.org/show_bug.cgi?id=117568

Reviewed by Alexey Proskuryakov.

Change default font on newer versions of OS X.

  • page/mac/SettingsMac.mm:

(WebCore::Settings::initializeDefaultFontFamilies): Use 'Songti TC'
on 10.9 and above.

4:53 PM Changeset in webkit [151527] by Hugo Parente Lima
  • 2 edits in trunk/Source/WebKit2

[GTK] Explicit include glib.h to avoid compilation errors if libsoup isn't used.
https://bugs.webkit.org/show_bug.cgi?id=117564

Reviewed by Martin Robinson.

  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
4:48 PM Changeset in webkit [151526] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Change default Simplified Chinese serif font on 10.9
https://bugs.webkit.org/show_bug.cgi?id=117567

Reviewed by Alexey Proskuryakov.

Change default font on newer versions of OS X.

  • page/mac/SettingsMac.mm:

(WebCore::Settings::initializeDefaultFontFamilies): Use 'Songti SC'
instead of 'STSong' on newer systems.

4:30 PM Changeset in webkit [151525] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

Fix crashes due to failed ImageBuffer allocation
https://bugs.webkit.org/show_bug.cgi?id=117541

Reviewed by Andreas Kling.

From Blink r152268 by <pdr@chromium.org>

A crash can happen due to a failed ImageBuffer allocation in
SVGImage::drawPatternForContainer(). Added a check for that failed allocation.

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::drawPatternForContainer):

4:28 PM BuildingOnWindows edited by bfulgham@webkit.org
(diff)
4:20 PM BuildingOnWindows edited by bfulgham@webkit.org
(diff)
4:19 PM BuildingOnWindows edited by bfulgham@webkit.org
(diff)
4:13 PM BuildingOnWindows edited by bfulgham@webkit.org
(diff)
4:08 PM BuildingOnWindows edited by bfulgham@webkit.org
(diff)
3:56 PM BuildingOnWindows edited by roger_fong@apple.com
(diff)
3:48 PM BuildingOnWindows edited by roger_fong@apple.com
(diff)
3:46 PM BuildingOnWindows edited by roger_fong@apple.com
(diff)
3:44 PM BuildingOnWindows edited by roger_fong@apple.com
(diff)
3:29 PM BuildingOnWindows edited by roger_fong@apple.com
(diff)
2:39 PM Changeset in webkit [151524] by commit-queue@webkit.org
  • 6 edits in trunk

[atk] Replace deprecated call to atk_document_get_locale() in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=115647

Patch by Eduardo Lima Mitev <elima@igalia.com> on 2013-06-12
Reviewed by Martin Robinson.

Source/WebCore:

Override the get_object_locale() method of WebkitAccessibleWrapperAtk's internal
AtkObject, to include custom implementations for AtkDocument and AtkText objects,
taking the logic as-is from AtkDocument::get_document_locale() and DumpRenderTree's
AccessibilityUIElementAtk::language(), respectively.

Apart from improving encapsulation, this avoids calling deprecated get_document_locale()
method.

No new functionality, no new tests.

  • accessibility/atk/WebKitAccessibleInterfaceDocument.cpp:

(webkitAccessibleDocumentInterfaceInit): Chains implementation of
AtkDocument::get_document_locale() to AtkObject::get_object_locale().

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetObjectLocale): Add implementation of locale resolution for
objects of type AtkDocument and AtkText.
(webkitAccessibleClassInit): Override AtkObject::get_object_locale() method.

Tools:

Locale resolution is moved to WebKitAccessibleWrapperAtk using
AtkObject::get_object_locale() API. Now, implementation of
AccessibilityUIElement::language() in both DumpRenderTree and WebKitTestRunner can
be leveraged to get_object_locale() of AtkObject.

Apart from improving encapsulation, this avoids calling deprecated get_document_locale()
method.

No new functionality, no new tests.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::language): Leverage locale resolution to
AtkObject::get_object_locale().

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::language): Leverage locale resolution to
AtkObject::get_object_locale().

1:46 PM Changeset in webkit [151523] by Hugo Parente Lima
  • 3 edits in trunk/Tools

Remove last bits of GYP from build-webkit and update-webkit scripts
https://bugs.webkit.org/show_bug.cgi?id=117557

Reviewed by Ryosuke Niwa.

  • Scripts/build-webkit:
  • Scripts/update-webkit:
1:18 PM Changeset in webkit [151522] by zandobersek@gmail.com
  • 6 edits in trunk/Source

[GTK] Move more build targets for source code that's free of layer violations into libPlatform
https://bugs.webkit.org/show_bug.cgi?id=115936

Reviewed by Martin Robinson.

Source/Platform:

  • GNUmakefile.am: Add additional Source/WebCore/platform subdirectories to the list of the directories

that are specific to the platform layer but still located in WebCore. Add Enchant and Freetype dependencies'
CFLAGS to the list of libPlatform CPPFLAGS. Add GStreamer dependency's CFLAGS to the list of libPlatformGtk
CPPFLAGS.

Source/WebCore:

No new tests - no new functionality.

  • GNUmakefile.list.am: Move more build targets under the platform_sources and platformgtk_sources listing.

These build targets represent source files that are already free of platform layer violations and are as such
ready to be pushed down from the WebCore layer into the Platform layer.

Source/WebKit2:

  • GNUmakefile.am: Add GStreamer dependency's CFLAGS to the list of libPlatformGtk2 CPPFLAGS.
1:07 PM Changeset in webkit [151521] by Hugo Parente Lima
  • 1 edit
    1 delete in trunk/Tools

Remove forgotten unused Tools/Script/make-gypi script
https://bugs.webkit.org/show_bug.cgi?id=117558

Reviewed by Ryosuke Niwa.

This script isn't used since the GYP removal from WebKit.

  • Scripts/make-gypi: Removed.
12:58 PM Changeset in webkit [151520] by commit-queue@webkit.org
  • 7 edits in trunk/Source

"Open Video in New Window" doesn't make sense in fullscreen
https://bugs.webkit.org/show_bug.cgi?id=117556

Patch by Ruth Fong <ruth_fong@apple.com> on 2013-06-12
Reviewed by Beth Dakin.

Source/WebCore:

No new tests needed.

  • WebCore.exp.in: Added WebKit2 hook for mediaIsInFullscreen() method.

Source/WebKit2:

Adds method mediaIsInFullscreen() that checks if a media element is in
fullscreen mode, which is needed to decide when to display the
"Open Video in New Window" context menu item.

  • WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:

(WKBundleHitTestResultMediaIsInFullscreen): Added.
Hooks into new InjectedBundleHitTestResult::mediaIsInFullscreen() method.

  • WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
  • WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:

(WebKit::InjectedBundleHitTestResult::mediaIsInFullscreen): Added.
Checks if media element is in fullscreen.

  • WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
12:52 PM Changeset in webkit [151519] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

Accessibility code assumes an area element's parent is a map element
https://bugs.webkit.org/show_bug.cgi?id=117496

Reviewed by Chris Fleizach.

Source/WebCore:

We can't make such an assumption. Scripts can insert any element between area and map elements.

Merge https://chromium.googlesource.com/chromium/blink/+/b6f486284f08c52904701c93e1ec0b7d6e76af9f.

Test: accessibility/image-map-with-indirect-area-crash.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):

LayoutTests:

Add a regression test from https://chromium.googlesource.com/chromium/blink/+/b6f486284f08c52904701c93e1ec0b7d6e76af9f.

  • accessibility/image-map-with-indirect-area-crash-expected.txt: Added.
  • accessibility/image-map-with-indirect-area-crash.html: Added.
12:20 PM Changeset in webkit [151518] by robert@webkit.org
  • 3 edits
    2 adds in trunk

Source/WebCore: Whitespace between inlines with nowrap and a shrink-to-fit parent gets a line-break when it shouldn't
https://bugs.webkit.org/show_bug.cgi?id=117370

Reviewed by David Hyatt.

Test: fast/text/whitespace/inline-whitespace-wrapping-8.html

A no-wrap inline shouldn't include trailing space when deciding whether it fits on a line.
Likewise when we finish iterating through the objects on a line we should clear our linebreak
if the only thing that prevents us fitting on the line is our collapsed trailing whitespace.

Removing the trailing space from this measurement means we need to watch out for potential
breaks between no-wrap inlines, in particular if we leave a no-wrap inline ignoring spaces
and enter an autowrap inline then we need to mark the beginning of the autowrap inline
as a potential linebreak. The test fast/text/whitespace/inline-whitespace-wrapping-5.html
is an example of such a case.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::LineWidth::LineWidth):
(WebCore::LineWidth::fitsOnLine):
(WebCore::LineWidth::fitsOnLineExcludingTrailingWhitespace):
(WebCore::LineWidth::fitsOnLineExcludingTrailingCollapsedWhitespace):
(WebCore::LineWidth::setTrailingWhitespaceWidth):
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):

LayoutTests: Whitespace between inlines with nowrap and a shrink-to-fit parent line-break incorrectly
https://bugs.webkit.org/show_bug.cgi?id=117370

Reviewed by David Hyatt.

  • fast/text/whitespace/inline-whitespace-wrapping-8-expected.html: Added.
  • fast/text/whitespace/inline-whitespace-wrapping-8.html: Added.
11:59 AM Changeset in webkit [151517] by commit-queue@webkit.org
  • 16 edits
    4 adds in trunk

[CSS Shapes] rectangle and inset-rectangle do not properly handle rx and ry
https://bugs.webkit.org/show_bug.cgi?id=116745

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-06-12
Reviewed by Dirk Schulze.

Source/WebCore:

If ry is not supplied, it now defaults to the rx value. Also, if rx
and ry are not supplied, they default to 0px. This also has the effect
that the computed style for any rectangle or inset-rectangle now
contains all six parameters.

If rx > width/2 then it is clamped to width/2, and if ry > height/2,
then it is clamped to height/2. This happens at layout time because
given mixed units and relative units, that is the only time this
determination can be made.

Tests: fast/exclusions/shape-inside/shape-inside-rounded-rectangle-large-radius.html

fast/exclusions/shape-outside-floats/shape-outside-floats-rounded-rectangle-large-radius.html

  • css/BasicShapeFunctions.cpp:

(WebCore::valueForBasicShape): Remove checks for undefined, since rx

and ry cannot be undefined in BasicShapes anymore.

(WebCore::basicShapeForValue): If radii are undefined in CSS, set

default values in the BasicShape, per the spec.

  • rendering/ExclusionShape.cpp:

(WebCore::ensureRadiiDoNotOverlap): Utility method to ensure radii

don't overlap.

(WebCore::ExclusionShape::createExclusionShape): Remove defaulting to

zero, clamp radii per the spec.

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShapeRectangle::path): Remove defaulting.
(WebCore::BasicShapeRectangle::blend): Ditto.
(WebCore::BasicShapeInsetRectangle::path): Ditto.
(WebCore::BasicShapeInsetRectangle::blend): Ditto.

  • rendering/style/BasicShapes.h:

(WebCore::BasicShapeRectangle::BasicShapeRectangle): Remove defaulting

to undefined for radii.

(WebCore::BasicShapeRectangle::setCornerRadiusX): Add assert to

prevent undefined.

(WebCore::BasicShapeRectangle::setCornerRadiusY): Add assert to

prevent undefined.

(WebCore::BasicShapeInsetRectangle::BasicShapeInsetRectangle): Ditto.
(WebCore::BasicShapeInsetRectangle::setCornerRadiusX): Add assert to

prevent undefined.

(WebCore::BasicShapeInsetRectangle::setCornerRadiusY): Add assert to

prevent undefined.

LayoutTests:

Update tests to check for the rx and ry conditions.

  • fast/exclusions/parsing/parsing-shape-inside-expected.txt: New results.
  • fast/exclusions/parsing/parsing-shape-outside-expected.txt: New results.
  • fast/exclusions/parsing/script-tests/parsing-shape-inside.js: Update

to reflect that the computed value now always has rx and ry.

  • fast/exclusions/parsing/script-tests/parsing-shape-outside.js: Ditto.
  • fast/exclusions/parsing/script-tests/parsing-test-utils.js: Ditto.
  • fast/exclusions/resources/rounded-rectangle.js:

(genLeftRightRoundedRectFloatShapeOutsideRefTest): Factor out left and

right into separate methods so that they can be used in tests that
only have left floats or only right floats.

(genLeftRoundedRectFloatShapeOutsideRefTest): Ditto.
(genRightRoundedRectFloatShapeOutsideRefTest): Ditto.

  • fast/exclusions/shape-inside/shape-inside-animation-expected.txt: New results.
  • fast/exclusions/shape-inside/shape-inside-animation.html: Change to

reflect new computed style value.

  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-large-radius-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-large-radius.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-rounded-rectangle-large-radius-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-rounded-rectangle-large-radius.html: Added.

Note that the expected test here uses shape-inside, because we
really are just testing that the behavior is the same as a
shape-inside with rx and ry set to 50%, and it turned out to be
very hard to construct an expected result that didn't use
shape-inside and wasn't off by a pixel.

  • css3/masking/clip-path-animation.html: Update expected value.
  • css3/masking/clip-path-animation-expected.txt: New results.
11:57 AM Changeset in webkit [151516] by Brent Fulgham
  • 9 edits in trunk

[Windows] Support Title UI Element Accessibility Attribute
https://bugs.webkit.org/show_bug.cgi?id=117530

Reviewed by Anders Carlsson.

Source/WebCore:

Fixes: accessibility/list-item-role.html

accessibility/hidden-legend.html

  • accessibility/win/AccessibilityObjectWrapperWin.cpp:

(WebCore::AccessibilityObjectWrapper::accessibilityAttributeValue): Extend to support access
for the Title UI Element object.

  • accessibility/win/AccessibilityObjectWrapperWin.h: Revise interface to use Variant output,

which is more in keeping with the Mac's 'id' method signature.

Source/WebKit/win:

  • AccessibleBase.cpp:

(AccessibleBase::attributeValue): Extend to handle Title UI Element.

  • AccessibleBase.h: Revise signature to use a variant argument.
  • Interfaces/AccessibleComparable.idl: Revise interface to use variant
11:53 AM Changeset in webkit [151515] by timothy@apple.com
  • 1 edit
    17 adds in trunk/Websites/webkit.org

Add new Web Inspector images for a blog post.

  • blog-files/new-inspector/activity-viewer.png: Added.
  • blog-files/new-inspector/codemirror.png: Added.
  • blog-files/new-inspector/console.png: Added.
  • blog-files/new-inspector/hero-labeled.png: Added.
  • blog-files/new-inspector/hero.png: Added.
  • blog-files/new-inspector/layer-borders.png: Added.
  • blog-files/new-inspector/layers.png: Added.
  • blog-files/new-inspector/navigation-bar.png: Added.
  • blog-files/new-inspector/open-sign.png: Added.
  • blog-files/new-inspector/reasons.png: Added.
  • blog-files/new-inspector/save.png: Added.
  • blog-files/new-inspector/source-map.png: Added.
  • blog-files/new-inspector/styles.png: Added.
  • blog-files/new-inspector/toolbar-context-menu.png: Added.
  • blog-files/new-inspector/toolbar-docked.png: Added.
  • blog-files/new-inspector/toolbar.png: Added.
11:41 AM Changeset in webkit [151514] by leoyang@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Use RefPtr for HTMLInputElement inside CredentialTransformData
https://bugs.webkit.org/show_bug.cgi?id=117553

Reviewed by Carlos Garcia Campos.

In CredentialTransformData we should use RefPtr for
m_userNameElement, m_passwordElement and m_oldPasswordElement
because otherwise the elements could go away when the form
elements get destroyed.

Also add *const* for the parameter of CredentialTransformData::findPasswordFormFields().

No functionalities changed no new tests.

  • WebCoreSupport/CredentialTransformData.cpp:

(WebCore::CredentialTransformData::findPasswordFormFields):
(WebCore::CredentialTransformData::locateSpecificPasswords):

  • WebCoreSupport/CredentialTransformData.h:
11:28 AM Changeset in webkit [151513] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shaders] Animations and transitions should use validated custom programs
https://bugs.webkit.org/show_bug.cgi?id=117550

Run filters used for animations and transitions through RenderLayer::computeFilterOperations
in order to validate custom filter operations.

Patch by Ralph Thomas <ralpht@gmail.com> on 2013-06-12
Reviewed by Alexandru Chiculita.

No new tests as no platform can run custom filters with accelerated animations yet.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::startAnimation):
(WebCore::RenderLayerBacking::startTransition):

10:33 AM Changeset in webkit [151512] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Allow for toggling fullscreen on <video> elements
https://bugs.webkit.org/show_bug.cgi?id=117220

Patch by Ruth Fong <ruth_fong@apple.com> on 2013-06-12
Reviewed by Dean Jackson.

Source/WebCore:

This patch adds the ability for fullscreen
context menu item on <video> elements to switch between "Enter Fullscreen"
and "Exit Fullscreen" and behave appropriately.

No new tests. media/context-menu-action.html,
which has been disabled by bug 116651, is used to test context menus.

  • English.lproj/Localizable.strings: Add "Exit Fullscreen" string.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::toggleFullscreenState): Added to appropriately enter/exit fullscreen.

  • html/HTMLMediaElement.h:
  • page/ContextMenuController.cpp:
  • platform/ContextMenuItem.h:
  • platform/LocalizedStrings.cpp:
  • platform/LocalizedStrings.h:

Updated to rename variables more appropriately to reflect the toggle-ability of video fullscreen.

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::mediaIsInFullscreen): Added to check if an element
was a media element in fullscreen.
(WebCore::HitTestResult::toggleMediaFullscreenState): Added to hook into
HTMLMediaElement::toggleFullscreenState.

  • rendering/HitTestResult.h:

Source/WebKit2:

  • Shared/API/c/WKContextMenuItemTypes.h:
  • Shared/API/c/WKSharedAPICast.h:

Added variables to support the toggle-ability of the fullscreen
video context menu item.

10:32 AM Changeset in webkit [151511] by Csaba Osztrogonác
  • 2 edits
    3 deletes in trunk/LayoutTests

[ARM] Unreviewed gardening, unskip now passing tests and try to paint the bot green.

  • platform/qt-arm/TestExpectations:
  • platform/qt-arm/svg/W3C-SVG-1.1/paths-data-05-t-expected.txt: Removed.
  • platform/qt-arm/svg/W3C-SVG-1.1/paths-data-09-t-expected.txt: Removed.
  • platform/qt-arm/svg/batik/text/textOnPath3-expected.txt: Removed.
10:23 AM Changeset in webkit [151510] by sergio@webkit.org
  • 3 edits
    2 adds in trunk

Skipping {}, () and [] blocks while error recovering in CSS
https://bugs.webkit.org/show_bug.cgi?id=116071

Reviewed by Darin Adler.

From Blink r150201 and r150755 by <serya@chromium.org>

Source/WebCore:

Test: fast/css/parsing-expr-error-recovery.html

The CSS parser should properly recover from invalid {}, () and []
blocks skipping them instead of discarding the whole declaration
as invalid. This merge is actually made of two different changes
from Blink, the original one that fixes the bug and another one
which refactors a bit the code making it more legible.

  • css/CSSGrammar.y.in:

LayoutTests:

  • fast/css/parsing-expr-error-recovery-expected.txt: Added.
  • fast/css/parsing-expr-error-recovery.html: Added.
10:22 AM Changeset in webkit [151509] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

JSExport header documentation substitutes "semicolon" for "colon"
https://bugs.webkit.org/show_bug.cgi?id=117552

Patch by Conrad Shultz <Conrad Shultz> on 2013-06-12
Reviewed by Mark Hahnenberg.

  • API/JSExport.h:

Fix a couple typos.

10:17 AM Changeset in webkit [151508] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] Invalidate the ProcessLauncher when the process is terminated before it has finished launching
https://bugs.webkit.org/show_bug.cgi?id=117412

Reviewed by Anders Carlsson.

  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:

(WebKit::ProcessLauncher::terminateProcess): If process is still
launching just invalidate the launcher. Reset the process
identifier after killing the process.

10:11 AM Changeset in webkit [151507] by commit-queue@webkit.org
  • 9 edits in trunk

[BlackBerry] Remove dead WebDOM code
https://bugs.webkit.org/show_bug.cgi?id=113370

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-06-12
Reviewed by Anders Carlsson.

BlackBerry PR 347565
Internally reviewed by Charles Wei.

.:

  • Source/cmake/OptionsBlackBerry.cmake:

Source/WebCore:

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

  • Api/WebPage.cpp:
  • Api/WebPage.h:
  • WebCoreSupport/AboutDataEnableFeatures.in:
  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
10:01 AM Changeset in webkit [151506] by sergio@webkit.org
  • 5 edits in trunk/LayoutTests

[css exclusions] fast/css/variables/var-inside-shape.html is failing
https://bugs.webkit.org/show_bug.cgi?id=116059

Reviewed by Alexandru Chiculita.

Some shapes were incorrectly defined, there was a "rectange"
instead of a "rectangle" and also the number of parameters and
their types was wrong. Apart from that, both the CSS exclusions
and CSS variables settings were not enabled at runtime.

Some extra text was also added to the divs in order to verify that
the CSS exclusions are working properly.

  • fast/css/variables/var-inside-shape-expected.html:
  • fast/css/variables/var-inside-shape.html:
  • platform/efl/TestExpectations: Removed var-inside-shape.html.
  • platform/gtk/TestExpectations: Ditto.
9:46 AM Changeset in webkit [151505] by dbates@webkit.org
  • 10 edits
    1 copy
    3 adds in trunk

window.find() case-insensitive search doesn't match diacritical marks
https://bugs.webkit.org/show_bug.cgi?id=117353
<rdar://problem/8535227>

Patch by Daniel Bates <dabates@apple.com> on 2013-06-12
Reviewed by Darin Adler.

Source/WebCore:

Currently, a case-insensitive window.find() search will return true for a word w
(e.g. café) with diacritical characters when w appears on the page without
diacritical marks (e.g. cafe). This leads to bad results, especially when
searching for a non-English word (e.g. qué) where the presence of an accented
character(s) may change the meaning of the word. Instead window.find() should
return false when case-insensitively matching a word with diacritical marks to
the same word without diacritical marks.

Test: fast/text/find-diacritical-mark.html

  • editing/TextIterator.cpp:

(WebCore::SearchBuffer::SearchBuffer):

LayoutTests:

Added test to use window.find() to find a search string in text, where either
the search string or text (or both) contain diacritical characters.

Additionally, updated tests LayoutTests/fast/text/find-soft-hyphen.html
and LayoutTests/editing/execCommand/findString-diacriticals.html based on the
new behavior of window.find(). Moved function testFind() from LayoutTests/fast/text/script-tests/find-backwards.js
to its own file, LayoutTests/fast/text/resources/test-find.js, so that this function can
be used by both tests LayoutTests/fast/text/find-{backwards, diacritical-mark}.html.

  • LayoutTests/editing/execCommand/findString-diacriticals.html: Update test based on the new

behavior of window.find().

  • fast/text/find-backwards.html: Include external JavaScript file test-find.js.
  • fast/text/find-case-folding-expected.txt: Rebase result; expected failure.
  • fast/text/find-case-folding.html: Add comment to see bug #117548 with regards to expected failure.
  • fast/text/find-diacritical-mark-expected.txt: Added.
  • fast/text/find-diacritical-mark.html: Copied from LayoutTests/fast/text/find-backwards.html.
  • fast/text/find-soft-hyphen-expected.txt: Rebase result.
  • fast/text/resources/test-find.js: Added.

(testFind):

  • fast/text/script-tests/find-backwards.js: Moved function testFind() from here to

file fast/text/resources/test-find.js and modified it to take an additional argument to
toggle search case sensitivity.

  • fast/text/script-tests/find-diacritical-mark.js: Added.
  • fast/text/script-tests/find-soft-hyphen.js: Update test based on the new behavior of window.find().
9:30 AM Changeset in webkit [151504] by msaboff@apple.com
  • 29 edits in branches/dfgFourthTier/Source/JavaScriptCore

Unreviewed, rolled back in http://trac.webkit.org/changeset/151362.

I fixed that the llint exception process was happening in common slow paths
even when call via the baseline JIT. Also moved emitSlow_* methods to
be right after the corresponding emit_* method.

2013-06-07 Michael Saboff <msaboff@apple.com>

fourthTier: The baseline jit and LLint should use common slow paths
https://bugs.webkit.org/show_bug.cgi?id=116889

9:06 AM Changeset in webkit [151503] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Smarter algorithm to determine the backingstore rect
https://bugs.webkit.org/show_bug.cgi?id=117451

JIRA115644
https://jira.bbqnx.net/browse/BRWSR-7028

Patch by Jakob Petsovits <jpetsovits@blackberry.com> on 2013-06-12
Reviewed by Rob Buis.

So far, the backingstore tile geometry allocation was
pretty straightforward: We would start off from the
current viewport and append all available tiles into
the current scrolling direction from there.

This will usually work well enough, but has the downside
of discarding all the tiles in the opposite direction.
Also, tiles very close to the viewport will often get
discarded even if the user only scrolls very slowly.

This patch completely revamps the algorithm for
determining where the backingstore should be positioned.

The general idea is that we construct a "desired rect"
based on the viewport and inflate it into all four
directions according to the current scroll momentum.
This rectangle will be similarly large as a backingstore
tile geometry rectangle might be, by using the
approximate number of pixels that are available in the
given number of tiles.

The proportions for extending the rectangle from the
viewport are influenced by different factors, including
scroll momentum, viewport ratio, available space in the
overall contents rectangle, and natural bias for the
"down" direction.

In practice, this results in a backingstore that is
roughly evenly distributed around the viewport when no
movement is happening, and will gradually narrow down
and extend into the scroll direction at a higher momentum.

The final tile geometry is constructed by trying fit
the tiles into the desired rect in a way that maximizes
the area of its intersection. There are a few parameters
that can be tweaked, the ones in this patch seem to
handle most cases well enough to minimize checkerboarding.

As an additional bonus, a rectangle-based tiling strategy
can more easily be adopted for accelerated compositing,
which currently operates on a simpler algorithm that also
inflates the viewport but does not take scrolling into
account.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::BackingStorePrivate):
(BlackBerry::WebKit::BackingStorePrivate::expandedContentsSize):
(WebKit):
(BlackBerry::WebKit::BackingStorePrivate::nonOverscrolled):
(BlackBerry::WebKit::BackingStorePrivate::enclosingTileRect):
(BlackBerry::WebKit::BackingStorePrivate::desiredBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::mergeDesiredBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::largestTileRectForDesiredRect):
(BlackBerry::WebKit::BackingStorePrivate::scrollBackingStore):
(BlackBerry::WebKit::BackingStorePrivate::createSurfaces):

  • Api/BackingStore_p.h:

(BackingStorePrivate):

8:48 AM Changeset in webkit [151502] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt][CSS Regions] fast/regions/overflow-size-change-with-stacking-context.html fails
https://bugs.webkit.org/show_bug.cgi?id=97199

Unreviewed, Qt Gardening.

Unskip test that is now passing on the bots.

Patch by Javier Fernandez <jfernandez@igalia.com> on 2013-06-12

  • platform/qt/TestExpectations:
8:37 AM Changeset in webkit [151501] by mark.lam@apple.com
  • 3 edits in branches/dfgFourthTier

Merged from http://svn.webkit.org/repository/webkit/trunk:

------------------------------------------------------------------------
r148746 | jberlin@webkit.org | 2013-04-19 08:21:49 -0700 (Fri, 19 Apr 2013) | 3 lines

Fix expectations added in r148720.
------------------------------------------------------------------------

8:03 AM Changeset in webkit [151500] by mark.lam@apple.com
  • 23 edits
    4 deletes in branches/dfgFourthTier/Source

Unreviewed, rolled out r151456, r151420:

<http://trac.webkit.org/changeset/151420>

Source/JavaScriptCore:

It causes layout test failures.

Source/WebCore:

It causes layout test failures.

7:49 AM WebKitIDL edited by Christophe Dumez
Remove [IndexedGetter] and [NumericIndexedGetter] after r151499 (diff)
7:41 AM Changeset in webkit [151499] by Christophe Dumez
  • 58 edits in trunk/Source/WebCore

Support latest Web IDL indexed property getters
https://bugs.webkit.org/show_bug.cgi?id=117507

Reviewed by Kentaro Hara.

Support latest Web IDL indexed property getters:
http://www.w3.org/TR/WebIDL/#dfn-support-indexed-properties

Drop support for outdated [IndexedGetter] and [NumericIndexedGetter]
IDL extended attributes. Since the new getter format specifies the
return type, the bindings generator is now smart enough to know if
the indexed getter is numeric or not on its own.

Based on Blink r149564 by <kojih@chromium.org>.

No new tests, no behavior change.

  • Modules/filesystem/EntryArray.idl:
  • Modules/filesystem/EntryArraySync.idl:
  • Modules/gamepad/GamepadList.idl:
  • Modules/mediasource/SourceBufferList.idl:
  • Modules/speech/SpeechGrammarList.idl:
  • Modules/speech/SpeechRecognitionResult.idl:
  • Modules/speech/SpeechRecognitionResultList.idl:
  • bindings/scripts/CodeGenerator.pm:

(IsNumericType):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(GenerateGetOwnPropertyDescriptorBody):
(GetIndexedGetterFunction):
(GenerateHeader):
(GenerateImplementation):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/test/TestEventTarget.idl:
  • bindings/scripts/test/TestTypedArray.idl:
  • css/CSSRuleList.idl:
  • css/CSSStyleDeclaration.idl:
  • css/CSSValueList.idl:
  • css/MediaList.idl:
  • css/StyleSheetList.idl:
  • css/WebKitCSSFilterValue.idl:
  • css/WebKitCSSKeyframesRule.idl:
  • css/WebKitCSSTransformValue.idl:
  • dom/ClientRectList.idl:
  • dom/DOMNamedFlowCollection.idl:
  • dom/DOMStringList.idl:
  • dom/DataTransferItemList.idl:
  • dom/NamedNodeMap.idl:
  • dom/NodeList.idl:
  • dom/PropertyNodeList.idl:
  • dom/TouchList.idl:
  • fileapi/FileList.idl:
  • html/DOMSettableTokenList.idl:
  • html/DOMTokenList.idl:
  • html/HTMLAllCollection.idl:
  • html/HTMLCollection.idl:
  • html/HTMLFormControlsCollection.idl:
  • html/HTMLFormElement.idl:
  • html/HTMLPropertiesCollection.idl:
  • html/HTMLSelectElement.idl:
  • html/RadioNodeList.idl:
  • html/canvas/Float32Array.idl:
  • html/canvas/Float64Array.idl:
  • html/canvas/Int16Array.idl:
  • html/canvas/Int32Array.idl:
  • html/canvas/Int8Array.idl:
  • html/canvas/Uint16Array.idl:
  • html/canvas/Uint32Array.idl:
  • html/canvas/Uint8Array.idl:
  • html/canvas/Uint8ClampedArray.idl:
  • html/track/AudioTrackList.idl:
  • html/track/TextTrackCueList.idl:
  • html/track/TextTrackList.idl:
  • html/track/TextTrackRegionList.idl:
  • html/track/VideoTrackList.idl:
  • page/PerformanceEntryList.idl:
  • page/SpeechInputResultList.idl:
  • plugins/DOMMimeTypeArray.idl:
  • plugins/DOMPlugin.idl:
  • plugins/DOMPluginArray.idl:
7:37 AM Changeset in webkit [151498] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Coordinated Graphics] Remove unused headers in CoordinatedLayerTreeHostProxy
https://bugs.webkit.org/show_bug.cgi?id=117539

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-06-12
Reviewed by Noam Rosenthal.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
6:50 AM Changeset in webkit [151497] by kseo@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Unskipping passing tests.

  • platform/gtk-wk2/TestExpectations:
6:39 AM Changeset in webkit [151496] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] MiniBrowser to automatically download "non-showable" documents when left click in link
https://bugs.webkit.org/show_bug.cgi?id=117533

Patch by Andres Gomez <Andres Gomez> on 2013-06-12
Reviewed by Carlos Garcia Campos.

MiniBrowser now starts automatically the download of the documents
that cannot be shown just by WebKit itself on link left clicking.

  • MiniBrowser/gtk/BrowserWindow.c:

(webViewDecidePolicy): handled the
WEBKIT_POLICY_DECISION_TYPE_RESPONSE decision type too.

5:49 AM WebKitIDL edited by Christophe Dumez
Rename [CallWith] to [ConstructorCallWith] for interfaces (diff)
5:25 AM Changeset in webkit [151495] by Christophe Dumez
  • 22 edits in trunk/Source/WebCore

Rename [CallWith] to [ConstructorCallWith] for IDL interfaces
https://bugs.webkit.org/show_bug.cgi?id=117531

Reviewed by Kentaro Hara.

Rename [CallWith] to [ConstructorCallWith] for IDL interfaces as the
meaning is slightly different when [CallWith] is used for IDL operations
or attributes. This improves IDL readability a bit and makes it more
directly understandable.

Also removed [ConstructorCallWith] statements from interfaces with custom
constructors or no constructor, as this does not have any effect.

No new tests, no behavior change.

  • Modules/filesystem/FileWriter.idl:
  • Modules/mediasource/MediaSource.idl:
  • Modules/mediasource/SourceBufferList.idl:
  • Modules/mediastream/MediaStream.idl:
  • Modules/mediastream/RTCPeerConnection.idl:
  • Modules/notifications/Notification.idl:
  • Modules/speech/SpeechRecognition.idl:
  • Modules/speech/SpeechSynthesisUtterance.idl:
  • Modules/webaudio/OfflineAudioContext.idl:
  • Modules/websockets/WebSocket.idl:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorDefinition):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/test/TestInterface.idl:
  • dom/MessageChannel.idl:
  • fileapi/FileReader.idl:
  • html/MediaController.idl:
  • html/track/TextTrackCue.idl:
  • page/EventSource.idl:
  • workers/SharedWorker.idl:
  • workers/Worker.idl:
  • xml/XMLHttpRequest.idl:
4:44 AM Changeset in webkit [151494] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Set windows key-code for multimedia keys
https://bugs.webkit.org/show_bug.cgi?id=117535

Reviewed by Jocelyn Turcotte.

Map Qt Key-events to their defined windows keycode values.

  • platform/qt/PlatformKeyboardEventQt.cpp:

(WebCore::windowsKeyCodeForKeyEvent):

4:34 AM Changeset in webkit [151493] by sergio@webkit.org
  • 3 edits in trunk/Source/WebCore

[Soup] Use ResourceLoadPriority
https://bugs.webkit.org/show_bug.cgi?id=112902

Reviewed by Carlos Garcia Campos.

Use the ResourceLoadPriority from the ResourceRequest to set the
correnpondent priority to each SoupMessage.

No new tests required as there is no change in functionality,
we're just enabling a new feature in the underlying network stack.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::createSoupMessageForHandleAndRequest):

  • platform/network/soup/ResourceRequest.h:

(WebCore):
(WebCore::toSoupMessagePriority): Translates ResourceLoadPriority
to SoupMessagePriority.

1:51 AM Changeset in webkit [151492] by zandobersek@gmail.com
  • 4 edits in trunk

[GTK] Remove the WebCoreLayer(Gtk2).a archives before regenerating them
https://bugs.webkit.org/show_bug.cgi?id=116723

Reviewed by Carlos Garcia Campos.

Source/WebKit2:

  • GNUmakefile.am: When generating the WebCoreLayerGtk2.a archive from all the dependency archives, remove the

current archive (if any). Updating an existent archive in an incremental build is not bulletproof and can lead
to corrupt archives and subsequent build failures. On the other hand, the archive generation is not expensive
and produces a working archive without problems even on incremental builds.

Tools:

  • TestWebKitAPI/GNUmakefile.am: When generating the WebCoreLayer.a archive from all the dependency archives,

remove the current archive (if any). Updating an existent archive in an incremental build is not bulletproof
and can lead to corrupt archives and subsequent build failures. On the other hand, the archive generation is
not expensive and produces a working archive without problems even on incremental builds.

1:45 AM Changeset in webkit [151491] by zandobersek@gmail.com
  • 16 edits in trunk/Source

Remove memoryInfoEnabled, quantizedMemoryInfoEnabled settings
https://bugs.webkit.org/show_bug.cgi?id=117512

Reviewed by Darin Adler.

Source/WebCore:

  • page/Settings.in: Remove the memoryInfoEnabled and the quantizedMemoryInfoEnabled settings. These are not used

anywhere anymore after r151199 which simplified and moved the MemoryInfo interface under window.internals.

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::init): Remove the call to Settings::setMemoryInfoEnabled, the setting is being removed.

Source/WebKit/mac:

  • WebKit.order: Remove the memoryInfoEnabled entry.
  • WebView/WebPreferenceKeysPrivate.h: Remove WebKitMemoryInfoEnabledPreferenceKey.
  • WebView/WebPreferences.mm: Remove memoryInfoEnabled, setMemoryInfoEnabled methods.

(+[WebPreferences initialize]): Don't set the default value for the WebKitMemoryInfoEnabledPreferenceKey, the preference is being removed.

  • WebView/WebPreferencesPrivate.h: Remove memoryInfoEnabled, setMemoryInfoEnabled method declarations.
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]): Remove the call to Settings::setMemoryInfoEnabled, the setting is being removed.

Source/WebKit/win:

  • Interfaces/IWebPreferencesPrivate.idl: Remove memoryInfoEnabled, setMemoryInfoEnabled entries.
  • WebPreferenceKeysPrivate.h: Remove the WebKitMemoryInfoEnabledPreferenceKey definition.
  • WebPreferences.cpp: Remove the memoryInfo, setMemoryInfoEnabled methods.

(WebPreferences::initializeDefaultSettings): Remove the WebKitMemoryInfoEnabledPreferenceKey entry initialization.

  • WebPreferences.h: Remove the memoryInfo, setMemoryInfoEnabled method declarations.
  • WebView.cpp:

(WebView::notifyPreferencesChanged): Remove the Settings::setMemoryInfoEnabled call, the method is being removed.

1:36 AM Changeset in webkit [151490] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix.

  • GNUmakefile.list.am: Adding missing build targets to the plugin process after r151480.
1:09 AM Changeset in webkit [151489] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[GTK] Parameter 'pseudoElement' from function 'webkit_dom_dom_window_get_computed_style' should be allowed to be NULL
https://bugs.webkit.org/show_bug.cgi?id=117332

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2013-06-12
Reviewed by Xan Lopez.

Source/WebCore:

Add parameter 'pseudoElement' to the list of parameters that are allowed to
be NULL.

  • bindings/scripts/CodeGeneratorGObject.pm:

(GetGReturnMacro):

Source/WebKit/gtk:

Add test for function 'webkit_dom_dom_window_get_computed_style'.

  • tests/testdomdomwindow.c:

(dom_dom_window_fixture_setup): Test setup for function
'dom_dom_window_get_computed_style'.
(dom_dom_window_fixture_teardown): Test teardown for function
'dom_dom_window_get_computed_style'.
(loadedCallback):
(test_dom_dom_window_get_computed_style): Checks function
'dom_dom_window_get_computed_style'.
(main):

12:20 AM Changeset in webkit [151488] by sergio@webkit.org
  • 4 edits in trunk

Add CSS parsing recovery to functions
https://bugs.webkit.org/show_bug.cgi?id=117500

Reviewed by Andreas Kling.

From Blink r150205 by <serya@chromium.org>

Source/WebCore:

Add parsing recovery capabilities to functions. Errors were
correctly detected without this change but then the whole
declaration was invalidated. By using expr_recovery to handle them
we can recover from those errors and go on with the parsing.

  • css/CSSGrammar.y.in:

LayoutTests:

  • fast/css/parsing-error-recovery.html: added some test cases for

parsing recovery inside functions.

Jun 11, 2013:

11:38 PM WebKitIDL edited by Christophe Dumez
Bring back [ConstructorRaisesException] (diff)
11:05 PM Changeset in webkit [151487] by Christophe Dumez
  • 16 edits in trunk/Source/WebCore

Unreviewed, rolling out r151378.
http://trac.webkit.org/changeset/151378
https://bugs.webkit.org/show_bug.cgi?id=117400

Decreased IDL readability a bit.

  • Modules/encryptedmedia/MediaKeys.idl:
  • Modules/mediastream/RTCIceCandidate.idl:
  • Modules/mediastream/RTCPeerConnection.idl:
  • Modules/mediastream/RTCSessionDescription.idl:
  • Modules/webaudio/OfflineAudioContext.idl:
  • Modules/websockets/WebSocket.idl:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorDefinition):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/test/TestInterface.idl:
  • bindings/scripts/test/TestNamedConstructor.idl:
  • css/WebKitCSSMatrix.idl:
  • html/HTMLOptionElement.idl:
  • page/EventSource.idl:
  • workers/SharedWorker.idl:
  • workers/Worker.idl:
10:29 PM Changeset in webkit [151486] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/LayoutTests

Unreviewed, EFL Gardening. Unskip fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html
for efl-wk2. Because Ubuntu 13.04 solves issues related to xvfb. However, EFL WK1 doesn't support
webgl yet. So, it needs to be moved to efl-wk1 TestExpectations.

  • platform/efl-wk1/TestExpectations:
  • platform/efl/TestExpectations:
10:10 PM Changeset in webkit [151485] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/LayoutTests

Unreviewed, EFL Gardening.

EFL WK2 supports fast/canvas/webgl/read-pixels-test.html because Ubuntu 13.04 solves issues related to xvfb.
However, EFL WK1 doesn't support webgl yet. So, it is moved to efl-wk1 TestExpectations.

  • platform/efl-wk1/TestExpectations:
  • platform/efl/TestExpectations:
8:09 PM Changeset in webkit [151484] by barraclough@apple.com
  • 7 edits in trunk/Source/WebKit2

Add NSSupportsAppNap keys to WebProcess, PluginProcess
https://bugs.webkit.org/show_bug.cgi?id=117528

Reviewed by Mark Rowe.

  • PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
    • add NSSupportsAppNap key.
7:54 PM Changeset in webkit [151483] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Window resize should close the popupmenu
https://bugs.webkit.org/show_bug.cgi?id=117391

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-06-11
Reviewed by Christophe Dumez.

Added the code to close the popup when main window is resized.

  • MiniBrowser/efl/main.c:

(on_window_resize):

6:47 PM Changeset in webkit [151482] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed, EFL gardening. Unskip passing tests for new EFL bots.

fast/parser/document-write-fighting-eof.html
fast/parser/document-write-partial-entity-before-load.html

  • platform/efl/TestExpectations:
6:40 PM Changeset in webkit [151481] by ggaren@apple.com
  • 90 edits
    4 deletes in branches/dfgFourthTier

Rolled back in <http://trac.webkit.org/changeset/151363>.

Source/JavaScriptCore:

Rubber stamped by Phil Pizlo.

The ASSERTs were due to the bytecode parser performing a
StructureTransitionWatchpoint optimization in a case where the CFA
wouldn't because the CFA could prove that the watchpoint would contradict
a preceding CheckStructure.

I fixed this by removing the bytecode parser optimization: now, we fully
rely on CFA and constant folding to optimize structure checks when
possible.

I verified that there's no performance change vs doing the optimization
in the bytecode parser. (The optimization is very simple, so this is not
surprising.)

LayoutTests:

Rubber stamped by Phil Pizlo.

6:12 PM Changeset in webkit [151480] by oliver@apple.com
  • 6 edits
    2 adds in trunk/Source/WebKit2

Make sure we aren't throttling plugin timers during initialisation and destruction
https://bugs.webkit.org/show_bug.cgi?id=117522

Reviewed by Darin Adler.

Add a new ActivityAssertion RAII class to handle allowing/disallowing
timer throttling. Then make use of it during plugin initialisation
and destruction, as well as any synchronous messages (on the basis
that if another process is waiting for the plugin we shouldn't be
throttling timers).

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::didReceiveSyncMessage):
(WebKit::WebProcessConnection::destroyPlugin):
(WebKit::WebProcessConnection::createPlugin):

  • Shared/ActivityAssertion.cpp: Added.

(WebKit::ActivityAssertion::ActivityAssertion):
(WebKit::ActivityAssertion::~ActivityAssertion):

  • Shared/ActivityAssertion.h: Added.
  • Target.pri:
  • WebKit2.xcodeproj/project.pbxproj:
4:51 PM Changeset in webkit [151479] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit/win

[Windows] Unreviewed build correction after r151440.

  • AccessibleBase.cpp:

(MSAARole): Switch back to emiting ROLE_SYSTEM_LISTITEM for
ListItemRole Web role to avoid breaking existing test.

4:16 PM Changeset in webkit [151478] by roger_fong@apple.com
  • 1 edit
    1 delete in trunk/WebKitLibraries

Unreviewed. Another part of rollout of r151408.

  • win/tools64: Removed.
  • win/tools64/scripts: Removed.
  • win/tools64/vsprops: Removed.
3:23 PM Changeset in webkit [151477] by Lucas Forschler
  • 2 edits in tags/Safari-537.44.1/WebKitLibraries

Merged r151474. <rdar://problem/14120726>

2:59 PM Changeset in webkit [151476] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Have to invalidate the mute button when changing the volume
https://bugs.webkit.org/show_bug.cgi?id=117464

Reviewed by Darin Adler.

Merge https://chromium.googlesource.com/chromium/blink/+/c4c685c82908449526fd8c251cc551e729ebed08
but without a test since the test doesn't work in WebKit.

  • html/shadow/MediaControls.cpp:

(WebCore::MediaControls::changedVolume):

2:55 PM Changeset in webkit [151475] by mvujovic@adobe.com
  • 3 edits
    2 adds in trunk

[CSS Regions] Regions don't create a stacking context for their contents
https://bugs.webkit.org/show_bug.cgi?id=114268

Reviewed by Alexandru Chiculita.

Source/WebCore:

Paint the region content (from RenderFlowThread) during the background phase instead of the
foreground phase.

Let's assume there is a region and a sibling element. The sibling partially overlaps the
region and appears after the region in DOM order.

Before this patch, we would paint in this order:
1) Region background
2) Sibling background
3) Region content
4) Sibling content

As a result, the sibling background would incorrectly paint between the region
background and the region content. Instead, the sibling background should paint over the
region background and the region content.

After this patch, we paint in this order:
1) Region background
2) Region content
3) Sibling background
4) Sibling content

Test: fast/regions/region-sibling-paint-order.html

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::paintObject):

LayoutTests:

  • fast/regions/region-sibling-paint-order-expected.html: Added.
  • fast/regions/region-sibling-paint-order.html: Added.
2:46 PM Changeset in webkit [151474] by roger_fong@apple.com
  • 2 edits in trunk/WebKitLibraries

Unreviewed. WinTools makefile fix.

  • win/tools32/WinTools.make:
2:43 PM Changeset in webkit [151473] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION: (r149232) videos on disney.com are initially scrambled on load
https://bugs.webkit.org/show_bug.cgi?id=117517

Reviewed by Eric Carlson.

Set a background color on the AVPlayerLayer to avoid corruption when no
frames are available to display.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer):

2:23 PM Changeset in webkit [151472] by achristensen@apple.com
  • 1 edit
    1 delete in trunk/Tools

Removed old broken code coverage tool.
https://bugs.webkit.org/show_bug.cgi?id=117520

Reviewed by Sam Weinig.

  • CodeCoverage: Removed.
  • CodeCoverage/README: Removed.
  • CodeCoverage/amber.png: Removed.
  • CodeCoverage/cov.py: Removed.
  • CodeCoverage/emerald.png: Removed.
  • CodeCoverage/gcov.css: Removed.
  • CodeCoverage/glass.png: Removed.
  • CodeCoverage/regenerate-coverage-display: Removed.
  • CodeCoverage/ruby.png: Removed.
  • CodeCoverage/run-generate-coverage-data: Removed.
  • CodeCoverage/snow.png: Removed.
2:18 PM Changeset in webkit [151471] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

Use HTMLElementFactory to create equivalent elements in WebVTTElement
https://bugs.webkit.org/show_bug.cgi?id=117423

Reviewed by Eric Carlson.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/3d60bec8e5dabfe877c482797d9ef430bfde31

This change forces the calls through the factory so that we create appropriate sub-classes based upon the passed tag name,
rather than just creating a concrete HTMLElement class with an inappropriate tag name.

Test: media/track/getCueAsHTMLCrash.html

  • html/track/WebVTTElement.cpp:

(WebCore::WebVTTElement::createEquivalentHTMLElement):

LayoutTests:

  • media/track/getCueAsHTMLCrash-expected.txt: Added.
  • media/track/getCueAsHTMLCrash.html: Added.
2:09 PM Changeset in webkit [151470] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Split SelectorDataList::executeSingleTagNameSelectorData() into the 4 kinds of traversal
https://bugs.webkit.org/show_bug.cgi?id=117486

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-06-11
Reviewed by Ryosuke Niwa.

Since this is pretty common, split the name selector to have the constant conditions
outside the traversal.

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::executeSingleTagNameSelectorData):

1:55 PM Changeset in webkit [151469] by eric.carlson@apple.com
  • 11 edits in trunk

[Mac] Update text track menu
https://bugs.webkit.org/show_bug.cgi?id=117351

Reviewed by Darin Adler.

Source/WebCore:

No new tests, existing tests updated.

  • English.lproj/Localizable.strings: Update the menu title.
  • page/CaptionUserPreferencesMac.mm: System language is no longer needed.
  • platform/LocalizedStrings.cpp: Ditto.
  • platform/LocalizedStrings.h:

LayoutTests:

  • media/video-controls-captions-trackmenu-localized.html:
  • media/video-controls-captions-trackmenu-sorted.html:
  • platform/mac-lion/media/video-controls-captions-trackmenu-localized-expected.txt:
  • platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt:
  • platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt:
1:53 PM Changeset in webkit [151468] by mhahnenberg@apple.com
  • 3 edits in branches/dfgFourthTier/Source/JavaScriptCore

isContravenedByStructure is backwards
https://bugs.webkit.org/show_bug.cgi?id=117366

We should be checking if arrayModeForStructure(structure) is a
subset of arrayModesThatPassFiltering(), not the other way around.
Also renamed isContravenedByStructure to better reflect what the
function is trying to determine.

Rubber stamped by Filip Pizlo.

  • dfg/DFGArrayMode.h:

(JSC::DFG::ArrayMode::structureWouldPassArrayModeFiltering):

  • dfg/DFGTypeCheckHoistingPhase.cpp:

(JSC::DFG::TypeCheckHoistingPhase::noticeStructureCheckAccountingForArrayMode):
(JSC::DFG::ArrayTypeCheck::isContravenedByValue):

1:43 PM Changeset in webkit [151467] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Fix the element type in the selector checkers
https://bugs.webkit.org/show_bug.cgi?id=117450

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-06-11
Reviewed by Anders Carlsson.

  • css/SelectorCheckerFastPath.cpp:

(WebCore::HTMLNames::checkClassValue):

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::executeSingleClassNameSelectorData):

1:40 PM Changeset in webkit [151466] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Clean up the initializer mess in Document
https://bugs.webkit.org/show_bug.cgi?id=117448

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-06-11
Reviewed by Ryosuke Niwa.

Basic cleaning from
https://chromium.googlesource.com/chromium/blink/+/e54ba8d3b62b0245ecdf2f3ec11cd33b4035a4d7

  • dom/Document.cpp:

(WebCore::Document::Document):

  • dom/Document.h:
1:39 PM Changeset in webkit [151465] by timothy@apple.com
  • 2 edits in trunk/Tools

Have build-webkit build the WebInspectorUI project.

  • Scripts/build-webkit:
1:12 PM Changeset in webkit [151464] by commit-queue@webkit.org
  • 1 edit
    1 move
    26 deletes in trunk/WebKitLibraries

Unreviewed, rolling out r151408.
http://trac.webkit.org/changeset/151408
https://bugs.webkit.org/show_bug.cgi?id=117519

Opting for a different approach (Requested by rfong on
#webkit).

  • win/WinTools.make: Removed.
  • win/tools32/WinTools.make: Renamed from WebKitLibraries/win/tools64/WinTools.make.
  • win/tools64/scripts/COPYRIGHT-END-YEAR: Removed.
  • win/tools64/scripts/VERSION: Removed.
  • win/tools64/scripts/auto-version.sh: Removed.
  • win/tools64/scripts/feature-defines.sh: Removed.
  • win/tools64/vsprops/FeatureDefines.props: Removed.
  • win/tools64/vsprops/FeatureDefines.vsprops: Removed.
  • win/tools64/vsprops/FeatureDefinesCairo.props: Removed.
  • win/tools64/vsprops/FeatureDefinesCairo.vsprops: Removed.
  • win/tools64/vsprops/WinCairo.props: Removed.
  • win/tools64/vsprops/WinCairo.vsprops: Removed.
  • win/tools64/vsprops/cURL.props: Removed.
  • win/tools64/vsprops/cURL.vsprops: Removed.
  • win/tools64/vsprops/common.props: Removed.
  • win/tools64/vsprops/common.vsprops: Removed.
  • win/tools64/vsprops/debug.props: Removed.
  • win/tools64/vsprops/debug.vsprops: Removed.
  • win/tools64/vsprops/debug_all.vsprops: Removed.
  • win/tools64/vsprops/debug_wincairo.props: Removed.
  • win/tools64/vsprops/debug_wincairo.vsprops: Removed.
  • win/tools64/vsprops/debugsuffix.props: Removed.
  • win/tools64/vsprops/production.props: Removed.
  • win/tools64/vsprops/production.vsprops: Removed.
  • win/tools64/vsprops/release.props: Removed.
  • win/tools64/vsprops/release.vsprops: Removed.
  • win/tools64/vsprops/releaseproduction.vsprops: Removed.
1:08 PM Changeset in webkit [151463] by robert@webkit.org
  • 6 edits
    3 adds in trunk/LayoutTests

Rebaseline results after r151451

Unreviewed, gardening.

  • platform/efl/fast/forms/button-positioned-expected.txt:
  • platform/efl/fast/forms/input-appearance-preventDefault-expected.txt:
  • platform/efl/fast/replaced/width-and-height-of-positioned-replaced-elements-expected.txt: Added.
  • platform/gtk/fast/forms/button-positioned-expected.txt:
  • platform/gtk/fast/forms/input-appearance-preventDefault-expected.png:
  • platform/gtk/fast/forms/input-appearance-preventDefault-expected.txt:
  • platform/gtk/fast/replaced/width-and-height-of-positioned-replaced-elements-expected.txt: Added.
  • platform/win/fast/forms/onselect-textfield-expected.txt: Added.
1:03 PM Changeset in webkit [151462] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Add an option to run-webkit-tests to skip java dependency check
https://bugs.webkit.org/show_bug.cgi?id=117516

Reviewed by Andreas Kling.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args):

  • Scripts/webkitpy/port/mac.py:

(MacPort._check_port_build):

1:02 PM Changeset in webkit [151461] by achristensen@apple.com
  • 2 edits in trunk/Tools

https://bugs.webkit.org/show_bug.cgi?id=117514
Removed extra Xcode code coverage flags.

Reviewed by Sam Weinig.

  • Scripts/webkitdirs.pm:

(XcodeCoverageSupportOptions):

12:58 PM Changeset in webkit [151460] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Set the font size for in-band captions on the display box, not the :cue.
https://bugs.webkit.org/show_bug.cgi?id=117515

Reviewed by Eric Carlson.

Make the in-band font size behavior match the out-of-band behavior.

  • html/track/TextTrackCueGeneric.cpp:

(WebCore::TextTrackCueGeneric::setFontSize):

12:53 PM Changeset in webkit [151459] by Brent Fulgham
  • 10 edits
    1 add in trunk

Source/WebCore: [Windows] Implement 'attributeValue' accessor to support testing.
https://bugs.webkit.org/show_bug.cgi?id=117513

Reviewed by Anders Carlsson.

  • WebCore.vcxproj/WebCore.vcxproj: Add new implementation file.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • accessibility/win/AccessibilityObjectWrapperWin.cpp: Added.
  • accessibility/win/AccessibilityObjectWrapperWin.h: Add declaration

Source/WebKit/win: [Windows] Implement 'attributeValue' accessor to support testing.
https://bugs.webkit.org/show_bug.cgi?id=117513

Reviewed by Anders Carlsson.

  • AccessibleBase.cpp:

(AccessibleBase::attributeValue): Added.

  • AccessibleBase.h: Added method declaration.
  • Interfaces/AccessibleComparable.idl: New accessor interface.

Tools: [Windows] Implement 'attributeValue' accessor to support testing
https://bugs.webkit.org/show_bug.cgi?id=117513

Reviewed by Anders Carlsson.

  • DumpRenderTree/win/AccessibilityControllerWin.cpp:

(comparableObject): Move earlier in file.
(findAccessibleObjectById): New implemenation.
(AccessibilityController::accessibleElementById): New implementation.

12:49 PM Changeset in webkit [151458] by zandobersek@gmail.com
  • 11 edits in trunk/LayoutTests

Unreviewed GTK gardening. Rebaselining various tests that are at the moment failing and need the new baseline.

  • platform/gtk/editing/deleting/delete-block-merge-contents-001-expected.txt:
  • platform/gtk/editing/deleting/delete-block-merge-contents-019-expected.txt:
  • platform/gtk/editing/deleting/delete-block-merge-contents-020-expected.txt:
  • platform/gtk/editing/pasteboard/4944770-2-expected.txt:
  • platform/gtk/editing/pasteboard/8145-2-expected.txt:
  • platform/gtk/editing/pasteboard/paste-line-endings-006-expected.txt:
  • platform/gtk/editing/pasteboard/paste-text-008-expected.txt:
  • platform/gtk/editing/pasteboard/paste-text-at-tabspan-003-expected.txt:
  • platform/gtk/editing/pasteboard/paste-xml-expected.txt:
  • platform/gtk/http/tests/w3c/webperf/approved/navigation-timing/html/test_timing_xserver_redirect-expected.txt:
12:37 PM Changeset in webkit [151457] by Lucas Forschler
  • 1 edit
    1 copy
    2 deletes in tags/Safari-537.44.1/WebKitLibraries

Rollout of r151408.

12:20 PM Changeset in webkit [151456] by mark.lam@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

Removed unused local variable to fix cab build.

Unreviewed.

  • interpreter/StackIterator.cpp:

(JSC::StackIterator::Frame::logicalFrame):

12:17 PM Changeset in webkit [151455] by timothy@apple.com
  • 2 edits in trunk

Add WebInspectorUI to the Makefile.

Reviewed by Mark Rowe.

  • Source/Makefile:
12:16 PM Changeset in webkit [151454] by timothy@apple.com
  • 5 edits in trunk/Source

Update the framework bundle identifier for the Web Inspector.

Reviewed by Mark Rowe.

Source/WebKit/mac:

  • WebCoreSupport/WebInspectorClient.mm:

(useWebKitWebInspector):
(WebInspectorFrontendClient::localizedStringsURL):
(-[WebInspectorWindowController inspectorPagePath]):

Source/WebKit2:

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::inspectorReallyUsesWebKitUserInterface):
(WebKit::WebInspectorProxy::inspectorPageURL):
(WebKit::WebInspectorProxy::inspectorBaseURL):

  • WebProcess/WebPage/mac/WebInspectorMac.mm:

(WebKit::inspectorReallyUsesWebKitUserInterface):
(WebKit::WebInspector::localizedStringsURL):

12:16 PM Changeset in webkit [151453] by timothy@apple.com
  • 604 adds in trunk/Source/WebInspectorUI

Open Source the Safari Web Inspector back to WebKit.

12:06 PM Changeset in webkit [151452] by Lucas Forschler
  • 1 edit
    30 copies
    1 delete in tags/Safari-537.44.1/WebKitLibraries

Merged r151408. <rdar://problem/14097829>

12:03 PM Changeset in webkit [151451] by robert@webkit.org
  • 16 edits
    6 adds in trunk

Positioned Replaced Elements That Aren't RenderReplaced get Incorrect Width
https://bugs.webkit.org/show_bug.cgi?id=93735

Reviewed by Darin Adler.

Source/WebCore:

Replaced elements that aren't RenderReplaced aren't |isReplaced| and don't have an
intrinsic height or width. This causes them to go down the wrong height and width computation
path in RenderBox when they are absolute positioned.

The notion of |isReplaced| is entwined with the notion of being |isInline| so it isn't really
possible to make them isReplaced without re-wiring a lot of code. So instead use an ad-hoc definition
of isReplacedElement in RenderBox to bring all replaced elements into the height and width calculation.
To make sure we get the right height and width in there, give non-RenderReplaced replaced renderers
the helpers for returning their approximation of intrinsic height and width.

Test: fast/replaced/width-and-height-of-positioned-replaced-elements.html

  • rendering/RenderBox.cpp:

(WebCore::isReplacedElement):
(WebCore::RenderBox::computePositionedLogicalWidth):
(WebCore::RenderBox::computePositionedLogicalHeight):

  • rendering/RenderBox.h:

(WebCore::RenderBox::intrinsicSize):

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

(WebCore::RenderListBox::RenderListBox):
(WebCore::RenderListBox::computeLogicalHeight):

  • rendering/RenderListBox.h:
  • rendering/RenderMenuList.h:
  • rendering/RenderReplaced.h:
  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::RenderTextControl):
(WebCore::RenderTextControl::computeLogicalHeight):

  • rendering/RenderTextControl.h:

LayoutTests:

  • fast/forms/onselect-textfield-expected.txt:
  • fast/replaced/width-and-height-of-positioned-replaced-elements-expected.png: Added.
  • fast/replaced/width-and-height-of-positioned-replaced-elements-expected.txt: Added.
  • fast/replaced/width-and-height-of-positioned-replaced-elements.html: Added.
  • platform/mac-wk2/fast/replaced/width-and-height-of-positioned-replaced-elements-expected.txt: Added.
  • platform/mac/fast/forms/button-positioned-expected.txt:
  • platform/mac/fast/forms/input-appearance-preventDefault-expected.txt:
  • platform/mac/fast/replaced/width-and-height-of-positioned-replaced-elements-expected.txt: Added.
  • platform/qt/fast/forms/button-positioned-expected.txt:
  • platform/qt/fast/forms/input-appearance-preventDefault-expected.txt:
12:02 PM Changeset in webkit [151450] by Lucas Forschler
  • 4 edits in tags/Safari-537.44.1/Source

Versioning.

11:48 AM Changeset in webkit [151449] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

There are unused variables in ApplyStyleCommand::mergeEndWithNextIfIdentical and ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds
https://bugs.webkit.org/show_bug.cgi?id=117475

Reviewed by Andreas Kling.

Removed.

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds):

11:48 AM Changeset in webkit [151448] by robert@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Add baselines for test added in r151444

Unreviewed.

  • platform/gtk/fast/repaint/table-cell-collapsed-border-scroll-expected.txt: Added.
  • platform/win/fast/repaint/table-cell-collapsed-border-scroll-expected.txt: Added.
11:48 AM Changeset in webkit [151447] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

Do not filter cookies requested through the CookieStorageShim.
https://bugs.webkit.org/show_bug.cgi?id=117511
<rdar://problem/13603433>

Reviewed by Beth Dakin.

Since the shim function is called when the underlying media engine is
creating an HTTPRequest, use CookieRequestHeaderFieldValue (which does
not filter out HTTP-only cookies) rather than CookiesForDOM (which does).

  • Shared/mac/CookieStorageShim.cpp:

(WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):

11:33 AM Changeset in webkit [151446] by robert@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix typo in r151445

Unreviewed build fix.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):

11:22 AM Changeset in webkit [151445] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove redundant calls to ceilToFloat in RenderBlock::computeInlinePreferredLogicalWidths
https://bugs.webkit.org/show_bug.cgi?id=117490

Reviewed by Andreas Kling.

Merge https://chromium.googlesource.com/chromium/blink/+/be336b14325b2938ff6a4fb6191073a6e717a57c.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):

11:11 AM Changeset in webkit [151444] by robert@webkit.org
  • 3 edits
    4 adds in trunk

Painting collapsed borders during scrolling
https://bugs.webkit.org/show_bug.cgi?id=85658

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/repaint/table-cell-collapsed-border-scroll.html

WHen painting collapsed borders we need to paint the borders of the row above
the topmost dirtied row so that we compute the correct value for the dirtied row's collapsed border.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::paintObject):

LayoutTests:

  • fast/repaint/table-cell-collapsed-border-scroll-expected.txt: Added.
  • fast/repaint/table-cell-collapsed-border-scroll.html: Added.
  • platform/qt/fast/repaint/table-cell-collapsed-border-scroll-expected.png: Added.
10:49 AM Changeset in webkit [151443] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Type check hoisting phase has a dead if statement
https://bugs.webkit.org/show_bug.cgi?id=117510

Reviewed by Geoffrey Garen.

  • dfg/DFGTypeCheckHoistingPhase.cpp:

(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantArrayChecks):

10:09 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
Only bug fixes are allowed in the stable branch (diff)
10:08 AM Changeset in webkit [151442] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.0.3

Tagging the WebKitGTK+ 2.0.3 release

9:37 AM Changeset in webkit [151441] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

[curl] Custom HTTP method support
https://bugs.webkit.org/show_bug.cgi?id=117302

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-06-11
Reviewed by Kenneth Rohde Christiansen.

No new tests, already covered by existing ones like:
http/tests/xmlhttprequest/workers/methods.html
http/tests/xmlhttprequest/workers/methods-async.html

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::ResourceHandleManager::initializeHandle):

8:32 AM Changeset in webkit [151440] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit/win

[Windows] Provide MSAA mappings for more WebCore roles.
https://bugs.webkit.org/show_bug.cgi?id=117389

Reviewed by Chris Fleizach.

  • AccessibleBase.cpp:

(MSAARole): Add additional mappings between WebCore roles and MSAA roles.

8:14 AM Changeset in webkit [151439] by commit-queue@webkit.org
  • 4 edits in trunk

Remove leftover wxWebkit code
https://bugs.webkit.org/show_bug.cgi?id=117471

Patch by Seokju Kwon <Seokju Kwon> on 2013-06-11
Reviewed by Andreas Kling.

.:

  • Source/cmake/WebKitPackaging.cmake:

Source/WebKit2:

  • Scripts/generate-forwarding-headers.pl:
8:09 AM Changeset in webkit [151438] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

editing/undo/undo-after-event-edited.html can be flaky
https://bugs.webkit.org/show_bug.cgi?id=117461

Reviewed by Andreas Kling.

Merge https://chromium.googlesource.com/chromium/blink/+/515de860730b34289df5805b40adb2535a9a8ba1

  • editing/undo/undo-after-event-edited.html:
8:06 AM Changeset in webkit [151437] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Remove 'using namespace std'
https://bugs.webkit.org/show_bug.cgi?id=117498

Patch by Seokju Kwon <Seokju Kwon> on 2013-06-11
Reviewed by Anders Carlsson.

No new tests, no behavior change.

  • inspector/InspectorAgent.cpp: Remove unneeded 'using namespace std'.
  • inspector/InspectorFrontendClientLocal.cpp: Use explicit std:: qualifiers instead.

(WebCore::InspectorFrontendClientLocal::constrainedAttachedWindowHeight):
(WebCore::InspectorFrontendClientLocal::constrainedAttachedWindowWidth):

  • inspector/InspectorFrontendHost.cpp: Remove unneeded 'using namespace std'.
  • inspector/InspectorPageAgent.cpp: Remove unneeded 'using namespace std'.
7:42 AM Changeset in webkit [151436] by zarvai@inf.u-szeged.hu
  • 4 edits
    2 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipping passing tests. Generate new baseline where needed.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-06-11

  • platform/qt-5.0-wk1/TestExpectations:
  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt-5.0-wk2/fast/images/paletted-png-with-color-profile-expected.png: Added.
  • platform/qt-5.0-wk2/fast/images/paletted-png-with-color-profile-expected.txt: Added.
  • platform/qt/TestExpectations:
6:45 AM Changeset in webkit [151435] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.0

Unreviewed. Update NEWS and Versions.m4 for 2.0.3 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.0.3.
6:28 AM WebKitIDL edited by Christophe Dumez
Remove [NamedGetter] after r151434 (diff)
6:04 AM Changeset in webkit [151434] by Christophe Dumez
  • 18 edits in trunk/Source/WebCore

Support latest Web IDL named property getters
https://bugs.webkit.org/show_bug.cgi?id=117403

Reviewed by Kentaro Hara.

Add support for the latest Web IDL named property getters to the JSC
bindings generator:
http://www.w3.org/TR/WebIDL/#idl-named-properties

Drop support for outdated [NamedGetter] IDL extended attribute.

Support for other kinds of named properties will be added in later
patches. This patch only brings named property getters.

This patch is based on Blink r149247 by kojih@chromium.org.

No new tests, no behavior change.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(GenerateGetOwnPropertyDescriptorBody):
(GetSpecialAccessorFunctionForType):
(GetNamedGetterFunction):
(GenerateHeader):
(GenerateImplementation):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/IDLParser.pm:

(applyTypedefs):
(parseSpecialOperation):
(parseSpecials):
(applyMemberList):

  • bindings/scripts/test/TestEventTarget.idl:
  • css/StyleSheetList.idl:
  • dom/DOMNamedFlowCollection.idl:
  • dom/DOMStringMap.idl:
  • dom/NamedNodeMap.idl:
  • dom/NodeList.idl:
  • html/HTMLAllCollection.idl:
  • html/HTMLCollection.idl:
  • html/HTMLFormControlsCollection.idl:
  • html/HTMLPropertiesCollection.idl:
  • plugins/DOMMimeTypeArray.idl:
  • plugins/DOMPlugin.idl:
  • plugins/DOMPluginArray.idl:
  • storage/Storage.idl:
5:12 AM Changeset in webkit [151433] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Add fallback for EWK2UnitTestBase if opengl is not available.
https://bugs.webkit.org/show_bug.cgi?id=117504

Patch by Changhyup Jwa <ch.jwa@samsung.com> on 2013-06-11
Reviewed by Christophe Dumez.

There're many fails on efl webkit2 unit test if opengl is not available.
So, add fallback to non-opengl evas engine.

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:

(EWK2UnitTest::EWK2UnitTestBase::SetUp):

3:47 AM Changeset in webkit [151432] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0

Unreviewed. Rename gobject_introspection_required variable.

As gobject_introspection_required_version for consistency with all
other required_version variables.

  • Source/autotools/FindDependencies.m4:
  • Source/autotools/Versions.m4:
2:31 AM Changeset in webkit [151431] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit/gtk

Merge r150182 - [GTK] TargetFrame and innerNodeFrame confused
https://bugs.webkit.org/show_bug.cgi?id=102907

Reviewed by Martin Robinson.

  • webkit/webkithittestresult.cpp:

(WebKit::kit):

1:48 AM Changeset in webkit [151430] by mihnea@adobe.com
  • 4 edits in trunk/LayoutTests

[Qt][EFL][GTK]fast/regions/overflow-size-change-with-stacking-context-rtl.html fails after r151202
https://bugs.webkit.org/show_bug.cgi?id=117295

Reviewed by Alexandru Chiculita.

Both test specify margins auto, which means that they can be computed to floats.
I changed the tests so that the margins are computed to integer values, to avoid
possible differences on platforms that enable subpixel layout.

  • fast/regions/overflow-size-change-with-stacking-context-rtl-expected.html:
  • fast/regions/overflow-size-change-with-stacking-context-rtl.html:
  • platform/qt/TestExpectations: Unskip the skipped test
1:39 AM Changeset in webkit [151429] by Csaba Osztrogonác
  • 11 edits in trunk

Make WTR use its own temporary directory for application cache
https://bugs.webkit.org/show_bug.cgi?id=117143

Reviewed by Alexey Proskuryakov.

Source/WebKit2:

  • UIProcess/API/C/WKContext.cpp:

(WKContextSetApplicationCacheDirectory):

  • UIProcess/API/C/WKContextPrivate.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::applicationCacheDirectory):

  • UIProcess/WebContext.h:

(WebKit::WebContext::setApplicationCacheDirectory):

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformDefaultApplicationCacheDirectory):

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformDefaultApplicationCacheDirectory):

  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::platformDefaultApplicationCacheDirectory):

  • UIProcess/qt/WebContextQt.cpp:

(WebKit::WebContext::platformDefaultApplicationCacheDirectory):

Tools:

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

1:35 AM Changeset in webkit [151428] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] Fix test_ewk2_context_menu
https://bugs.webkit.org/show_bug.cgi?id=116601

Patch by Michał Pakuła vel Rutka <Michał Pakuła vel Rutka> on 2013-06-11
Reviewed by Gyuyoung Kim.

test_ewk2_context_menu is always passing, it does not test any context menu feature
as it ends before context menu is called.
One single test was divided into two tests: testing WebKit2 created context menu and
testing menus and items created by application.

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:

(EWK2UnitTest::EWK2UnitTestBase::waitUntilTrue): added function introducing internal loop until boolean value is changed to true

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
  • UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:

(customItemSelected):
(showContextMenu):
(showContextMenuForRemoveAndAppend):
(showContextMenuForSubmenu):
(hideContextMenu):
(TEST_F):

1:10 AM Changeset in webkit [151427] by ryuan.choi@samsung.com
  • 5 edits in trunk/Source/WebKit2

[EFL][WK2] Add ewk_view_navigate API
https://bugs.webkit.org/show_bug.cgi?id=117467

Reviewed by Christophe Dumez.

The applications will use this API to navigate history more than one step.

  • UIProcess/API/efl/ewk_back_forward_list_item_private.h:

(EwkBackForwardListItem::wkItem): Return WKBackForwardListItemRef for page to navigate.

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_navigate_to): Added new API.

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(TEST_F): Added more test case for navigation.

12:57 AM Changeset in webkit [151426] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Test editing/execCommand/indent-paragraphs.html times out
https://bugs.webkit.org/show_bug.cgi?id=117235

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-06-11
Reviewed by Rob Buis.

PR 346414.

After r150224 ResourceHandle::start() can fail returning false so
that the ResourceHandle is destroyed and the error not
handled. Handle the errors by scheduling a InvalidURLFailure and
returning true when startJob fails to make sure the ResourceHandle
is not destroyed and the error is handled and notified to the
client.

Fixes timeout in editing/execCommand/indent-paragraphs.html.

  • platform/network/blackberry/ResourceHandleBlackBerry.cpp:

(WebCore::ResourceHandle::start):

12:34 AM Changeset in webkit [151425] by rniwa@webkit.org
  • 6 edits in trunk/Source/WebCore

Remove IntRect::pixelSnapped* and its enclosingRect since they are no longer used
https://bugs.webkit.org/show_bug.cgi?id=117494

Reviewed by Darin Adler.

Merge: https://chromium.googlesource.com/chromium/blink/+/9433dc00e882e2808ac1db3c1fd89090896d7b58

https://chromium.googlesource.com/chromium/blink/+/7beaa73aa099170cb2cad02c12c5e0a448b12c21

  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::update):

  • platform/graphics/IntRect.h:
  • rendering/RenderInline.cpp:

(WebCore::RenderInline::hitTestCulledInline):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintUsingContainer):

12:10 AM Changeset in webkit [151424] by sergio@webkit.org
  • 3 edits
    4 adds in trunk

Autoclose braces and parentheses at the end of style sheet
https://bugs.webkit.org/show_bug.cgi?id=117414

Reviewed by Andreas Kling.

From Blink r150202 by <serya@chromium.org>

Source/WebCore:

Use closing_parenthesis and closing_brace instead of the literals
'}' and ')'. This allows the parser to treat expressions with
unmatched closing braces/parenthesis as if all of them were
actually closed.

Tests: animations/keyframe-autoclose-brace.html

css3/autoclose-braces-and-parentheses.html

  • css/CSSGrammar.y.in:

LayoutTests:

  • animations/keyframe-autoclose-brace-expected.txt: Added.
  • animations/keyframe-autoclose-brace.html: Added.
  • css3/autoclose-braces-and-parentheses-expected.txt: Added.
  • css3/autoclose-braces-and-parentheses.html: Added.

Jun 10, 2013:

10:47 PM Changeset in webkit [151423] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[CoordinatedGraphics] Typos in custom shader support
https://bugs.webkit.org/show_bug.cgi?id=117413

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-06-10
Reviewed by Noam Rosenthal.

Wrong keyframe is passed when assigning filterValue.

Source/WebCore:

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:

(WebCore::CoordinatedGraphicsScene::setLayerAnimationsIfNeeded):

Source/WebKit2:

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::prepareCustomFilterProxiesIfNeeded):

10:40 PM Changeset in webkit [151422] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

text-transform: capitalize shouldn't upconvert
https://bugs.webkit.org/show_bug.cgi?id=117485

Reviewed by Adam Barth.

Avoid the upconversion. Merge https://chromium.googlesource.com/chromium/blink/+/c5a221d6da2443df0639c01c40aac6040908ec79.

  • rendering/RenderText.cpp:

(WebCore::makeCapitalized):

10:37 PM Changeset in webkit [151421] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

DocType strings should be 8 bit wide
https://bugs.webkit.org/show_bug.cgi?id=117487

Reviewed by Michael Saboff.

Merge https://chromium.googlesource.com/chromium/blink/+/8da02d0ce3965c4e6bf227db856bce930393429a.

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::insertDoctype):

9:47 PM Changeset in webkit [151420] by mark.lam@apple.com
  • 23 edits
    4 adds in branches/dfgFourthTier/Source

Introducing the StackIterator class.
https://bugs.webkit.org/show_bug.cgi?id=117390.

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

The StackIterator class is meant to unify the way we iterate the JS
stack. It also makes it so that we don't have to copy the frame data
into the intermediate StackFrame struct before processing it.
Unfortunately we still can't get rid of StackFrame because it is used
to record frame information for the Exception stack that is expected
to persist beyond when the frames have been popped off the JS stack.

The StackIterator will iterate over all "logical" frames (i.e. including
inlined frames). As it iterates the JS stack, if it encounters a DFG
frame that has inlined frames, the iterator will canonicalize the
inlined frames before returning. Once canonicalized, the frame can be
read like any other frame.

The StackIterator implements a Frame class that inherits from CallFrame.
The StackIterator::Frame serves as reader of the CallFrame that makes
it easier to access information about the frame. The StackIterator::Frame
only adds functions, and no additional data fields.

  • API/JSContextRef.cpp:

(JSContextCreateBacktrace):

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • interpreter/CallFrame.cpp:

(JSC::CallFrame::begin):
(JSC::CallFrame::beginAt):

  • interpreter/CallFrame.h:

(JSC::ExecState::setInlineCallFrame):
(ExecState):
(JSC::ExecState::end):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::dumpRegisters):
(JSC::Interpreter::unwindCallFrame):
(JSC::Interpreter::getStackTrace):
(JSC::Interpreter::throwException):
(JSC::Interpreter::debug):

  • interpreter/Interpreter.h:

(Interpreter):

  • interpreter/StackIterator.cpp: Added.

(JSC::StackIterator::StackIterator):
(JSC::StackIterator::beginAt):
(JSC::StackIterator::gotoNextFrame):

  • Based on the deleted Interpreter::findFunctionCallFrameFromVMCode().

(JSC::StackIterator::findFrameForFunction):

  • Based on the deleted Interpreter::retrieveCallerFromVMCode().

(JSC::StackIterator::Frame::codeType):

  • Based on the deleted getStackFrameCodeType().

(JSC::StackIterator::Frame::functionName):

  • Based on StackFrame::friendlyFunctionName().

(JSC::StackIterator::Frame::sourceURL):

  • Based on StackFrame::friendlySourceURL().

(JSC::StackIterator::Frame::toString):

  • Based on StackFrame::toString().

(JSC::StackIterator::Frame::bytecodeOffset):
(JSC::StackIterator::Frame::line):

  • Based on StackFrame::line().

(JSC::StackIterator::Frame::column):

  • Based on StackFrame::column().

(JSC::StackIterator::Frame::arguments):

  • Based on the deleted Interpreter::retrieveArgumentsFromVMCode().

(JSC::StackIterator::Frame::retrieveExpressionInfo):

  • Based on StackFrame::expressionInfo().

(JSC::StackIterator::Frame::logicalFrame):

  • Based on the now deleted CallFrame::trueCallFrame().

(JSC::StackIterator::Frame::logicalCallerFrame):

  • Based on the now deleted CallFrame::trueCallerFrame().

(JSC::jitTypeName):
(JSC::printIndents):
(JSC::printif):
(JSC::StackIterator::Frame::print):
(debugPrintCallFrame):

  • Prints the contents of the frame for debugging purposes. There are 2 versions that can be used as follows:
  1. When you have a valid StackIterator, you can print the current frame's content using the print instance method:

iter->print(indentLevel);

  1. When you have a CallFrame* that you want to dump from a debugger console, you can print its content as follows:

(gdb) call debugPrintCallFrame(callFrame)

A sample of the output looks like this:

frame 0x1510c70b0 {

name 'shouldBe'
sourceURL 'testapi.js'
hostFlag 0
isInlinedFrame 0
callee 0x15154efb0
returnPC 0x10ed0786d
callerFrame 0x1510c7058
logicalCallerFrame 0x1510c7058
rawLocationBits 27 0x1b
codeBlock 0x7fe79b037200

bytecodeOffset 27 0x1b / 210
line 46
column 20
jitType 3 <BaselineJIT> isOptimizingJIT 0
hasCodeOrigins 0

}

  • interpreter/StackIterator.h: Added.

(StackIterator::Frame):
(JSC::StackIterator::Frame::create):
(JSC::StackIterator::Frame::isJSFrame):
(JSC::StackIterator::Frame::callFrame):

  • interpreter/StackIteratorPrivate.h: Added.

(StackIterator):
(JSC::StackIterator::operator*):
(JSC::StackIterator::operator->):
(JSC::StackIterator::operator==):
(JSC::StackIterator::operator!=):
(JSC::StackIterator::operator++):
(JSC::StackIterator::end):
(JSC::StackIterator::empty):

  • jsc.cpp:

(functionJSCStack):

  • profiler/ProfileGenerator.cpp:

(JSC::ProfileGenerator::addParentForConsoleStart):

  • profiler/ProfileNode.h:

(ProfileNode):

  • runtime/JSFunction.cpp:

(JSC::retrieveArguments):
(JSC::JSFunction::argumentsGetter):
(JSC::skipOverBoundFunctions):
(JSC::retrieveCallerFunction):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::getOwnPropertyDescriptor):
(JSC::JSFunction::defineOwnProperty):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncProtoGetter):
(JSC::globalFuncProtoSetter):

  • runtime/ObjectConstructor.cpp:

(JSC::objectConstructorGetPrototypeOf):

  • runtime/Operations.h:

Source/WebCore:

No new tests.

  • ForwardingHeaders/interpreter/StackIterator.h: Added.
  • bindings/js/JSXMLHttpRequestCustom.cpp:

(WebCore::JSXMLHttpRequest::send):

  • bindings/js/ScriptCallStackFactory.cpp:

(WebCore::createScriptCallStack):

9:47 PM Changeset in webkit [151419] by Csaba Osztrogonác
  • 5 edits in trunk/Source/WebKit2

[Qt][GTK] Build fix after r151403
https://bugs.webkit.org/show_bug.cgi?id=117452

Patch by Seokju Kwon <Seokju Kwon> on 2013-06-10
Reviewed by Csaba Osztrogonác.

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::preferencesDidChange):

  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/API/qt/raw/qrawwebview_p_p.h:

(QRawWebViewPrivate::preferencesDidChange):

  • UIProcess/qt/QtPageClient.h:

(WebKit::QtPageClient::preferencesDidChange):

9:16 PM Changeset in webkit [151418] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Use shouldBeType in animations/keyframes-rule.html
https://bugs.webkit.org/show_bug.cgi?id=117439

Reviewed by Andreas Kling.

Merge https://chromium.googlesource.com/chromium/blink/+/7eb727a7d5765eaa1779e00a45ac9f63e2e0047f

  • animations/keyframes-rule-expected.txt:
  • animations/keyframes-rule.html:
7:31 PM Changeset in webkit [151417] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed, EFL gardening. Fix wrong expectation result on 151416.

  • platform/efl-wk2/TestExpectations:
6:15 PM Changeset in webkit [151416] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/LayoutTests

Unreviewed, EFL gardening. Manage tests which need to implement repaint rect.

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
6:11 PM Changeset in webkit [151415] by rniwa@webkit.org
  • 5 edits in trunk/Source/WebCore

Make more functions const
https://bugs.webkit.org/show_bug.cgi?id=117455

Reviewed by Benjamin Poulain.

Merge https://chromium.googlesource.com/chromium/blink/+/886866f5034d7f30f8aa607b909313f99db1f3b4.

  • editing/VisibleUnits.cpp:

(WebCore::CachedLogicallyOrderedLeafBoxes::boxIndexInLeaves):

  • html/canvas/WebGLRenderingContext.cpp:
  • page/ContentSecurityPolicy.cpp:

(WebCore::CSPDirectiveList::evalDisabledErrorMessage):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::LineWidth::shouldIndentText):

5:47 PM Changeset in webkit [151414] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed, rolling out r151411.
http://trac.webkit.org/changeset/151411
https://bugs.webkit.org/show_bug.cgi?id=117453

because it is duplicated with Bug 117441 (Requested by
gyuyoung_ on #webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2013-06-10

  • UIProcess/efl/WebViewEfl.cpp:
  • UIProcess/efl/WebViewEfl.h:
5:46 PM Changeset in webkit [151413] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Fix build error and warning
https://bugs.webkit.org/show_bug.cgi?id=117441

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2013-06-10
Reviewed by Anders Carlsson.

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::preferencesDidChange): Added.
(WebKit::WebView::createPopupMenuProxy): Remove 'page'.

  • UIProcess/CoordinatedGraphics/WebView.h:
5:38 PM Changeset in webkit [151412] by ap@apple.com
  • 4 edits in trunk/Tools

https://bugs.webkit.org/show_bug.cgi?id=117449
Remove dead code for storing fonts in DATA section

Reviewed by Dan Bernstein.

  • DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:

Don't copy font resources to DATA, as we don't have any code that reads them
from there (previously removed due to being under "defined(BUILDING_ON_LEOPARD)").

  • DumpRenderTree/mac/DumpRenderTree.mm: (activateTestingFonts):
  • WebKitTestRunner/InjectedBundle/mac/ActivateFonts.mm: (WTR::activateFonts):

Removed comments suggesting that we want to restore the old solution.

5:27 PM Changeset in webkit [151411] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed, EFL Build fix after r151403.

Added preferencesDidChange to WebViewEfl.

  • UIProcess/efl/WebViewEfl.cpp:

(WebKit::WebViewEfl::preferencesDidChange):

  • UIProcess/efl/WebViewEfl.h:
5:07 PM Changeset in webkit [151410] by jer.noble@apple.com
  • 4 edits
    10 adds in trunk

REGRESSION(r151302): Many broken webaudio/ tests on Mac port.
https://bugs.webkit.org/show_bug.cgi?id=117446

Reviewed by Chris Rogers.

Source/WebCore:

The new "pageConsentRequiredForAudioStart()" restriction was blocking playback event
even when page consent was given. Remvoe the restriction immediately in that case.

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::startRendering):

LayoutTests:

Re-enable the tests on mac-wk2 and add new baselines for codec and audiobuffersource tests.

  • platform/mac-wk2/TestExpectations:
  • platform/mac-wk2/webaudio/audiobuffersource-loop-points-expected.wav: Added.
  • platform/mac-wk2/webaudio/audiobuffersource-playbackrate-expected.wav: Added.
  • platform/mac-wk2/webaudio/codec-tests/aac/vbr-128kbps-44khz-expected.wav: Added.
  • platform/mac-wk2/webaudio/codec-tests/mp3/128kbps-44khz-expected.wav: Added.
  • platform/mac-wk2/webaudio/codec-tests/wav/24bit-22khz-resample-expected.wav: Added.
4:43 PM Changeset in webkit [151409] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash in StorageAreaMap::applyChange when clearing local storage in another web process
https://bugs.webkit.org/show_bug.cgi?id=117440
<rdar://problem/13961548>

Reviewed by Tim Horton.

Add an early return so we won't try to look up a null key in the m_pendingValueChanges map.
Also, fix an assertion - it's fine for m_storageMap to be null in applyChange.

  • WebProcess/Storage/StorageAreaMap.cpp:

(WebKit::StorageAreaMap::applyChange):

4:16 PM Changeset in webkit [151408] by roger_fong@apple.com
  • 1 edit
    1 copy
    1 move in trunk/WebKitLibraries

Change WebKitLibraries/win folder structure around.
<rdar://problem/14097829>

Reviewed by Lucas Forschler.

  • win/WinTools.make: Copied from win/tools32/WinTools.make.
  • win/tools32/WinTools.make: Removed.
  • win/tools64: Copied from win/tools32.
3:28 PM Changeset in webkit [151407] by rakuco@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Remove a vestige of wxWidgets support.
https://bugs.webkit.org/show_bug.cgi?id=117419

Reviewed by Benjamin Poulain.

  • runtime/JSExportMacros.h: Remove a check for BUILDING_WX that

seems to have gone unnoticed when the wxWidgets port was removed.

3:10 PM Changeset in webkit [151406] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][CoordinatedGraphics] Add default case to switches to fix strict build
https://bugs.webkit.org/show_bug.cgi?id=117416

Patch by Sergio Correia <Sergio Correia> on 2013-06-10
Reviewed by Noam Rosenthal.

This patch fixes a strict build by asserting on the default case of two
switch statements where gcc was previously complaining of unhandled cases.

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(CoreIPC::::encode):
(CoreIPC::::decode):

2:50 PM Changeset in webkit [151405] by fpizlo@apple.com
  • 5 edits
    3 adds in branches/dfgFourthTier

Source/JavaScriptCore: Marge trunk r146653.

2013-03-22 Filip Pizlo <fpizlo@apple.com>


DFG folding of PutById to SimpleReplace should consider the specialized function case
https://bugs.webkit.org/show_bug.cgi?id=113093


Reviewed by Geoffrey Garen and Mark Hahnenberg.


  • bytecode/PutByIdStatus.cpp: (JSC::PutByIdStatus::computeFor):

LayoutTests: Merge trunk r146653.

2013-03-22 Filip Pizlo <fpizlo@apple.com>


DFG folding of PutById to SimpleReplace should consider the specialized function case
https://bugs.webkit.org/show_bug.cgi?id=113093


Reviewed by Geoffrey Garen and Mark Hahnenberg.


  • fast/js/dfg-cfa-prove-put-by-id-simple-when-storing-to-specialized-function-expected.txt: Added.
  • fast/js/dfg-cfa-prove-put-by-id-simple-when-storing-to-specialized-function.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-cfa-prove-put-by-id-simple-when-storing-to-specialized-function.js: Added. (foo): (baz): (fuzz):
2:36 PM Changeset in webkit [151404] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

REGRESSION(r150633): Find on page non-focused text highlight color is bright yellow.
<rdar://problem/14098882>
<http://webkit.org/b/117371>

Reviewed by Anders Carlsson.

There was a mistake in the parameter ordering which still compiled because of
implicit bool/unsigned conversion.
Changed the interface of Page::findMatchesForText() to use enums instead of bools.

No test because the color of the highlighted matches is not available through APIs.

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

(WebCore::Page::findMatchesForText):
(WebCore::Page::markAllMatchesForText):
(WebCore::Page::countFindMatches):

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

-[WKView _updateWindowAndViewFrames] should avoid updating the view frame in window coordinates if we don't have plugins
https://bugs.webkit.org/show_bug.cgi?id=117420
<rdar://problem/14073034>

Reviewed by Tim Horton.

If plug-ins are disabled there's no need for the web process to know about the view frame in window coordinates so only
send it when plug-ins are enabled. In addition, if accessibility is disabled we don't need to send a message at all.

  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::preferencesDidChange):
Call through to -[WKView _preferencesDidChange].

  • UIProcess/API/mac/WKView.mm:

(-[WKView _updateWindowAndViewFrames]):
Don't compute viewFrameInWindowCoordinates or accessibilityPosition unless they're required. If neither are required,
don't even send a message to the web process.

(-[WKView _preferencesDidChange]):
Update _needsViewFrameInWindowCoordinates and call -[WKView _updateWindowAndViewFrames] if needed.

(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
Set _needsViewFrameInWindowCoordinates based on whether plug-ins are enabled or not.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::preferencesDidChange):
Call the page client.

2:23 PM Changeset in webkit [151402] by betravis@adobe.com
  • 31 edits
    15 moves
    1 add in trunk

[CSS Shapes][CSS Exclusions] Split CSS Exclusions and CSS Shapes code
https://bugs.webkit.org/show_bug.cgi?id=117162

Reviewed by Alexandru Chiculita.

Source/WebCore:

With the split between the CSS Exclusions and CSS Shapes specifications,
some renaming is necessary. In general, this patch removes 'Exclusion' from
any Shapes code, while organizing the rendering shapes code into a 'shapes'
folder.

Renames:
ExclusionShape -> Shape
Exclusion[Rectangle|Polygon] -> [Rectangle|Polygon]Shape
Exclusion -> Shape

Refactoring, no new tests.

  • CMakeLists.txt:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSPrimitiveValue.h:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyShape::setValue):
(WebCore::ApplyPropertyShape::applyValue):
(WebCore::ApplyPropertyShape::createHandler):
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):
(WebCore::PropertyWrapperShape::PropertyWrapperShape):
(WebCore::CSSPropertyAnimation::ensurePropertyMap):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/LayoutState.h:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::shapeInsideInfo):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::updateShapeInsideInfoAfterStyleChange):
(WebCore::shapeInfoRequiresRelayout):
(WebCore::RenderBlock::updateRegionsAndExclusionsBeforeChildLayout):
(WebCore::RenderBlock::computeShapeSize):
(WebCore::RenderBlock::updateRegionsAndExclusionsAfterChildLayout):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::computeLogicalLocationForFloat):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::logicalLeftOffsetForLine):
(WebCore::RenderBlock::logicalRightOffsetForLine):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::ensureShapeInsideInfo):
(WebCore::RenderBlock::shapeInsideInfo):
(WebCore::RenderBlock::setShapeInsideInfo):
(WebCore::RenderBlock::allowsShapeInsideInfoSharing):
(WebCore::RenderBlock::xPositionForFloatIncludingMargin):
(WebCore::RenderBlock::yPositionForFloatIncludingMargin):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutShapeInsideInfo):
(WebCore::LineWidth::LineWidth):
(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
(WebCore::constructBidiRunsForLine):
(WebCore::adjustLogicalLineTop):
(WebCore::RenderBlock::updateLineBoundariesForShapes):
(WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded):
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::LineBreaker::nextLineBreak):
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed):
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::updateShapeOutsideInfoAfterStyleChange):

  • rendering/RenderBox.h:

(WebCore::RenderBox::shapeOutsideInfo):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintOffset):

  • rendering/RenderView.h:

(WebCore::RenderView::pushLayoutState):

  • rendering/shapes/PolygonShape.cpp: Renamed from Source/WebCore/rendering/ExclusionPolygon.cpp.

(WebCore::leftSide):
(WebCore::isReflexVertex):
(WebCore::computeXIntersection):
(WebCore::inwardEdgeNormal):
(WebCore::outwardEdgeNormal):
(WebCore::appendArc):
(WebCore::snapVerticesToLayoutUnitGrid):
(WebCore::computeShapePaddingBounds):
(WebCore::computeShapeMarginBounds):
(WebCore::PolygonShape::shapePaddingBounds):
(WebCore::PolygonShape::shapeMarginBounds):
(WebCore::getVertexIntersectionVertices):
(WebCore::appendIntervalX):
(WebCore::compareEdgeIntersectionX):
(WebCore::computeXIntersections):
(WebCore::computeOverlappingEdgeXProjections):
(WebCore::PolygonShape::getExcludedIntervals):
(WebCore::PolygonShape::getIncludedIntervals):
(WebCore::firstFitRectInPolygon):
(WebCore::aboveOrToTheLeft):
(WebCore::PolygonShape::firstIncludedIntervalLogicalTop):

  • rendering/shapes/PolygonShape.h: Renamed from Source/WebCore/rendering/ExclusionPolygon.h.

(WebCore::OffsetPolygonEdge::OffsetPolygonEdge):
(WebCore::OffsetPolygonEdge::edgeIndex):
(WebCore::OffsetPolygonEdge::basis):
(WebCore::PolygonShape::PolygonShape):

  • rendering/shapes/RectangleShape.cpp: Renamed from Source/WebCore/rendering/ExclusionRectangle.cpp.

(WebCore::ellipseXIntercept):
(WebCore::ellipseYIntercept):
(WebCore::FloatRoundedRect::paddingBounds):
(WebCore::FloatRoundedRect::marginBounds):
(WebCore::FloatRoundedRect::cornerInterceptForWidth):
(WebCore::RectangleShape::shapePaddingBounds):
(WebCore::RectangleShape::shapeMarginBounds):
(WebCore::RectangleShape::getExcludedIntervals):
(WebCore::RectangleShape::getIncludedIntervals):
(WebCore::RectangleShape::firstIncludedIntervalLogicalTop):

  • rendering/shapes/RectangleShape.h: Renamed from Source/WebCore/rendering/ExclusionRectangle.h.

(WebCore::FloatRoundedRect::FloatRoundedRect):
(WebCore::FloatRoundedRect::rx):
(WebCore::FloatRoundedRect::ry):
(WebCore::RectangleShape::RectangleShape):

  • rendering/shapes/Shape.cpp: Renamed from Source/WebCore/rendering/ExclusionShape.cpp.

(WebCore::createRectangleShape):
(WebCore::createShapeCircle):
(WebCore::createShapeEllipse):
(WebCore::createPolygonShape):
(WebCore::physicalRectToLogical):
(WebCore::physicalPointToLogical):
(WebCore::physicalSizeToLogical):
(WebCore::Shape::createShape):

  • rendering/shapes/Shape.h: Renamed from Source/WebCore/rendering/ExclusionShape.h.

(WebCore::LineSegment::LineSegment):
(WebCore::Shape::~Shape):
(WebCore::Shape::shapeMargin):
(WebCore::Shape::shapePadding):

  • rendering/shapes/ShapeInfo.cpp: Renamed from Source/WebCore/rendering/ExclusionShapeInfo.cpp.

(WebCore::::computedShape):
(WebCore::::computeSegmentsForLine):

  • rendering/shapes/ShapeInfo.h: Renamed from Source/WebCore/rendering/ExclusionShapeInfo.h.

(WebCore::MappedInfo::ensureInfo):
(WebCore::MappedInfo::removeInfo):
(WebCore::MappedInfo::info):
(WebCore::MappedInfo::infoMap):
(WebCore::ShapeInfo::~ShapeInfo):
(WebCore::ShapeInfo::setShapeSize):
(WebCore::ShapeInfo::clearSegments):
(WebCore::ShapeInfo::shapeLogicalTop):
(WebCore::ShapeInfo::shapeLogicalBottom):
(WebCore::ShapeInfo::shapeLogicalLeft):
(WebCore::ShapeInfo::shapeLogicalRight):
(WebCore::ShapeInfo::shapeLogicalWidth):
(WebCore::ShapeInfo::shapeLogicalHeight):
(WebCore::ShapeInfo::logicalLineTop):
(WebCore::ShapeInfo::logicalLineBottom):
(WebCore::ShapeInfo::shapeContainingBlockHeight):
(WebCore::ShapeInfo::lineOverlapsShapeBounds):
(WebCore::ShapeInfo::lineWithinShapeBounds):
(WebCore::ShapeInfo::dirtyShapeSize):
(WebCore::ShapeInfo::shapeSizeDirty):
(WebCore::ShapeInfo::owner):
(WebCore::ShapeInfo::ShapeInfo):
(WebCore::ShapeInfo::logicalTopOffset):
(WebCore::ShapeInfo::logicalLeftOffset):

  • rendering/shapes/ShapeInsideInfo.cpp: Renamed from Source/WebCore/rendering/ExclusionShapeInsideInfo.cpp.

(WebCore::LineSegmentRange::LineSegmentRange):
(WebCore::ShapeInsideInfo::isEnabledFor):
(WebCore::ShapeInsideInfo::adjustLogicalLineTop):

  • rendering/shapes/ShapeInsideInfo.h: Renamed from Source/WebCore/rendering/ExclusionShapeInsideInfo.h.

(WebCore::LineSegmentIterator::LineSegmentIterator):
(WebCore::ShapeInsideInfo::createInfo):
(WebCore::ShapeInsideInfo::hasSegments):
(WebCore::ShapeInsideInfo::segments):
(WebCore::ShapeInsideInfo::segmentRanges):
(WebCore::ShapeInsideInfo::currentSegment):
(WebCore::ShapeInsideInfo::setNeedsLayout):
(WebCore::ShapeInsideInfo::needsLayout):
(WebCore::ShapeInsideInfo::ShapeInsideInfo):

  • rendering/shapes/ShapeInterval.cpp: Renamed from Source/WebCore/rendering/ExclusionInterval.cpp.

(WebCore::IntervalX1Comparator::operator()):
(WebCore::ShapeInterval::intersect):
(WebCore::sortShapeIntervals):
(WebCore::mergeShapeIntervals):
(WebCore::intersectShapeIntervals):
(WebCore::subtractShapeIntervals):

  • rendering/shapes/ShapeInterval.h: Renamed from Source/WebCore/rendering/ExclusionInterval.h.

(WebCore::ShapeInterval::ShapeInterval):

  • rendering/shapes/ShapeOutsideInfo.cpp: Renamed from Source/WebCore/rendering/ExclusionShapeOutsideInfo.cpp.

(WebCore::ShapeOutsideInfo::isEnabledFor):
(WebCore::ShapeOutsideInfo::computeSegmentsForLine):

  • rendering/shapes/ShapeOutsideInfo.h: Renamed from Source/WebCore/rendering/ExclusionShapeOutsideInfo.h.

(WebCore::ShapeOutsideInfo::shapeLogicalOffset):
(WebCore::ShapeOutsideInfo::leftSegmentShapeBoundingBoxDelta):
(WebCore::ShapeOutsideInfo::rightSegmentShapeBoundingBoxDelta):
(WebCore::ShapeOutsideInfo::createInfo):
(WebCore::ShapeOutsideInfo::ShapeOutsideInfo):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::initialShapeInside):

  • rendering/style/RenderStyle.h:
  • rendering/style/ShapeValue.h: Renamed from Source/WebCore/rendering/style/ExclusionShapeValue.h.

(WebCore::ShapeValue::createShapeValue):
(WebCore::ShapeValue::createOutsideValue):
(WebCore::ShapeValue::createImageValue):
(WebCore::ShapeValue::type):
(WebCore::ShapeValue::shape):
(WebCore::ShapeValue::image):
(WebCore::ShapeValue::setImage):
(WebCore::ShapeValue::operator==):
(WebCore::ShapeValue::ShapeValue):

  • rendering/style/StyleRareNonInheritedData.h:

Source/WebKit:

Adding the WebCore/rendering/shapes directory to the include list.

  • CMakeLists.txt:

Source/WebKit2:

Adding the WebCore/rendering/shapes directory to the include list.

  • CMakeLists.txt:

Tools:

Adding the WebCore/rendering/shapes directory to the include list.

  • DumpRenderTree/efl/CMakeLists.txt:
2:12 PM Changeset in webkit [151401] by ggaren@apple.com
  • 104 edits
    4 adds in branches/dfgFourthTier

Unreviewd, rolled out

<http://trac.webkit.org/changeset/151362>
<http://trac.webkit.org/changeset/151363>

Source/JavaScriptCore:

because they caused crashes.

LayoutTests:

because they caused crashes.

1:47 PM Changeset in webkit [151400] by Lucas Forschler
  • 2 edits in tags/Safari-537.44.1/Source/WTF

Merged r151330. <rdar://problem/14094873>

1:36 PM Changeset in webkit [151399] by Lucas Forschler
  • 1 copy in tags/Safari-537.44.1

New Tag.

12:06 PM Changeset in webkit [151398] by commit-queue@webkit.org
  • 9 edits
    2 copies in trunk/Source

Use Cairo implementation of the WidgetBackingStore instead of X11 when running on Wayland
https://bugs.webkit.org/show_bug.cgi?id=116717

Patch by Iago Toral Quiroga <itoral@igalia.com> on 2013-06-10
Reviewed by Martin Robinson.

Source/WebCore:

Refactored WidgetBackingStore to be an abstract base class and make
GtkWidgetBackingStoreX11 and WidgetBackingStoreCairo inherit from it.
GtkWidgetBackingStoreX11 renamed to WidgetBackingStoreGtkX11.

  • GNUmakefile.list.am:
  • platform/cairo/WidgetBackingStore.h:

(WebCore):
(WidgetBackingStore):
(WebCore::WidgetBackingStore::WidgetBackingStore):
(WebCore::WidgetBackingStore::~WidgetBackingStore):

  • platform/cairo/WidgetBackingStoreCairo.cpp:

(WebCore::WidgetBackingStoreCairo::create):
(WebCore):
(WebCore::WidgetBackingStoreCairo::WidgetBackingStoreCairo):
(WebCore::WidgetBackingStoreCairo::~WidgetBackingStoreCairo):
(WebCore::WidgetBackingStoreCairo::cairoSurface):
(WebCore::WidgetBackingStoreCairo::scroll):

  • platform/cairo/WidgetBackingStoreCairo.h: Added.

(WebCore):
(WidgetBackingStoreCairo):

  • platform/gtk/GtkWidgetBackingStoreX11.cpp:

(WebCore::WidgetBackingStoreGtkX11::create):
(WebCore):
(WebCore::WidgetBackingStoreGtkX11::WidgetBackingStoreGtkX11):
(WebCore::WidgetBackingStoreGtkX11::~WidgetBackingStoreGtkX11):
(WebCore::WidgetBackingStoreGtkX11::cairoSurface):
(WebCore::WidgetBackingStoreGtkX11::scroll):

  • platform/gtk/GtkWidgetBackingStoreX11.h: Added.

(WebCore):
(WidgetBackingStoreGtkX11):

Source/WebKit/gtk:

Decide which implementation of WidgetBackingStore to use (X11 or Cairo)
depending on whether we are running on X11 or not. Select Cairo
implementation when not running in X11.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::createBackingStore):
(WebKit):
(WebKit::ChromeClient::widgetSizeChanged):
(WebKit::ChromeClient::attachRootGraphicsLayer):

Source/WebKit2:

Decide which implementation of WidgetBackingStore to use (X11 or Cairo)
depending on whether we are running on X11 or not. Select Cairo
implementation when not running in X11.

  • UIProcess/cairo/BackingStoreCairo.cpp:

(WebKit):
(WebKit::createBackingStoreForGTK):
(WebKit::BackingStore::incorporateUpdate):

10:45 AM Changeset in webkit [151397] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Store ParsedCookies as RefPtrs instead of PassRefPtrs in CookieDatabaseBackingStore
https://bugs.webkit.org/show_bug.cgi?id=117411

JIRA388672
BRWSR-11465
Patch by Otto Derek Cheung <otcheung@rim.com> on 2013-06-10
Reviewed by Rob Buis.

When we queue up ParsedCookie objects for modification, we should be storing them as a refptr instead
of a PassRefPtr.

  • platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
9:27 AM Changeset in webkit [151396] by mihnea@adobe.com
  • 3 edits
    2 adds in trunk

[CSSRegions] ASSERTION FAILED: roundedIntPoint(rendererMappedResult) == roundedIntPoint(result) in RenderGeometryMap::mapToContainer
https://bugs.webkit.org/show_bug.cgi?id=117395

Reviewed by Alexandru Chiculita.

Source/WebCore:

Test: fast/regions/assert-flow-thread-compositing.html

We should not allow RenderNamedFlowThread layers to be composited, rather their collected children should checked
for compositing through their associated RenderRegions.

The assert in RenderGeometryMap::mapToContainer was hit because after https://bugs.webkit.org/show_bug.cgi?id=117270
the render named flow threads are hooked in RenderView layer tree - with the caveat that they are not directly involved
in hit testing/paint which is done through their associated regions.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements): Bail out if we hit a render named flow thread layer.
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Ditto.

LayoutTests:

  • fast/regions/assert-flow-thread-compositing-expected.txt: Added.
  • fast/regions/assert-flow-thread-compositing.html: Added.
8:26 AM Changeset in webkit [151395] by sergio@webkit.org
  • 2 edits in trunk/Source/WebCore

Refactor CALCFUNCTION rules in the CSS grammar
https://bugs.webkit.org/show_bug.cgi?id=117401

Reviewed by Andreas Kling.

From Blink r149862 by <serya@chromium.org>.

Reduce the number of CALCFUNCTION rules by refactoring the closing
parenthesis handling code.

No new tests required as this is a refactoring, no new functionality
added.

  • css/CSSGrammar.y.in:
7:19 AM Changeset in webkit [151394] by commit-queue@webkit.org
  • 33 edits
    2 moves
    1 add
    1 delete in trunk

[CSS Regions] Rename region-overflow to region-fragment
https://bugs.webkit.org/show_bug.cgi?id=117397

PerformanceTests:

Renamed -webkit-region-overflow to -webkit-region-fragment according to the new working draft
at http://www.w3.org/TR/2013/WD-css3-regions-20130528/#the-region-fragment-property

Patch by Radu Stavila <stavila@adobe.com> on 2013-06-10
Reviewed by Alexander Pavlov.

  • Layout/resources/regions.css:

Source/WebCore:

Renamed -webkit-region-overflow to -webkit-region-fragment and
webkitRegionOverflow to webkitRegionFragment according to the new working draft
at http://www.w3.org/TR/2013/WD-css3-regions-20130528/#the-region-fragment-property

Patch by Radu Stavila <stavila@adobe.com> on 2013-06-10
Reviewed by Alexander Pavlov.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator RegionFragment):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyNames.in:
  • css/CSSValueKeywords.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::hasNextPage):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::overflowRectForFlowThreadPortion):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

LayoutTests:

Renamed -webkit-region-overflow to -webkit-region-fragment and
webkitRegionOverflow to webkitRegionFragment according to the new working draft
at http://www.w3.org/TR/2013/WD-css3-regions-20130528/#the-region-fragment-property

Patch by Radu Stavila <stavila@adobe.com> on 2013-06-10
Reviewed by Alexander Pavlov.

  • fast/regions/autoheight-breakafteralways-maxheight.html:
  • fast/regions/autoheight-breakbeforealways.html:
  • fast/regions/autoheight-singleregion-breakafteralways-maxheight.html:
  • fast/regions/autoheight-singleregion-breakafteralways.html:
  • fast/regions/autoheight-singleregion-breakaftermargin.html:
  • fast/regions/autoheight-singleregion-breakbeforealways-minheight.html:
  • fast/regions/autoheight-singleregion-breakbeforealways.html:
  • fast/regions/autoheight-singleregion-multiplebreaks.html:
  • fast/regions/css-regions-disabled-expected.txt:
  • fast/regions/region-overflow-auto-overflow-hidden.html:
  • fast/regions/region-overflow-auto-overflow-visible.html:
  • fast/regions/region-overflow-break.html:
  • fast/regions/regions-widows-and-orphans.html:
  • fast/regions/script-tests/css-regions-disabled.js:
  • fast/regions/script-tests/webkit-region-overflow-parsing.js:
  • fast/regions/webkit-region-overflow-parsing-expected.txt:
6:49 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:20 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:16 AM Changeset in webkit [151393] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0

Merge r150963 - [GTK] Needs to check for harfbuzz-icu
https://bugs.webkit.org/show_bug.cgi?id=116978

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-30
Reviewed by Xan Lopez.

HarfBuzz 0.9.18 splits harbuzz-icu into a separate library so we
also need to check for it in order to get the necessary flags for
the compiler and the linker.

We keep this conditional for now since we still want to support
earlier versions of HarfBuzz.

  • Source/autotools/FindDependencies.m4:
6:15 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:10 AM Changeset in webkit [151392] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

Merge r151189 - [GTK] Updated WebKit Translation in Hindi [hi] language
https://bugs.webkit.org/show_bug.cgi?id=115508

Patch by Rajesh Ranjan <rajeshkajha@yahoo.com> on 2013-06-04
Reviewed by Gustavo Noronha Silva (kov).

  • hi.po: Updated.
6:09 AM Changeset in webkit [151391] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

Merge r151188 - Updated Telugu [te] Translations for WebKitGTK+ HEAD
https://bugs.webkit.org/show_bug.cgi?id=115856

Patch by Krishnababu Krothapalli <kkrothap@redhat.com> on 2013-06-04
Reviewed by Gustavo Noronha Silva (kov).

  • te.po: Updated.
6:07 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:07 AM Changeset in webkit [151390] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

Merge r151187 - Updated WebKitGTK+ Translation for Odia [or] language.
https://bugs.webkit.org/show_bug.cgi?id=116825

Patch by Manoj Kumar Giri <mgiri@redhat.com> on 2013-06-04
Reviewed by Gustavo Noronha Silva (kov).

  • or.po: Updated.
6:06 AM Changeset in webkit [151389] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

Merge r151186 - [kn] Kannada Translation for webkit - Updated
https://bugs.webkit.org/show_bug.cgi?id=116941

Patch by Shankar Prasad <svenkate@redhat.com> on 2013-06-04
Reviewed by Gustavo Noronha Silva (kov).

  • kn.po: Updated.
6:03 AM Changeset in webkit [151388] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

[GTK] Updated as-IN translations
https://bugs.webkit.org/show_bug.cgi?id=116953

Patch by Nilamdyuti Goswami <ngoswami@redhat.com> on 2013-05-30
Reviewed by Gustavo Noronha Silva (kov).

  • as.po: Updated.
6:02 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:02 AM Changeset in webkit [151387] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r151141 - [harfbuzz] WebKit fails to build with MinGW compiler because of invalid cast in HarfBuzzShaper.cpp
https://bugs.webkit.org/show_bug.cgi?id=108373

Patch by Paweł Forysiuk <tuxator@o2.pl> on 2013-06-03
Reviewed by Darin Adler.

Fix building on platforms where UChar is defined as wchar_t.

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::shapeHarfBuzzRuns):

5:57 AM Changeset in webkit [151386] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Tools

Merge r151135 - [GTK] Respect PKG_CONFIG env variable when generating gtk-doc
https://bugs.webkit.org/show_bug.cgi?id=117168

Patch by Erik van Pienbroek <epienbro@fedoraproject.org> on 2013-06-03
Reviewed by Martin Robinson.

The tool generate-gtkdoc internally calls pkg-config.
When cross-compiling it shouldn't use pkg-config, but
it should use the pkg-config which was detected by
the ./configure script (for example this can be
i686-w64-mingw32-pkg-config when cross-compiling)

  • GNUmakefile.am:
  • gtk/gtkdoc.py:

(PkgConfigGTKDoc.init):

5:47 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:43 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:42 AM Changeset in webkit [151385] by Carlos Garcia Campos
  • 6 edits in releases/WebKitGTK/webkit-2.0

Merge r150326 - [GTK] Parallel build fails if gtk-doc is enabled
https://bugs.webkit.org/show_bug.cgi?id=116227

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-18
Reviewed by Martin Robinson.

.:

  • GNUmakefile.am:

Define an empty noinst_DATA variable where other automake files
can add additional objects to be built.

Source/WebCore:

  • GNUmakefile.am:

Don't overwrite noinst_DATA, modify its existing value instead.

Tools:

  • GNUmakefile.am:

Don't use the 'all' target to generate the documentation.
The prerequisites of this target must be files that need to be
built _before_ the actual compilation of WebKit starts. Since the
documentation depends on WebKit being built first, this means in
practice that the code will be built in parallel with the
generation of its dependencies, potentially making the build fail.

5:41 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:36 AM Changeset in webkit [151384] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Tools

Merge r150117 - [GTK] Fails to build while generating gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=115612

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-15
Reviewed by Philippe Normand.

Fix typo in the prerequisites of docs-build.stamp.

  • GNUmakefile.am:
5:35 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:30 AM Changeset in webkit [151383] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r150232 - [GTK] Fix memory leak in WebKitBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=116222

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-05-16
Reviewed by Carlos Garcia Campos.

Due to the use of leakRef() the ImmutableArray is not being released
automatically. Adding a local variable in the methods to make sure that
the ImmutableArray is freed.

  • UIProcess/API/gtk/WebKitBackForwardList.cpp:

(webkit_back_forward_list_get_back_list_with_limit): Add local variable
RefPtr and pass the ImmutableArray to
WebKitBackForwardList::webkitBackForwardListCreateList() using
RefPtr::get().
(webkit_back_forward_list_get_forward_list_with_limit): Ditto.

5:27 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:23 AM Changeset in webkit [151382] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r150758 - Reset all clients on WebPage close
https://bugs.webkit.org/show_bug.cgi?id=112334

Patch by Xan Lopez <xlopez@igalia.com> on 2013-05-27
Reviewed by Anders Carlsson.

We do not reset the clients on WebPage::close(), so there's a
small chance that someone will try to access them after that. This
won't work and will generally cause runtime warnings, crashes or
other issues. Reset them all to null to prevent this situation.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::close):

4:33 AM Changeset in webkit [151381] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/JavaScriptCore

Merge r149114 - REGRESSION(r137994): Random crashes occur with SH4 JSC.
https://bugs.webkit.org/show_bug.cgi?id=115167.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-04-25
Reviewed by Oliver Hunt.

Since r137994, uncommited pages could be inside the area of memory in
parameter of the cacheFlush function. That's why we have to flush each
page separately to avoid a fail of the whole flush, if an uncommited page
is in the area.

This patch is very similar to changeset 145194 made for ARMv7 architecture,
see https://bugs.webkit.org/show_bug.cgi?id=111441 for further information.

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::cacheFlush):

4:25 AM WebKitIDL edited by Christophe Dumez
Add documentation for RaisesException, harmonize with Blink IDL (diff)
4:25 AM Changeset in webkit [151380] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.0

Merge r151312 - Frame flattening: crash when child iframe is removed during beforeload.
https://bugs.webkit.org/show_bug.cgi?id=116220

Patch by Zalan Bujtas <Alan Bujtas> on 2013-06-07
Reviewed by Antti Koivisto.

FrameView can get destroyed in updateWidget(). Normally, it is protected by layout()
but with frame flattening on, it can also be called asynchronously through the
post layout timer.

Source/WebCore:

Test: fast/frames/flattening/crash-remove-iframe-during-object-beforeload.html

  • page/FrameView.cpp:

(WebCore::FrameView::performPostLayoutTasks):

LayoutTests:

  • fast/frames/flattening/crash-remove-iframe-during-object-beforeload-expected.txt: Added.
  • fast/frames/flattening/crash-remove-iframe-during-object-beforeload.html: Added.
4:16 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
4:10 AM Changeset in webkit [151379] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit/gtk

Merge r151245 - [GTK] AcceleratedCompositingContext: fix layerFlushTimerFiredCallback condition
https://bugs.webkit.org/show_bug.cgi?id=117258

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-06-05
Reviewed by Martin Robinson.

The expressions were incorrectly grouped, a timeout handler can
only be added only if there's none running already.

  • WebCoreSupport/AcceleratedCompositingContextGL.cpp:

(WebKit::AcceleratedCompositingContext::renderLayersToWindow):

4:05 AM Changeset in webkit [151378] by Christophe Dumez
  • 16 edits in trunk/Source/WebCore

Replace [ConstructorRaisesException] with [RaisesException]
https://bugs.webkit.org/show_bug.cgi?id=117400

Reviewed by Kentaro Hara.

Replace [ConstructorRaisesException] with [RaisesException] IDL extended
attribute and drop [ConstructorRaisesException]. It makes little sense
to have 2 extended attributes with the same meaning.

[RaisesException] can now be used on IDL operations to indicate that the
method may throw exceptions or on interfaces to indicate that the
constructor may throw exceptions.

From Blink r148027 by Kentaro Hara <haraken@chromium.org>.

No new tests, no behavior change.

  • Modules/encryptedmedia/MediaKeys.idl:
  • Modules/mediastream/RTCIceCandidate.idl:
  • Modules/mediastream/RTCPeerConnection.idl:
  • Modules/mediastream/RTCSessionDescription.idl:
  • Modules/webaudio/OfflineAudioContext.idl:
  • Modules/websockets/WebSocket.idl:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorDefinition):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/test/TestInterface.idl:
  • bindings/scripts/test/TestNamedConstructor.idl:
  • css/WebKitCSSMatrix.idl:
  • html/HTMLOptionElement.idl:
  • page/EventSource.idl:
  • workers/SharedWorker.idl:
  • workers/Worker.idl:
3:49 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:44 AM Changeset in webkit [151377] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit/gtk

Merge r151198 - [GTK] Make precedence of logical operators explicit
https://bugs.webkit.org/show_bug.cgi?id=117216

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-06-04
Reviewed by Martin Robinson.

There's a couple of cases where we mix && and
in the same

expression. In ChromeClient::contentsSizeChanged() the lack of
parentheses actually makes the expression wrong.

  • WebCoreSupport/AcceleratedCompositingContextGL.cpp:

(WebKit::AcceleratedCompositingContext::renderLayersToWindow):

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::contentsSizeChanged):

3:35 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:30 AM Changeset in webkit [151376] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r150763 - [GTK] WebKitWebView child widgets are not rendered with recent GTK+
https://bugs.webkit.org/show_bug.cgi?id=116794

Reviewed by Xan Lopez.

Since rev d22fd7223c75f4720ddb982c659efb0d8d7543c4 of GTK+ expose
events are not propagated to child GdkWindows anymore, and child
widgets are rendered via gtk_container_propagate_draw(). Since all
our children have its own GdkWindow (auth widget, inspector view
and windowed plugins) we don't propagate the draw signal making
them invisible with current GTK+.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDraw): Chain up to the parent draw(), so it's
propagated to the children. This shouldn't have any effect in
previous versions of GTK+ because gtk_container_propagate_draw()
returned early when the child widget had its own GdkWindow.

3:09 AM Changeset in webkit [151375] by commit-queue@webkit.org
  • 27 edits in trunk

Web Inspector: refactor statusBarItems getter in front-end.
https://bugs.webkit.org/show_bug.cgi?id=110114

Patch by Mátyás Mustoha <mmatyas@inf.u-szeged.hu> on 2013-06-10
Reviewed by Noam Rosenthal.

Source/WebCore:

Refactored "statusBarItems" methods from getters into functions and
moved default implementation from Panel.js to View.js.

Patch created by Andrey Lushnikov.

  • inspector/front-end/AdvancedSearchController.js:

(WebInspector.SearchView.prototype.statusBarItems):

  • inspector/front-end/ApplicationCacheItemsView.js:

(WebInspector.ApplicationCacheItemsView.prototype.statusBarItems):

  • inspector/front-end/AuditsPanel.js:

(WebInspector.AuditsPanel.prototype.statusBarItems):

  • inspector/front-end/CPUProfileView.js:

(WebInspector.CPUProfileView.prototype.statusBarItems):

  • inspector/front-end/CSSSelectorProfileView.js:

(WebInspector.CSSSelectorProfileView.prototype.statusBarItems):

  • inspector/front-end/CanvasProfileView.js:

(WebInspector.CanvasProfileView.prototype.statusBarItems):
(WebInspector.CanvasProfileType.prototype.statusBarItems):

  • inspector/front-end/ConsolePanel.js:

(WebInspector.ConsolePanel.prototype.statusBarItems):

  • inspector/front-end/ConsoleView.js:

(WebInspector.ConsoleView.prototype.statusBarItems):

  • inspector/front-end/CookieItemsView.js:

(WebInspector.CookieItemsView.prototype.statusBarItems):

  • inspector/front-end/DOMStorageItemsView.js:

(WebInspector.DOMStorageItemsView.prototype.statusBarItems):

  • inspector/front-end/DatabaseTableView.js:

(WebInspector.DatabaseTableView.prototype.statusBarItems):

  • inspector/front-end/Drawer.js:
  • inspector/front-end/ElementsPanel.js:

(WebInspector.ElementsPanel.prototype.statusBarItems):

  • inspector/front-end/ExtensionPanel.js:

(WebInspector.ExtensionPanel.prototype.statusBarItems):

  • inspector/front-end/FileSystemView.js:

(WebInspector.FileSystemView.prototype.statusBarItems):

  • inspector/front-end/HeapSnapshotView.js:
  • inspector/front-end/IndexedDBViews.js:

(WebInspector.IDBDataView.prototype.statusBarItems):

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype.statusBarItems):
(WebInspector.NetworkPanel.prototype.statusBarItems):

  • inspector/front-end/Panel.js:

(WebInspector.Panel.prototype.wasShown):

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfileType.prototype.statusBarItems):
(WebInspector.ProfilesPanel.prototype.statusBarItems):
(WebInspector.ProfilesPanel.prototype._updateProfileTypeSpecificUI):
(WebInspector.ProfilesPanel.prototype._showProfile):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.ResourcesPanel.prototype.statusBarItems):
(WebInspector.ResourcesPanel.prototype._innerShowView):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.statusBarItems):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype.statusBarItems):

  • inspector/front-end/View.js:

(WebInspector.View.prototype.statusBarItems):

LayoutTests:

Fix layout test to correspond to refactoring.
Patch created by Andrey Lushnikov.

  • inspector/extensions/extensions-panel.html:
3:03 AM Changeset in webkit [151374] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r150500 - REGRESSION(r150491): WebKit2.CloseThenTerminate asserting below WebContext::disconnectProcess().
<http://webkit.org/b/116588>

Reviewed by Sam Weinig.

Do an early return from WebProcessProxy::requestTermination() if there is no child process
connection to terminate.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::requestTermination):

3:01 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:00 AM Changeset in webkit [151373] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r150350 - GtkSelectionData length is off by one
https://bugs.webkit.org/show_bug.cgi?id=113962

Reviewed by Anders Carlsson.

No new tests. Since drag data is interpreted as a null-terminated string
this is difficult to test with a C program and we have no infrastructure
built for using GIR tests.

  • platform/gtk/PasteboardHelper.cpp:

(WebCore::PasteboardHelper::fillSelectionData): Instead of including the null
character in the paste data length, just include the string. This matches the behavior
of Firefox.

2:56 AM Changeset in webkit [151372] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r151270 - [Gtk] Connection is leaking when WebProcess is terminated
https://bugs.webkit.org/show_bug.cgi?id=117293

Reviewed by Martin Robinson.

Connection is leaking because WorkQueue::SocketEventSource inherits from
WorkQueue::EventSource but when it is destroyed, the actual destructor running
is the one from base class; however, subclass contains a function binded from
Connection (m_closeFunction) and we need to do this extra cleanup, otherwise
WorkQueue will keep Connection alive. A better explanation of this fix is provided
on http://stackoverflow.com/questions/461203/when-to-use-virtual-destructors

A quick way to see the leak is to change WK2 test "ReloadPageAfterCrash" to terminate
WebProcess N times and add a printf on Connection destructor.

  • Platform/gtk/WorkQueueGtk.cpp:

(WorkQueue::EventSource::~EventSource): Adds a virtual destructor to enable
the subclass to do its own cleanup.

2:48 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:43 AM Changeset in webkit [151371] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r150808 - [GTK] Connection issues in repeated WebProcess crash/reloads.
https://bugs.webkit.org/show_bug.cgi?id=115880

Reviewed by Anders Carlsson.

When stressing the WebProcess creation/destruction, WebKitGTK can
often run into socket issues like bad file descriptor errors or
polling a socket indefinitely.

Currently WebKitGTK has three places where a socket can be
closed.

  • childFinishedFunction (in ProcessLauncherGtk.cpp)
  • Connection::platformInvalidate (in ConnectionUnix.cpp)
  • WorkQueue EventSource destruction (in WorkQueueGtk.cpp)

To avoid these race conditions, socket closing will be handled
by the event source callback in WorkQueueGtk.cpp.

  • Platform/CoreIPC/unix/ConnectionUnix.cpp:

(CoreIPC::Connection::platformInvalidate): Do not close the socket
when the connection is invalidated, the socket event source is
unregistered in this method and the socket is closed when the
GSocket associated to the event source is destroyed.

  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:

(WebKit::ProcessLauncher::launchProcess): Do not monitor child
process to close the connection on termination. This was needed in
the past when we used DGRAM sockets, we currently use always
connection oriented sockets, so that when the other end closes
the connection we are notified and the connection is invalidated.

2:38 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:31 AM Changeset in webkit [151370] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r149934 - When possible, terminate web processes immediately when closing their last page.
<http://webkit.org/b/115964>
<rdar://problem/13869266>

Reviewed by Geoffrey Garen.

When we're using a network process, there's no need for the UI process to wait for web processes
to clear resource caches and terminate nicely.

We can just kill them off right away in WebProcessProxy::removeWebPage() when the last page is closed.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::removeWebPage):

Terminate the child process immediately if possible.

  • UIProcess/WebProcessProxy.h:

(WebKit::WebProcessProxy::canTerminateChildProcess):
(WebKit::WebProcessProxy::shouldTerminate):

Broke out the logic from the shouldTerminate() IPC message handler into a separate function
so we can call it from removeWebPage().

2:29 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:24 AM Changeset in webkit [151369] by Carlos Garcia Campos
  • 9 edits
    1 add in releases/WebKitGTK/webkit-2.0

Merge r149933 - Crash when terminating a process that has not been fully launched
https://bugs.webkit.org/show_bug.cgi?id=115962
<rdar://problem/13660916>

Reviewed by Andreas Kling.

Source/WebKit2:

Handle terminating a process that has not been fully launched.

  • UIProcess/Launcher/ProcessLauncher.cpp:

(WebKit::ProcessLauncher::didFinishLaunchingProcess):
If we have been invalidated, dispose the connection identifier.

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::ProcessLauncher::terminateProcess):
If we're still launching the process, invalidate so the client won't get an unexpected
didFinishLaunching callback.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::requestTermination):
Check if webConnection() is null before calling it. (It will be null if the process isn't fully launched).

Tools:

Add TerminateTwice, a test that terminates a page, then reloads it and terminates it again
before the process has had a chance to be fully launched.

  • TestWebKitAPI/GNUmakefile.am:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/TerminateTwice.cpp: Added.

(TestWebKitAPI):
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/WebKit2.pro:
2:19 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:14 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:14 AM Changeset in webkit [151368] by Carlos Garcia Campos
  • 4 edits
    1 add in releases/WebKitGTK/webkit-2.0

Merge r149573 - REGRESSION(r148312): Crash when calling WKPageClose(page) followed by WKPageTerminate(page)
<rdar://problem/13702008>
https://bugs.webkit.org/show_bug.cgi?id=115607

Reviewed by Benjamin Poulain.

Source/WebKit2:

API Test: WebKit2.CloseThenTerminate

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::resetStateAfterProcessExited):
Don't try to reset the state if the page is closed, it won't work and its not worth it.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/CloseThenTerminate.cpp: Added.

(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::TEST):
Add test that calls WKPageClose, follow by WKPageTerminate. If it crashes, its not working.

2:09 AM Changeset in webkit [151367] by Carlos Garcia Campos
  • 11 edits
    1 add in releases/WebKitGTK/webkit-2.0

Merge r148312 - [WK2] WebPageProxy loadURL() won't work when called just after terminateProcess()
https://bugs.webkit.org/show_bug.cgi?id=110743

Patch by Adenilson Cavalcanti <cavalcantii@gmail.com> on 2013-04-12
Reviewed by Benjamin Poulain.

Source/WebKit2:

A call to loadURL() just after terminating WebProcess will fail thanks to
WebPageProxy being in an undefined state since it is in the middle of its own
cleanup after process termination.

To properly fix this, not only WebPageProxy cleanup should be made
at WebProcess termination request, but also WebProcessProxy needs
to only return to its caller after terminating the process and
closing connections. Otherwise, WebPageProxy can even be able to
detect that WebProcess is no longer running, but a call to respawn
the process will fail.

To fix these issues, this patch moves the cleanup code to a shared private function
that is used for both the cases i.e. user termination and real crash. WebProcess
shutdown is done using a new method that ensures that all cleanup was done before
returning.

A last change introduced in this patch is that for user requested termination,
clients are no longer notified of a crash (since it is not a crash).

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::terminateProcess):
(WebKit::WebPageProxy::processDidCrash):
(WebKit):
(WebKit::WebPageProxy::resetStateAfterProcessExited):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::userRequestedTerminate):
(WebKit):

  • UIProcess/WebProcessProxy.h:

(WebProcessProxy):

Tools:

Adding a new test file to check if loading a page just after WebProcess
has crashed (or was terminated) works. The test executes the
following steps (Load, Crash, Load), thus stressing WebProcess
reattach and process termination code path.

  • TestWebKitAPI/GNUmakefile.am:
  • TestWebKitAPI/PlatformEfl.cmake:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash.cpp:

(TestWebKitAPI::setPageLoaderClient):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/LoadPageOnCrash.cpp: Added.

(TestWebKitAPI):
(WebKit2CrashLoader):
(TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
(TestWebKitAPI::WebKit2CrashLoader::loadUrl):
(TestWebKitAPI::WebKit2CrashLoader::crashWebProcess):
(TestWebKitAPI::didFinishLoad):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/WebKit2.pro:
1:52 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
1:47 AM Changeset in webkit [151366] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source

Merge r145194 - Cache flush problem on ARMv7 JSC
https://bugs.webkit.org/show_bug.cgi?id=111441

Reviewed by Zoltan Herczeg.

Not proper cache flush causing random crashes on ARMv7 Linux with V8 tests.
The problem is similar to https://bugs.webkit.org/show_bug.cgi?id=77712.
Change the cache fulsh mechanism similar to ARM traditinal and revert the
temporary fix.

Source/JavaScriptCore:

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::cacheFlush):

Source/WTF:

  • wtf/OSAllocatorPosix.cpp:

(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::decommit):

1:04 AM Changeset in webkit [151365] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebCore

Add special tree walking for the single tag or class CSS query selectors
https://bugs.webkit.org/show_bug.cgi?id=117388

Reviewed by Ryosuke Niwa.

Queries for a single tag name or a single class name are the most common
input of querySelector.

This patch adds a simplified tree walking in those cases, only checking that particular
case instead of a full selector.

With the change, the balanced query selector benchmarks become 11% faster.

  • css/SelectorCheckerFastPath.cpp:

(WebCore::HTMLNames::checkClassValue):

  • dom/SelectorQuery.cpp:

(WebCore::isSingleTagNameSelector):
(WebCore::SelectorDataList::executeSingleTagNameSelectorData):
(WebCore::isSingleClassNameSelector):
(WebCore::SelectorDataList::executeSingleClassNameSelectorData):
(WebCore::SelectorDataList::execute):

  • dom/SelectorQuery.h:
12:16 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
Remove change previous to the branch point :-) (diff)
12:08 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
12:04 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)

Jun 9, 2013:

11:25 PM Changeset in webkit [151364] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[CoordinatedGraphics] Typo in argument decoder for CoordinatedGraphicsState
https://bugs.webkit.org/show_bug.cgi?id=117384

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-06-09
Reviewed by Noam Rosenthal.

For CSS Shaders, it must decode state.customFiltersToRemove instead of
state.updateAtlasesToRemove.

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(CoreIPC::::decode):

10:45 PM Changeset in webkit [151363] by ggaren@apple.com
  • 93 edits
    4 adds
    4 deletes in branches/dfgFourthTier

Re-worked non-local variable resolution
https://bugs.webkit.org/show_bug.cgi?id=117375

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

This patch has two goals:

(1) Simplicity.

  • Net removes 15 opcodes.
  • Net removes 2,000 lines of code.
  • Removes setPair() from the DFG: All DFG nodes have 1 result register now.

(2) Performance.

  • 2%-3% speedup on SunSpider (20% in LLInt and Baseline JIT)
  • 2% speedup on v8-spider
  • 10% speedup on js-regress-hashmap*
  • Amusing 2X speedup on js-regress-poly-stricteq

The bytecode now separates the scope chain resolution opcode from the
scope access opcode.

OLD:

get_scoped_var r0, 1, 0
inc r0
put_scoped_var 1, 0, r0

NEW:

resolve_scope r0, x(@id0)
get_from_scope r1, r0, x(@id0)
inc r1
put_to_scope r0, x(@id0), r1

Also, we link non-local variable resolution opcodes at CodeBlock link
time instead of time of first opcode execution.

This means that we can represent all possible non-local variable
resolutions using just three opcodes, and any optimizations in these
opcodes naturally apply across-the-board.

  • API/JSCTestRunnerUtils.cpp:

(JSC::numberOfDFGCompiles):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode): Updated for removed things.

(JSC::CodeBlock::CodeBlock): Always provide the full scope chain when
creating a CodeBlock, so we can perform non-local variable resolution.

Added code to perform linking for these opcodes. This is where we figure
out which non-local variable resolutions are optimizable, and how.

(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::noticeIncomingCall):
(JSC::CodeBlock::optimizeAfterWarmUp):
(JSC::CodeBlock::optimizeAfterLongWarmUp):
(JSC::CodeBlock::optimizeSoon): Updated for removed things.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::needsActivation):
(JSC::GlobalCodeBlock::GlobalCodeBlock):
(JSC::ProgramCodeBlock::ProgramCodeBlock):
(JSC::EvalCodeBlock::EvalCodeBlock):
(JSC::FunctionCodeBlock::FunctionCodeBlock):

  • bytecode/EvalCodeCache.h:

(JSC::EvalCodeCache::getSlow): Updated for interface changes.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor): Treat global object access as
optimizable even though the global object has a custom property access
callback. This is what we've always done since, otherwise, we can't
optimize globals. (In future, we probably want to figure out a more
targeted policy than "any property access callback means no
optimization".)

  • bytecode/GlobalResolveInfo.h: Removed.
  • bytecode/Instruction.h:
  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor): Like GetByIdStatus.

  • bytecode/ResolveGlobalStatus.cpp: Removed.
  • bytecode/ResolveGlobalStatus.h: Removed.
  • bytecode/ResolveOperation.h: Removed.
  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::generateFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::codeBlockFor):
(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h: Don't provide a scope chain to unlinked

code blocks. Giving a scope to an unscoped compilation unit invites
programming errors.

  • bytecode/Watchpoint.h:

(JSC::WatchpointSet::addressOfIsInvalidated):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::resolveCallee):
(JSC::BytecodeGenerator::local):
(JSC::BytecodeGenerator::constLocal):
(JSC::BytecodeGenerator::resolveType):
(JSC::BytecodeGenerator::emitResolveScope):
(JSC::BytecodeGenerator::emitGetFromScope):
(JSC::BytecodeGenerator::emitPutToScope):
(JSC::BytecodeGenerator::emitInstanceOf):
(JSC::BytecodeGenerator::emitPushWithScope):
(JSC::BytecodeGenerator::emitPopScope):
(JSC::BytecodeGenerator::pushFinallyContext):
(JSC::BytecodeGenerator::emitComplexPopScopes):
(JSC::BytecodeGenerator::popTryAndEmitCatch):
(JSC::BytecodeGenerator::emitPushNameScope):
(JSC::BytecodeGenerator::isArgumentNumber):

  • bytecompiler/BytecodeGenerator.h:

(JSC::Local::Local):
(JSC::Local::operator bool):
(JSC::Local::get):
(JSC::Local::isReadOnly):
(JSC::BytecodeGenerator::scopeDepth):
(JSC::BytecodeGenerator::shouldOptimizeLocals):
(JSC::BytecodeGenerator::canOptimizeNonLocals): Refactored the bytecode
generator to resolve all variables within local scope, as if there
were no non-local scope. This helps provide a separation of concerns:
unlinked bytecode is always scope-free, and the linking stage links
in the provided scope.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ResolveNode::isPure):
(JSC::ResolveNode::emitBytecode):
(JSC::EvalFunctionCallNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::PostfixNode::emitResolve):
(JSC::DeleteResolveNode::emitBytecode):
(JSC::TypeOfResolveNode::emitBytecode):
(JSC::PrefixNode::emitResolve):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::ConstDeclNode::emitCodeSingle):
(JSC::ForInNode::emitBytecode): A bunch of this codegen is no longer
necessary, since it's redundant with the linking stage.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::cellConstantWithStructureCheck):
(JSC::DFG::ByteCodeParser::handlePutByOffset):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::parseBlock): Updated for interface changes.
Notably, we can reuse existing DFG nodes -- but the mapping between
bytecode and DFG nodes has changed, and some nodes and corner cases have
been removed.

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::scopedVarLoadElimination):
(JSC::DFG::CSEPhase::varInjectionWatchpointElimination):
(JSC::DFG::CSEPhase::globalVarStoreElimination):
(JSC::DFG::CSEPhase::scopedVarStoreElimination):
(JSC::DFG::CSEPhase::getLocalLoadElimination):
(JSC::DFG::CSEPhase::setLocalStoreElimination):
(JSC::DFG::CSEPhase::performNodeCSE): Added CSE for var injection
watchpoints. Even though watchpoints are "free", they're quite common
inside code that's subject to var injection, so I figured we'd save a
little memory.

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGCapabilities.h: Removed detection for old forms.
  • dfg/DFGDriver.h:

(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGGraph.h:
  • dfg/DFGJITCode.cpp:
  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToStructureTransitionWatchpoint):
(JSC::DFG::Node::hasVarNumber):
(JSC::DFG::Node::hasIdentifierNumberForCheck):
(JSC::DFG::Node::hasRegisterPointer):
(JSC::DFG::Node::hasHeapPrediction):

  • dfg/DFGNodeType.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGRepatch.h:

(JSC::DFG::dfgResetGetByID):
(JSC::DFG::dfgResetPutByID):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation): Removed some unneeded things,
and updated for renames.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile): The two primary changes here are:

(1) Use a watchpoint for var injection instead of looping over the scope
chain and checking. This is more efficient and much easier to model in
code generation.

(2) I've eliminated the notion of an optimized global assignment that
needs to check for whether it should fire a watchpiont. Instead, we
fire pre-emptively at the point of optimization. This removes a bunch
of edge cases, and it seems like a more honest representation of
the fact that our new optimization contradicts our old one.

  • dfg/DFGTypeCheckHoistingPhase.cpp:

(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantStructureChecks):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantArrayChecks):

  • heap/DFGCodeBlocks.cpp:

(JSC::DFGCodeBlocks::jettison):

  • interpreter/CallFrame.h:

(JSC::ExecState::trueCallFrame): Removed stuff that's unused now, and
fixed the build.

  • interpreter/Interpreter.cpp:

(JSC::eval):
(JSC::getBytecodeOffsetForCallFrame):
(JSC::getCallerInfo):
(JSC::Interpreter::throwException): Updated exception scope tracking
to match the rest of our linking strategy: The unlinked bytecode compiles
exception scope as if non-local scope did not exist, and we add in
non-local scope at link time. This means that we can restore the right
scope depth based on a simple number, without checking the contents of
the scope chain.

(JSC::Interpreter::execute): Make sure to establish the full scope chain
before linking eval code. We now require the full scope chain at link
time, in order to link non-local variable resolution opcodes.

  • jit/JIT.cpp:

(JSC::JIT::JIT):
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITArithmetic.cpp:

(JSC::JIT::emit_op_add):

  • jit/JITCode.cpp:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emitSlow_op_bitxor):
(JSC::JIT::emitSlow_op_bitor):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emitSlow_op_to_primitive):
(JSC::JIT::emit_op_strcat):
(JSC::JIT::emitSlow_op_create_this):
(JSC::JIT::emitSlow_op_to_this):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitVarInjectionCheck):
(JSC::JIT::emitResolveClosure):
(JSC::JIT::emit_op_resolve_scope):
(JSC::JIT::emitSlow_op_resolve_scope):
(JSC::JIT::emitLoadWithStructureCheck):
(JSC::JIT::emitGetGlobalProperty):
(JSC::JIT::emitGetGlobalVar):
(JSC::JIT::emitGetClosureVar):
(JSC::JIT::emit_op_get_from_scope):
(JSC::JIT::emitSlow_op_get_from_scope):
(JSC::JIT::emitPutGlobalProperty):
(JSC::JIT::emitPutGlobalVar):
(JSC::JIT::emitPutClosureVar):
(JSC::JIT::emit_op_put_to_scope):
(JSC::JIT::emitSlow_op_put_to_scope):
(JSC::JIT::emit_op_init_global_const):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emitVarInjectionCheck):
(JSC::JIT::emitResolveClosure):
(JSC::JIT::emit_op_resolve_scope):
(JSC::JIT::emitSlow_op_resolve_scope):
(JSC::JIT::emitLoadWithStructureCheck):
(JSC::JIT::emitGetGlobalProperty):
(JSC::JIT::emitGetGlobalVar):
(JSC::JIT::emitGetClosureVar):
(JSC::JIT::emit_op_get_from_scope):
(JSC::JIT::emitSlow_op_get_from_scope):
(JSC::JIT::emitPutGlobalProperty):
(JSC::JIT::emitPutGlobalVar):
(JSC::JIT::emitPutClosureVar):
(JSC::JIT::emit_op_put_to_scope):
(JSC::JIT::emitSlow_op_put_to_scope):
(JSC::JIT::emit_op_init_global_const):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • jit/JITStubs.h: Re-wrote baseline JIT codegen for our new variable

resolution model.

  • llint/LLIntData.cpp:

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

  • llint/LLIntSlowPaths.cpp:
  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter.cpp:

(JSC::CLoop::execute):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm: Ditto for LLInt.
  • offlineasm/x86.rb: Fixed a pre-existing encoding bug for a syntactic

form that we never used before.

  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncConcat):
(JSC::arrayProtoFuncPop):
(JSC::arrayProtoFuncPush):
(JSC::arrayProtoFuncReverse):
(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSlice):
(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncMap):
(JSC::arrayProtoFuncEvery):
(JSC::arrayProtoFuncForEach):
(JSC::arrayProtoFuncSome):
(JSC::arrayProtoFuncReduce):
(JSC::arrayProtoFuncReduceRight):
(JSC::arrayProtoFuncIndexOf):
(JSC::arrayProtoFuncLastIndexOf): Fixed some pre-existing bugs in
'this' value conversion, which I made much more common by removing
special cases in bytecode generation.

These functions need to invoke toThis() because they observe the 'this'
value. Also, toLocaleString() is specified to accept non-array 'this'
values.

(Most other host functions don't need this fix because they perform
strict 'this' checking, which never coerces unexpected types.)

  • runtime/CodeCache.cpp:

(JSC::CodeCache::getCodeBlock):
(JSC::CodeCache::getProgramCodeBlock):
(JSC::CodeCache::getEvalCodeBlock):

  • runtime/CodeCache.h: Don't supply a scope to the unlinked code cache.

Unlinked code is supposed to be scope-free, so let's have the compiler
help verify that.

  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:
  • runtime/Executable.cpp:

(JSC::EvalExecutable::create):
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::produceCodeBlockFor):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

  • runtime/Executable.h:

(JSC::EvalExecutable::numVariables):
(JSC::EvalExecutable::numberOfFunctionDecls):

  • runtime/ExecutionHarness.h:

(JSC::prepareForExecutionImpl):
(JSC::prepareFunctionForExecutionImpl):
(JSC::installOptimizedCode): Fiddled with executable initialization so
that we can always generate a full scope chain before we go to link a
code block. We need this because code block linking now depends on the
scope chain to link non-local variable resolution opcodes.

  • runtime/JSActivation.h:
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::JSGlobalObject):
(JSC::JSGlobalObject::createEvalCodeBlock):

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::varInjectionWatchpoint):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncEval):

  • runtime/JSNameScope.h:
  • runtime/JSScope.cpp:

(JSC::abstractAccess):
(JSC::JSScope::objectAtScope):
(JSC::JSScope::depth):
(JSC::JSScope::resolve):
(JSC::JSScope::abstractResolve): Updated to match changes explained above.

  • runtime/JSScope.h:

(JSC::makeType):
(JSC::needsVarInjectionChecks):
(JSC::ResolveOp::ResolveOp):
(JSC::ResolveModeAndType::ResolveModeAndType):
(JSC::ResolveModeAndType::mode):
(JSC::ResolveModeAndType::type):
(JSC::ResolveModeAndType::operand): Removed the old variable resolution
state machine, since it's unused now. Added logic for performing abstract
variable resolution at link time. This is used by codeblock linking.

  • runtime/ObjectPrototype.cpp:

(JSC::objectProtoFuncValueOf):
(JSC::objectProtoFuncHasOwnProperty):
(JSC::objectProtoFuncIsPrototypeOf):
(JSC::objectProtoFuncDefineGetter):
(JSC::objectProtoFuncDefineSetter):
(JSC::objectProtoFuncLookupGetter):
(JSC::objectProtoFuncLookupSetter):
(JSC::objectProtoFuncPropertyIsEnumerable):
(JSC::objectProtoFuncToLocaleString):
(JSC::objectProtoFuncToString): Fixed some pre-existing bugs in
'this' value conversion, which I made much more common by removing
special cases in bytecode generation.

These functions need to invoke toThis() because they observe the 'this'
value.

  • runtime/StringPrototype.cpp:

(JSC::checkObjectCoercible):
(JSC::stringProtoFuncReplace):
(JSC::stringProtoFuncCharAt):
(JSC::stringProtoFuncCharCodeAt):
(JSC::stringProtoFuncConcat):
(JSC::stringProtoFuncIndexOf):
(JSC::stringProtoFuncLastIndexOf):
(JSC::stringProtoFuncMatch):
(JSC::stringProtoFuncSearch):
(JSC::stringProtoFuncSlice):
(JSC::stringProtoFuncSplit):
(JSC::stringProtoFuncSubstr):
(JSC::stringProtoFuncSubstring):
(JSC::stringProtoFuncToLowerCase):
(JSC::stringProtoFuncToUpperCase):
(JSC::stringProtoFuncLocaleCompare):
(JSC::stringProtoFuncBig):
(JSC::stringProtoFuncSmall):
(JSC::stringProtoFuncBlink):
(JSC::stringProtoFuncBold):
(JSC::stringProtoFuncFixed):
(JSC::stringProtoFuncItalics):
(JSC::stringProtoFuncStrike):
(JSC::stringProtoFuncSub):
(JSC::stringProtoFuncSup):
(JSC::stringProtoFuncFontcolor):
(JSC::stringProtoFuncFontsize):
(JSC::stringProtoFuncAnchor):
(JSC::stringProtoFuncLink):
(JSC::trimString): Fixed some pre-existing bugs in
'this' value conversion, which I made much more common by removing
special cases in bytecode generation.

These functions need to invoke toThis() because they observe the 'this'
value.

  • runtime/StructureRareData.cpp:
  • runtime/VM.cpp:

(JSC::VM::~VM):

  • runtime/WriteBarrier.h:

(JSC::WriteBarrierBase::slot): Modified to reduce casting in client code.

LayoutTests:

This patch removed special-case 'this' resolution from bytecode, making
some pre-existing edge cases in 'this' value treatment much more common.

I updated the test results below, and added some tests, to match bug
fixes for these cases.

  • fast/js/script-tests/array-functions-non-arrays.js:
  • fast/js/array-functions-non-arrays-expected.txt: As specified, it's

not an error to pass a non-array to toLocaleString. Our new result
matches Firefox and Chrome.

  • fast/js/array-prototype-properties-expected.txt: Updated for slightly

clearer error message.

  • fast/js/basic-strict-mode-expected.txt: Updated for slightly more

standard error message.

  • fast/js/object-prototype-toString-expected.txt: Added.
  • fast/js/object-prototype-toString.html: Added. This test demonstrates

why we now fail a Sputnik test below, while Firefox and Chrome pass it.
(The test doesn't test what it thinks it tests, and this test verifies
that we get right what it does think it tests.)

  • fast/js/string-prototype-function-this-expected.txt: Added.
  • fast/js/string-prototype-function-this.html: Added. This test shows

that we CheckObjectCoercible in string prototype functions. (We used
to get this wrong, but Sputnik tests made it seem like we got it right
because they didn't test the dynamic scope case.)

  • sputnik/Conformance/11_Expressions/11.1_Primary_Expressions/11.1.1_The_this_Keyword/S11.1.1_A2-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.3_Array_prototype_toLocaleString/S15.4.4.3_A2_T1-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.10_String.prototype.match/S15.5.4.10_A1_T3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.11_String.prototype.replace/S15.5.4.11_A1_T3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.12_String.prototype.search/S15.5.4.12_A1_T3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.13_String.prototype.slice/S15.5.4.13_A1_T3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.15_String.prototype.substring/S15.5.4.15_A1_T3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.6_String.prototype.concat/S15.5.4.6_A1_T3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.7_String.prototype.indexOf/S15.5.4.7_A1_T3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.8_String.prototype.lastIndexOf/S15.5.4.8_A1_T3-expected.txt:

Updated to show failing results. Firefox and Chrome also fail these
tests, and the ES5 spec seems to mandate failure. Because these tests
resolve a String.prototype function at global scope, the 'this' value
for the call is an environment record. Logically, an environment record
converts to 'undefined' at the call site, and should then fail the
CheckObjectCoercible test.

10:15 PM Changeset in webkit [151362] by ggaren@apple.com
  • 28 edits
    2 adds in branches/dfgFourthTier/Source/JavaScriptCore

Unreviewed, rolled back in http://trac.webkit.org/changeset/151342.

I filled in the missing return register loads, and tests
seem to pass now.

2013-06-07 Michael Saboff <msaboff@apple.com>

fourthTier: The baseline jit and LLint should use common slow paths
https://bugs.webkit.org/show_bug.cgi?id=116889

8:08 PM Changeset in webkit [151361] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Unreviewed test correction: Prevent DumpRenderTree crashes

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::role): Prevent crashes when m_element is null. This
happends in some of the 'accessibility' test cases.

2:22 PM Changeset in webkit [151360] by roger_fong@apple.com
  • 8 edits
    2 adds in trunk

Layout info should never be cleared before delayed scroll information updates.
https://bugs.webkit.org/show_bug.cgi?id=116689.

Reviewed by Darin Adler.

Test: fast/flexbox/clear-overflow-before-scroll-update.html

Make sure that clearLayoutOverflow only gets called after layer()->updateScrollInfoAfterLayout().
Also move clearLayoutOverflow to RenderBlock so we can keep all the delayed scroll update logic in RenderBlock.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::finishDelayUpdateScrollInfo): Call clearLayoutOverflow here.
(WebCore::RenderBlock::layout): Only call clearLayoutOverflow here if scrolling isn't being delayed.
(WebCore::RenderBlock::clearLayoutOverflow): Remove clearLayoutOverflow, move into RenderBlock to keep delayed scrolling logic in the same file.

  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp:
  • rendering/RenderBox.h:
  • rendering/RenderDeprecatedFlexibleBox.cpp: Should call updateScrollInfoAfterLayout, not layer()->updateScrollInfoAfterLayout(), so that it takes delayed scrolling logic into account.

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderGrid.cpp: Ditto

(WebCore::RenderGrid::layoutBlock):

1:57 PM Changeset in webkit [151359] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Split the 3 paths of SelectorDataList::execute() into 3 separate functions
https://bugs.webkit.org/show_bug.cgi?id=117378

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-06-09
Reviewed by Ryosuke Niwa.

Split those to have several small execute() fucntions instead of a giant one.

  • dom/SelectorQuery.cpp:

(WebCore::selectorForIdLookup):
(WebCore::isTreeScopeRoot):
(WebCore::SelectorDataList::executeFastPathForIdSelector):
(WebCore::SelectorDataList::executeSingleSelectorData):
(WebCore::SelectorDataList::executeSingleMultiSelectorData):
(WebCore::SelectorDataList::execute):

  • dom/SelectorQuery.h:
1:56 PM Changeset in webkit [151358] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Tools

Unreviewed, fix minor goof in profiling output layout. We weren't accounting
for the "/" that is printed between engine counts.

  • Scripts/display-profiler-output:
1:04 PM Changeset in webkit [151357] by fpizlo@apple.com
  • 4 edits in branches/dfgFourthTier/Source

Source/WebCore: Unreviewed, fix build. Use at() instead of operator[] because of ambiguity on some compilers.

  • page/CaptionUserPreferencesMac.mm:

(WebCore::languageIdentifier):

Source/WTF: Unreviewed, fix build. On some compilers the automatic coercion from WTF::String to NSString*
causes operator[] to appear ambiguous. One way around this is to make WTF::String behave like
most of our other classes: at(unsigned) is always a valid synonym for operator[](unsigned).

  • wtf/text/WTFString.h:

(WTF::String::at):
(WTF::String::operator[]):

12:52 PM Changeset in webkit [151356] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Scrolling with platformWidget and delegateScrolling is incorrectly clamped
https://bugs.webkit.org/show_bug.cgi?id=117369
<rdar://problem/13985064>

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-06-09
Reviewed by Darin Adler.

The patch http://trac.webkit.org/changeset/142526 clamps the input position
in the ScrollView scroll range. This was done for the path to the ScrollingCoordinator.

The problem with that change is ScrollView::setScrollPosition() can delegate the scrolling
to either a platformWidget, or through delegateScrolling. After r142526, the position is clamped,
and we do not let those external scrolling mechanims handle the out-of-bound scrolling.

This patch fixes the issue by moving the threaded scrolling call to ScrollView,
after the delegate handling code.

  • page/FrameView.cpp:

(WebCore::FrameView::setScrollPosition):
(WebCore::FrameView::requestScrollPositionUpdate):

12:19 PM Changeset in webkit [151355] by fpizlo@apple.com
  • 7 edits
    6 adds in branches/dfgFourthTier

fourthTier: DFG GetById patching shouldn't distinguish between self lists and proto lists
https://bugs.webkit.org/show_bug.cgi?id=117377

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Previously if you did self accesses and then wanted to do a prototype access, you'd
have a bad time: the prototype accesses would be forced to take slow path because
the self list wouldn't allow prototype accesses. Likewise if you did prototype (or
chain) accesses and then wanted to do a self access, similar stupidity would ensue.

This fixes the stupidity.

I believe that this was introduced way back in the days of the old interpreter,
where distinguishing between self lists, proto lists, and chain lists was meaningful
for interpreter performance: it meant fewer branches to evaluate those lists. Then
it got mostly carried over to the old JIT since the old JIT was just initially an
optimized version of the old interpreter, and then later it got carried over to the
DFG because I didn't know any better at the time. Now I do know better and I'm
fixing it.

  • bytecode/PolymorphicAccessStructureList.h:

(JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):

  • bytecode/StructureStubInfo.h:

(JSC::StructureStubInfo::initGetByIdSelfList):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryCacheGetByID):
(JSC::DFG::getPolymorphicStructureList):
(DFG):
(JSC::DFG::patchJumpToGetByIdStub):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::dfgBuildGetByIDList):

LayoutTests:

Reviewed by Geoffrey Garen.

Add tests that show why this is important. These tests speed up by more than 3x.

  • fast/js/regress/get-by-id-proto-or-self-expected.txt: Added.
  • fast/js/regress/get-by-id-proto-or-self.html: Added.
  • fast/js/regress/get-by-id-self-or-proto-expected.txt: Added.
  • fast/js/regress/get-by-id-self-or-proto.html: Added.
  • fast/js/regress/script-tests/get-by-id-proto-or-self.js: Added.

(foo):
(bar):
(Foo):

  • fast/js/regress/script-tests/get-by-id-self-or-proto.js: Added.

(foo):
(bar):
(Foo):

12:04 PM Changeset in webkit [151354] by mark.lam@apple.com
  • 14 edits in branches/dfgFourthTier/Source/JavaScriptCore

Fix broken no-DFG build.
https://bugs.webkit.org/show_bug.cgi?id=117381.

Reviewed by Geoffrey Garen.

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

(CodeBlock):
(ProgramCodeBlock):
(EvalCodeBlock):
(FunctionCodeBlock):

  • dfg/DFGCapabilities.h:
  • dfg/DFGDriver.h:

(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • dfg/DFGJITCode.cpp:
  • dfg/DFGRepatch.h:

(JSC::DFG::dfgResetGetByID):
(JSC::DFG::dfgResetPutByID):

  • heap/DFGCodeBlocks.cpp:

(JSC::DFGCodeBlocks::jettison):

  • interpreter/CallFrame.h:

(ExecState):
(JSC::ExecState::trueCallFrame):

  • interpreter/Interpreter.cpp:

(JSC::getCallerInfo):

  • runtime/Executable.cpp:
  • runtime/Executable.h:

(EvalExecutable):
(ProgramExecutable):
(FunctionExecutable):

  • runtime/ExecutionHarness.h:
  • runtime/VM.cpp:

(JSC::VM::~VM):

Note: See TracTimeline for information about the timeline view.