Changeset 179730 in webkit


Ignore:
Timestamp:
Feb 5, 2015, 5:15:51 PM (11 years ago)
Author:
Lucas Forschler
Message:

Rollout r179711 (179657 on trunk).

Location:
branches/safari-600.1.4.15-branch
Files:
2 deleted
5 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-600.1.4.15-branch/LayoutTests/ChangeLog

    r179724 r179730  
     12015-02-05  Lucas Forschler  <lforschler@apple.com>
     2
     3    Rollout r179711
     4
    152015-02-05  Lucas Forschler  <lforschler@apple.com>
    26
  • branches/safari-600.1.4.15-branch/Source/WebCore/ChangeLog

    r179724 r179730  
     12015-02-05  Lucas Forschler  <lforschler@apple.com>
     2
     3    Rollout r179711
     4
    152015-02-05  Lucas Forschler  <lforschler@apple.com>
    26
  • branches/safari-600.1.4.15-branch/Source/WebCore/platform/graphics/Font.cpp

    r179711 r179730  
    621621    // list of ranges.
    622622    CodePath result = Simple;
    623     bool previousCharacterIsEmojiGroupCandidate = false;
    624623    for (unsigned i = 0; i < len; i++) {
    625624        const UChar c = characters[i];
    626         if (c == zeroWidthJoiner && previousCharacterIsEmojiGroupCandidate)
    627             return Complex;
    628 
    629         previousCharacterIsEmojiGroupCandidate = false;
    630625        if (c < 0x2E5) // U+02E5 through U+02E9 (Modifier Letters : Tone letters) 
    631626            continue;
     
    747742            if (supplementaryCharacter <= 0x1F1FF)
    748743                return Complex;
    749    
    750             if (supplementaryCharacter >= 0x1F466 && supplementaryCharacter <= 0x1F469) {
    751                 previousCharacterIsEmojiGroupCandidate = true;
    752                 continue;
    753             }
     744
    754745            if (supplementaryCharacter < 0xE0100) // U+E0100 through U+E01EF Unicode variation selectors.
    755746                continue;
  • branches/safari-600.1.4.15-branch/Source/WebCore/platform/text/TextBreakIterator.cpp

    r179711 r179730  
    208208        "$Mal1    = [\\u0D15-\\u0D39];"    // Malayalam Letter A,...,Ha
    209209        "$RI      = [\\U0001F1E6-\\U0001F1FF];" // Emoji regional indicators
    210         "$ZWJ     = \\u200D;"               // Zero width joiner
    211         "$EmojiForModsAndSeqs = [\\U0001F466-\\U0001F469];" // Emoji that take Fitzpatrick modifiers AND participate in ZWJ sequences
    212         "$EmojiForModsOnly = [\\u261D \\u270A-\\u270C \\U0001F385 \\U0001F3C3-\\U0001F3C4 \\U0001F3C7 \\U0001F3CA \\U0001F442-\\U0001F443 \\U0001F446-\\U0001F450 \\U0001F46E-\\U0001F478 \\U0001F47C \\U0001F481-\\U0001F483 \\U0001F485-\\U0001F487 \\U0001F4AA \\U0001F645-\\U0001F647 \\U0001F64B-\\U0001F64F \\U0001F6B4-\\U0001F6B6 \\U0001F6C0];" // Emoji that take Fitzpatrick modifiers
    213         "$EmojiMods = [\\U0001F3FB-\\U0001F3FF];" // Fitzpatrick modifiers
    214210        "!!chain;"
    215211        "!!forward;"
     
    230226        "$Kan0 $KanV $Kan1;"               // Kannada Virama (forward)
    231227        "$Mal0 $MalV $Mal1;"               // Malayalam Virama (forward)
    232         "$ZWJ $EmojiForModsAndSeqs;"       // Don't break in emoji ZWJ sequences
    233         "[$EmojiForModsAndSeqs $EmojiForModsOnly] $EmojiMods;" // Don't break between relevant emoji and Fitzpatrick modifier
    234228        "!!reverse;"
    235229        "$LF $CR;"
     
    249243        "$Kan1 $KanV $Kan0;"               // Kannada Virama (backward)
    250244        "$Mal1 $MalV $Mal0;"               // Malayalam Virama (backward)
    251         "$EmojiForModsAndSeqs $ZWJ;"       // Don't break in emoji ZWJ sequences
    252         "$EmojiMods [$EmojiForModsAndSeqs $EmojiForModsOnly];" // Don't break between relevant emoji and Fitzpatrick modifier
    253245        "!!safe_reverse;"
    254246        "!!safe_forward;";
  • branches/safari-600.1.4.15-branch/Source/WebCore/rendering/RenderText.cpp

    r179711 r179730  
    13811381};
    13821382
    1383 static inline bool isHangulLVT(UChar32 character)
     1383inline bool isHangulLVT(UChar32 character)
    13841384{
    13851385    return (character - HANGUL_SYLLABLE_START) % HANGUL_JONGSEONG_COUNT;
    13861386}
    13871387
    1388 static inline bool isMark(UChar32 character)
    1389 {
    1390     int8_t charType = u_charType(character);
     1388inline bool isMark(UChar32 c)
     1389{
     1390    int8_t charType = u_charType(c);
    13911391    return charType == U_NON_SPACING_MARK || charType == U_ENCLOSING_MARK || charType == U_COMBINING_SPACING_MARK;
    13921392}
    13931393
    1394 static inline bool isRegionalIndicator(UChar32 character)
     1394inline bool isRegionalIndicator(UChar32 c)
    13951395{
    13961396    // National flag emoji each consists of a pair of regional indicator symbols.
    1397     return 0x1F1E6 <= character && character <= 0x1F1FF;
    1398 }
    1399 
    1400 static inline bool isEmojiGroupCandidate(UChar32 character)
    1401 {
    1402     return character >= 0x1F466 && character <= 0x1F469;
    1403 }
    1404 
    1405 static inline bool isEmojiModifier(UChar32 character)
    1406 {
    1407     return character >= 0x1F3FB && character <= 0x1F3FF;
     1397    return 0x1F1E6 <= c && c <= 0x1F1FF;
    14081398}
    14091399
     
    14171407    UChar32 character;
    14181408    bool sawRegionalIndicator = false;
    1419     bool sawEmojiGroupCandidate = false;
    1420     bool sawEmojiModifier = false;
    1421    
    14221409    while (current > 0) {
    14231410        if (U16_IS_TRAIL(text[--current]))
     
    14271414
    14281415        UChar32 character = text.characterStartingAt(current);
    1429 
    1430         if (sawEmojiGroupCandidate) {
    1431             sawEmojiGroupCandidate = false;
    1432             if (character == zeroWidthJoiner)
    1433                 continue;
    1434             // We could have two emoji group candidates without a joiner in between.
    1435             // Those should not be treated as a group.
    1436             U16_FWD_1_UNSAFE(text, current);
    1437             break;
    1438         }
    1439 
    1440         if (sawEmojiModifier) {
    1441             if (isEmojiModifier(character))
    1442                 U16_FWD_1_UNSAFE(text, current);
    1443             break;
    1444         }
    14451416
    14461417        if (sawRegionalIndicator) {
     
    14601431        if (isRegionalIndicator(character)) {
    14611432            sawRegionalIndicator = true;
    1462             continue;
    1463         }
    1464        
    1465         if (isEmojiModifier(character)) {
    1466             sawEmojiModifier = true;
    1467             continue;
    1468         }
    1469 
    1470         if (isEmojiGroupCandidate(character)) {
    1471             sawEmojiGroupCandidate = true;
    14721433            continue;
    14731434        }
Note: See TracChangeset for help on using the changeset viewer.