Title: [222591] branches/safari-604-branch

Diff

Modified: branches/safari-604-branch/LayoutTests/ChangeLog (222590 => 222591)


--- branches/safari-604-branch/LayoutTests/ChangeLog	2017-09-28 00:44:28 UTC (rev 222590)
+++ branches/safari-604-branch/LayoutTests/ChangeLog	2017-09-28 00:46:37 UTC (rev 222591)
@@ -1,3 +1,18 @@
+2017-09-27  Jason Marcell  <[email protected]>
+
+        Cherry-pick r222576. rdar://problem/34553953
+
+    2017-09-27  Myles C. Maxfield  <[email protected]>
+
+            "Tag" codepoints require the complex text codepath
+            https://bugs.webkit.org/show_bug.cgi?id=177251
+            <rdar://problem/34384001>
+
+            Reviewed by David Hyatt.
+
+            * fast/text/flag-codepoint-expected.html: Added.
+            * fast/text/flag-codepoint.html: Added.
+
 2017-09-26  Jason Marcell  <[email protected]>
 
         Cherry-pick r222539. rdar://problem/34205774

Added: branches/safari-604-branch/LayoutTests/fast/text/flag-codepoint-expected.html (0 => 222591)


--- branches/safari-604-branch/LayoutTests/fast/text/flag-codepoint-expected.html	                        (rev 0)
+++ branches/safari-604-branch/LayoutTests/fast/text/flag-codepoint-expected.html	2017-09-28 00:46:37 UTC (rev 222591)
@@ -0,0 +1,8 @@
+<html>
+<head>
+<meta charset="utf-8">
+</head>
+<body>
+This test makes sure that combining grapheme clusters with Tag codepoints (U+E0000 - U+E007F) join correctly. The test passes if you don't see anything below.
+</body>
+</html>

Added: branches/safari-604-branch/LayoutTests/fast/text/flag-codepoint.html (0 => 222591)


--- branches/safari-604-branch/LayoutTests/fast/text/flag-codepoint.html	                        (rev 0)
+++ branches/safari-604-branch/LayoutTests/fast/text/flag-codepoint.html	2017-09-28 00:46:37 UTC (rev 222591)
@@ -0,0 +1,16 @@
+<html>
+<head>
+<meta charset="utf-8">
+</head>
+<body>
+This test makes sure that combining grapheme clusters with Tag codepoints (U+E0000 - U+E007F) join correctly. The test passes if you don't see anything below.
+<div style="position: relative; font-size: 100px;">
+<div style="display: -webkit-box;">
+<div style="word-break: break-word;">
+🏴󠁧󠁢󠁥󠁮󠁧󠁿
+</div>
+</div>
+<div style="position: absolute; left: 0px; top: 0px; width: 750px; height: 120px; background: white;"></div>
+</div>
+</body>
+</html>

Modified: branches/safari-604-branch/Source/WebCore/ChangeLog (222590 => 222591)


--- branches/safari-604-branch/Source/WebCore/ChangeLog	2017-09-28 00:44:28 UTC (rev 222590)
+++ branches/safari-604-branch/Source/WebCore/ChangeLog	2017-09-28 00:46:37 UTC (rev 222591)
@@ -1,3 +1,26 @@
+2017-09-27  Jason Marcell  <[email protected]>
+
+        Cherry-pick r222576. rdar://problem/34553953
+
+    2017-09-27  Myles C. Maxfield  <[email protected]>
+
+            "Tag" codepoints require the complex text codepath
+            https://bugs.webkit.org/show_bug.cgi?id=177251
+            <rdar://problem/34384001>
+
+            Reviewed by David Hyatt.
+
+            Previously, Tag codepoints (U+E0000 - U+E007F) weren't triggering the
+            complex text codepath.
+
+            Eventually, we should migrate the default from simple to complex. I'll do
+            that in a separate patch.
+
+            Test: fast/text/flag-codepoint.html
+
+            * platform/graphics/FontCascade.cpp:
+            (WebCore::FontCascade::characterRangeCodePath):
+
 2017-09-26  Jason Marcell  <[email protected]>
 
         Cherry-pick r222539. rdar://problem/34205774

Modified: branches/safari-604-branch/Source/WebCore/platform/graphics/FontCascade.cpp (222590 => 222591)


--- branches/safari-604-branch/Source/WebCore/platform/graphics/FontCascade.cpp	2017-09-28 00:44:28 UTC (rev 222590)
+++ branches/safari-604-branch/Source/WebCore/platform/graphics/FontCascade.cpp	2017-09-28 00:46:37 UTC (rev 222591)
@@ -844,6 +844,11 @@
                 previousCharacterIsEmojiGroupCandidate = true;
                 continue;
             }
+
+            if (supplementaryCharacter < 0xE0000)
+                continue;
+            if (supplementaryCharacter < 0xE0080) // Tags
+                return Complex;
             if (supplementaryCharacter < 0xE0100) // U+E0100 through U+E01EF Unicode variation selectors.
                 continue;
             if (supplementaryCharacter <= 0xE01EF)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to