Skip to content

Commit

Permalink
Enable text shaping by default on Windows
Browse files Browse the repository at this point in the history
https://bugs.webkit.org/show_bug.cgi?id=215318

Reviewed by Don Olmstead.

Use the complex text code path by default for Windows port.

* LayoutTests/platform/wincairo/TestExpectations:
* LayoutTests/platform/wincairo/...: Omitted layout test rebaselining.
* Source/WebCore/platform/graphics/FontCascade.h:

Canonical link: https://commits.webkit.org/261394@main
  • Loading branch information
fujii committed Mar 9, 2023
1 parent fd458c3 commit d6c00e1
Show file tree
Hide file tree
Showing 2,178 changed files with 37,006 additions and 36,805 deletions.
12 changes: 8 additions & 4 deletions LayoutTests/platform/wincairo/TestExpectations
Expand Up @@ -1860,7 +1860,6 @@ fast/text/international/system-language/declarative-language.html [ Failure ]
fast/text/international/system-language/han-quotes.html [ ImageOnlyFailure ]
fast/text/international/vertical-text-glyph-test.html [ Failure ]
fast/text/international/vertical-text-metrics-test.html [ Failure ]
fast/text/international/vietnamese-nfd.html [ ImageOnlyFailure ]
fast/text/international/wrap-CJK-001.html [ Failure ]
fast/text/justify-ideograph-complex.html [ Failure ]
fast/text/justify-ideograph-simple.html [ Failure ]
Expand Down Expand Up @@ -1895,7 +1894,6 @@ fast/text/shadow-translucent-fill.html [ Failure ]
fast/text/small-caps-web-font.html [ ImageOnlyFailure ]
fast/text/small-line-height.html [ ImageOnlyFailure ]
fast/text/soft-hyphen-as-first-breaking-opportunity.html [ ImageOnlyFailure ]
fast/text/space-width.html [ ImageOnlyFailure ]
fast/text/svg-font-face-with-kerning.html [ Failure ]
fast/text/synthetic-bold-transformed.html [ ImageOnlyFailure ]
fast/text/system-font-fallback-emoji.html [ Failure ]
Expand Down Expand Up @@ -2038,8 +2036,6 @@ webgl/max-active-contexts-gc.html [ Failure Pass ]
webgl/max-active-contexts-webglcontextlost-prevent-default.html [ Failure ]
webgl/multiple-context-losses.html [ Failure ]

fast/css/tab-size.html [ ImageOnlyFailure ]

fast/css3-text/css3-text-decoration/text-decoration-dashed.html [ ImageOnlyFailure ]
fast/css3-text/css3-text-decoration/text-decoration-dotted-dashed.html [ ImageOnlyFailure ]
fast/css3-text/css3-text-decoration/text-decoration-dotted.html [ ImageOnlyFailure ]
Expand Down Expand Up @@ -2615,3 +2611,11 @@ http/tests/xmlhttprequest/resetting-timeout-to-zero.html [ Failure Pass ]
http/tests/xmlhttprequest/timeout-greater-than-default-network-timeout.html [ Failure Pass ]

fast/text/backslash-to-yen-sign.html [ Pass Failure ]

css2.1/20110323/overflow-applies-to-009.htm [ ImageOnlyFailure ]
fast/text/all-small-caps-whitespace.html [ ImageOnlyFailure ]
fast/text/isolate-ignore.html [ ImageOnlyFailure ]
fast/text/multiple-renderers-with-hypen-on-boundary.html [ ImageOnlyFailure ]
fast/text/soft-hyphen-min-preferred-width.html [ ImageOnlyFailure ]
fast/text/whitespace/inline-whitespace-wrapping-8.html [ ImageOnlyFailure ]
webkit.org/b/253547 fast/text/midword-break-before-surrogate-pair.html [ Skip ] # Crash for Debug, Timeout for Release
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x162
RenderBlock {HTML} at (0,0) size 800x162
RenderBody {BODY} at (8,16) size 784x138
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 384x19
text run at (0,0) width 384: "At the end of the test the green box should obscure the red box."
RenderText {#text} at (0,0) size 399x19
text run at (0,0) width 399: "At the end of the test the green box should obscure the red box."
RenderBlock {DIV} at (0,138) size 784x0
layer at (8,52) size 402x102
RenderBlock (relative positioned) {DIV} at (0,36) size 402x102 [border: (1px solid #000000)]
Expand Down
Expand Up @@ -4,9 +4,9 @@ layer at (0,0) size 800x136
RenderBlock {HTML} at (0,0) size 800x136
RenderBody {BODY} at (8,8) size 784x120
RenderBlock {DIV} at (0,100) size 784x20
RenderText {#text} at (0,0) size 540x19
text run at (0,0) width 540: "PASS - \"webkitTransform.4\" property for \"box\" element at 1s saw something close to: 50"
RenderBR {BR} at (540,0) size 0x19
RenderText {#text} at (0,0) size 565x19
text run at (0,0) width 565: "PASS - \"webkitTransform.4\" property for \"box\" element at 1s saw something close to: 50"
RenderBR {BR} at (565,0) size 0x19
layer at (8,8) size 784x100
RenderBlock (relative positioned) {DIV} at (0,0) size 784x100
layer at (58,8) size 100x100
Expand Down
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x162
RenderBlock {HTML} at (0,0) size 800x162
RenderBody {BODY} at (8,16) size 784x138
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 384x19
text run at (0,0) width 384: "At the end of the test the green box should obscure the red box."
RenderText {#text} at (0,0) size 399x19
text run at (0,0) width 399: "At the end of the test the green box should obscure the red box."
RenderBlock {DIV} at (0,138) size 784x0
layer at (8,52) size 402x102
RenderBlock (relative positioned) {DIV} at (0,36) size 402x102 [border: (1px solid #000000)]
Expand Down
Expand Up @@ -4,12 +4,12 @@ layer at (0,0) size 800x240
RenderBlock {HTML} at (0,0) size 800x240
RenderBody {BODY} at (0,0) size 800x240
RenderBlock {DIV} at (0,200) size 800x40
RenderText {#text} at (0,0) size 471x19
text run at (0,0) width 471: "PASS - \"left\" property for \"box1\" element at 0.5s saw something close to: 100"
RenderBR {BR} at (471,0) size 0x19
RenderText {#text} at (0,20) size 568x19
text run at (0,20) width 568: "PASS - \"webkitTransform.4\" property for \"box2\" element at 0.5s saw something close to: 100"
RenderBR {BR} at (568,20) size 0x19
RenderText {#text} at (0,0) size 493x19
text run at (0,0) width 493: "PASS - \"left\" property for \"box1\" element at 0.5s saw something close to: 100"
RenderBR {BR} at (493,0) size 0x19
RenderText {#text} at (0,20) size 593x19
text run at (0,20) width 593: "PASS - \"webkitTransform.4\" property for \"box2\" element at 0.5s saw something close to: 100"
RenderBR {BR} at (593,20) size 0x19
layer at (100,0) size 100x100
RenderBlock (positioned) {DIV} at (100,0) size 100x100 [bgcolor=#FF0000]
layer at (100,100) size 100x100
Expand Down
Expand Up @@ -4,12 +4,12 @@ layer at (0,0) size 800x240
RenderBlock {HTML} at (0,0) size 800x240
RenderBody {BODY} at (0,0) size 800x240
RenderBlock {DIV} at (0,200) size 800x40
RenderText {#text} at (0,0) size 471x19
text run at (0,0) width 471: "PASS - \"left\" property for \"box1\" element at 1.5s saw something close to: 100"
RenderBR {BR} at (471,0) size 0x19
RenderText {#text} at (0,20) size 568x19
text run at (0,20) width 568: "PASS - \"webkitTransform.4\" property for \"box2\" element at 1.5s saw something close to: 100"
RenderBR {BR} at (568,20) size 0x19
RenderText {#text} at (0,0) size 493x19
text run at (0,0) width 493: "PASS - \"left\" property for \"box1\" element at 1.5s saw something close to: 100"
RenderBR {BR} at (493,0) size 0x19
RenderText {#text} at (0,20) size 593x19
text run at (0,20) width 593: "PASS - \"webkitTransform.4\" property for \"box2\" element at 1.5s saw something close to: 100"
RenderBR {BR} at (593,20) size 0x19
layer at (100,0) size 100x100
RenderBlock (positioned) {DIV} at (100,0) size 100x100 [bgcolor=#FF0000]
layer at (100,100) size 100x100
Expand Down
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x162
RenderBlock {HTML} at (0,0) size 800x162
RenderBody {BODY} at (8,16) size 784x138
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 384x19
text run at (0,0) width 384: "At the end of the test the green box should obscure the red box."
RenderText {#text} at (0,0) size 399x19
text run at (0,0) width 399: "At the end of the test the green box should obscure the red box."
RenderBlock {DIV} at (0,138) size 784x0
layer at (8,52) size 402x102
RenderBlock (relative positioned) {DIV} at (0,36) size 402x102 [border: (1px solid #000000)]
Expand Down
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x162
RenderBlock {HTML} at (0,0) size 800x162
RenderBody {BODY} at (8,16) size 784x138
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 384x19
text run at (0,0) width 384: "At the end of the test the green box should obscure the red box."
RenderText {#text} at (0,0) size 399x19
text run at (0,0) width 399: "At the end of the test the green box should obscure the red box."
RenderBlock {DIV} at (0,138) size 784x0
layer at (8,52) size 402x102
RenderBlock (relative positioned) {DIV} at (0,36) size 402x102 [border: (1px solid #000000)]
Expand Down
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x550
RenderBlock {HTML} at (0,0) size 800x550
RenderBody {BODY} at (8,16) size 784x526 [color=#FFFFFF] [bgcolor=#000000]
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 195x19
text run at (0,0) width 195: "Images should all look the same."
RenderText {#text} at (0,0) size 205x19
text run at (0,0) width 205: "Images should all look the same."
RenderBlock {DIV} at (0,36) size 784x245
RenderImage {IMG} at (0,0) size 360x240
RenderText {#text} at (360,225) size 4x19
Expand Down
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x85
RenderBlock {HTML} at (0,0) size 800x85
RenderBody {BODY} at (8,16) size 784x61
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 152x19
text run at (0,0) width 152: "This test should not crash"
RenderText {#text} at (0,0) size 160x19
text run at (0,0) width 160: "This test should not crash"
RenderBlock (anonymous) at (0,36) size 784x25
RenderText {#text} at (0,0) size 0x0
layer at (8,52) size 20x20
Expand Down
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x600
RenderBlock {HTML} at (0,0) size 800x600
RenderBody {BODY} at (8,8) size 784x576
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 245x19
text run at (0,0) width 245: "You should see one green square below."
RenderText {#text} at (0,0) size 253x19
text run at (0,0) width 253: "You should see one green square below."
layer at (20,40) size 100x100
RenderBlock (positioned) {DIV} at (20,40) size 100x100 [bgcolor=#FF0000]
layer at (20,40) size 100x100
Expand Down
Expand Up @@ -4,53 +4,55 @@ layer at (0,0) size 785x756
RenderBlock {HTML} at (0,0) size 785x756
RenderBody {BODY} at (8,21) size 769x119
RenderBlock {H1} at (0,0) size 769x37
RenderText {#text} at (0,0) size 387x36
text run at (0,0) width 387: "Image optimisation in layers"
RenderText {#text} at (0,0) size 389x36
text run at (0,0) width 389: "Image optimisation in layers"
RenderBlock {P} at (0,58) size 769x61
RenderText {#text} at (0,0) size 747x59
text run at (0,0) width 564: "This test exercises direct compositing of images with hardware acceleration. The visual results "
text run at (564,0) width 30: "using"
text run at (0,20) width 641: "ACCELERATED_COMPOSITING and regular TOT should be identical. Running this test manually with "
text run at (641,20) width 106: "the correct debug"
text run at (0,40) width 379: "options will show which elements are directly composited. See "
RenderInline {A} at (0,0) size 291x19 [color=#0000EE]
RenderText {#text} at (379,40) size 291x19
text run at (379,40) width 291: "https://bugs.webkit.org/show_bug.cgi?id=23361"
text run at (0,0) width 595: "This test exercises direct compositing of images with hardware acceleration. The visual results "
text run at (595,0) width 34: "using"
text run at (0,20) width 681: "ACCELERATED_COMPOSITING and regular TOT should be identical. Running this test manually with "
text run at (681,20) width 66: "the correct"
text run at (0,40) width 442: "debug options will show which elements are directly composited. See "
RenderInline {A} at (0,0) size 305x19 [color=#0000EE]
RenderText {#text} at (442,40) size 305x19
text run at (442,40) width 305: "https://bugs.webkit.org/show_bug.cgi?id=23361"
RenderText {#text} at (0,0) size 0x0
RenderBlock (floating) {DIV} at (0,134) size 260x201
RenderText {#text} at (150,0) size 101x79
text run at (150,0) width 101: "Basic image - no"
text run at (150,20) width 81: "style - can be"
text run at (150,40) width 44: "directly"
text run at (150,60) width 70: "composited"
RenderText {#text} at (150,0) size 106x79
text run at (150,0) width 106: "Basic image - no"
text run at (150,20) width 83: "style - can be"
text run at (150,40) width 47: "directly"
text run at (150,60) width 72: "composited"
RenderBlock (floating) {DIV} at (260,134) size 260x201
RenderText {#text} at (160,0) size 97x79
text run at (160,0) width 97: "5px blue border"
text run at (160,20) width 87: "- can NOT be"
text run at (160,40) width 44: "directly"
text run at (160,60) width 70: "composited"
RenderText {#text} at (160,0) size 100x79
text run at (160,0) width 100: "5px blue border"
text run at (160,20) width 88: "- can NOT be"
text run at (160,40) width 47: "directly"
text run at (160,60) width 72: "composited"
RenderBlock (floating) {DIV} at (0,334) size 260x201
RenderText {#text} at (160,0) size 100x59
text run at (160,0) width 75: "margin - can"
text run at (160,20) width 100: "NOT be directly"
text run at (160,40) width 70: "composited"
RenderText {#text} at (160,0) size 79x79
text run at (160,0) width 79: "margin - can"
text run at (160,20) width 53: "NOT be"
text run at (160,40) width 47: "directly"
text run at (160,60) width 72: "composited"
RenderBlock (floating) {DIV} at (260,334) size 260x201
RenderText {#text} at (150,0) size 104x59
text run at (150,0) width 104: "solid background"
text run at (150,20) width 98: "- can be directly"
text run at (150,40) width 70: "composited"
RenderText {#text} at (150,0) size 109x59
text run at (150,0) width 109: "solid background"
text run at (150,20) width 101: "- can be directly"
text run at (150,40) width 72: "composited"
RenderBlock (floating) {DIV} at (0,534) size 260x201
RenderText {#text} at (150,0) size 107x79
text run at (150,0) width 72: "background"
text run at (150,20) width 107: "image - can NOT"
text run at (150,40) width 63: "be directly"
text run at (150,60) width 70: "composited"
RenderText {#text} at (150,0) size 104x79
text run at (150,0) width 75: "background"
text run at (150,20) width 73: "image - can"
text run at (150,40) width 104: "NOT be directly"
text run at (150,60) width 72: "composited"
RenderBlock (floating) {DIV} at (260,534) size 260x201
RenderText {#text} at (150,0) size 108x79
text run at (150,0) width 66: "rotated but"
text run at (150,20) width 108: "otherwise no style"
text run at (150,40) width 98: "- can be directly"
text run at (150,60) width 70: "composited"
RenderText {#text} at (150,0) size 83x99
text run at (150,0) width 67: "rotated but"
text run at (150,20) width 81: "otherwise no"
text run at (150,40) width 83: "style - can be"
text run at (150,60) width 47: "directly"
text run at (150,80) width 72: "composited"
layer at (8,156) size 150x150
RenderImage {IMG} at (0,0) size 150x150
layer at (268,156) size 160x160
Expand Down
Expand Up @@ -4,14 +4,14 @@ layer at (0,0) size 800x298
RenderBlock {HTML} at (0,0) size 800x298
RenderBody {BODY} at (8,16) size 784x274
RenderBlock {P} at (0,0) size 784x20
RenderInline {A} at (0,0) size 291x19 [color=#0000EE]
RenderText {#text} at (0,0) size 291x19
text run at (0,0) width 291: "https://bugs.webkit.org/show_bug.cgi?id=26095"
RenderInline {A} at (0,0) size 305x19 [color=#0000EE]
RenderText {#text} at (0,0) size 305x19
text run at (0,0) width 305: "https://bugs.webkit.org/show_bug.cgi?id=26095"
RenderBlock {P} at (0,36) size 784x20
RenderText {#text} at (0,0) size 376x19
text run at (0,0) width 376: "Tests that a 3D transform on a generated node does not crash."
RenderText {#text} at (0,0) size 387x19
text run at (0,0) width 387: "Tests that a 3D transform on a generated node does not crash."
RenderBlock {DIV} at (0,72) size 202x202 [border: (1px solid #000000)]
layer at (9,89) size 200x200
RenderBlock (generated) at (1,1) size 200x200
RenderText at (0,0) size 63x19
text run at (0,0) width 63: "Generated"
RenderText at (0,0) size 65x19
text run at (0,0) width 65: "Generated"
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x600
RenderBlock {HTML} at (0,0) size 800x600
RenderBody {BODY} at (8,8) size 784x542
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 314x19
text run at (0,0) width 314: "You should see two green boxes below, with no red"
RenderText {#text} at (0,0) size 326x19
text run at (0,0) width 326: "You should see two green boxes below, with no red"
layer at (58,78) size 120x120
RenderBlock (relative positioned) {DIV} at (50,70) size 120x120 [border: (1px solid #000000)]
layer at (69,89) size 100x100
Expand Down
Expand Up @@ -4,8 +4,8 @@ layer at (0,0) size 800x600
RenderBlock {HTML} at (0,0) size 800x600
RenderBody {BODY} at (8,8) size 784x584
RenderBlock {P} at (0,0) size 784x20
RenderText {#text} at (0,0) size 489x19
text run at (0,0) width 489: "The layering and positions of the boxes should not be affected by oveflow:hidden."
RenderText {#text} at (0,0) size 518x19
text run at (0,0) width 518: "The layering and positions of the boxes should not be affected by oveflow:hidden."
RenderBlock (anonymous) at (0,36) size 784x475
RenderText {#text} at (320,305) size 4x19
text run at (320,305) width 4: " "
Expand All @@ -24,15 +24,15 @@ layer at (50,301) size 100x100
layer at (68,259) size 200x200 layerType: foreground only
RenderBlock (relative positioned) {DIV} at (60,215) size 200x200 [color=#0000FF] [bgcolor=#FFFFFFCC] [border: (10px solid #000000)]
RenderText {#text} at (30,31) size 126x82
text run at (30,31) width 60: "Box"
text run at (30,31) width 59: "Box"
text run at (30,73) width 126: "contents"
RenderText {#text} at (0,0) size 0x0
RenderText {#text} at (0,0) size 0x0
layer at (158,349) size 150x150
RenderBlock (positioned) zI: 1 {DIV} at (90,90) size 150x150 [color=#808080] [bgcolor=#C8C880] [border: (2px solid #000000)]
RenderText zI: 1 {#text} at (22,23) size 87x82
RenderText zI: 1 {#text} at (22,23) size 85x82
text run at (22,23) width 33: "In"
text run at (22,65) width 87: "Front"
text run at (22,65) width 85: "Front"
layer at (392,104) size 200x200 clip at (402,114) size 180x180 scrollWidth 230 scrollHeight 230 layerType: background only
layer at (352,64) size 150x150 backgroundClip at (402,114) size 180x180 clip at (402,114) size 180x180
RenderBlock (positioned) zI: -1 {DIV} at (-40,-40) size 150x150 [color=#808080] [bgcolor=#C86464] [border: (2px solid #000000)]
Expand All @@ -47,12 +47,12 @@ layer at (374,146) size 100x100 backgroundClip at (402,114) size 180x180 clip at
layer at (392,104) size 200x200 clip at (402,114) size 180x180 scrollWidth 230 scrollHeight 230 layerType: foreground only
RenderBlock (relative positioned) {DIV} at (384,60) size 200x200 [color=#0000FF] [bgcolor=#FFFFFFCC] [border: (10px solid #000000)]
RenderText {#text} at (30,31) size 126x82
text run at (30,31) width 60: "Box"
text run at (30,31) width 59: "Box"
text run at (30,73) width 126: "contents"
RenderText {#text} at (0,0) size 0x0
RenderText {#text} at (0,0) size 0x0
layer at (482,194) size 150x150 backgroundClip at (402,114) size 180x180 clip at (402,114) size 180x180
RenderBlock (positioned) zI: 1 {DIV} at (90,90) size 150x150 [color=#808080] [bgcolor=#C8C880] [border: (2px solid #000000)]
RenderText zI: 1 {#text} at (22,23) size 87x82
RenderText zI: 1 {#text} at (22,23) size 85x82
text run at (22,23) width 33: "In"
text run at (22,65) width 87: "Front"
text run at (22,65) width 85: "Front"

0 comments on commit d6c00e1

Please sign in to comment.