Chromium Code Reviews| Index: Source/core/rendering/InlineIterator.h |
| diff --git a/Source/core/rendering/InlineIterator.h b/Source/core/rendering/InlineIterator.h |
| index d88205ae92425e121e171ac28d5876fa629ad7e0..2cb2eccb51d300bfe1b91929e8eff087ea07d1e3 100644 |
| --- a/Source/core/rendering/InlineIterator.h |
| +++ b/Source/core/rendering/InlineIterator.h |
| @@ -35,6 +35,11 @@ namespace WebCore { |
| // optionally notifying a BidiResolver every time it steps into/out of a RenderInline. |
| class InlineIterator { |
| public: |
| + enum IncrementRule { |
| + FastIncrementInlineRenderer, |
| + FastIncrementInTextNode |
| + }; |
| + |
| InlineIterator() |
| : m_root(0) |
| , m_obj(0) |
| @@ -70,7 +75,8 @@ public: |
| RenderObject* root() const { return m_root; } |
| void fastIncrementInTextNode(); |
| - void increment(InlineBidiResolver* = 0); |
| + void fastIncrementInline(); |
|
eseidel
2013/09/03 23:28:40
I don't see this used anywhere?
|
| + void increment(InlineBidiResolver* = 0, IncrementRule = FastIncrementInTextNode); |
| bool atEnd() const; |
| inline bool atTextParagraphSeparator() |
| @@ -352,11 +358,11 @@ private: |
| bool m_atEndOfInline; |
| }; |
| -inline void InlineIterator::increment(InlineBidiResolver* resolver) |
| +inline void InlineIterator::increment(InlineBidiResolver* resolver, IncrementRule rule) |
| { |
| if (!m_obj) |
| return; |
| - if (m_obj->isText()) { |
| + if (m_obj->isText() && rule == FastIncrementInTextNode) { |
| fastIncrementInTextNode(); |
| if (m_pos < toRenderText(m_obj)->textLength()) |
| return; |