зеркало из https://github.com/mozilla/gecko-dev.git
fixing 94933 r=jst sr=hyatt
This commit is contained in:
Родитель
1e0e99191d
Коммит
880bac0d69
|
@ -2178,7 +2178,6 @@ nsCSSRendering::PaintBackground(nsIPresContext* aPresContext,
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
// rounded version of the border
|
||||
for(i=0;i<4;i++){
|
||||
if (borderRadii[i] > 0){
|
||||
|
@ -2211,10 +2210,12 @@ nsCSSRendering::PaintBackground(nsIPresContext* aPresContext,
|
|||
req->GetImageStatus(&status);
|
||||
|
||||
if (NS_FAILED(rv) || !req || !(status & imgIRequest::STATUS_SIZE_AVAILABLE)) {
|
||||
// The background color is rendered over the 'border' 'padding' and
|
||||
// 'content' areas
|
||||
aRenderingContext.SetColor(aColor.mBackgroundColor);
|
||||
aRenderingContext.FillRect(aBorderArea);
|
||||
if (!transparentBG) {
|
||||
// The background color is rendered over the 'border' 'padding' and
|
||||
// 'content' areas
|
||||
aRenderingContext.SetColor(aColor.mBackgroundColor);
|
||||
aRenderingContext.FillRect(aBorderArea);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -2538,12 +2539,19 @@ nsCSSRendering::PaintBackground(nsIPresContext* aPresContext,
|
|||
|
||||
// Take the intersection again to paint only the required area
|
||||
nsRect tileRect(x0,y0,(x1-x0),(y1-y0));
|
||||
#ifdef XP_WIN
|
||||
PRInt32 xOffset = tileRect.x - x0,
|
||||
yOffset = tileRect.y - y0;
|
||||
aRenderingContext.DrawTile(image,xOffset,yOffset,&tileRect);
|
||||
#else
|
||||
nsRect drawRect;
|
||||
|
||||
if (drawRect.IntersectRect(tileRect, dirtyRect)) {
|
||||
PRInt32 xOffset = drawRect.x - x0,
|
||||
yOffset = drawRect.y - y0;
|
||||
aRenderingContext.DrawTile(image,xOffset,yOffset,&drawRect);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if !defined(XP_UNIX) && !defined(XP_BEOS)
|
||||
// Restore clipping
|
||||
|
|
|
@ -2178,7 +2178,6 @@ nsCSSRendering::PaintBackground(nsIPresContext* aPresContext,
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
// rounded version of the border
|
||||
for(i=0;i<4;i++){
|
||||
if (borderRadii[i] > 0){
|
||||
|
@ -2211,10 +2210,12 @@ nsCSSRendering::PaintBackground(nsIPresContext* aPresContext,
|
|||
req->GetImageStatus(&status);
|
||||
|
||||
if (NS_FAILED(rv) || !req || !(status & imgIRequest::STATUS_SIZE_AVAILABLE)) {
|
||||
// The background color is rendered over the 'border' 'padding' and
|
||||
// 'content' areas
|
||||
aRenderingContext.SetColor(aColor.mBackgroundColor);
|
||||
aRenderingContext.FillRect(aBorderArea);
|
||||
if (!transparentBG) {
|
||||
// The background color is rendered over the 'border' 'padding' and
|
||||
// 'content' areas
|
||||
aRenderingContext.SetColor(aColor.mBackgroundColor);
|
||||
aRenderingContext.FillRect(aBorderArea);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -2538,12 +2539,19 @@ nsCSSRendering::PaintBackground(nsIPresContext* aPresContext,
|
|||
|
||||
// Take the intersection again to paint only the required area
|
||||
nsRect tileRect(x0,y0,(x1-x0),(y1-y0));
|
||||
#ifdef XP_WIN
|
||||
PRInt32 xOffset = tileRect.x - x0,
|
||||
yOffset = tileRect.y - y0;
|
||||
aRenderingContext.DrawTile(image,xOffset,yOffset,&tileRect);
|
||||
#else
|
||||
nsRect drawRect;
|
||||
|
||||
if (drawRect.IntersectRect(tileRect, dirtyRect)) {
|
||||
PRInt32 xOffset = drawRect.x - x0,
|
||||
yOffset = drawRect.y - y0;
|
||||
aRenderingContext.DrawTile(image,xOffset,yOffset,&drawRect);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if !defined(XP_UNIX) && !defined(XP_BEOS)
|
||||
// Restore clipping
|
||||
|
|
Загрузка…
Ссылка в новой задаче