⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 269153 in webkit


Ignore:
Timestamp:
Oct 29, 2020, 10:21:09 AM (6 years ago)
Author:
Antti Koivisto
Message:

[LFC][Integration] Rename text run localStart/EndOffset to start/end
https://bugs.webkit.org/show_bug.cgi?id=218344

Reviewed by Zalan Bujtas.

There is no danger of confusion and these are called just start/end elsewhere.

  • dom/Position.cpp:

(WebCore::Position::upstream const):
(WebCore::Position::downstream const):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::handleTextRun):

  • editing/VisibleUnits.cpp:

(WebCore::startPositionForLine):
(WebCore::endPositionForLine):

  • layout/integration/LayoutIntegrationRunIterator.h:

(WebCore::LayoutIntegration::PathTextRun::start const):
(WebCore::LayoutIntegration::PathTextRun::end const):
(WebCore::LayoutIntegration::PathTextRun::localStartOffset const): Deleted.
(WebCore::LayoutIntegration::PathTextRun::localEndOffset const): Deleted.

  • layout/integration/LayoutIntegrationRunIteratorLegacyPath.h:

(WebCore::LayoutIntegration::RunIteratorLegacyPath::start const):
(WebCore::LayoutIntegration::RunIteratorLegacyPath::end const):
(WebCore::LayoutIntegration::RunIteratorLegacyPath::localStartOffset const): Deleted.
(WebCore::LayoutIntegration::RunIteratorLegacyPath::localEndOffset const): Deleted.

  • layout/integration/LayoutIntegrationRunIteratorModernPath.h:

(WebCore::LayoutIntegration::RunIteratorModernPath::minimumCaretOffset const):
(WebCore::LayoutIntegration::RunIteratorModernPath::maximumCaretOffset const):
(WebCore::LayoutIntegration::RunIteratorModernPath::start const):
(WebCore::LayoutIntegration::RunIteratorModernPath::end const):
(WebCore::LayoutIntegration::RunIteratorModernPath::localStartOffset const): Deleted.
(WebCore::LayoutIntegration::RunIteratorModernPath::localEndOffset const): Deleted.

  • rendering/RenderBlockFlow.cpp:

(WebCore::positionForRun):

  • rendering/RenderText.cpp:

(WebCore::createVisiblePositionAfterAdjustingOffsetForBiDi):
(WebCore::RenderText::positionForPoint):
(WebCore::RenderText::caretMinOffset const):
(WebCore::RenderText::caretMaxOffset const):
(WebCore::RenderText::countRenderedCharacterOffsetsUntil const):
(WebCore::containsOffset):

Location:
trunk/Source/WebCore
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r269149 r269153  
     12020-10-29  Antti Koivisto  <antti@apple.com>
     2
     3        [LFC][Integration] Rename text run localStart/EndOffset to start/end
     4        https://bugs.webkit.org/show_bug.cgi?id=218344
     5
     6        Reviewed by Zalan Bujtas.
     7
     8        There is no danger of confusion and these are called just start/end elsewhere.
     9
     10        * dom/Position.cpp:
     11        (WebCore::Position::upstream const):
     12        (WebCore::Position::downstream const):
     13        * editing/TextIterator.cpp:
     14        (WebCore::TextIterator::handleTextRun):
     15        * editing/VisibleUnits.cpp:
     16        (WebCore::startPositionForLine):
     17        (WebCore::endPositionForLine):
     18        * layout/integration/LayoutIntegrationRunIterator.h:
     19        (WebCore::LayoutIntegration::PathTextRun::start const):
     20        (WebCore::LayoutIntegration::PathTextRun::end const):
     21        (WebCore::LayoutIntegration::PathTextRun::localStartOffset const): Deleted.
     22        (WebCore::LayoutIntegration::PathTextRun::localEndOffset const): Deleted.
     23        * layout/integration/LayoutIntegrationRunIteratorLegacyPath.h:
     24        (WebCore::LayoutIntegration::RunIteratorLegacyPath::start const):
     25        (WebCore::LayoutIntegration::RunIteratorLegacyPath::end const):
     26        (WebCore::LayoutIntegration::RunIteratorLegacyPath::localStartOffset const): Deleted.
     27        (WebCore::LayoutIntegration::RunIteratorLegacyPath::localEndOffset const): Deleted.
     28        * layout/integration/LayoutIntegrationRunIteratorModernPath.h:
     29        (WebCore::LayoutIntegration::RunIteratorModernPath::minimumCaretOffset const):
     30        (WebCore::LayoutIntegration::RunIteratorModernPath::maximumCaretOffset const):
     31        (WebCore::LayoutIntegration::RunIteratorModernPath::start const):
     32        (WebCore::LayoutIntegration::RunIteratorModernPath::end const):
     33        (WebCore::LayoutIntegration::RunIteratorModernPath::localStartOffset const): Deleted.
     34        (WebCore::LayoutIntegration::RunIteratorModernPath::localEndOffset const): Deleted.
     35        * rendering/RenderBlockFlow.cpp:
     36        (WebCore::positionForRun):
     37        * rendering/RenderText.cpp:
     38        (WebCore::createVisiblePositionAfterAdjustingOffsetForBiDi):
     39        (WebCore::RenderText::positionForPoint):
     40        (WebCore::RenderText::caretMinOffset const):
     41        (WebCore::RenderText::caretMaxOffset const):
     42        (WebCore::RenderText::countRenderedCharacterOffsetsUntil const):
     43        (WebCore::containsOffset):
     44
    1452020-10-29  Antti Koivisto  <antti@apple.com>
    246
  • trunk/Source/WebCore/dom/Position.cpp

    r268598 r269153  
    752752            unsigned textOffset = currentPosition.offsetInLeafNode();
    753753            for (auto run = firstTextRun; run; run.traverseNextTextRunInTextOrder()) {
    754                 if (textOffset <= run->localEndOffset()) {
    755                     if (textOffset > run->localStartOffset())
     754                if (textOffset <= run->end()) {
     755                    if (textOffset > run->start())
    756756                        return currentPosition;
    757757                    continue;
    758758                }
    759759
    760                 if (textOffset == run->localEndOffset() + 1 && run->isLastTextRunOnLine() && !run->isLastTextRun())
     760                if (textOffset == run->end() + 1 && run->isLastTextRunOnLine() && !run->isLastTextRun())
    761761                    return currentPosition;
    762762            }
     
    855855            unsigned textOffset = currentPosition.offsetInLeafNode();
    856856            for (auto run = firstTextRun; run; run.traverseNextTextRunInTextOrder()) {
    857                 if (!run->length() && textOffset == run->localStartOffset())
     857                if (!run->length() && textOffset == run->start())
    858858                    return currentPosition;
    859859
    860                 if (textOffset < run->localEndOffset()) {
    861                     if (textOffset >= run->localStartOffset())
     860                if (textOffset < run->end()) {
     861                    if (textOffset >= run->start())
    862862                        return currentPosition;
    863863                    continue;
    864864                }
    865865
    866                 if (textOffset == run->localEndOffset() && run->isLastTextRunOnLine() && !run->isLastTextRun())
     866                if (textOffset == run->end() && run->isLastTextRunOnLine() && !run->isLastTextRun())
    867867                    return currentPosition;
    868868            }
  • trunk/Source/WebCore/editing/TextIterator.cpp

    r267734 r269153  
    614614    unsigned end = (&textNode == m_endContainer) ? static_cast<unsigned>(m_endOffset) : UINT_MAX;
    615615    while (m_textRun) {
    616         unsigned textRunStart = m_textRun->localStartOffset();
     616        unsigned textRunStart = m_textRun->start();
    617617        unsigned runStart = std::max(textRunStart, start);
    618618
     
    667667
    668668            // Advance and return
    669             unsigned nextRunStart = nextTextRun ? nextTextRun->localStartOffset() : rendererText.length();
     669            unsigned nextRunStart = nextTextRun ? nextTextRun->start() : rendererText.length();
    670670            if (nextRunStart > runEnd)
    671671                m_lastTextNodeEndedWithCollapsedSpace = true; // collapsed space between runs or at the end
  • trunk/Source/WebCore/editing/VisibleUnits.cpp

    r269041 r269153  
    812812    }
    813813
    814     return is<Text>(*startNode) ? Position(downcast<Text>(startNode), downcast<LayoutIntegration::PathTextRun>(*startRun).localStartOffset())
     814    return is<Text>(*startNode) ? Position(downcast<Text>(startNode), downcast<LayoutIntegration::PathTextRun>(*startRun).start())
    815815        : positionBeforeNode(startNode);
    816816}
     
    892892    else if (is<LayoutIntegration::PathTextRun>(*endRun) && is<Text>(*endNode)) {
    893893        auto& endTextRun = downcast<LayoutIntegration::PathTextRun>(*endRun);
    894         int endOffset = endTextRun.localStartOffset();
     894        int endOffset = endTextRun.start();
    895895        if (!endTextRun.isLineBreak())
    896896            endOffset += endTextRun.length();
  • trunk/Source/WebCore/layout/integration/LayoutIntegrationRunIterator.h

    r268520 r269153  
    104104    StringView text() const;
    105105
    106     // These offsets are relative to the text renderer (not flow).
    107     unsigned localStartOffset() const;
    108     unsigned localEndOffset() const;
     106    unsigned start() const;
     107    unsigned end() const;
    109108    unsigned length() const;
    110109
     
    299298}
    300299
    301 inline unsigned PathTextRun::localStartOffset() const
    302 {
    303     return WTF::switchOn(m_pathVariant, [](auto& path) {
    304         return path.localStartOffset();
    305     });
    306 }
    307 
    308 inline unsigned PathTextRun::localEndOffset() const
    309 {
    310     return WTF::switchOn(m_pathVariant, [](auto& path) {
    311         return path.localEndOffset();
     300inline unsigned PathTextRun::start() const
     301{
     302    return WTF::switchOn(m_pathVariant, [](auto& path) {
     303        return path.start();
     304    });
     305}
     306
     307inline unsigned PathTextRun::end() const
     308{
     309    return WTF::switchOn(m_pathVariant, [](auto& path) {
     310        return path.end();
    312311    });
    313312}
  • trunk/Source/WebCore/layout/integration/LayoutIntegrationRunIteratorLegacyPath.h

    r268520 r269153  
    5656    bool hasHyphen() const { return inlineTextBox()->hasHyphen(); }
    5757    StringView text() const { return StringView(inlineTextBox()->renderer().text()).substring(inlineTextBox()->start(), inlineTextBox()->len()); }
    58     unsigned localStartOffset() const { return inlineTextBox()->start(); }
    59     unsigned localEndOffset() const { return inlineTextBox()->end(); }
     58    unsigned start() const { return inlineTextBox()->start(); }
     59    unsigned end() const { return inlineTextBox()->end(); }
    6060    unsigned length() const { return inlineTextBox()->len(); }
    6161
  • trunk/Source/WebCore/layout/integration/LayoutIntegrationRunIteratorModernPath.h

    r269146 r269153  
    5656    bool isLineBreak() const { return run().isLineBreak(); }
    5757
    58     unsigned minimumCaretOffset() const { return isText() ? localStartOffset() : 0; }
    59     unsigned maximumCaretOffset() const { return isText() ? localEndOffset() : 1; }
     58    unsigned minimumCaretOffset() const { return isText() ? start() : 0; }
     59    unsigned maximumCaretOffset() const { return isText() ? end() : 1; }
    6060
    6161    unsigned char bidiLevel() const { return 0; }
     
    6363    bool hasHyphen() const { return run().textContent()->needsHyphen(); }
    6464    StringView text() const { return run().textContent()->content(); }
    65     unsigned localStartOffset() const { return run().textContent()->start(); }
    66     unsigned localEndOffset() const { return run().textContent()->end(); }
     65    unsigned start() const { return run().textContent()->start(); }
     66    unsigned end() const { return run().textContent()->end(); }
    6767    unsigned length() const { return run().textContent()->length(); }
    6868
  • trunk/Source/WebCore/rendering/RenderBlockFlow.cpp

    r269149 r269153  
    33193319
    33203320    auto& textRun = downcast<LayoutIntegration::TextRunIterator>(run);
    3321     return makeDeprecatedLegacyPosition(textRun->renderer().nonPseudoNode(), start ? textRun->localStartOffset() : textRun->localEndOffset());
     3321    return makeDeprecatedLegacyPosition(textRun->renderer().nonPseudoNode(), start ? textRun->start() : textRun->end());
    33223322}
    33233323
  • trunk/Source/WebCore/rendering/RenderText.cpp

    r269149 r269153  
    516516
    517517    if (offset && offset < run->length())
    518         return createVisiblePositionForBox(run, run->localStartOffset() + offset, shouldAffinityBeDownstream);
     518        return createVisiblePositionForBox(run, run->start() + offset, shouldAffinityBeDownstream);
    519519
    520520    bool positionIsAtStartOfBox = !offset;
     
    617617                    int half = run->rect().x() + run->logicalWidth() / 2;
    618618                    auto affinity = point.x() < half ? Affinity::Downstream : Affinity::Upstream;
    619                     return createVisiblePosition(run->offsetForPosition(pointLineDirection) + run->localStartOffset(), affinity);
     619                    return createVisiblePosition(run->offsetForPosition(pointLineDirection) + run->start(), affinity);
    620620                }
    621621#endif
     
    630630        ShouldAffinityBeDownstream shouldAffinityBeDownstream;
    631631        lineDirectionPointFitsInBox(pointLineDirection, lastRun, shouldAffinityBeDownstream);
    632         return createVisiblePositionAfterAdjustingOffsetForBiDi(lastRun, lastRun->offsetForPosition(pointLineDirection) + lastRun->localStartOffset(), shouldAffinityBeDownstream);
     632        return createVisiblePositionAfterAdjustingOffsetForBiDi(lastRun, lastRun->offsetForPosition(pointLineDirection) + lastRun->start(), shouldAffinityBeDownstream);
    633633    }
    634634    return createVisiblePosition(0, Affinity::Downstream);
     
    16161616        return 0;
    16171617
    1618     int minOffset = first->localStartOffset();
     1618    int minOffset = first->start();
    16191619    for (auto box = first; ++box;)
    1620         minOffset = std::min<int>(minOffset, box->localStartOffset());
     1620        minOffset = std::min<int>(minOffset, box->start());
    16211621
    16221622    return minOffset;
     
    16291629        return text().length();
    16301630
    1631     int maxOffset = first->localEndOffset();
     1631    int maxOffset = first->end();
    16321632    for (auto box = first; ++box;)
    1633         maxOffset = std::max<int>(maxOffset, box->localEndOffset());
     1633        maxOffset = std::max<int>(maxOffset, box->end());
    16341634
    16351635    return maxOffset;
     
    16401640    unsigned result = 0;
    16411641    for (auto& run : LayoutIntegration::textRunsFor(*this)) {
    1642         auto start = run.localStartOffset();
     1642        auto start = run.start();
    16431643        auto length = run.length();
    16441644        if (offset < start)
     
    16571657{
    16581658    for (auto box = LayoutIntegration::firstTextRunInTextOrderFor(text); box; box.traverseNextTextRunInTextOrder()) {
    1659         auto start = box->localStartOffset();
     1659        auto start = box->start();
    16601660        if (offset < start)
    16611661            return false;
    1662         unsigned end = box->localEndOffset();
     1662        unsigned end = box->end();
    16631663        if (offset >= start && offset <= end) {
    16641664            if (offset == end && (type == OffsetType::Character || box->isLineBreak()))
Note: See TracChangeset for help on using the changeset viewer.