WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch
bug-283754-20241127084157.patch (text/plain), 37.32 KB, created by
alan
on 2024-11-27 08:41:58 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
alan
Created:
2024-11-27 08:41:58 PST
Size:
37.32 KB
patch
obsolete
>From ff8c1cd56fc6465ff84ded19640651990e1bf582 Mon Sep 17 00:00:00 2001 >From: Alan Baradlay <zalan@apple.com> >Date: Wed, 27 Nov 2024 06:12:47 -0800 >Subject: [PATCH] [Text] Add support for titlecasing decomposed ligatures > https://bugs.webkit.org/show_bug.cgi?id=283754 >MIME-Version: 1.0 >Content-Type: text/plain; charset=UTF-8 >Content-Transfer-Encoding: 8bit > >Reviewed by Antti Koivisto. > >Replace u_totitle with u_strToTitle to support titlecasing decomposed ligatures. > >When the candidate character has ligature (ï¬) while the titlecased version does not (Fi), >u_totitle fails to make the conversion, while u_strToTitle simply tells us to expand >the output buffer to be able to hold the enlarged content. > >Using u_strToTitle also enables us to handle non-BPM content and support local (FIXME). > >(We can't just apply u_strToTitle on the entire content as, in addition to titlecasing the first character, it also lowercases all others which is not what 'text-transform: capitalize' expects. see https://unicode-org.github.io/icu-docs/apidoc/dev/icu4c/ustring_8h.html#a47602e2c2012d77ee91908b9bbfdc063) > >imported/blink/fast/forms/select/select-text-transform.html -> progression. >LayoutTests/fast/css/text-transform-select.html is exactly the same as select-text-transform.html (see above) but with render tree dump -> remove. > >* LayoutTests/fast/text/capitalize-decomposed-ligatures-expected.html: Added. >* LayoutTests/fast/text/capitalize-decomposed-ligatures.html: Added. >* Source/WebCore/rendering/RenderText.cpp: >(WebCore::capitalizeCharacter): >(WebCore::capitalize): >--- > Source/WebCore/rendering/RenderText.cpp | 28 ++++- > .../fast/css/text-transform-select.html | 39 ------- > ...italize-decomposed-ligatures-expected.html | 8 ++ > .../text/capitalize-decomposed-ligatures.html | 13 +++ > .../select-text-transform-expected.html | 6 +- > .../css/text-transform-select-expected.txt | 92 --------------- > .../css/text-transform-select-expected.txt | 110 ------------------ > .../css/text-transform-select-expected.txt | 92 --------------- > LayoutTests/platform/win/TestExpectations | 1 - > .../css/text-transform-select-expected.txt | 92 --------------- > .../css/text-transform-select-expected.txt | 92 --------------- > 11 files changed, 50 insertions(+), 523 deletions(-) > delete mode 100644 LayoutTests/fast/css/text-transform-select.html > create mode 100644 LayoutTests/fast/text/capitalize-decomposed-ligatures-expected.html > create mode 100644 LayoutTests/fast/text/capitalize-decomposed-ligatures.html > delete mode 100644 LayoutTests/platform/gtk/fast/css/text-transform-select-expected.txt > delete mode 100644 LayoutTests/platform/ios/fast/css/text-transform-select-expected.txt > delete mode 100644 LayoutTests/platform/mac/fast/css/text-transform-select-expected.txt > delete mode 100644 LayoutTests/platform/win/fast/css/text-transform-select-expected.txt > delete mode 100644 LayoutTests/platform/wpe/fast/css/text-transform-select-expected.txt > >diff --git a/Source/WebCore/rendering/RenderText.cpp b/Source/WebCore/rendering/RenderText.cpp >index 4e38cca2b346..8218737a5c13 100644 >--- a/Source/WebCore/rendering/RenderText.cpp >+++ b/Source/WebCore/rendering/RenderText.cpp >@@ -163,6 +163,29 @@ static constexpr UChar convertNoBreakSpaceToSpace(UChar character) > return character == noBreakSpace ? ' ' : character; > } > >+static inline bool capitalizeCharacter(UChar characterToCapitalize, StringBuilder& output) >+{ >+ // FIXME: Add support for non-BMP content. >+ UChar capitalizedCharacter; >+ UErrorCode status = U_ZERO_ERROR; >+ auto realLength = u_strToTitle(&capitalizedCharacter, 1, &characterToCapitalize, 1, nullptr, "", &status); >+ if (U_SUCCESS(status) && realLength == 1) { >+ output.append(capitalizedCharacter); >+ return true; >+ } >+ >+ // Decomposed ligatures may need more space. >+ std::span<UChar> capitalizedStringData; >+ auto capitalizedString = String::createUninitialized(realLength, capitalizedStringData); >+ status = U_ZERO_ERROR; >+ u_strToTitle(capitalizedStringData.data(), capitalizedStringData.size(), &characterToCapitalize, 1, nullptr, "", &status); >+ if (U_SUCCESS(status)) { >+ output.append(capitalizedString); >+ return true; >+ } >+ return false; >+} >+ > String capitalize(const String& string, UChar previousCharacter) > { > // FIXME: Change this to use u_strToTitle instead of u_totitle and to consider locale. >@@ -190,8 +213,9 @@ String capitalize(const String& string, UChar previousCharacter) > for (endOfWord = ubrk_next(breakIterator); endOfWord != UBRK_DONE; startOfWord = endOfWord, endOfWord = ubrk_next(breakIterator)) { > // Do not append the first character, since it's the previous character, not from this string. > if (startOfWord) { >- char32_t lastCharacter = u_totitle(stringImpl[startOfWord - 1]); >- result.append(lastCharacter); >+ auto characterToCapitalize = stringWithPrevious[startOfWord]; >+ if (!capitalizeCharacter(characterToCapitalize, result)) >+ result.append(characterToCapitalize); > } > for (int i = startOfWord + 1; i < endOfWord; i++) > result.append(stringImpl[i - 1]); >diff --git a/LayoutTests/fast/css/text-transform-select.html b/LayoutTests/fast/css/text-transform-select.html >deleted file mode 100644 >index 4e7026df71c1..000000000000 >--- a/LayoutTests/fast/css/text-transform-select.html >+++ /dev/null >@@ -1,39 +0,0 @@ >-<!doctype html> >-<meta charset="windows-1252"> >-<style> >- .upper * { text-transform: uppercase; } >- .capitalized * { text-transform: capitalize; } >- .lower * { text-transform: lowercase; } >-</style> >-The text in the button, popup menu and list box should have the same case as in the >-accompanying text. >-<div class="upper"> >- <select><option>heLLo</option><option>woRLd</option></select> >- <select multiple="true"><option>heLLo</option><option>woRLd</option></select> >- <span>heLLo woRLd</span> >-</div> >-<div class="capitalized"> >- <select><option>heLLo</option><option>woRLd</option></select> >- <select multiple="true"><option>heLLo</option><option>woRLd</option></select> >- <span>heLLo woRLd</span> >-</div> >-<div class="lower"> >- <select><option>heLLo</option><option>woRLd</option></select> >- <select multiple="true"><option>heLLo</option><option>woRLd</option></select> >- <span>heLLo woRLd</span> >-</div> >-<div class="upper"> >- <select><option>ß</option><option>ßß</option></select> >- <select multiple="true"><option>ß</option><option>ßß</option></select> >- <span>ß ßß</span> >-</div> >-<div class="capitalized"> >- <select><option>ß</option><option>ßß</option></select> >- <select multiple="true"><option>ß</option><option>ßß</option></select> >- <span>ß ßß</span> >-</div> >-<div class="lower"> >- <select><option>ß</option><option>ßß</option></select> >- <select multiple="true"><option>ß</option><option>ßß</option></select> >- <span>ß ßß</span> >-</div> >diff --git a/LayoutTests/fast/text/capitalize-decomposed-ligatures-expected.html b/LayoutTests/fast/text/capitalize-decomposed-ligatures-expected.html >new file mode 100644 >index 000000000000..080a48666ab7 >--- /dev/null >+++ b/LayoutTests/fast/text/capitalize-decomposed-ligatures-expected.html >@@ -0,0 +1,8 @@ >+<meta charset="utf-8"> >+<div>First First Firï¬ Firï¬</div> >+<div>FirSt FirsT Firï¬ FiRï¬</div> >+<div>First First Firï¬ Firï¬</div> >+ >+<div>Oeuf Åuf</div> >+<div>Oeuf ÅUf</div> >+<div>Oeuf Åuf</div> >diff --git a/LayoutTests/fast/text/capitalize-decomposed-ligatures.html b/LayoutTests/fast/text/capitalize-decomposed-ligatures.html >new file mode 100644 >index 000000000000..61ab7a0fa61d >--- /dev/null >+++ b/LayoutTests/fast/text/capitalize-decomposed-ligatures.html >@@ -0,0 +1,13 @@ >+<meta charset="utf-8"> >+<style> >+div { >+ text-transform: capitalize; >+} >+</style> >+<div>first ï¬rst firï¬ ï¬rï¬</div> >+<div>firSt ï¬rsT Firï¬ ï¬Rï¬</div> >+<div><span>fi</span>rst <span>ï¬</span>rst <span>fir</span>ï¬ <span>ï¬rï¬</span></div> >+ >+<div>oeuf Åuf</div> >+<div>Oeuf ÅUf</div> >+<div><span>o</span>euf <span>Å</span>uf</div> >diff --git a/LayoutTests/imported/blink/fast/forms/select/select-text-transform-expected.html b/LayoutTests/imported/blink/fast/forms/select/select-text-transform-expected.html >index 82b2c9bb7a11..9441c46e6bf4 100644 >--- a/LayoutTests/imported/blink/fast/forms/select/select-text-transform-expected.html >+++ b/LayoutTests/imported/blink/fast/forms/select/select-text-transform-expected.html >@@ -27,9 +27,9 @@ accompanying text. > <span>SS SSSS</span> > </div> > <div> >- <select><option>Ã</option><option>ÃÃ</option></select> >- <select multiple="true"><option>Ã</option><option>ÃÃ</option></select> >- <span>à ÃÃ</span> >+ <select><option>Ss</option><option>SsÃ</option></select> >+ <select multiple="true"><option>Ss</option><option>SsÃ</option></select> >+ <span>Ss SsÃ</span> > </div> > <div> > <select><option>Ã</option><option>ÃÃ</option></select> >diff --git a/LayoutTests/platform/gtk/fast/css/text-transform-select-expected.txt b/LayoutTests/platform/gtk/fast/css/text-transform-select-expected.txt >deleted file mode 100644 >index f93d522ee15f..000000000000 >--- a/LayoutTests/platform/gtk/fast/css/text-transform-select-expected.txt >+++ /dev/null >@@ -1,92 +0,0 @@ >-layer at (0,0) size 800x600 >- RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x490 >- RenderBlock {HTML} at (0,0) size 800x490 >- RenderBody {BODY} at (8,8) size 784x474 >- RenderBlock (anonymous) at (0,0) size 784x18 >- RenderText {#text} at (0,0) size 652x17 >- text run at (0,0) width 652: "The text in the button, popup menu and list box should have the same case as in the accompanying text." >- RenderBlock {DIV} at (0,18) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 88x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 86x28 >- RenderText at (5,5) size 53x17 >- text run at (5,5) width 53: "HELLO" >- RenderText {#text} at (88,52) size 4x17 >- text run at (88,52) width 4: " " >- RenderListBox {SELECT} at (92,0) size 81x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (173,52) size 4x17 >- text run at (173,52) width 4: " " >- RenderInline {SPAN} at (177,52) size 118x17 >- RenderText {#text} at (177,52) size 118x17 >- text run at (177,52) width 118: "HELLO WORLD" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,94) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 82x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 80x28 >- RenderText at (5,5) size 48x17 >- text run at (5,5) width 48: "HeLLo" >- RenderText {#text} at (82,52) size 4x17 >- text run at (82,52) width 4: " " >- RenderListBox {SELECT} at (86,0) size 75x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (161,52) size 4x17 >- text run at (161,52) width 4: " " >- RenderInline {SPAN} at (165,52) size 102x17 >- RenderText {#text} at (165,52) size 102x17 >- text run at (165,52) width 102: "HeLLo WoRLd" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,170) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 67x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 65x28 >- RenderText at (5,5) size 35x17 >- text run at (5,5) width 35: "hello" >- RenderText {#text} at (67,52) size 4x17 >- text run at (67,52) width 4: " " >- RenderListBox {SELECT} at (71,0) size 60x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (131,52) size 4x17 >- text run at (131,52) width 4: " " >- RenderInline {SPAN} at (135,52) size 72x17 >- RenderText {#text} at (135,52) size 72x17 >- text run at (135,52) width 72: "hello world" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,246) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 72x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 70x28 >- RenderText at (5,5) size 22x17 >- text run at (5,5) width 22: "SS" >- RenderText {#text} at (72,52) size 4x17 >- text run at (72,52) width 4: " " >- RenderListBox {SELECT} at (76,0) size 65x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (141,52) size 4x17 >- text run at (141,52) width 4: " " >- RenderInline {SPAN} at (145,52) size 58x17 >- RenderText {#text} at (145,52) size 58x17 >- text run at (145,52) width 58: "SS SSSS" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,322) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 48x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 46x28 >- RenderText at (5,5) size 10x17 >- text run at (5,5) width 10: "\x{DF}" >- RenderText {#text} at (48,52) size 4x17 >- text run at (48,52) width 4: " " >- RenderListBox {SELECT} at (52,0) size 41x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (93,52) size 4x17 >- text run at (93,52) width 4: " " >- RenderInline {SPAN} at (97,52) size 28x17 >- RenderText {#text} at (97,52) size 28x17 >- text run at (97,52) width 28: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,398) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 48x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 46x28 >- RenderText at (5,5) size 10x17 >- text run at (5,5) width 10: "\x{DF}" >- RenderText {#text} at (48,52) size 4x17 >- text run at (48,52) width 4: " " >- RenderListBox {SELECT} at (52,0) size 41x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (93,52) size 4x17 >- text run at (93,52) width 4: " " >- RenderInline {SPAN} at (97,52) size 28x17 >- RenderText {#text} at (97,52) size 28x17 >- text run at (97,52) width 28: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >diff --git a/LayoutTests/platform/ios/fast/css/text-transform-select-expected.txt b/LayoutTests/platform/ios/fast/css/text-transform-select-expected.txt >deleted file mode 100644 >index dd221334c6b8..000000000000 >--- a/LayoutTests/platform/ios/fast/css/text-transform-select-expected.txt >+++ /dev/null >@@ -1,110 +0,0 @@ >-layer at (0,0) size 800x600 >- RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x162 >- RenderBlock {HTML} at (0,0) size 800x162 >- RenderBody {BODY} at (8,8) size 784x146 >- RenderBlock (anonymous) at (0,0) size 784x20 >- RenderText {#text} at (0,0) size 664x19 >- text run at (0,0) width 664: "The text in the button, popup menu and list box should have the same case as in the accompanying text." >- RenderBlock {DIV} at (0,20) size 784x21 >- RenderMenuList {SELECT} at (0,1) size 65x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (6,3) size 53x14 >- RenderText at (0,0) size 36x14 >- text run at (0,0) width 36: "HELLO" >- RenderText {#text} at (65,0) size 4x19 >- text run at (65,0) width 4: " " >- RenderMenuList {SELECT} at (69,1) size 64x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (5,3) size 54x14 >- RenderText at (0,0) size 44x14 >- text run at (0,0) width 44: "0 ITEMS" >- RenderText {#text} at (132,0) size 5x19 >- text run at (132,0) width 5: " " >- RenderInline {SPAN} at (136,0) size 116x19 >- RenderText {#text} at (136,0) size 116x19 >- text run at (136,0) width 116: "HELLO WORLD" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,41) size 784x21 >- RenderMenuList {SELECT} at (0,1) size 61x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (6,3) size 49x14 >- RenderText at (0,0) size 34x14 >- text run at (0,0) width 34: "HeLLo" >- RenderText {#text} at (61,0) size 4x19 >- text run at (61,0) width 4: " " >- RenderMenuList {SELECT} at (65,1) size 60x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (5,3) size 50x14 >- RenderText at (0,0) size 39x14 >- text run at (0,0) width 39: "0 Items" >- RenderText {#text} at (124,0) size 5x19 >- text run at (124,0) width 5: " " >- RenderInline {SPAN} at (128,0) size 102x19 >- RenderText {#text} at (128,0) size 102x19 >- text run at (128,0) width 102: "HeLLo WoRLd" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,62) size 784x21 >- RenderMenuList {SELECT} at (0,1) size 53x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (6,3) size 41x14 >- RenderText at (0,0) size 26x14 >- text run at (0,0) width 26: "hello" >- RenderText {#text} at (53,0) size 4x19 >- text run at (53,0) width 4: " " >- RenderMenuList {SELECT} at (57,1) size 52x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (5,3) size 42x14 >- RenderText at (0,0) size 39x14 >- text run at (0,0) width 39: "0 items" >- RenderText {#text} at (108,0) size 5x19 >- text run at (108,0) width 5: " " >- RenderInline {SPAN} at (112,0) size 75x19 >- RenderText {#text} at (112,0) size 75x19 >- text run at (112,0) width 75: "hello world" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,83) size 784x21 >- RenderMenuList {SELECT} at (0,1) size 53x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (6,3) size 41x14 >- RenderText at (0,0) size 15x14 >- text run at (0,0) width 15: "SS" >- RenderText {#text} at (53,0) size 4x19 >- text run at (53,0) width 4: " " >- RenderMenuList {SELECT} at (57,1) size 52x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (5,3) size 42x14 >- RenderText at (0,0) size 44x14 >- text run at (0,0) width 44: "0 ITEMS" >- RenderText {#text} at (108,0) size 5x19 >- text run at (108,0) width 5: " " >- RenderInline {SPAN} at (112,0) size 59x19 >- RenderText {#text} at (112,0) size 59x19 >- text run at (112,0) width 59: "SS SSSS" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,104) size 784x21 >- RenderMenuList {SELECT} at (0,1) size 38x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (6,3) size 26x14 >- RenderText at (0,0) size 7x14 >- text run at (0,0) width 7: "\x{DF}" >- RenderText {#text} at (38,0) size 4x19 >- text run at (38,0) width 4: " " >- RenderMenuList {SELECT} at (42,1) size 37x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (5,3) size 27x14 >- RenderText at (0,0) size 39x14 >- text run at (0,0) width 39: "0 Items" >- RenderText {#text} at (78,0) size 5x19 >- text run at (78,0) width 5: " " >- RenderInline {SPAN} at (82,0) size 29x19 >- RenderText {#text} at (82,0) size 29x19 >- text run at (82,0) width 29: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,125) size 784x21 >- RenderMenuList {SELECT} at (0,1) size 38x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (6,3) size 26x14 >- RenderText at (0,0) size 7x14 >- text run at (0,0) width 7: "\x{DF}" >- RenderText {#text} at (38,0) size 4x19 >- text run at (38,0) width 4: " " >- RenderMenuList {SELECT} at (42,1) size 37x20 [color=#007AFF] [bgcolor=#E9E9EA] [border: (1px solid #FFFFFF)] >- RenderBlock (anonymous) at (5,3) size 27x14 >- RenderText at (0,0) size 39x14 >- text run at (0,0) width 39: "0 items" >- RenderText {#text} at (78,0) size 5x19 >- text run at (78,0) width 5: " " >- RenderInline {SPAN} at (82,0) size 29x19 >- RenderText {#text} at (82,0) size 29x19 >- text run at (82,0) width 29: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >diff --git a/LayoutTests/platform/mac/fast/css/text-transform-select-expected.txt b/LayoutTests/platform/mac/fast/css/text-transform-select-expected.txt >deleted file mode 100644 >index eaf239b05426..000000000000 >--- a/LayoutTests/platform/mac/fast/css/text-transform-select-expected.txt >+++ /dev/null >@@ -1,92 +0,0 @@ >-layer at (0,0) size 800x600 >- RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x376 >- RenderBlock {HTML} at (0,0) size 800x376 >- RenderBody {BODY} at (8,8) size 784x360 >- RenderBlock (anonymous) at (0,0) size 784x18 >- RenderText {#text} at (0,0) size 664x18 >- text run at (0,0) width 664: "The text in the button, popup menu and list box should have the same case as in the accompanying text." >- RenderBlock {DIV} at (0,18) size 784x57 >- RenderMenuList {SELECT} at (0,37) size 72x18 [bgcolor=#FFFFFF] >- RenderBlock (anonymous) at (0,0) size 72x18 >- RenderText at (8,2) size 36x13 >- text run at (8,2) width 36: "HELLO" >- RenderText {#text} at (72,36) size 4x18 >- text run at (72,36) width 4: " " >- RenderListBox {SELECT} at (76,0) size 58x57 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (134,36) size 4x18 >- text run at (134,36) width 4: " " >- RenderInline {SPAN} at (138,36) size 116x18 >- RenderText {#text} at (138,36) size 116x18 >- text run at (138,36) width 116: "HELLO WORLD" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,75) size 784x57 >- RenderMenuList {SELECT} at (0,37) size 68x18 [bgcolor=#FFFFFF] >- RenderBlock (anonymous) at (0,0) size 68x18 >- RenderText at (8,2) size 34x13 >- text run at (8,2) width 34: "HeLLo" >- RenderText {#text} at (68,36) size 4x18 >- text run at (68,36) width 4: " " >- RenderListBox {SELECT} at (72,0) size 54x57 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (126,36) size 4x18 >- text run at (126,36) width 4: " " >- RenderInline {SPAN} at (130,36) size 101x18 >- RenderText {#text} at (130,36) size 101x18 >- text run at (130,36) width 101: "HeLLo WoRLd" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,132) size 784x57 >- RenderMenuList {SELECT} at (0,37) size 60x18 [bgcolor=#FFFFFF] >- RenderBlock (anonymous) at (0,0) size 60x18 >- RenderText at (8,2) size 26x13 >- text run at (8,2) width 26: "hello" >- RenderText {#text} at (60,36) size 4x18 >- text run at (60,36) width 4: " " >- RenderListBox {SELECT} at (64,0) size 46x57 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (110,36) size 4x18 >- text run at (110,36) width 4: " " >- RenderInline {SPAN} at (114,36) size 74x18 >- RenderText {#text} at (114,36) size 74x18 >- text run at (114,36) width 74: "hello world" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,189) size 784x57 >- RenderMenuList {SELECT} at (0,37) size 60x18 [bgcolor=#FFFFFF] >- RenderBlock (anonymous) at (0,0) size 60x18 >- RenderText at (8,2) size 15x13 >- text run at (8,2) width 15: "SS" >- RenderText {#text} at (60,36) size 4x18 >- text run at (60,36) width 4: " " >- RenderListBox {SELECT} at (64,0) size 46x57 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (110,36) size 4x18 >- text run at (110,36) width 4: " " >- RenderInline {SPAN} at (114,36) size 58x18 >- RenderText {#text} at (114,36) size 58x18 >- text run at (114,36) width 58: "SS SSSS" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,246) size 784x57 >- RenderMenuList {SELECT} at (0,37) size 45x18 [bgcolor=#FFFFFF] >- RenderBlock (anonymous) at (0,0) size 45x18 >- RenderText at (8,2) size 7x13 >- text run at (8,2) width 7: "\x{DF}" >- RenderText {#text} at (45,36) size 4x18 >- text run at (45,36) width 4: " " >- RenderListBox {SELECT} at (49,0) size 31x57 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (80,36) size 4x18 >- text run at (80,36) width 4: " " >- RenderInline {SPAN} at (84,36) size 28x18 >- RenderText {#text} at (84,36) size 28x18 >- text run at (84,36) width 28: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,303) size 784x57 >- RenderMenuList {SELECT} at (0,37) size 45x18 [bgcolor=#FFFFFF] >- RenderBlock (anonymous) at (0,0) size 45x18 >- RenderText at (8,2) size 7x13 >- text run at (8,2) width 7: "\x{DF}" >- RenderText {#text} at (45,36) size 4x18 >- text run at (45,36) width 4: " " >- RenderListBox {SELECT} at (49,0) size 31x57 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (80,36) size 4x18 >- text run at (80,36) width 4: " " >- RenderInline {SPAN} at (84,36) size 28x18 >- RenderText {#text} at (84,36) size 28x18 >- text run at (84,36) width 28: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >diff --git a/LayoutTests/platform/win/TestExpectations b/LayoutTests/platform/win/TestExpectations >index 0bc2608e6ae6..b76db1f00014 100644 >--- a/LayoutTests/platform/win/TestExpectations >+++ b/LayoutTests/platform/win/TestExpectations >@@ -3381,7 +3381,6 @@ fast/css/text-overflow-ellipsis.html [ Skip ] > fast/css/text-overflow-input.html [ Skip ] > fast/css/text-rendering.html [ Skip ] > fast/css/text-security.html [ Skip ] >-fast/css/text-transform-select.html [ Skip ] > fast/css/textCapitalizeEdgeCases.html [ Skip ] > fast/css/transform-default-parameter.html [ Skip ] > fast/css/transformed-mask.html [ Skip ] >diff --git a/LayoutTests/platform/win/fast/css/text-transform-select-expected.txt b/LayoutTests/platform/win/fast/css/text-transform-select-expected.txt >deleted file mode 100644 >index 8c7a8d7be3a1..000000000000 >--- a/LayoutTests/platform/win/fast/css/text-transform-select-expected.txt >+++ /dev/null >@@ -1,92 +0,0 @@ >-layer at (0,0) size 800x600 >- RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x436 >- RenderBlock {HTML} at (0,0) size 800x436 >- RenderBody {BODY} at (8,8) size 784x420 >- RenderBlock (anonymous) at (0,0) size 784x18 >- RenderText {#text} at (0,0) size 652x17 >- text run at (0,0) width 652: "The text in the button, popup menu and list box should have the same case as in the accompanying text." >- RenderBlock {DIV} at (0,18) size 784x67 >- RenderMenuList {SELECT} at (0,40) size 75x27 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 73x25 >- RenderText at (5,5) size 42x15 >- text run at (5,5) width 42: "HELLO" >- RenderText {#text} at (75,44) size 4x17 >- text run at (75,44) width 4: " " >- RenderListBox {SELECT} at (79,0) size 68x65 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (147,44) size 4x17 >- text run at (147,44) width 4: " " >- RenderInline {SPAN} at (0,0) size 118x17 >- RenderText {#text} at (151,44) size 118x17 >- text run at (151,44) width 118: "HELLO WORLD" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,85) size 784x67 >- RenderMenuList {SELECT} at (0,40) size 70x27 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 68x25 >- RenderText at (5,5) size 37x15 >- text run at (5,5) width 37: "HeLLo" >- RenderText {#text} at (70,44) size 4x17 >- text run at (70,44) width 4: " " >- RenderListBox {SELECT} at (74,0) size 63x65 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (137,44) size 4x17 >- text run at (137,44) width 4: " " >- RenderInline {SPAN} at (0,0) size 102x17 >- RenderText {#text} at (141,44) size 102x17 >- text run at (141,44) width 102: "HeLLo WoRLd" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,152) size 784x67 >- RenderMenuList {SELECT} at (0,40) size 58x27 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 56x25 >- RenderText at (5,5) size 27x15 >- text run at (5,5) width 27: "hello" >- RenderText {#text} at (58,44) size 4x17 >- text run at (58,44) width 4: " " >- RenderListBox {SELECT} at (62,0) size 51x65 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (113,44) size 4x17 >- text run at (113,44) width 4: " " >- RenderInline {SPAN} at (0,0) size 72x17 >- RenderText {#text} at (117,44) size 72x17 >- text run at (117,44) width 72: "hello world" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,219) size 784x67 >- RenderMenuList {SELECT} at (0,40) size 64x27 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 62x25 >- RenderText at (5,5) size 18x15 >- text run at (5,5) width 18: "SS" >- RenderText {#text} at (64,44) size 4x17 >- text run at (64,44) width 4: " " >- RenderListBox {SELECT} at (68,0) size 57x65 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (125,44) size 4x17 >- text run at (125,44) width 4: " " >- RenderInline {SPAN} at (0,0) size 58x17 >- RenderText {#text} at (129,44) size 58x17 >- text run at (129,44) width 58: "SS SSSS" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,286) size 784x67 >- RenderMenuList {SELECT} at (0,40) size 44x27 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 42x25 >- RenderText at (5,5) size 8x15 >- text run at (5,5) width 8: "\x{DF}" >- RenderText {#text} at (44,44) size 4x17 >- text run at (44,44) width 4: " " >- RenderListBox {SELECT} at (48,0) size 37x65 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (85,44) size 4x17 >- text run at (85,44) width 4: " " >- RenderInline {SPAN} at (0,0) size 28x17 >- RenderText {#text} at (89,44) size 28x17 >- text run at (89,44) width 28: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,353) size 784x67 >- RenderMenuList {SELECT} at (0,40) size 44x27 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 42x25 >- RenderText at (5,5) size 8x15 >- text run at (5,5) width 8: "\x{DF}" >- RenderText {#text} at (44,44) size 4x17 >- text run at (44,44) width 4: " " >- RenderListBox {SELECT} at (48,0) size 37x65 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (85,44) size 4x17 >- text run at (85,44) width 4: " " >- RenderInline {SPAN} at (0,0) size 28x17 >- RenderText {#text} at (89,44) size 28x17 >- text run at (89,44) width 28: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >diff --git a/LayoutTests/platform/wpe/fast/css/text-transform-select-expected.txt b/LayoutTests/platform/wpe/fast/css/text-transform-select-expected.txt >deleted file mode 100644 >index fed543cd05af..000000000000 >--- a/LayoutTests/platform/wpe/fast/css/text-transform-select-expected.txt >+++ /dev/null >@@ -1,92 +0,0 @@ >-layer at (0,0) size 800x600 >- RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x490 >- RenderBlock {HTML} at (0,0) size 800x490 >- RenderBody {BODY} at (8,8) size 784x474 >- RenderBlock (anonymous) at (0,0) size 784x18 >- RenderText {#text} at (0,0) size 652x17 >- text run at (0,0) width 652: "The text in the button, popup menu and list box should have the same case as in the accompanying text." >- RenderBlock {DIV} at (0,18) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 88x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 86x28 >- RenderText at (5,5) size 54x17 >- text run at (5,5) width 54: "HELLO" >- RenderText {#text} at (88,52) size 4x17 >- text run at (88,52) width 4: " " >- RenderListBox {SELECT} at (92,0) size 81x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (173,52) size 4x17 >- text run at (173,52) width 4: " " >- RenderInline {SPAN} at (177,52) size 118x17 >- RenderText {#text} at (177,52) size 118x17 >- text run at (177,52) width 118: "HELLO WORLD" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,94) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 79x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 77x28 >- RenderText at (5,5) size 47x17 >- text run at (5,5) width 47: "HeLLo" >- RenderText {#text} at (79,52) size 4x17 >- text run at (79,52) width 4: " " >- RenderListBox {SELECT} at (83,0) size 72x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (155,52) size 4x17 >- text run at (155,52) width 4: " " >- RenderInline {SPAN} at (159,52) size 102x17 >- RenderText {#text} at (159,52) size 102x17 >- text run at (159,52) width 102: "HeLLo WoRLd" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,170) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 65x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 63x28 >- RenderText at (5,5) size 31x17 >- text run at (5,5) width 31: "hello" >- RenderText {#text} at (65,52) size 4x17 >- text run at (65,52) width 4: " " >- RenderListBox {SELECT} at (69,0) size 58x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (127,52) size 4x17 >- text run at (127,52) width 4: " " >- RenderInline {SPAN} at (131,52) size 72x17 >- RenderText {#text} at (131,52) size 72x17 >- text run at (131,52) width 72: "hello world" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,246) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 64x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 62x28 >- RenderText at (5,5) size 18x17 >- text run at (5,5) width 18: "SS" >- RenderText {#text} at (64,52) size 4x17 >- text run at (64,52) width 4: " " >- RenderListBox {SELECT} at (68,0) size 57x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (125,52) size 4x17 >- text run at (125,52) width 4: " " >- RenderInline {SPAN} at (129,52) size 58x17 >- RenderText {#text} at (129,52) size 58x17 >- text run at (129,52) width 58: "SS SSSS" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,322) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 44x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 42x28 >- RenderText at (5,5) size 8x17 >- text run at (5,5) width 8: "\x{DF}" >- RenderText {#text} at (44,52) size 4x17 >- text run at (44,52) width 4: " " >- RenderListBox {SELECT} at (48,0) size 37x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (85,52) size 4x17 >- text run at (85,52) width 4: " " >- RenderInline {SPAN} at (89,52) size 28x17 >- RenderText {#text} at (89,52) size 28x17 >- text run at (89,52) width 28: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0 >- RenderBlock {DIV} at (0,398) size 784x76 >- RenderMenuList {SELECT} at (0,46) size 44x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)] >- RenderBlock (anonymous) at (1,1) size 42x28 >- RenderText at (5,5) size 8x17 >- text run at (5,5) width 8: "\x{DF}" >- RenderText {#text} at (44,52) size 4x17 >- text run at (44,52) width 4: " " >- RenderListBox {SELECT} at (48,0) size 37x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)] >- RenderText {#text} at (85,52) size 4x17 >- text run at (85,52) width 4: " " >- RenderInline {SPAN} at (89,52) size 28x17 >- RenderText {#text} at (89,52) size 28x17 >- text run at (89,52) width 28: "\x{DF} \x{DF}\x{DF}" >- RenderText {#text} at (0,0) size 0x0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 283754
:
473380
|
473381
|
473383