OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010 Apple Inc. All right r
eserved. | 3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010 Apple Inc. All right r
eserved. |
4 * Copyright (C) 2010 Google Inc. All rights reserved. | 4 * Copyright (C) 2010 Google Inc. All rights reserved. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 631 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
642 // It's OK to add runs for zero-length RenderObjects, just don't mak
e the run larger than it should be | 642 // It's OK to add runs for zero-length RenderObjects, just don't mak
e the run larger than it should be |
643 int end = obj->length() ? pos + 1 : 0; | 643 int end = obj->length() ? pos + 1 : 0; |
644 if (isolateTracker.inIsolate()) | 644 if (isolateTracker.inIsolate()) |
645 addFakeRunIfNecessary(obj, start, end, *this, isolateTracker); | 645 addFakeRunIfNecessary(obj, start, end, *this, isolateTracker); |
646 else | 646 else |
647 adjustMidpointsAndAppendRunsForObjectIfNeeded(obj, start, end, *
this, AppendingRunsForObject, isolateTracker); | 647 adjustMidpointsAndAppendRunsForObjectIfNeeded(obj, start, end, *
this, AppendingRunsForObject, isolateTracker); |
648 } | 648 } |
649 | 649 |
650 if (isEndOfLine) | 650 if (isEndOfLine) |
651 m_reachedEndOfLine = true; | 651 m_reachedEndOfLine = true; |
652 m_eor.increment(); | 652 // If isolateTrack is inIsolate, the next |start of run| can not be the
current isolated renderer. |
| 653 if (isolateTracker.inIsolate()) |
| 654 m_eor.moveTo(bidiNextSkippingEmptyInlines(m_eor.root(), m_eor.object
()), 0); |
| 655 else |
| 656 m_eor.increment(); |
653 m_sor = m_eor; | 657 m_sor = m_eor; |
654 } | 658 } |
655 | 659 |
656 m_direction = WTF::Unicode::OtherNeutral; | 660 m_direction = WTF::Unicode::OtherNeutral; |
657 m_status.eor = WTF::Unicode::OtherNeutral; | 661 m_status.eor = WTF::Unicode::OtherNeutral; |
658 } | 662 } |
659 | 663 |
660 } | 664 } |
661 | 665 |
662 #endif // InlineIterator_h | 666 #endif // InlineIterator_h |
OLD | NEW |