Increase code sharing between CSSProperty and CSSPropertyLonghand.
https://bugs.webkit.org/show_bug.cgi?id=82479

Reviewed by Antti Koivisto.

Use longhands declarations from CSSPropertyLonghand in CSSProperty to avoid
code duplication.

No new tests : refactoring only, we shouldn't have any behavior difference.

* css/CSSProperty.cpp:
(WebCore::resolveToPhysicalProperty):
(WebCore::borderDirections):
(WebCore):
(WebCore::CSSProperty::resolveDirectionAwareProperty):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112418 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[REGRESSION] Web Inspector: column caption delimiters are misaligned in DataGrid
https://bugs.webkit.org/show_bug.cgi?id=82193

Reviewed by Yury Semikhatsky.

Since r111742 column width in fixed layout tables is set to the width of the cell plus its left padding plus its right padding
plus half its left border plus half its right border in the collapsing border model. The layout of the panel
headers in the inspector depended on pre-r111742 behaviour, so ended up misaligned with the content below. To cater for the
new method of calculating column width enforce a fixed width for the corner column by removing padding and borders (except collapsed
borders from adjacent cells) and specify the expected width (15px) minus the expected width of the collapsed borders (1px).

* inspector/front-end/dataGrid.css:
(.data-grid th.corner):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112419 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] MediaStream API (JSEP): Introducing WebPeerConnection00Handler
https://bugs.webkit.org/show_bug.cgi?id=82450

Reviewed by Adam Barth.

Source/WebCore:

This change removes the default PeerConnection00Handler.cpp from the Chromium build.

A major overhaul of the existing layout tests is forthcoming.

* WebCore.gypi:
* platform/mediastream/PeerConnection00Handler.h:
(WebCore):
(PeerConnection00Handler):

Source/WebKit/chromium:

Last patch to enable the PeerConnection00 functionality in Chromium introduces
WebPeerConnection00Handler and WebPeerConnection00HandlerClient, together with the necessary plumbing.

* WebKit.gyp:
* bridge/PeerConnection00Handler.cpp: Added.
(WebCore):
(WebCore::PeerConnection00Handler::create):
(WebCore::PeerConnection00Handler::PeerConnection00Handler):
(WebCore::PeerConnection00Handler::~PeerConnection00Handler):
(WebCore::PeerConnection00Handler::createOffer):
(WebCore::PeerConnection00Handler::createAnswer):
(WebCore::PeerConnection00Handler::setLocalDescription):
(WebCore::PeerConnection00Handler::setRemoteDescription):
(WebCore::PeerConnection00Handler::localDescription):
(WebCore::PeerConnection00Handler::remoteDescription):
(WebCore::PeerConnection00Handler::startIce):
(WebCore::PeerConnection00Handler::processIceMessage):
(WebCore::PeerConnection00Handler::addStream):
(WebCore::PeerConnection00Handler::removeStream):
(WebCore::PeerConnection00Handler::stop):
* bridge/PeerConnection00HandlerInternal.cpp: Added.
(WebCore):
(WebCore::PeerConnection00HandlerInternal::PeerConnection00HandlerInternal):
(WebCore::PeerConnection00HandlerInternal::~PeerConnection00HandlerInternal):
(WebCore::PeerConnection00HandlerInternal::createOffer):
(WebCore::PeerConnection00HandlerInternal::createAnswer):
(WebCore::PeerConnection00HandlerInternal::setLocalDescription):
(WebCore::PeerConnection00HandlerInternal::setRemoteDescription):
(WebCore::PeerConnection00HandlerInternal::localDescription):
(WebCore::PeerConnection00HandlerInternal::remoteDescription):
(WebCore::PeerConnection00HandlerInternal::startIce):
(WebCore::PeerConnection00HandlerInternal::processIceMessage):
(WebCore::PeerConnection00HandlerInternal::addStream):
(WebCore::PeerConnection00HandlerInternal::removeStream):
(WebCore::PeerConnection00HandlerInternal::stop):
(WebCore::PeerConnection00HandlerInternal::didGenerateICECandidate):
(WebCore::PeerConnection00HandlerInternal::didChangeReadyState):
(WebCore::PeerConnection00HandlerInternal::didChangeICEState):
(WebCore::PeerConnection00HandlerInternal::didAddRemoteStream):
(WebCore::PeerConnection00HandlerInternal::didRemoveRemoteStream):
* bridge/PeerConnection00HandlerInternal.h: Copied from Source/WebCore/platform/mediastream/PeerConnection00Handler.h.
(WebKit):
(WebCore):
(PeerConnection00HandlerInternal):
* public/platform/WebKitPlatformSupport.h:
(WebKit):
(WebKit::WebKitPlatformSupport::createPeerConnection00Handler):
* public/platform/WebPeerConnection00Handler.h: Added.
(WebKit):
(WebPeerConnection00Handler):
(WebKit::WebPeerConnection00Handler::~WebPeerConnection00Handler):
* public/platform/WebPeerConnection00HandlerClient.h: Added.
(WebKit):
(WebPeerConnection00HandlerClient):
(WebKit::WebPeerConnection00HandlerClient::~WebPeerConnection00HandlerClient):
* src/AssertMatchingEnums.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112421 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add history navigation to garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=82495

Reviewed by Dimitri Glazkov.

Also, maintain scroll offsets when returning to a tab. This makes addressing
expected failures considerably easier when dealing with below-the-fold tests.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
-Store the scrollTop before switching to a new tab and restore the appropriate scrollTop after
switching.
-Modify window.location with the tabName in the hash. Can't use pushState because this is served
from a file URL and Chrome puts each different file URL in it's own origin.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
Remove the href so that clicking on the accordion item does not modify window.location.hash.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112423 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<http://webkit.org/b/82419> Web Inspector: Create -[DOMNode inspect] from IDL

Source/WebCore:

Instead of manually creating the method in DOM.mm we can specify it in
Node.idl and autogenerate part of the interface.

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-03-28
Reviewed by Timothy Hatcher.

* bindings/objc/DOM.mm:
* bindings/objc/DOMPrivate.h:
Move the call to InspectorController::inspect from here ...

* dom/Node.h:
* dom/Node.idl: IDL only in an ObjC block.
* dom/Node.cpp:
(WebCore::Node::inspect):
... to here.

* WebCore.xcodeproj/project.pbxproj:
Add the new generated file so we can Copy it in the build phase.

Source/WebKit/mac:

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-03-28
Reviewed by Timothy Hatcher.

* MigrateHeaders.make: Copy DOMNodePrivate.h to PrivateHeaders.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112424 268f45cc-cd09-0410-ab3c-d52691b4dbfc
setNeedsLayout(true, false) is super confusing to read and should use an enum instead
https://bugs.webkit.org/show_bug.cgi?id=82369

Reviewed by Julien Chaffraix.

I replaced all uses of the markParents bool with a MarkingBehavior
enum (which has two values: MarkContainingBlockChain and MarkOnlyThis).
I'm not sure the naming is perfect (as it's not clear to me if markParents is
used to mean the same thing in these 3 functions), but hopefully this code is more
clear.  I welcome further suggested adjustment from layout experts.

* page/FrameView.cpp:
(WebCore::FrameView::scheduleRelayout):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::adjustPositionedBlock):
(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
(WebCore::RenderBlock::removePositionedObjects):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
(WebCore::RenderBlock::adjustBlockChildForPagination):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutRunsAndFloats):
(WebCore::RenderBlock::layoutInlineChildren):
(WebCore::RenderBlock::positionNewFloatOnLine):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::positionLineBox):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
(WebCore::gatherFlexChildrenInfo):
(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
(WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::prepareChildForPositionedLayout):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateScrollInfoAfterLayout):
* rendering/RenderMedia.cpp:
(WebCore::RenderMedia::layout):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::setPreferredLogicalWidthsDirty):
* rendering/RenderObject.h:
(RenderObject):
(WebCore::RenderObject::setNeedsLayout):
(WebCore::RenderObject::setChildNeedsLayout):
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::layoutSpecialExcludedChild):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::layout):
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::layout):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::calcRowLogicalHeight):
(WebCore::RenderTableSection::layoutRows):
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::layoutSpecialExcludedChild):
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::layout):
* rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
(WebCore::RenderView::layout):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::layout):
* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::layout):
* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::layout):
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::layoutChildren):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112425 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: CodeGeneratorInspector.py: switch Runtime, Network and DOM domains to typed API
https://bugs.webkit.org/show_bug.cgi?id=81558

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-03-28
Reviewed by Pavel Feldman.

Client code is switched to typed API (all InspectorObject and InspectorArray types are
replaced with generated types from TypeBuilder according to Inspector.json).

Missing array of int specialization is added. Code generator now has a check against
misspelled (non-existing) domain names.

* inspector/CodeGeneratorInspector.py:
(Generator.go): check against misspelled domain names added.
* inspector/InjectedScript.cpp:
(WebCore::InjectedScript::evaluate):
(WebCore::InjectedScript::callFunctionOn):
(WebCore::InjectedScript::evaluateOnCallFrame):
(WebCore::InjectedScript::getProperties):
(WebCore::InjectedScript::wrapObject):
(WebCore::InjectedScript::wrapNode):
(WebCore::InjectedScript::wrapSerializedObject):
(WebCore::InjectedScript::makeEvalCall):
* inspector/InjectedScript.h:
(InjectedScript):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::getDocument):
(WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
(WebCore::InspectorDOMAgent::querySelectorAll):
(WebCore::InspectorDOMAgent::pushNodePathToFrontend):
(WebCore::InspectorDOMAgent::getEventListenersForNode):
(WebCore::InspectorDOMAgent::getSearchResults):
(WebCore::InspectorDOMAgent::resolveNode):
(WebCore::InspectorDOMAgent::getAttributes):
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
(WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
(WebCore::InspectorDOMAgent::loadEventFired):
(WebCore::InspectorDOMAgent::didInsertDOMNode):
(WebCore::InspectorDOMAgent::styleAttributeInvalidated):
(WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
* inspector/InspectorDOMAgent.h:
(InspectorDOMAgent):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::resourceTypeJson):
(WebCore::InspectorPageAgent::cachedResourceTypeJson):
(WebCore::InspectorPageAgent::buildObjectForFrameTree):
* inspector/InspectorPageAgent.h:
* inspector/InspectorResourceAgent.cpp:
(WebCore::buildObjectForResourceRequest):
(WebCore::buildObjectForResourceResponse):
(WebCore::buildObjectForCachedResource):
(WebCore::InspectorResourceAgent::willSendRequest):
(WebCore::InspectorResourceAgent::didReceiveResponse):
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
(WebCore::InspectorResourceAgent::buildInitiatorObject):
(WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
(WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
* inspector/InspectorResourceAgent.h:
(InspectorResourceAgent):
* inspector/InspectorRuntimeAgent.cpp:
(WebCore::InspectorRuntimeAgent::evaluate):
(WebCore::InspectorRuntimeAgent::callFunctionOn):
(WebCore::InspectorRuntimeAgent::getProperties):
* inspector/InspectorRuntimeAgent.h:
(InspectorRuntimeAgent):
* inspector/InspectorValues.h:
(InspectorArray):
(WebCore::InspectorArray::pushInt):
(WebCore):
* inspector/ScriptCallFrame.cpp:
(WebCore::ScriptCallFrame::buildInspectorObject):
* inspector/ScriptCallFrame.h:
(ScriptCallFrame):
* inspector/ScriptCallStack.cpp:
(WebCore::ScriptCallStack::buildInspectorArray):
* inspector/ScriptCallStack.h:
(ScriptCallStack):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112428 268f45cc-cd09-0410-ab3c-d52691b4dbfc
More flaky tests.

Unreviewed, expectations update.

* platform/chromium/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112429 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use xcrun to find nm and ranlib on OS X builds
<http://webkit.org/b/82466>

Reviewed by Dan Bernstein.

* Scripts/build-webkit: Use xcrun to find ranlib.
* Scripts/webkitdirs.pm:
(determineNmPath): Added.  Use xcrun to find nm on OS X.
(nmPath): Added.
* Scripts/webkitperl/features.pm:
(libraryContainsSymbol): Use nmPath().

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112431 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Fix tiled layer assert for huge layers
https://bugs.webkit.org/show_bug.cgi?id=82486

Reviewed by James Robinson.

Source/WebCore:

Test: TiledLayerChromiumTest.hugeLayerUpdateCrash

TilingData::numTiles() is calculated as the product of two ints and so
can potentially overflow, causing numTiles() to be incorrect. To avoid
calling code accidentally falling into this trap, remove this function
and all code that uses tile index from TilingData.  This requires
fixing up a bunch of callers of TilingData and CCLayerTilingData.

Additionally, TilingData::numTiles() has long been a confusing
function name in some contexts, so rename to bool hasEmptyBounds().

Also, remove TilingData::intersectDrawQuad because there are no
clients of that function.

* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::drawsContent):
(WebCore::TiledLayerChromium::reserveTextures):
(WebCore::TiledLayerChromium::prepareToUpdate):
(WebCore::TiledLayerChromium::prepareToUpdateIdle):
(WebCore::TiledLayerChromium::needsIdlePaint):
(WebCore::TiledLayerChromium::idlePaintRect):
* platform/graphics/chromium/cc/CCLayerTilingData.cpp:
(WebCore::CCLayerTilingData::tileRect):
* platform/graphics/chromium/cc/CCLayerTilingData.h:
(WebCore::CCLayerTilingData::hasEmptyBounds):
(WebCore::CCLayerTilingData::tileBounds):
(WebCore::CCLayerTilingData::isEmpty):
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
(WebCore::CCTiledLayerImpl::bindContentsTexture):
(WebCore::CCTiledLayerImpl::appendQuads):
* platform/graphics/gpu/Texture.cpp:
(WebCore::Texture::create):
(WebCore::Texture::updateSubRect):
* platform/graphics/gpu/TilingData.cpp:
(WebCore::TilingData::tileBounds):
(WebCore::TilingData::tileBoundsWithBorder):
(WebCore::TilingData::tileBoundsNormalized):
* platform/graphics/gpu/TilingData.h:
(WebCore::TilingData::hasEmptyBounds):
(TilingData):
(WebCore::TilingData::assertTile):

Source/WebKit/chromium:

Add test for updating a huge layer that would assert prior to this
code. Fix up TilingData tests to use a testing class that provides a
safe version of numTiles().

* tests/TiledLayerChromiumTest.cpp:
(WTF::TEST):
(WTF):
* tests/TilingDataTest.cpp:
(TestTiling):
(WebCore::TestTiling::TestTiling):
(WebCore::TestTiling::numTiles):
(WebCore):
(WebCore::TEST):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112432 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Update worker-multi-port-expected.txt.

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

Reviewed by James Robinson.

* platform/chromium-win/fast/workers/worker-multi-port-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112433 268f45cc-cd09-0410-ab3c-d52691b4dbfc
"Sticky" or slow scrolling on some sites
https://bugs.webkit.org/show_bug.cgi?id=82512
<rdar://problem/11000372>

Reviewed by Andreas Kling.

When we're in the slow mode and have to update the scroll layer position on the main thread,
get it from the scrolling thread so we'll be in sync with the scrolling tree when the main thread is busy.

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition):
* page/scrolling/ScrollingCoordinator.h:
(ScrollingCoordinator):
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::mainFrameScrollPosition):
(WebCore):
(WebCore::ScrollingTree::updateMainFrameScrollPositionAndScrollLayerPosition):
* page/scrolling/ScrollingTree.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112434 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix inspector tests when running in internal builds.

<rdar://problem/11050694>

Reviewed by Tim Hatcher.

* DumpRenderTree/mac/DumpRenderTree.mm:
(resetDefaultsToConsistentValues):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112435 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] layer->clipRect() is not initialized for layers that create a renderSurface.
https://bugs.webkit.org/show_bug.cgi?id=74147

Reviewed by Adrienne Walker.

Source/WebCore:

Added 3 additional unit tests; Modified existing unit tests and layout tests.

The layer's clipRect and usesLayerClipping information was not
being initialized for layers that created a renderSurface. (It
was, however, being initialized for the renderSurface itself.)
This patch adds a unit test that reproduces that this is an error,
other unit tests to tightly test the value of clipRect being
initialized, and adds the logic to properly initialize the
clipRect.

Before this patch, this bug was causing flashing on tab-switch on
the apple iphone page. Even worse, with partial swap enabled, the
layers would simply disappear, because the first frame the
clipRect is uninitialized and the layer is not drawn, and the
second frame onwards, the damage tracker correctly things nothing
is damaged, so it doesn't draw that layer again until other damage
causes it to be redrawn.

* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::calculateDrawTransformsAndVisibilityInternal):

Source/WebKit/chromium:

Added 3 more unit tests. One reproduces the clipRect problem in an
integrated manner, the other two directly test that clipRects are
properly initialized.

* tests/CCLayerTreeHostCommonTest.cpp:
(WebCore::TEST):
(WebCore):
* tests/CCLayerTreeTestCommon.h:
(WebKitTests):

LayoutTests:

* platform/chromium/test_expectations.txt: marked test as needing rebaselining

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112436 268f45cc-cd09-0410-ab3c-d52691b4dbfc
test-webkitpy should support files, directories, and packages as command line args
https://bugs.webkit.org/show_bug.cgi?id=76765

Reviewed by Adam Barth.

This patch adds support for specifying files, directories, and
packages to test-webkitpy along with the already existing
support for modules, test classes, and individual test names.

Also, fix a bug in filesystem_mock where we wouldn't normalize a
path containing a reference to the current directory properly,
for example, '/foo/./bar.py'.

* Scripts/webkitpy/common/system/filesystem_mock.py:
(MockFileSystem.normpath):
* Scripts/webkitpy/test/main.py:
(Tester._configure_logging):
(Tester._run_tests):
* Scripts/webkitpy/test/test_finder.py:
(TestDirectoryTree.find_modules):
(TestDirectoryTree.subpath):
(TestFinder.is_dotted_name):
(TestFinder.find_names):
(TestFinder):
(TestFinder._find_names_for_arg):
(TestFinder._find_in_trees):
(TestFinder._default_names):
* Scripts/webkitpy/test/test_finder_unittest.py:
(TestFinderTest.setUp):
(TestFinderTest.tearDown):
(TestFinderTest.check_names):
(TestFinderTest.test_default_names):
(TestFinderTest):
(TestFinderTest.test_paths):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112437 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Incorrect foreignObject hit test results when overlapping other SVG elements
https://bugs.webkit.org/show_bug.cgi?id=82059

Patch by Florin Malita <fmalita@google.com> on 2012-03-28
Reviewed by Nikolas Zimmermann.

Source/WebCore:

Test: svg/hittest/foreign-object-background.svg

Foreign content needs to be hit-tested atomically due to the (pseudo)
stacking context established by FOs.

* rendering/svg/RenderSVGForeignObject.cpp:
(WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
Hit test all phases on FO HitTestForeground.

LayoutTests:

* svg/hittest/foreign-object-background-expected.txt: Added.
* svg/hittest/foreign-object-background.svg: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112438 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Add tracing events around CCLayerTreeHostImpl visibility.
https://bugs.webkit.org/show_bug.cgi?id=82501

Patch by Michal Mocny <mmocny@google.com> on 2012-03-28
Reviewed by James Robinson.

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::setVisible):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112439 268f45cc-cd09-0410-ab3c-d52691b4dbfc
extract-built-product build step should fail if unzipping fails
https://bugs.webkit.org/show_bug.cgi?id=82493

Reviewed by Simon Fraser.

Forward non-zero exit code from subprocesses so that the master can detect any failures
and bail out early.

* BuildSlaveSupport/built-product-archive:
(main):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112440 268f45cc-cd09-0410-ab3c-d52691b4dbfc
More Chromium rebaselines from the expected failures tab in garden-o-matic.
They all looked like straightforward text-rendering or anti-aliasing issues,
except for some where the new results were clearly just more correct.

* fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png: Copied from LayoutTests/platform/efl/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png.
* platform/chromium-linux/fast/dom/HTMLInputElement/input-image-alt-text-expected.png:
* platform/chromium-linux/fast/dynamic/containing-block-change-expected.png: Added.
* platform/chromium-linux/fast/dynamic/first-letter-display-change-expected.png: Added.
* platform/chromium-linux/fast/dynamic/window-resize-scrollbars-test-expected.png:
* platform/chromium-linux/fast/events/updateLayoutForHitTest-expected.png: Renamed from LayoutTests/platform/efl/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png.
* platform/chromium-linux/fast/events/updateLayoutForHitTest-expected.txt: Added.
* platform/chromium-mac-leopard/fast/dom/HTMLInputElement/input-image-alt-text-expected.png: Added.
* platform/chromium-mac-leopard/fast/dom/getElementsByClassName/011-expected.txt: Added.
* platform/chromium-mac-leopard/fast/dynamic/containing-block-change-expected.png: Added.
* platform/chromium-mac-leopard/fast/dynamic/window-resize-scrollbars-test-expected.png: Added.
* platform/chromium-mac-leopard/fast/events/updateLayoutForHitTest-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/dom/52776-expected.png:
* platform/chromium-mac-snowleopard/fast/dom/52776-expected.txt:
* platform/chromium-mac-snowleopard/fast/dom/HTMLInputElement/input-image-alt-text-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/dynamic/containing-block-change-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/dynamic/window-resize-scrollbars-test-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/encoding/utf-16-big-endian-expected.png:
* platform/chromium-mac-snowleopard/fast/encoding/utf-16-little-endian-expected.png:
* platform/chromium-mac-snowleopard/fast/events/reveal-link-when-focused-expected.png:
* platform/chromium-mac-snowleopard/fast/events/updateLayoutForHitTest-expected.png: Added.
* platform/chromium-mac/fast/dom/HTMLInputElement/input-image-alt-text-expected.png: Added.
* platform/chromium-mac/fast/dynamic/containing-block-change-expected.png: Added.
* platform/chromium-mac/fast/dynamic/window-resize-scrollbars-test-expected.png: Added.
* platform/chromium-mac/fast/dynamic/window-resize-scrollbars-test-expected.txt: Added.
* platform/chromium-mac/fast/encoding/utf-16-big-endian-expected.png: Added.
* platform/chromium-mac/fast/encoding/utf-16-big-endian-expected.txt: Added.
* platform/chromium-mac/fast/encoding/utf-16-little-endian-expected.png: Added.
* platform/chromium-mac/fast/encoding/utf-16-little-endian-expected.txt: Added.
* platform/chromium-mac/fast/events/reveal-link-when-focused-expected.png: Added.
* platform/chromium-mac/fast/events/updateLayoutForHitTest-expected.png: Added.
* platform/chromium-mac/fast/events/updateLayoutForHitTest-expected.txt: Added.
* platform/chromium-win/fast/dom/HTMLInputElement/input-image-alt-text-expected.png:
* platform/chromium-win/fast/dom/HTMLInputElement/input-image-alt-text-expected.txt:
* platform/chromium-win/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png: Renamed from LayoutTests/platform/gtk/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png.
* platform/chromium-win/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.txt: Added.
* platform/chromium-win/fast/dynamic/containing-block-change-expected.png: Added.
* platform/chromium-win/fast/dynamic/containing-block-change-expected.txt: Added.
* platform/chromium-win/fast/dynamic/first-letter-display-change-expected.png: Added.
* platform/chromium-win/fast/dynamic/window-resize-scrollbars-test-expected.png:
* platform/chromium-win/fast/dynamic/window-resize-scrollbars-test-expected.txt:
* platform/chromium/fast/dom/Window/get-set-properties-expected.txt:
* platform/chromium/fast/dom/Window/window-property-descriptors-expected.txt: Copied from LayoutTests/fast/dom/Window/window-property-descriptors-expected.txt.
* platform/chromium/fast/dom/Window/window-property-shadowing-expected.txt:
* platform/chromium/test_expectations.txt:
* platform/efl/fast/dom/Window/window-property-descriptors-expected.txt: Renamed from LayoutTests/fast/dom/Window/window-property-descriptors-expected.txt.
* platform/mac/fast/dynamic/first-letter-display-change-expected.txt: Renamed from LayoutTests/fast/dynamic/first-letter-display-change-expected.txt.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112441 268f45cc-cd09-0410-ab3c-d52691b4dbfc
flakiness dashboard should only keep the last 500 runs
https://bugs.webkit.org/show_bug.cgi?id=82530

Reviewed by Ojan Vafai.

If a bot has an overly large amount of failing tests, then
storing 750 runs' worth takes a lot of memory and CPU time to
process and we end up getting killed by AppEngine; this cases
data corruption and confusion down the road when we have to
retry the upload of the data and the tests show up as multiple
runs.

* TestResultServer/model/jsonresults.py:
(JsonResults.update_file):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112442 268f45cc-cd09-0410-ab3c-d52691b4dbfc