Bug 747718 - Disable ColorLayer optimizations when we have rounded-rect clipping. r=roc

This commit is contained in:
Matt Woodrow 2012-04-27 12:24:53 +12:00
parent 3fa63af2c3
commit b60d95b9d8
4 changed files with 21 additions and 1 deletions

View File

@ -1216,7 +1216,7 @@ ContainerState::ThebesLayerData::Accumulate(ContainerState* aState,
isUniform = false;
}
}
if (isUniform) {
if (isUniform && aClip.mRoundedClipRects.IsEmpty()) {
if (mVisibleRegion.IsEmpty()) {
// This color is all we have
mSolidColor = uniformColor;

View File

@ -0,0 +1,10 @@
<!DOCTYPE HTML>
<html>
<body style="overflow:hidden">
<div style="border-radius:100px; width:800px; height:1000px; position:absolute; left:0px; top:0px; overflow:hidden">
<div style="background:blue; width:100%; height:100%;"></div>
<div style="position:absolute; top:100px; left:100px; width:100px; height:100px; border:5px solid white"></div>
<div style="position:absolute; top:100px; left:100px; width:100px; height:100px; border:5px solid blue"></div>
</div>
</body>
</html>

View File

@ -0,0 +1,8 @@
<!DOCTYPE HTML>
<html>
<body style="overflow:hidden">
<div style="border-radius:100px; width:800px; height:1000px; position:absolute; left:0px; top:0px; overflow:hidden">
<div style="background:blue; width:100%; height:100%;"></div>
</div>
</body>
</html>

View File

@ -82,3 +82,5 @@ random-if(winWidget) HTTP(..) == corner-joins-2.xhtml corner-joins-2-ref.xhtml
# Test for antialiasing gaps between background and border
fails-if(winWidget) == curved-border-background-nogap.html curved-border-background-nogap-ref.html
== color-layer-1a.html color-layer-1-ref.html