diff options
author | Eskil Abrahamsen Blomfeldt <[email protected]> | 2025-01-14 07:51:09 +0100 |
---|---|---|
committer | Eskil Abrahamsen Blomfeldt <[email protected]> | 2025-01-16 14:54:26 +0100 |
commit | 41199de2d8bb9626e6569a6734ec805f56a5541d (patch) | |
tree | a524a665916b14047685a03eb69ccc054e748013 | |
parent | 81e596c24fc106439ce4135478a2d18d23fdbaac (diff) |
Add logging output to emoji segmenter
Change-Id: I33291128d27131ea77e8199862faf1dbcd5bf68f
Reviewed-by: Eirik Aavitsland <[email protected]>
-rw-r--r-- | src/gui/text/qtextengine.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp index a930f103c60..293d4485bb8 100644 --- a/src/gui/text/qtextengine.cpp +++ b/src/gui/text/qtextengine.cpp @@ -26,6 +26,8 @@ QT_BEGIN_NAMESPACE +Q_STATIC_LOGGING_CATEGORY(lcEmojiSegmenter, "qt.text.emojisegmenter") + static const float smallCapsFraction = 0.7f; namespace { @@ -1989,6 +1991,8 @@ void QTextEngine::itemize() const #if !defined(QT_NO_EMOJISEGMENTER) const bool disableEmojiSegmenter = QFontEngine::disableEmojiSegmenter() || option.flags().testFlag(QTextOption::DisableEmojiParsing); + qCDebug(lcEmojiSegmenter) << "Emoji segmenter disabled:" << disableEmojiSegmenter; + QVarLengthArray<CharacterCategory> categorizedString; if (!disableEmojiSegmenter) { // Parse emoji sequences @@ -2033,6 +2037,10 @@ void QTextEngine::itemize() const categorizedString.append(CharacterCategory::EMOJI_TEXT_PRESENTATION); else categorizedString.append(CharacterCategory::OTHER); + + qCDebug(lcEmojiSegmenter) << "Checking character" << (isSurrogate ? (i - 1) : i) + << ", ucs4 ==" << ucs4 + << ", category:" << categorizedString.last(); } } #endif @@ -2054,8 +2062,14 @@ void QTextEngine::itemize() const while (uc < e) { #if !defined(QT_NO_EMOJISEGMENTER) // Find next emoji sequence - if (!disableEmojiSegmenter && categoryIt == nextIt) + if (!disableEmojiSegmenter && categoryIt == nextIt) { nextIt = scan_emoji_presentation(categoryIt, categoriesEnd, &isEmoji, &hasVs); + + qCDebug(lcEmojiSegmenter) << "Checking character" << (categoryIt - categoriesStart) + << ", sequence length:" << (nextIt - categoryIt) + << ", is emoji sequence:" << isEmoji; + + } #endif switch (*uc) { |