From: Eunki, Hong Date: Fri, 3 Jun 2022 09:10:49 +0000 (+0900) Subject: Sync UTC with text shape method. X-Git-Tag: dali_2.1.26~12 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=351aecc36532fc5a38e14e670b67ac0cb657684c;hp=8e5e638ff3a661948053e83d0a4c5f053a229476;ds=sidebyside Sync UTC with text shape method. Harfbuzz shape algorithm have some bug if we use Emoji. So, make UTC don't check advance value if we test Emoji. Change-Id: I502c6b9ed4233b27723d9f379c958fb718d9c928 Signed-off-by: Eunki, Hong --- diff --git a/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Shaping.cpp b/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Shaping.cpp index 80624a8..301f191 100755 --- a/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Shaping.cpp +++ b/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Shaping.cpp @@ -87,7 +87,7 @@ bool IsEqualGlyph(const GlyphInfoData& glyphData, const GlyphInfo& glyph) { return false; } - if(fabsf(glyphData.advance - floor(glyph.advance)) > Math::MACHINE_EPSILON_1000) + if(glyphData.advance >= 0.0f && fabsf(glyphData.advance - floor(glyph.advance)) > Math::MACHINE_EPSILON_1000) { return false; } @@ -961,9 +961,10 @@ int UtcDaliTextShapeEmojiSequences(void) bool sizeDefined = false; // variation selector 16 (Emoji) + // Note : Non-scalable font's advance value is undefined. See https://github.com/harfbuzz/harfbuzz/discussions/3023. 2022-06-03 updated. struct GlyphInfoData glyphsVS16[] = { - {2u, 74u, 0.f, 0.f, 0.f, 0.f, 39.0f, 0.f, false, false}, + {2u, 74u, 0.f, 0.f, 0.f, 0.f, -1.0f /* Special value that we don't check it */, 0.f, false, false}, }; CharacterIndex characterIndicesVS16[] = {0u, 1u}; Length charactersPerGlyphVS16[] = {2u};