Issue #1545 - Fix border-radius on table row groups, rows, column groups, or columns

Before issue #146, border-radius on row groups, rows, column groups, or columns don't apply to the background of each cell, yet the border-radius on the cell itself does.

After issue #146, the behaviors changed. In this patch, I tried to revert the behaviors of border-radius on table row groups, rows, column groups, or columns back to what happened before issue #146.

Also: Don't override GetBorderRadii in nsBCTableCellFrame.
This commit is contained in:
win7-7 2020-05-12 19:23:47 +03:00 committed by Roy Tam
commit c399e1938f
12 changed files with 275 additions and 18 deletions

View file

@ -1903,8 +1903,15 @@ nsCSSRendering::GetImageLayerClip(const nsStyleImageLayers::Layer& aLayer,
nsRect clipBorderArea =
::BoxDecorationRectForBorder(aForFrame, aBorderArea, skipSides, &aBorder);
bool haveRoundedCorners = GetRadii(aForFrame, aBorder, aBorderArea,
clipBorderArea, aClipState->mRadii);
bool haveRoundedCorners = false;
nsIAtom* fType = aForFrame->GetType();
if (fType != nsGkAtoms::tableColGroupFrame &&
fType != nsGkAtoms::tableColFrame &&
fType != nsGkAtoms::tableRowFrame &&
fType != nsGkAtoms::tableRowGroupFrame) {
haveRoundedCorners = GetRadii(aForFrame, aBorder, aBorderArea,
clipBorderArea, aClipState->mRadii);
}
bool isSolidBorder =
aWillPaintBorder && IsOpaqueBorder(aBorder);