Bug 1352258 - default fallback for context-fill to black to match default fill colour r=jwatt

This commit is contained in:
Robert Longson 2017-05-03 22:00:40 +01:00
Родитель febd210bd9
Коммит 9a974578a0
5 изменённых файлов: 30 добавлений и 2 удалений

Просмотреть файл

@ -15,6 +15,6 @@ img {
</style>
</head>
<body>
<img src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' fill='context-fill'/></svg>">
<img src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' fill='context-fill none'/></svg>">
</body>
</html>

Просмотреть файл

@ -0,0 +1,12 @@
<!--
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
<svg xmlns="http://www.w3.org/2000/svg">
<title>Reference for context-fill fallback colour</title>
<!-- From https://bugzilla.mozilla.org/show_bug.cgi?id=1352258 -->
<rect width="100%" height="100%" fill="black"/>
</svg>

После

Ширина:  |  Высота:  |  Размер: 348 B

Просмотреть файл

@ -0,0 +1,12 @@
<!--
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
<svg xmlns="http://www.w3.org/2000/svg">
<title>Testcase for context-fill fallback colour</title>
<!-- From https://bugzilla.mozilla.org/show_bug.cgi?id=1352258 -->
<rect width="100%" height="100%" fill="context-fill"/>
</svg>

После

Ширина:  |  Высота:  |  Размер: 354 B

Просмотреть файл

@ -188,6 +188,7 @@ random == dynamic-use-nested-01b.svg dynamic-use-nested-01-ref.svg
== fallback-color-02b.svg fallback-color-02-ref.svg
== fallback-color-03.svg pass.svg
fuzzy-if(skiaContent,1,2) == fallback-color-04.svg pass.svg
== fallback-color-05.svg fallback-color-05-ref.svg
== filter-basic-01.svg pass.svg
== filter-basic-02.svg pass.svg

Просмотреть файл

@ -1457,11 +1457,14 @@ nsSVGUtils::GetFallbackOrPaintColor(nsStyleContext *aStyleContext,
nscolor color;
switch (paint.Type()) {
case eStyleSVGPaintType_Server:
case eStyleSVGPaintType_ContextFill:
case eStyleSVGPaintType_ContextStroke:
color = paint.GetFallbackType() == eStyleSVGFallbackType_Color ?
paint.GetFallbackColor() : NS_RGBA(0, 0, 0, 0);
break;
case eStyleSVGPaintType_ContextFill:
color = paint.GetFallbackType() == eStyleSVGFallbackType_Color ?
paint.GetFallbackColor() : NS_RGB(0, 0, 0);
break;
default:
color = paint.GetColor();
break;