Bug 403524: Merging codepaths introduced some reftest failures; we need to fix them (r=dbaron)

It would appear that shadows were expected to render above underlines,
violating the CSS3 spec for text-shadow
(http://dev.w3.org/csswg/css3-text/#text-shadow).  The text-overflow
reftest relied on our previous standards-mode decoration implementation,
which drew strikethroughs after drawing the contents of the box,
regardless of whether there was any text; the reference thus no longer
needs to artificially introduce the decoration.
This commit is contained in:
Vitor Menezes 2011-08-03 11:30:58 -07:00
parent cf291058cb
commit ffab172cd7
4 changed files with 21 additions and 28 deletions

View File

@ -63,7 +63,7 @@ m { font-size:20px; color:blue; }
<div class="test t1"><span><span class="xspan">0123&nbsp;56789012</span><m>&#x2026;</m></span></div>
<div class="test rtl t1"><span><span class="xspan">1&nbsp;56789012345</span><m>&#x2026;</m></span></div>
<div class="test rtl t2" style="color:black">&#x2026;<span><span class="xspan">&nbsp;</span></span></div>
<div class="test rtl t2" style="color:black">&#x2026;&nbsp;</div>
<div class="test rtl t3"><span><m>&#x2026;</m><span style="visibility:hidden">&nbsp;</span></span></div>
<div class="test t4"><span><m>&#x2026;</m><span style="visibility:hidden">&nbsp;</span></span></div>

View File

@ -1,25 +1,23 @@
<!DOCTYPE HTML>
<!-- blue underline -->
<!-- Shadows -->
<!-- Blue underline/text -->
<div style="position: absolute; top: 22px; left: 22px; color: blue; text-decoration: underline;"><span style="color: rgba(0, 0, 0, 0);">testforquirks</span></div>
<div style="position: absolute; top: 20px; left: 20px; color: blue; text-decoration: underline;"><span style="color: rgba(0, 0, 0, 0);">testforquirks</span></div>
<!-- blue text -->
<div style="position: absolute; top: 22px; left: 22px;"><span style="color: blue;">test</span></div>
<div style="position: absolute; top: 20px; left: 20px;"><span style="color: blue;">test</span></div>
<!-- red overline -->
<!-- Red overline/text -->
<div style="position: absolute; top: 22px; left: 22px; color: rgba(0, 0, 0, 0);">test<span style="text-decoration: overline; color: red;"><span style="color: rgba(0, 0, 0, 0);">forquirks</span></span></div>
<div style="position: absolute; top: 20px; left: 20px; color: rgba(0, 0, 0, 0);">test<span style="text-decoration: overline; color: red;"><span style="color: rgba(0, 0, 0, 0);">forquirks</span></span></div>
<!-- red text -->
<div style="position: absolute; top: 22px; left: 22px;"><span style="color: rgba(0, 0, 0, 0);">test</span><span style="color: red;">for</span></div>
<div style="position: absolute; top: 20px; left: 20px;"><span style="color: rgba(0, 0, 0, 0);">test</span><span style="color: red;">for</span></div>
<!-- green underline -->
<!-- Green text/underline -->
<div style="position: absolute; top: 22px; left: 22px;"><span style="color: rgba(0, 0, 0, 0);">testfor</span><span style="text-decoration: underline; color: green;"><span style="color: rgba(0, 0, 0, 0);">quirks</span></span></div>
<div style="position: absolute; top: 20px; left: 20px;"><span style="color: rgba(0, 0, 0, 0);">testfor</span><span style="text-decoration: underline; color: green;"><span style="color: rgba(0, 0, 0, 0);">quirks</span></span></div>
<!-- green text -->
<div style="position: absolute; top: 22px; left: 22px;"><span style="color: rgba(0, 0, 0, 0);">testfor</span><span style="color: green;">quirks</span></div>
<!-- "Real" text -->
<!-- Blue underline/text -->
<div style="position: absolute; top: 20px; left: 20px; color: blue; text-decoration: underline;"><span style="color: rgba(0, 0, 0, 0);">testforquirks</span></div>
<div style="position: absolute; top: 20px; left: 20px;"><span style="color: blue;">test</span></div>
<!-- Red overline/text -->
<div style="position: absolute; top: 20px; left: 20px; color: rgba(0, 0, 0, 0);">test<span style="text-decoration: overline; color: red;"><span style="color: rgba(0, 0, 0, 0);">forquirks</span></span></div>
<div style="position: absolute; top: 20px; left: 20px;"><span style="color: rgba(0, 0, 0, 0);">test</span><span style="color: red;">for</span></div>
<!-- Green underline/text -->
<div style="position: absolute; top: 20px; left: 20px;"><span style="color: rgba(0, 0, 0, 0);">testfor</span><span style="text-decoration: underline; color: green;"><span style="color: rgba(0, 0, 0, 0);">quirks</span></span></div>
<div style="position: absolute; top: 20px; left: 20px;"><span style="color: rgba(0, 0, 0, 0);">testfor</span><span style="color: green;">quirks</span></div>

View File

@ -9,13 +9,8 @@ color: rgba(0, 0, 0, 0);
}
</style>
<div class="underlined" style="position: absolute; top: 33px; left: 33px; color: grey; z-index: 0;"><span>Hello</span></div>
<div class="underlined" style="position: absolute; top: 30px; left: 30px; color: green; z-index: 1;"><span>Hello</span></div>
<div class="underlined" style="position: absolute; top: 27px; left: 27px; color: red; z-index: 2;"><span>Hello</span></div>
<div class="underlined" style="position: absolute; top: 24px; left: 24px; color: purple; z-index: 3;"><span>Hello</span></div>
<div class="underlined" style="position: absolute; top: 20px; left: 20px; color: black; z-index: 4;"><span>Hello</span></div>
<div style="position: absolute; top: 33px; left: 33px; color: grey; z-index: 5;">Hello</div>
<div style="position: absolute; top: 30px; left: 30px; color: green; z-index: 6;">Hello</div>
<div style="position: absolute; top: 27px; left: 27px; color: red; z-index: 7;">Hello</div>
<div style="position: absolute; top: 24px; left: 24px; color: purple; z-index: 8;">Hello</div>
<div style="position: absolute; top: 20px; left: 20px; color: black; z-index: 9;">Hello</div>
<div class="underlined" style="position: absolute; top: 33px; left: 33px; color: grey; z-index: 0;">Hello</div>
<div class="underlined" style="position: absolute; top: 30px; left: 30px; color: green; z-index: 1;">Hello</div>
<div class="underlined" style="position: absolute; top: 27px; left: 27px; color: red; z-index: 2;">Hello</div>
<div class="underlined" style="position: absolute; top: 24px; left: 24px; color: purple; z-index: 3;">Hello</div>
<div class="underlined" style="position: absolute; top: 20px; left: 20px; color: black; z-index: 4;">Hello</div>

View File

@ -1,4 +1,4 @@
<!DOCTYPE HTML>
<!-- Underlines are all painted behind every text shadow due to frame painting order -->
<!-- Shadows are painted below text AND its decorations -->
<div style="position: absolute; top: 20px; left: 20px; color: black; text-shadow: purple 4px 4px, red 7px 7px, green 10px 10px, grey 13px 13px; text-decoration: underline;">Hello</div>