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

Changeset 109384 in webkit


Ignore:
Timestamp:
Mar 1, 2012, 12:00:24 PM (15 years ago)
Author:
cevans@google.com
Message:

Merge 108417
BUG=114054
Review URL: ​https://chromiumcodereview.appspot.com/9568027

Location:
branches/chromium/963
Files:
1 edited
2 copied

Legend:

Unmodified
Added
Removed
  • branches/chromium/963/Source/WebCore/editing/TextIterator.cpp

    r99262 r109384  
    488488    }
    489489
    490     if (!renderer->firstTextBox() && str.length() > 0) {
    491         if (!m_handledFirstLetter && renderer->isTextFragment()) {
    492             handleTextNodeFirstLetter(static_cast<RenderTextFragment*>(renderer));
    493             if (m_firstLetterText) {
    494                 handleTextBox();
    495                 return false;
    496             }
    497         }
     490    if (renderer->firstTextBox())
     491        m_textBox = renderer->firstTextBox();
     492
     493    bool shouldHandleFirstLetter = !m_handledFirstLetter && renderer->isTextFragment() && !m_offset;
     494    if (shouldHandleFirstLetter)
     495        handleTextNodeFirstLetter(static_cast<RenderTextFragment*>(renderer));
     496
     497    if (!renderer->firstTextBox() && str.length() > 0 && !shouldHandleFirstLetter) {
    498498        if (renderer->style()->visibility() != VISIBLE && !m_ignoresStyleVisibility)
    499499            return false;
    … …  
    501501        return true;
    502502    }
    503 
    504    
    505     m_textBox = renderer->firstTextBox();
    506     if (!m_handledFirstLetter && renderer->isTextFragment() && !m_offset)
    507         handleTextNodeFirstLetter(static_cast<RenderTextFragment*>(renderer));
    508503
    509504    if (m_firstLetterText)
    … …  
    563558        } else
    564559            nextTextBox = m_textBox->nextTextBox();
     560        ASSERT(!nextTextBox || nextTextBox->renderer() == renderer);
    565561
    566562        if (runStart < runEnd) {
    … …  
    631627            m_remainingTextBox = m_textBox;
    632628            m_textBox = firstLetter->firstTextBox();
     629            m_sortedTextBoxes.clear();
    633630            m_firstLetterText = firstLetter;
    634631        }
Note: See TracChangeset for help on using the changeset viewer.