[webkit-changes] [WebKit/WebKit] cdafcb: [Cocoa] Hook up word-boundary-detection to CFStrin...

Myles C. Maxfield noreply at github.com
Sun Jun 11 05:33:33 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: cdafcb3c357a848d22093e4417038ff3073a3825
      https://github.com/WebKit/WebKit/commit/cdafcb3c357a848d22093e4417038ff3073a3825
  Author: Myles C. Maxfield <mmaxfield at apple.com>
  Date:   2023-06-11 (Sun, 11 Jun 2023)

  Changed paths:
    M Source/WTF/wtf/text/TextBreakIterator.cpp
    M Source/WTF/wtf/text/TextBreakIterator.h
    M Source/WTF/wtf/text/cocoa/TextBreakIteratorInternalICUCocoa.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
    M Source/WebCore/layout/formattingContexts/inline/text/TextUtil.cpp
    M Source/WebCore/layout/formattingContexts/inline/text/TextUtil.h
    M Source/WebCore/rendering/RenderText.cpp
    M Source/WebCore/rendering/RenderText.h
    M Source/WebCore/rendering/line/BreakingContext.h

  Log Message:
  -----------
  [Cocoa] Hook up word-boundary-detection to CFStringTokenizer
https://bugs.webkit.org/show_bug.cgi?id=257933
<rdar://problem/110563559>

Reviewed by Tim Nguyen.

We added parsing support so that we can hook it up to CFStringTokenizer, which provides
a linguistically-sophisticated line breaking algorithm. This patch simply hooks them up
together.

The behavior differences are extremely minor right now, because Core Foundation is still
working on rdar://problem/110235041. When they fix that, WebKit will automatically
progress.

* Source/WTF/wtf/text/TextBreakIterator.cpp:
(WTF::TextBreakIterator::mapModeToBackingIterator):
(WTF::TextBreakIterator::TextBreakIterator):
* Source/WTF/wtf/text/TextBreakIterator.h:
(WTF::TextBreakIterator::contentAnalysis const):
(WTF::TextBreakIteratorCache::take):
(WTF::CachedTextBreakIterator::CachedTextBreakIterator):
(WTF::CachedLineBreakIteratorFactory::CachedLineBreakIteratorFactory):
(WTF::CachedLineBreakIteratorFactory::contentAnalysis const):
(WTF::CachedLineBreakIteratorFactory::get):
(WTF::CachedLineBreakIteratorFactory::resetStringAndReleaseIterator):
* Source/WTF/wtf/text/cocoa/TextBreakIteratorInternalICUCocoa.cpp:
(WTF::TextBreakIterator::mapModeToBackingIterator):
(WTF::TextBreakIterator::TextBreakIterator):
* Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp:
(WebCore::Layout::InlineItemsBuilder::handleTextContent):
* Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::endsWithSoftWrapOpportunity):
* Source/WebCore/layout/formattingContexts/inline/text/TextUtil.cpp:
(WebCore::Layout::TextUtil::contentAnalysis):
* Source/WebCore/layout/formattingContexts/inline/text/TextUtil.h:
* Source/WebCore/rendering/RenderText.cpp:
(WebCore::mapWordBoundaryDetectionToContentAnalysis):
(WebCore::RenderText::computePreferredLogicalWidths):
* Source/WebCore/rendering/RenderText.h:
* Source/WebCore/rendering/line/BreakingContext.h:
(WebCore::BreakingContext::handleText):

Canonical link: https://commits.webkit.org/265059@main




More information about the webkit-changes mailing list