Introduce a will-be-removed-from-tree notification in RenderObject
https://bugs.webkit.org/show_bug.cgi?id=94271

Reviewed by Abhishek Arya.

Following bug 93874, we have an insertion notification. This change adds the
matching removal notification (willBeRemovedFromTree).

Refactoring covered by existing tests.

* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::removeChildNode):
Removed the code from here and moved it below.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::willBeRemovedFromTree):
* rendering/RenderObject.h:
This is the base function that should be called by every instance.

* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::willBeRemovedFromTree):
* rendering/RenderListItem.h:
* rendering/RenderQuote.cpp:
(WebCore::RenderQuote::willBeRemovedFromTree):
* rendering/RenderQuote.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::willBeRemovedFromTree):
* rendering/RenderRegion.h:
Overriden functions.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126048 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed Chromium rebaselining and test failure suppressions.

Source/WebKit/chromium:

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

* tests/CCMathUtilTest.cpp:

LayoutTests:

https://bugs.webkit.org/show_bug.cgi?id=94494
https://bugs.webkit.org/show_bug.cgi?id=94501
https://bugs.webkit.org/show_bug.cgi?id=94502

* platform/chromium-mac-snowleopard/fast/forms/input-double-click-selection-gap-bug-expected.png:
* platform/chromium-mac/fast/css/text-overflow-input-expected.png:
* platform/chromium-mac/fast/forms/box-shadow-override-expected.png:
* platform/chromium-mac/fast/forms/input-double-click-selection-gap-bug-expected.png:
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126049 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed Chromium gardening. Fixed invalid test expectation.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126051 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Move non-GL-specific code out of LayerRendererChromium
https://bugs.webkit.org/show_bug.cgi?id=93927

Patch by Alexandre Elias <aelias@google.com> on 2012-08-20
Reviewed by Adrienne Walker.

This patch moves most of the generic logic dealing with matrices and
render passes into a new class "CCDirectRenderer" that sits between
CCRenderer and LayerRendererChromium, and also publicly exposes a
few other things like the UnthrottledTextureUploader.

The plan is for the future software compositing implementation to also
derive from CCDirectRenderer, whereas the ubercompositor delegating
renderer will still derive from CCRenderer.

No new tests (no-op refactoring).

* WebCore.gypi:
* platform/graphics/chromium/GeometryBinding.cpp:
(WebCore::GeometryBinding::GeometryBinding):
* platform/graphics/chromium/GeometryBinding.h:
(GeometryBinding):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::beginDrawingFrame):
(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawRenderPassQuad):
(WebCore::LayerRendererChromium::drawTileQuad):
(WebCore::LayerRendererChromium::finishDrawingFrame):
(WebCore::LayerRendererChromium::drawQuadGeometry):
(WebCore::LayerRendererChromium::bindFramebufferToOutputSurface):
(WebCore):
(WebCore::LayerRendererChromium::bindFramebufferToTexture):
(WebCore::LayerRendererChromium::enableScissorTestRect):
(WebCore::LayerRendererChromium::disableScissorTest):
(WebCore::LayerRendererChromium::setDrawViewportSize):
(WebCore::LayerRendererChromium::makeContextCurrent):
(WebCore::LayerRendererChromium::initializeSharedObjects):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromium):
* platform/graphics/chromium/TextureCopier.h:
(TextureCopier):
* platform/graphics/chromium/TextureUploader.h:
(UnthrottledTextureUploader):
(WebCore::UnthrottledTextureUploader::create):
(WebCore::UnthrottledTextureUploader::~UnthrottledTextureUploader):
(WebCore::UnthrottledTextureUploader::UnthrottledTextureUploader):
(WebCore):
* platform/graphics/chromium/cc/CCDirectRenderer.cpp: Added.
(projectionMatrix):
(canvasMatrix):
(WebCore):
(WebCore::CCDirectRenderer::DrawingFrame::initializeMatrices):
(WebCore::CCDirectRenderer::DrawingFrame::initializeScissors):
(WebCore::CCDirectRenderer::decideRenderPassAllocationsForFrame):
(WebCore::CCDirectRenderer::drawFrame):
(WebCore::CCDirectRenderer::drawRenderPass):
(WebCore::CCDirectRenderer::useRenderPass):
(WebCore::CCDirectRenderer::haveCachedResourcesForRenderPassId):
(WebCore::CCDirectRenderer::renderPassTextureSize):
(WebCore::CCDirectRenderer::renderPassTextureFormat):
* platform/graphics/chromium/cc/CCDirectRenderer.h: Added.
(WebCore):
(CCDirectRenderer):
(WebCore::CCDirectRenderer::~CCDirectRenderer):
(WebCore::CCDirectRenderer::resourceProvider):
(WebCore::CCDirectRenderer::CCDirectRenderer):
(DrawingFrame):
(WebCore::CCDirectRenderer::DrawingFrame::DrawingFrame):
(CachedTexture):
(WebCore::CCDirectRenderer::CachedTexture::create):
(WebCore::CCDirectRenderer::CachedTexture::~CachedTexture):
(WebCore::CCDirectRenderer::CachedTexture::isComplete):
(WebCore::CCDirectRenderer::CachedTexture::setIsComplete):
(WebCore::CCDirectRenderer::CachedTexture::CachedTexture):
(WebCore::CCDirectRenderer::quadVertexRect):
(WebCore::CCDirectRenderer::quadRectTransform):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126052 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Persist cookies not from atexit() but the new onThreadFinished()
https://bugs.webkit.org/show_bug.cgi?id=94482
RIM PR 184923

Reviewed by Yong Li.

BlackBerry::Platform recently made changes that ensure
that MessageClient threads are being shut down correctly.
A new onThreadFinished() virtual was introduced for
custom clean-up functionality and can replace the
atexit() handler that we previously used to flush cookies
to the cookie database backingstore.

No new functionality, no new tests.

* platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:
(WebCore):
(WebCore::CookieDatabaseBackingStore::onThreadFinished):
(WebCore::CookieDatabaseBackingStore::sendChangesToDatabaseSynchronously):
* platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
(CookieDatabaseBackingStore):
* platform/blackberry/CookieManager.cpp:
(WebCore):
(WebCore::cookieManager):
* platform/blackberry/CookieManager.h:


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