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 396 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
407 { | 407 { |
408 m_current.increment(this); | 408 m_current.increment(this); |
409 } | 409 } |
410 | 410 |
411 static inline bool isIsolatedInline(RenderObject* object) | 411 static inline bool isIsolatedInline(RenderObject* object) |
412 { | 412 { |
413 ASSERT(object); | 413 ASSERT(object); |
414 return object->isRenderInline() && isIsolated(object->style()->unicodeBidi()
); | 414 return object->isRenderInline() && isIsolated(object->style()->unicodeBidi()
); |
415 } | 415 } |
416 | 416 |
417 static inline RenderObject* containingIsolate(RenderObject* object, RenderObject
* root) | 417 static inline RenderObject* highestContainingIsolateWithinRoot(RenderObject* obj
ect, RenderObject* root) |
418 { | 418 { |
419 ASSERT(object); | 419 ASSERT(object); |
420 RenderObject* containingIsolateObj = 0; | 420 RenderObject* containingIsolateObj = 0; |
421 while (object && object != root) { | 421 while (object && object != root) { |
422 if (containingIsolateObj && !isIsolatedInline(object)) | |
423 break; | |
424 | |
425 if (isIsolatedInline(object)) | 422 if (isIsolatedInline(object)) |
426 containingIsolateObj = object; | 423 containingIsolateObj = object; |
427 | 424 |
428 object = object->parent(); | 425 object = object->parent(); |
429 } | 426 } |
430 return containingIsolateObj; | 427 return containingIsolateObj; |
431 } | 428 } |
432 | 429 |
433 static inline unsigned numberOfIsolateAncestors(const InlineIterator& iter) | 430 static inline unsigned numberOfIsolateAncestors(const InlineIterator& iter) |
434 { | 431 { |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
542 m_sor = m_eor; | 539 m_sor = m_eor; |
543 } | 540 } |
544 | 541 |
545 m_direction = WTF::Unicode::OtherNeutral; | 542 m_direction = WTF::Unicode::OtherNeutral; |
546 m_status.eor = WTF::Unicode::OtherNeutral; | 543 m_status.eor = WTF::Unicode::OtherNeutral; |
547 } | 544 } |
548 | 545 |
549 } | 546 } |
550 | 547 |
551 #endif // InlineIterator_h | 548 #endif // InlineIterator_h |
OLD | NEW |