Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003, 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
| 5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
| 6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
| 7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
| 8 * | 8 * |
| 9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
| 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 49 , m_nextLineBox(0) | 49 , m_nextLineBox(0) |
| 50 , m_includeLogicalLeftEdge(false) | 50 , m_includeLogicalLeftEdge(false) |
| 51 , m_includeLogicalRightEdge(false) | 51 , m_includeLogicalRightEdge(false) |
| 52 , m_descendantsHaveSameLineHeightAndBaseline(true) | 52 , m_descendantsHaveSameLineHeightAndBaseline(true) |
| 53 , m_baselineType(AlphabeticBaseline) | 53 , m_baselineType(AlphabeticBaseline) |
| 54 , m_hasAnnotationsBefore(false) | 54 , m_hasAnnotationsBefore(false) |
| 55 , m_hasAnnotationsAfter(false) | 55 , m_hasAnnotationsAfter(false) |
| 56 , m_lineBreakBidiStatusEor(WTF::Unicode::LeftToRight) | 56 , m_lineBreakBidiStatusEor(WTF::Unicode::LeftToRight) |
| 57 , m_lineBreakBidiStatusLastStrong(WTF::Unicode::LeftToRight) | 57 , m_lineBreakBidiStatusLastStrong(WTF::Unicode::LeftToRight) |
| 58 , m_lineBreakBidiStatusLast(WTF::Unicode::LeftToRight) | 58 , m_lineBreakBidiStatusLast(WTF::Unicode::LeftToRight) |
| 59 #ifndef NDEBUG | 59 #if ENABLE(ASSERT) |
| 60 , m_hasBadChildList(false) | 60 , m_hasBadChildList(false) |
| 61 #endif | 61 #endif |
| 62 { | 62 { |
| 63 // Internet Explorer and Firefox always create a marker for list items, even when the list-style-type is none. We do not make a marker | 63 // Internet Explorer and Firefox always create a marker for list items, even when the list-style-type is none. We do not make a marker |
| 64 // in the list-style-type: none case, since it is wasteful to do so. Ho wever, in order to match other browsers we have to pretend like | 64 // in the list-style-type: none case, since it is wasteful to do so. Ho wever, in order to match other browsers we have to pretend like |
| 65 // an invisible marker exists. The side effect of having an invisible m arker is that the quirks mode behavior of shrinking lines with no | 65 // an invisible marker exists. The side effect of having an invisible m arker is that the quirks mode behavior of shrinking lines with no |
| 66 // text children must not apply. This change also means that gaps will exist between image bullet list items. Even when the list bullet | 66 // text children must not apply. This change also means that gaps will exist between image bullet list items. Even when the list bullet |
| 67 // is an image, the line is still considered to be immune from the quirk . | 67 // is an image, the line is still considered to be immune from the quirk . |
| 68 m_hasTextChildren = obj.style()->display() == LIST_ITEM; | 68 m_hasTextChildren = obj.style()->display() == LIST_ITEM; |
| 69 m_hasTextDescendants = m_hasTextChildren; | 69 m_hasTextDescendants = m_hasTextChildren; |
| 70 } | 70 } |
| 71 | 71 |
| 72 #if ENABLE(ASSERT) | |
| 73 virtual ~InlineFlowBox(); | |
| 74 #endif | |
|
abarth-chromium
2014/07/17 21:02:41
This change looks incorrect. We should be able to
Ken Russell (switch to Gerrit)
2014/07/17 21:25:24
It's correct. The base class defines the virtual d
| |
| 75 | |
| 72 #ifndef NDEBUG | 76 #ifndef NDEBUG |
| 73 virtual ~InlineFlowBox(); | |
| 74 | |
| 75 virtual void showLineTreeAndMark(const InlineBox* = 0, const char* = 0, cons t InlineBox* = 0, const char* = 0, const RenderObject* = 0, int = 0) const OVERR IDE; | 77 virtual void showLineTreeAndMark(const InlineBox* = 0, const char* = 0, cons t InlineBox* = 0, const char* = 0, const RenderObject* = 0, int = 0) const OVERR IDE; |
| 76 virtual const char* boxName() const OVERRIDE; | 78 virtual const char* boxName() const OVERRIDE; |
| 77 #endif | 79 #endif |
| 78 | 80 |
| 79 InlineFlowBox* prevLineBox() const { return m_prevLineBox; } | 81 InlineFlowBox* prevLineBox() const { return m_prevLineBox; } |
| 80 InlineFlowBox* nextLineBox() const { return m_nextLineBox; } | 82 InlineFlowBox* nextLineBox() const { return m_nextLineBox; } |
| 81 void setNextLineBox(InlineFlowBox* n) { m_nextLineBox = n; } | 83 void setNextLineBox(InlineFlowBox* n) { m_nextLineBox = n; } |
| 82 void setPreviousLineBox(InlineFlowBox* p) { m_prevLineBox = p; } | 84 void setPreviousLineBox(InlineFlowBox* p) { m_prevLineBox = p; } |
| 83 | 85 |
| 84 InlineBox* firstChild() const { checkConsistency(); return m_firstChild; } | 86 InlineBox* firstChild() const { checkConsistency(); return m_firstChild; } |
| (...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 344 // If the line contains any ruby runs, then this will be true. | 346 // If the line contains any ruby runs, then this will be true. |
| 345 unsigned m_hasAnnotationsBefore : 1; | 347 unsigned m_hasAnnotationsBefore : 1; |
| 346 unsigned m_hasAnnotationsAfter : 1; | 348 unsigned m_hasAnnotationsAfter : 1; |
| 347 | 349 |
| 348 unsigned m_lineBreakBidiStatusEor : 5; // WTF::Unicode::Direction | 350 unsigned m_lineBreakBidiStatusEor : 5; // WTF::Unicode::Direction |
| 349 unsigned m_lineBreakBidiStatusLastStrong : 5; // WTF::Unicode::Direction | 351 unsigned m_lineBreakBidiStatusLastStrong : 5; // WTF::Unicode::Direction |
| 350 unsigned m_lineBreakBidiStatusLast : 5; // WTF::Unicode::Direction | 352 unsigned m_lineBreakBidiStatusLast : 5; // WTF::Unicode::Direction |
| 351 | 353 |
| 352 // End of RootInlineBox-specific members. | 354 // End of RootInlineBox-specific members. |
| 353 | 355 |
| 354 #ifndef NDEBUG | 356 #if ENABLE(ASSERT) |
| 355 private: | 357 private: |
| 356 unsigned m_hasBadChildList : 1; | 358 unsigned m_hasBadChildList : 1; |
| 357 #endif | 359 #endif |
| 358 }; | 360 }; |
| 359 | 361 |
| 360 DEFINE_INLINE_BOX_TYPE_CASTS(InlineFlowBox); | 362 DEFINE_INLINE_BOX_TYPE_CASTS(InlineFlowBox); |
| 361 | 363 |
| 362 #ifdef NDEBUG | 364 #if !ENABLE(ASSERT) |
| 363 inline void InlineFlowBox::checkConsistency() const | 365 inline void InlineFlowBox::checkConsistency() const |
| 364 { | 366 { |
| 365 } | 367 } |
| 366 #endif | 368 #endif |
| 367 | 369 |
| 368 inline void InlineFlowBox::setHasBadChildList() | 370 inline void InlineFlowBox::setHasBadChildList() |
| 369 { | 371 { |
| 370 #ifndef NDEBUG | 372 #if ENABLE(ASSERT) |
| 371 m_hasBadChildList = true; | 373 m_hasBadChildList = true; |
| 372 #endif | 374 #endif |
| 373 } | 375 } |
| 374 | 376 |
| 375 } // namespace WebCore | 377 } // namespace WebCore |
| 376 | 378 |
| 377 #ifndef NDEBUG | 379 #ifndef NDEBUG |
| 378 // Outside the WebCore namespace for ease of invocation from gdb. | 380 // Outside the WebCore namespace for ease of invocation from gdb. |
| 379 void showTree(const WebCore::InlineFlowBox*); | 381 void showTree(const WebCore::InlineFlowBox*); |
| 380 #endif | 382 #endif |
| 381 | 383 |
| 382 #endif // InlineFlowBox_h | 384 #endif // InlineFlowBox_h |
| OLD | NEW |