summaryrefslogtreecommitdiffstats
path: root/WebCore/rendering/RenderSVGResourceClipper.cpp
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2010-08-24 07:50:47 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-08-24 07:50:47 -0700
commitc570a147a94b126d4172c30914f53dea17b4c8f5 (patch)
tree99c11741887d21f65d67c5bbdab58b7ba2a5d4d5 /WebCore/rendering/RenderSVGResourceClipper.cpp
parentc952714bc6809a5ad081baaf9fcc04107b92ea3f (diff)
parent6c65f16005b91786c2b7c0791b9ea1dd684d57f4 (diff)
downloadexternal_webkit-c570a147a94b126d4172c30914f53dea17b4c8f5.zip
external_webkit-c570a147a94b126d4172c30914f53dea17b4c8f5.tar.gz
external_webkit-c570a147a94b126d4172c30914f53dea17b4c8f5.tar.bz2
Merge changes I2e7e2317,Ie6ccde3a,I3e89f231,Id06ff339,I268dfe7d,Icaf70d9f,Ie234f1a0,Iff5c7aaa,I69b75bf0,Ifbf384f4
* changes: Merge WebKit at r65615 : Update WebKit revision number Merge WebKit at r65615 : Ignore http/tests/appcache/origin-quota.html Merge WebKit at r65615 : Android-specific results for Geolocation tests. Merge WebKit at r65615 : Fix GraphicsContext and ImageBuffer. Merge WebKit at r65615 : processingUserGesture() is now static. Merge WebKit at r65615 : UTF8String() becomes utf8(). Merge WebKit at r65615 : Fix include paths for string headers. Merge WebKit at r65615 : Fix Makefiles. Merge WebKit at r65615 : Fix conflicts. Merge WebKit at r65615 : Initial merge by git.
Diffstat (limited to 'WebCore/rendering/RenderSVGResourceClipper.cpp')
-rw-r--r--WebCore/rendering/RenderSVGResourceClipper.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/WebCore/rendering/RenderSVGResourceClipper.cpp b/WebCore/rendering/RenderSVGResourceClipper.cpp
index a201d1f..626a880 100644
--- a/WebCore/rendering/RenderSVGResourceClipper.cpp
+++ b/WebCore/rendering/RenderSVGResourceClipper.cpp
@@ -64,7 +64,7 @@ RenderSVGResourceClipper::~RenderSVGResourceClipper()
m_clipper.clear();
}
-void RenderSVGResourceClipper::invalidateClients()
+void RenderSVGResourceClipper::removeAllClientsFromCache(bool markForInvalidation)
{
if (m_invalidationBlocked)
return;
@@ -75,20 +75,19 @@ void RenderSVGResourceClipper::invalidateClients()
m_clipper.clear();
}
- markAllClientsForInvalidation(LayoutAndBoundariesInvalidation);
+ markAllClientsForInvalidation(markForInvalidation ? LayoutAndBoundariesInvalidation : ParentOnlyInvalidation);
}
-void RenderSVGResourceClipper::invalidateClient(RenderObject* client)
+void RenderSVGResourceClipper::removeClientFromCache(RenderObject* client, bool markForInvalidation)
{
ASSERT(client);
if (m_invalidationBlocked)
return;
- ASSERT(client->selfNeedsLayout());
if (m_clipper.contains(client))
delete m_clipper.take(client);
- markClientForInvalidation(client, BoundariesInvalidation);
+ markClientForInvalidation(client, markForInvalidation ? BoundariesInvalidation : ParentOnlyInvalidation);
}
bool RenderSVGResourceClipper::applyResource(RenderObject* object, RenderStyle*, GraphicsContext*& context, unsigned short resourceMode)
@@ -174,7 +173,7 @@ bool RenderSVGResourceClipper::applyClippingToContext(RenderObject* object, cons
if (!clipperData->clipMaskImage)
return false;
- context->clipToImageBuffer(repaintRect, clipperData->clipMaskImage.get());
+ context->clipToImageBuffer(clipperData->clipMaskImage.get(), repaintRect);
return true;
}