OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2007 David Smith (catfish.man@gmail.com) | 4 * (C) 2007 David Smith (catfish.man@gmail.com) |
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r
ights reserved. | 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r
ights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 387 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
398 void makeChildrenNonInline(LayoutObject* insertionPoint = nullptr); | 398 void makeChildrenNonInline(LayoutObject* insertionPoint = nullptr); |
399 | 399 |
400 virtual void removeLeftoverAnonymousBlock(LayoutBlock* child); | 400 virtual void removeLeftoverAnonymousBlock(LayoutBlock* child); |
401 | 401 |
402 void makeChildrenInlineIfPossible(); | 402 void makeChildrenInlineIfPossible(); |
403 | 403 |
404 void dirtyLinesFromChangedChild(LayoutObject* child) final { m_lineBoxes.dir
tyLinesFromChangedChild(LineLayoutItem(this), LineLayoutItem(child)); } | 404 void dirtyLinesFromChangedChild(LayoutObject* child) final { m_lineBoxes.dir
tyLinesFromChangedChild(LineLayoutItem(this), LineLayoutItem(child)); } |
405 | 405 |
406 void addChildIgnoringContinuation(LayoutObject* newChild, LayoutObject* befo
reChild) override; | 406 void addChildIgnoringContinuation(LayoutObject* newChild, LayoutObject* befo
reChild) override; |
407 | 407 |
408 bool isSelfCollapsingBlock() const override; | |
409 | |
410 TrackedLayoutBoxListHashSet* positionedObjectsInternal() const; | 408 TrackedLayoutBoxListHashSet* positionedObjectsInternal() const; |
411 TrackedLayoutBoxListHashSet* percentHeightDescendantsInternal() const; | 409 TrackedLayoutBoxListHashSet* percentHeightDescendantsInternal() const; |
412 | 410 |
413 Node* nodeForHitTest() const; | 411 Node* nodeForHitTest() const; |
414 | 412 |
415 // Returns true if the positioned movement-only layout succeeded. | 413 // Returns true if the positioned movement-only layout succeeded. |
416 bool tryLayoutDoingPositionedMovementOnly(); | 414 bool tryLayoutDoingPositionedMovementOnly(); |
417 | 415 |
418 bool avoidsFloats() const override { return true; } | 416 bool avoidsFloats() const override { return true; } |
419 | 417 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
496 | 494 |
497 LayoutObjectChildList m_children; | 495 LayoutObjectChildList m_children; |
498 LineBoxList m_lineBoxes; // All of the root line boxes created for this bloc
k flow. For example, <div>Hello<br>world.</div> will have two total lines for t
he <div>. | 496 LineBoxList m_lineBoxes; // All of the root line boxes created for this bloc
k flow. For example, <div>Hello<br>world.</div> will have two total lines for t
he <div>. |
499 | 497 |
500 unsigned m_hasMarginBeforeQuirk : 1; // Note these quirk values can't be put
in LayoutBlockRareData since they are set too frequently. | 498 unsigned m_hasMarginBeforeQuirk : 1; // Note these quirk values can't be put
in LayoutBlockRareData since they are set too frequently. |
501 unsigned m_hasMarginAfterQuirk : 1; | 499 unsigned m_hasMarginAfterQuirk : 1; |
502 unsigned m_beingDestroyed : 1; | 500 unsigned m_beingDestroyed : 1; |
503 unsigned m_hasMarkupTruncation : 1; | 501 unsigned m_hasMarkupTruncation : 1; |
504 unsigned m_widthAvailableToChildrenChanged : 1; | 502 unsigned m_widthAvailableToChildrenChanged : 1; |
505 unsigned m_heightAvailableToChildrenChanged : 1; | 503 unsigned m_heightAvailableToChildrenChanged : 1; |
506 mutable unsigned m_hasOnlySelfCollapsingChildren : 1; | 504 unsigned m_isSelfCollapsing : 1; // True if margin-before and margin-after a
re adjoining. |
507 mutable unsigned m_descendantsWithFloatsMarkedForLayout : 1; | 505 mutable unsigned m_descendantsWithFloatsMarkedForLayout : 1; |
508 | 506 |
509 unsigned m_hasPositionedObjects : 1; | 507 unsigned m_hasPositionedObjects : 1; |
510 unsigned m_hasPercentHeightDescendants : 1; | 508 unsigned m_hasPercentHeightDescendants : 1; |
511 | 509 |
512 // LayoutRubyBase objects need to be able to split and merge, moving their c
hildren around | 510 // LayoutRubyBase objects need to be able to split and merge, moving their c
hildren around |
513 // (calling moveChildTo, moveAllChildrenTo, and makeChildrenNonInline). | 511 // (calling moveChildTo, moveAllChildrenTo, and makeChildrenNonInline). |
514 friend class LayoutRubyBase; | 512 friend class LayoutRubyBase; |
515 // FIXME-BLOCKFLOW: Remove this when the line layout stuff has all moved out
of LayoutBlock | 513 // FIXME-BLOCKFLOW: Remove this when the line layout stuff has all moved out
of LayoutBlock |
516 friend class LineBreaker; | 514 friend class LineBreaker; |
517 | 515 |
518 // FIXME: This is temporary as we move code that accesses block flow | 516 // FIXME: This is temporary as we move code that accesses block flow |
519 // member variables out of LayoutBlock and into LayoutBlockFlow. | 517 // member variables out of LayoutBlock and into LayoutBlockFlow. |
520 friend class LayoutBlockFlow; | 518 friend class LayoutBlockFlow; |
521 }; | 519 }; |
522 | 520 |
523 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutBlock, isLayoutBlock()); | 521 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutBlock, isLayoutBlock()); |
524 | 522 |
525 } // namespace blink | 523 } // namespace blink |
526 | 524 |
527 #endif // LayoutBlock_h | 525 #endif // LayoutBlock_h |
OLD | NEW |