Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(253)

Side by Side Diff: third_party/WebKit/Source/core/layout/line/InlineBox.h

Issue 2640163004: Replace ENABLE(ASSERT) with DCHECK_IS_ON(). (Closed)
Patch Set: m_domTreeVersion initialization Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. 2 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc.
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 class CORE_EXPORT InlineBox : public DisplayItemClient { 44 class CORE_EXPORT InlineBox : public DisplayItemClient {
45 WTF_MAKE_NONCOPYABLE(InlineBox); 45 WTF_MAKE_NONCOPYABLE(InlineBox);
46 46
47 public: 47 public:
48 InlineBox(LineLayoutItem obj) 48 InlineBox(LineLayoutItem obj)
49 : m_next(nullptr), 49 : m_next(nullptr),
50 m_prev(nullptr), 50 m_prev(nullptr),
51 m_parent(nullptr), 51 m_parent(nullptr),
52 m_lineLayoutItem(obj), 52 m_lineLayoutItem(obj),
53 m_logicalWidth() 53 m_logicalWidth()
54 #if ENABLE(ASSERT)
55 ,
56 m_hasBadParent(false)
57 #endif
58 { 54 {
59 } 55 }
60 56
61 InlineBox(LineLayoutItem item, 57 InlineBox(LineLayoutItem item,
62 LayoutPoint topLeft, 58 LayoutPoint topLeft,
63 LayoutUnit logicalWidth, 59 LayoutUnit logicalWidth,
64 bool firstLine, 60 bool firstLine,
65 bool constructed, 61 bool constructed,
66 bool dirty, 62 bool dirty,
67 bool extracted, 63 bool extracted,
68 bool isHorizontal, 64 bool isHorizontal,
69 InlineBox* next, 65 InlineBox* next,
70 InlineBox* prev, 66 InlineBox* prev,
71 InlineFlowBox* parent) 67 InlineFlowBox* parent)
72 : m_bitfields(firstLine, constructed, dirty, extracted, isHorizontal), 68 : m_bitfields(firstLine, constructed, dirty, extracted, isHorizontal),
73 m_next(next), 69 m_next(next),
74 m_prev(prev), 70 m_prev(prev),
75 m_parent(parent), 71 m_parent(parent),
76 m_lineLayoutItem(item), 72 m_lineLayoutItem(item),
77 m_location(topLeft), 73 m_location(topLeft),
78 m_logicalWidth(logicalWidth) 74 m_logicalWidth(logicalWidth)
79 #if ENABLE(ASSERT)
80 ,
81 m_hasBadParent(false)
82 #endif
83 { 75 {
84 } 76 }
85 77
86 virtual ~InlineBox(); 78 virtual ~InlineBox();
87 79
88 virtual void destroy(); 80 virtual void destroy();
89 81
90 virtual void deleteLine(); 82 virtual void deleteLine();
91 virtual void extractLine(); 83 virtual void extractLine();
92 virtual void attachLine(); 84 virtual void attachLine();
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
326 int blockEdge, 318 int blockEdge,
327 int ellipsisWidth) const; 319 int ellipsisWidth) const;
328 // visibleLeftEdge, visibleRightEdge are in the parent's coordinate system. 320 // visibleLeftEdge, visibleRightEdge are in the parent's coordinate system.
329 virtual LayoutUnit placeEllipsisBox(bool ltr, 321 virtual LayoutUnit placeEllipsisBox(bool ltr,
330 LayoutUnit visibleLeftEdge, 322 LayoutUnit visibleLeftEdge,
331 LayoutUnit visibleRightEdge, 323 LayoutUnit visibleRightEdge,
332 LayoutUnit ellipsisWidth, 324 LayoutUnit ellipsisWidth,
333 LayoutUnit& truncatedWidth, 325 LayoutUnit& truncatedWidth,
334 bool&); 326 bool&);
335 327
336 #if ENABLE(ASSERT) 328 #if DCHECK_IS_ON()
337 void setHasBadParent(); 329 void setHasBadParent();
338 #endif 330 #endif
339 331
340 int expansion() const { return m_bitfields.expansion(); } 332 int expansion() const { return m_bitfields.expansion(); }
341 333
342 bool visibleToHitTestRequest(const HitTestRequest& request) const { 334 bool visibleToHitTestRequest(const HitTestRequest& request) const {
343 return getLineLayoutItem().visibleToHitTestRequest(request); 335 return getLineLayoutItem().visibleToHitTestRequest(request);
344 } 336 }
345 337
346 // Anonymous inline: https://drafts.csswg.org/css2/visuren.html#anonymous 338 // Anonymous inline: https://drafts.csswg.org/css2/visuren.html#anonymous
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
542 signed expansion() { return m_bitfields.expansion(); } 534 signed expansion() { return m_bitfields.expansion(); }
543 void setExpansion(signed expansion) { m_bitfields.setExpansion(expansion); } 535 void setExpansion(signed expansion) { m_bitfields.setExpansion(expansion); }
544 536
545 // For InlineFlowBox and InlineTextBox 537 // For InlineFlowBox and InlineTextBox
546 bool extracted() const { return m_bitfields.extracted(); } 538 bool extracted() const { return m_bitfields.extracted(); }
547 539
548 LayoutPoint m_location; 540 LayoutPoint m_location;
549 LayoutUnit m_logicalWidth; 541 LayoutUnit m_logicalWidth;
550 542
551 private: 543 private:
552 #if ENABLE(ASSERT) 544 #if DCHECK_IS_ON()
553 bool m_hasBadParent; 545 bool m_hasBadParent = false;
554 #endif 546 #endif
555 }; 547 };
556 548
557 #if !ENABLE(ASSERT) 549 #if !DCHECK_IS_ON()
558 inline InlineBox::~InlineBox() {} 550 inline InlineBox::~InlineBox() {}
559 #endif 551 #endif
560 552
561 #if ENABLE(ASSERT) 553 #if DCHECK_IS_ON()
562 inline void InlineBox::setHasBadParent() { 554 inline void InlineBox::setHasBadParent() {
563 m_hasBadParent = true; 555 m_hasBadParent = true;
564 } 556 }
565 #endif 557 #endif
566 558
567 #define DEFINE_INLINE_BOX_TYPE_CASTS(typeName) \ 559 #define DEFINE_INLINE_BOX_TYPE_CASTS(typeName) \
568 DEFINE_TYPE_CASTS(typeName, InlineBox, box, box->is##typeName(), \ 560 DEFINE_TYPE_CASTS(typeName, InlineBox, box, box->is##typeName(), \
569 box.is##typeName()) 561 box.is##typeName())
570 562
571 // Allow equality comparisons of InlineBox's by reference or pointer, 563 // Allow equality comparisons of InlineBox's by reference or pointer,
572 // interchangeably. 564 // interchangeably.
573 DEFINE_COMPARISON_OPERATORS_WITH_REFERENCES(InlineBox) 565 DEFINE_COMPARISON_OPERATORS_WITH_REFERENCES(InlineBox)
574 566
575 } // namespace blink 567 } // namespace blink
576 568
577 #ifndef NDEBUG 569 #ifndef NDEBUG
578 // Outside the WebCore namespace for ease of invocation from gdb. 570 // Outside the WebCore namespace for ease of invocation from gdb.
579 void showTree(const blink::InlineBox*); 571 void showTree(const blink::InlineBox*);
580 void showLineTree(const blink::InlineBox*); 572 void showLineTree(const blink::InlineBox*);
581 #endif 573 #endif
582 574
583 #endif // InlineBox_h 575 #endif // InlineBox_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698