Web Inspector: HeapSnapshot: speed-up calculateRetainedSize functon.
https://bugs.webkit.org/show_bug.cgi?id=87124

I found that in all dominators related functions we use nodeOrdinals.
At the moment we divide nodeIndex to nodeFieldCount and this operation too expensive for these simple algorithms.

Reviewed by Yury Semikhatsky.

Covered by existing tests.

Source/WebCore:

* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshotNode.prototype.get dominatorIndex):
(WebInspector.HeapSnapshot.prototype._init):
(WebInspector.HeapSnapshot.prototype._buildPostOrderIndex):
(WebInspector.HeapSnapshot.prototype._buildDominatorTree):
(WebInspector.HeapSnapshot.prototype._calculateRetainedSizes):
(WebInspector.HeapSnapshot.prototype._buildDominatedNodes):

LayoutTests:

* inspector/profiler/heap-snapshot.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117962 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][DRT] Gardening of fast/spatial-navigation tests.
https://bugs.webkit.org/show_bug.cgi?id=87112

Unreviewed gardening. Unskipped some fast/spatial-navigation tests after r117218.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-22

* platform/efl/Skipped:
* platform/efl/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117963 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt][WK2] EventSenderProxy::keyDown doesn't use the helper functions to send events
https://bugs.webkit.org/show_bug.cgi?id=87044

Patch by Hugo Parente Lima <hugo.lima@openbossa.org> on 2012-05-22
Reviewed by Alexis Menard.

Use sendOrQueueEvent instead of m_testController->mainWebView()->sendEvent

* WebKitTestRunner/qt/EventSenderProxyQt.cpp:
(WTR::EventSenderProxy::keyDown):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117964 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: JavaScript breakpoints disappear when Ctrl+S is pressed for the script without changes.
https://bugs.webkit.org/show_bug.cgi?id=87121

Reviewed by Pavel Feldman.

JavaScriptSourceFrame and StylesSourceFrame should not commit working copy unless UISourceCode is dirty.

* inspector/front-end/JavaScriptSourceFrame.js:
(WebInspector.JavaScriptSourceFrame.prototype.commitEditing):
* inspector/front-end/StylesPanel.js:
(WebInspector.StyleSourceFrame.prototype.commitEditing):
* inspector/front-end/UISourceCode.js:
(WebInspector.UISourceCode.prototype.commitWorkingCopy):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117965 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: [regression] dynamically created script tab is bound to the document resource.
https://bugs.webkit.org/show_bug.cgi?id=87119

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: inspector/debugger/dynamic-script-tag.html

* inspector/front-end/BreakpointManager.js:
(WebInspector.BreakpointManager.Breakpoint.prototype._setInDebugger.didSetBreakpoint):
(WebInspector.BreakpointManager.Breakpoint.prototype._setInDebugger):
* inspector/front-end/DebuggerModel.js:
(WebInspector.DebuggerModel.prototype.rawLocationToUILocation):
* inspector/front-end/ResourceScriptMapping.js:
(WebInspector.ResourceScriptMapping.prototype.addScript):
(WebInspector.ResourceScriptMapping.prototype._shouldBindScriptToContentProvider):
* inspector/front-end/Script.js:
(WebInspector.Script.prototype.rawLocationToUILocation):
(WebInspector.Script.Location.prototype.update):

LayoutTests:

* inspector/debugger/dynamic-script-tag-expected.txt: Added.
* inspector/debugger/dynamic-script-tag.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117966 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Gardening of failing tests and new passes
https://bugs.webkit.org/show_bug.cgi?id=87122

Unreviewed gardening.

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-05-22

* platform/efl/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117967 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Clean up internal viewport animation API
https://bugs.webkit.org/show_bug.cgi?id=87130

Reviewed by Simon Hausmann.

const'ify classes which should be const.

There is now only one method which can animate, animateItemRectVisible
which is used for also animating the contents back into valid bounds.
The valid bounds are computed using a separate method. It is now more
clear when an animation is used or not and asserts are added for
ensuring no concurrent animations as well as proper update deferring.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewFlickablePrivate::didChangeViewportProperties):
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::cssScaleFromItem):
(WebKit::QtViewportInteractionEngine::itemScaleFromCSS):
(WebKit::QtViewportInteractionEngine::itemCoordFromCSS):
(WebKit::QtViewportInteractionEngine::itemRectFromCSS):
(WebKit::QtViewportInteractionEngine::innerBoundedCSSScale):
(WebKit::QtViewportInteractionEngine::outerBoundedCSSScale):
(WebKit::QtViewportInteractionEngine::setItemRectVisible):
(WebKit::QtViewportInteractionEngine::animateItemRectVisible):
(WebKit::QtViewportInteractionEngine::scaleAnimationStateChanged):
(WebKit::QtViewportInteractionEngine::nearestValidBounds):
(WebKit::QtViewportInteractionEngine::currentCSSScale):
(WebKit::QtViewportInteractionEngine::cancelScrollAnimation):
(WebKit::QtViewportInteractionEngine::pinchGestureEnded):
(WebKit::QtViewportInteractionEngine::itemSizeChanged):
* UIProcess/qt/QtViewportInteractionEngine.h:
(QtViewportInteractionEngine):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: use canvas to render timeline category strips in overview pane
https://bugs.webkit.org/show_bug.cgi?id=87109

Reviewed by Pavel Feldman.

- use canvas, not DOM to represent timeline category strips in the default overview mode

* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewPane):
(WebInspector.TimelineOverviewPane.prototype._setVerticalOverview): propagate to TimelineCategoryStrips;
(WebInspector.TimelineOverviewPane.prototype._onCategoryVisibilityChanged): force update of category strips;
(WebInspector.TimelineOverviewPane.prototype._update):
(WebInspector.TimelineOverviewPane.prototype.setShowShortEvents):
(WebInspector.TimelineCategoryStrips):
(WebInspector.TimelineCategoryStrips.prototype.update.appendRecord): process one record;
(WebInspector.TimelineCategoryStrips.prototype.update): re-draw everything;
(WebInspector.TimelineCategoryStrips.prototype.setShowShortEvents):
(WebInspector.TimelineCategoryStrips.prototype._renderBar): render single bar;
(WebInspector.TimelineVerticalOverview):
(WebInspector.TimelineVerticalOverview.prototype._renderBar):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.categories):
(WebInspector.TimelinePresentationModel.createFillStyle): utility methods to create gradients for category bars;
(WebInspector.TimelinePresentationModel.createFillStyleForCategory):
(WebInspector.TimelineCategory):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117969 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Implement the ContextMenuItem SubMenu type
https://bugs.webkit.org/show_bug.cgi?id=86625

Reviewed by Pavel Feldman.

Source/WebCore:

This change is the WebKit part of a two-sided patch that adds subMenuItems to ContextMenuItem
and introduces code needed to handle it properly.

* platform/ContextMenuItem.h:
(PlatformMenuItemDescription): Add a Vector for subMenuItems.
* platform/PlatformMenuDescription.h:
(WebCore): Introduce a meaningful typedef for PlatformMenuDescription in Chromium.
* platform/chromium/ContextMenuChromium.cpp:
(WebCore::ContextMenu::itemWithAction): Search submenus when looking up a requested action id.
(WebCore::ContextMenu::platformDescription): Return a real PlatformMenuDescription rather than 0.
* platform/chromium/ContextMenuItemChromium.cpp:
(WebCore::ContextMenuItem::ContextMenuItem): Set submenu if one has been passed in.
(WebCore::ContextMenuItem::platformSubMenu): Return real subMenuItems instead of an empty PlatformMenuDescription.
(WebCore::ContextMenuItem::setSubMenu): Implemented.
(WebCore):

Source/WebKit/chromium:

* public/WebMenuItemInfo.h:
(WebMenuItemInfo): Add the SubMenu type and a vector of subMenuItems.
* src/ContextMenuClientImpl.cpp:
(WebKit::populateSubMenuItems): A recursive implementation that populates submenu items as well as other item types.
(WebKit):
(WebKit::ContextMenuClientImpl::populateCustomMenuItems): Consider submenus when populating WebMenuItemInfos.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117970 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Crash in WebCore::RenderSVGContainer::paint
https://bugs.webkit.org/show_bug.cgi?id=86392

Reviewed by Rob Buis.

Source/WebCore:

Modernize the <marker> code, switch to the same design pattern used for handling zero-length subpaths.
Decouple the generation of the marker start/mid/end positions from the actual usage of these information.
Only generate those marker positions if the underlying Path changes, and never else.

When figuring out the bounds for a shape, access to current set of RenderSVGResourceMarker start/mid/end resources
and ask the marker resources for their bounds using the previously figured out marker positions on the Path.
Drawing markers is handled in the same way.

Remove SVGMarkerLayoutInfo alltogether which stored raw pointers to the RenderSVGResourceMarkers.
We assumed that those objects would stay alive from layout() to paint(), but that assumption is wrong.

Tests: svg/custom/bug86392.html
       svg/custom/marker-zero-length-linecaps-expected.svg
       svg/custom/marker-zero-length-linecaps.svg

* CMakeLists.txt: Remove SVGMarkerLayoutInfo.*.
* GNUmakefile.list.am: Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.order: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* rendering/svg/RenderSVGAllInOne.cpp: Ditto.
* rendering/svg/RenderSVGShape.cpp: Handle markers just like the existing zero leng subpath code, which is superior.
(WebCore::RenderSVGShape::createShape):
(WebCore::RenderSVGShape::layout):
(WebCore::RenderSVGShape::shouldGenerateMarkerPositions):
(WebCore::RenderSVGShape::paint):
(WebCore::markerForType):
(WebCore::RenderSVGShape::markerRect):
(WebCore::RenderSVGShape::inflateWithStrokeAndMarkerBounds):
(WebCore::RenderSVGShape::drawMarkers):
(WebCore::RenderSVGShape::processMarkerPositions):
* rendering/svg/RenderSVGShape.h:
(RenderSVGShape):
* rendering/svg/SVGMarkerData.h:
(WebCore::MarkerPosition::MarkerPosition):
(MarkerPosition):
(WebCore::SVGMarkerData::SVGMarkerData):
(WebCore::SVGMarkerData::updateFromPathElement):
(WebCore::SVGMarkerData::pathIsDone):
(SVGMarkerData):
(WebCore::SVGMarkerData::currentAngle):
* rendering/svg/SVGMarkerLayoutInfo.cpp: Removed.
* rendering/svg/SVGMarkerLayoutInfo.h: Removed.
* rendering/svg/SVGResourcesCache.cpp:
(WebCore::resourcesCacheFromRenderObject):
(WebCore::SVGResourcesCache::cachedResourcesForRenderObject):
* rendering/svg/SVGResourcesCache.h:
(SVGResourcesCache):

LayoutTests:

* svg/custom/bug86392-expected.txt: Added.
* svg/custom/bug86392.html: Added.
* svg/custom/marker-zero-length-linecaps-expected.svg: Added.
* svg/custom/marker-zero-length-linecaps.svg: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117971 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-05-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Re-add expected results for three tests that were missing.

        * platform/mac/svg/zoom/page/zoom-background-image-tiled-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-as-background-with-relative-size-and-viewBox-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: HeapSnapshot: speedUp buildAggregates.
https://bugs.webkit.org/show_bug.cgi?id=87131

Engine can't inline getters and use fast-case if the function has for(i in object) loops.

Reviewed by Yury Semikhatsky.

No logic changes.

* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshotNode.prototype.classIndex):
(WebInspector.HeapSnapshot.prototype._buildAggregates):
(WebInspector.HeapSnapshot.prototype._calculateClassesRetainedSize):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117973 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: make "Go to source" shortcut accessible from all panels.
https://bugs.webkit.org/show_bug.cgi?id=87132

Reviewed by Vsevolod Vlasov.

* English.lproj/localizedStrings.js:
* inspector/front-end/AdvancedSearchController.js:
(WebInspector.AdvancedSearchController.prototype.handleShortcut):
* inspector/front-end/FilteredItemSelectionDialog.js:
(WebInspector.OpenResourceDialog.filterOutEmptyURLs):
(WebInspector.OpenResourceDialog.compareFunction):
(WebInspector.OpenResourceDialog):
(WebInspector.OpenResourceDialog.prototype.itemTitleAt):
(WebInspector.OpenResourceDialog.prototype.itemKeyAt):
(WebInspector.OpenResourceDialog.prototype.itemsCount):
(WebInspector.OpenResourceDialog.prototype.requestItems):
(WebInspector.OpenResourceDialog.prototype.selectItem):
(WebInspector.OpenResourceDialog.show):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.appendApplicableItems):
(WebInspector.ScriptsPanel.prototype.showGoToSourceDialog):
* inspector/front-end/SearchController.js:
(WebInspector.SearchController.prototype.handleShortcut):
* inspector/front-end/inspector.js:
(WebInspector._registerShortcuts):
(WebInspector.documentKeyDown):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117974 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Crash in WebCore::SVGTextLayoutAttributesBuilder::fillCharacterDataMap
https://bugs.webkit.org/show_bug.cgi?id=86781

Reviewed by Rob Buis.

Source/WebCore:

Always invalidate the text positioning element cache if the <text> render subtree mutates.
Currently only RenderSVGInlineText renderers are tracked correctly, RenderSVGInline
renderers like RenderSVGTSpan didn't cause text positioning element cache mutations
so far. Fix that.

Test: svg/custom/bug86781.html

* rendering/svg/RenderSVGInline.cpp:
(WebCore::RenderSVGInline::removeChild):
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::subtreeChildWasAdded):
(WebCore::RenderSVGText::subtreeChildWillBeRemoved):
(WebCore::RenderSVGText::removeChild):
* rendering/svg/RenderSVGText.h:
(RenderSVGText):

LayoutTests:

* svg/custom/bug86781-expected.txt: Added.
* svg/custom/bug86781.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Chromium AX: Crash when menulist adds selected option via document.write
https://bugs.webkit.org/show_bug.cgi?id=87028

Reviewed by Chris Fleizach.

Source/WebCore:

Test: platform/chromium/accessibility/add-to-menu-list-crashes.html

* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::addChild):

LayoutTests:

* platform/chromium/accessibility/add-to-menu-list-crashes-expected.txt: Added.
* platform/chromium/accessibility/add-to-menu-list-crashes.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117976 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-05-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        Follow-up patch after r117975, as the strict approach fires assertions.
        CSS generated content can violate the ASSERT(child->isSVGInline() || child->isSVGInlineText()) logic.

        * rendering/svg/RenderSVGText.cpp:
        (WebCore::RenderSVGText::subtreeChildWasAdded):
        (WebCore::RenderSVGText::subtreeChildWillBeRemoved):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117977 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: Fire error when there are problems opening a DB
https://bugs.webkit.org/show_bug.cgi?id=85579

Source/WebCore:

We used to either fire success or get into an infinite loop.

Reviewed by Tony Chang.

New unit test in
Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp

* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::openInternal):
(WebCore::IDBDatabaseBackendImpl::openConnection):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(WebCore::IDBDatabaseBackendImpl::create):
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBFactoryBackendImpl.cpp:
(WebCore::IDBFactoryBackendImpl::deleteDatabase):
(WebCore::IDBFactoryBackendImpl::openInternal):
* Modules/indexeddb/IDBFactoryBackendImpl.h:
(IDBFactoryBackendImpl):
* Modules/indexeddb/IDBLevelDBBackingStore.h:
(IDBLevelDBBackingStore):

Source/WebKit/chromium:

Reviewed by Tony Chang.

* WebKit.gypi:
* tests/IDBAbortOnCorruptTest.cpp: Added.
(WebCore):
(MockIDBCallbacks):
(WebCore::MockIDBCallbacks::MockIDBCallbacks):
(WebCore::MockIDBCallbacks::~MockIDBCallbacks):
(WebCore::MockIDBCallbacks::onError):
(WebCore::MockIDBCallbacks::onSuccess):
(WebCore::MockIDBCallbacks::onSuccessWithContinuation):
(WebCore::MockIDBCallbacks::onSuccessWithPrefetch):
(WebCore::MockIDBCallbacks::onBlocked):
(FailingBackingStore):
(WebCore::FailingBackingStore::~FailingBackingStore):
(WebCore::FailingBackingStore::open):
(WebCore::FailingBackingStore::createIDBDatabaseMetaData):
(FailingIDBFactoryBackendImpl):
(WebCore::FailingIDBFactoryBackendImpl::~FailingIDBFactoryBackendImpl):
(WebCore::FailingIDBFactoryBackendImpl::create):
(WebCore::FailingIDBFactoryBackendImpl::removeIDBDatabaseBackend):
(WebCore::FailingIDBFactoryBackendImpl::openBackingStore):
(WebCore::TEST):
* tests/IDBFakeBackingStore.h: Copied from Source/WebCore/Modules/indexeddb/IDBLevelDBBackingStore.h.
(WebCore):
(IDBFakeBackingStore):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117978 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Remove GenerateSetDOMException() from CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=87114

Reviewed by Nate Chapin.

GenerateSetDOMException() is used by only one place. This patch removes it.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117979 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSSRegions] Add region styling support for color property
https://bugs.webkit.org/show_bug.cgi?id=85633

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/regions/region-style-color.html

This patch extends the region styling support. In addition to background-color, it adds
the possibility of styling color in regions.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::removeFlowChildInfo):
(WebCore::RenderFlowThread::addRegionToThread):
(WebCore::RenderFlowThread::removeRegionFromThread):
(WebCore::RenderFlowThread::clearRenderObjectCustomStyle):
(WebCore::RenderFlowThread::setRegionRangeForBox):
(WebCore):
(WebCore::RenderFlowThread::checkRegionsWithStyling):
* rendering/RenderFlowThread.h:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::updateAlwaysCreateLineBoxes):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::removeChildNode):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::paintReplaced):
(WebCore::RenderRegion::styleDidChange):
(WebCore::RenderRegion::setRegionObjectsRegionStyle):
(WebCore::RenderRegion::restoreRegionObjectsOriginalStyle):
(WebCore::RenderRegion::computeStyleInRegion):
(WebCore):
(WebCore::RenderRegion::computeChildrenStyleInRegion):
(WebCore::RenderRegion::setObjectStyleInRegion):
(WebCore::RenderRegion::clearObjectStyleInRegion):
* rendering/RenderRegion.h:
(RenderRegion):
(ObjectRegionStyleInfo):

LayoutTests:

Added region-style-color.html and its associated ref test for testing the color in region style rules.
Modified region-style-image-background-color/region-style-inline-background-color since background color
can be styled for inline/replaced elements.

* fast/regions/region-style-color-expected.html: Added.
* fast/regions/region-style-color.html: Added.
* fast/regions/region-style-image-background-color.html:
* fast/regions/region-style-inline-background-color-expected.html:
* fast/regions/region-style-inline-background-color.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117980 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Expand damage from the background-blurred layer to ensure readback is only including pixels below that layer
https://bugs.webkit.org/show_bug.cgi?id=86884

Reviewed by Adrienne Walker.

Source/WebCore:

Consider layers in back-to-front order A, B, and C, where layer B has
a blur background filter applied, and C exactly covers A. When B does
its readback to perform its blur, it should include the pixels of A
not C. With partial swap, if B is damaged, that damaged area will read
pixels from outside of the damage rect. Those pixels should use the
contents of A, not C, so we must expand the damage to ensure we redraw
all pixels that are going to be included in the blur for the current
frame.

Also, when a layer below B has damage outside the contentBounds of B
but within its blur radius, then that damage will be blurred inside B,
so expand all damage within B's blurred contentBounds.

Unit test: CCDamageTrackerTest.verifyDamageForBackgroundBlurredChild

* platform/graphics/chromium/cc/CCDamageTracker.cpp:
(WebCore::expandRectWithFilters):
(WebCore::expandDamageRectInsideRectWithFilters):
(WebCore::CCDamageTracker::updateDamageTrackingState):
(WebCore::CCDamageTracker::extendDamageForRenderSurface):

Source/WebKit/chromium:

* tests/CCDamageTrackerTest.cpp:
(WebKitTests::TEST_F):


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