Chromium Code Reviews| 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 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 59 template <class Iterator> struct MidpointState; | 59 template <class Iterator> struct MidpointState; |
| 60 typedef BidiResolver<InlineIterator, BidiRun> InlineBidiResolver; | 60 typedef BidiResolver<InlineIterator, BidiRun> InlineBidiResolver; |
| 61 typedef MidpointState<InlineIterator> LineMidpointState; | 61 typedef MidpointState<InlineIterator> LineMidpointState; |
| 62 typedef WTF::ListHashSet<RenderBox*, 16> TrackedRendererListHashSet; | 62 typedef WTF::ListHashSet<RenderBox*, 16> TrackedRendererListHashSet; |
| 63 typedef WTF::HashMap<const RenderBlock*, OwnPtr<TrackedRendererListHashSet> > Tr ackedDescendantsMap; | 63 typedef WTF::HashMap<const RenderBlock*, OwnPtr<TrackedRendererListHashSet> > Tr ackedDescendantsMap; |
| 64 typedef WTF::HashMap<const RenderBox*, OwnPtr<HashSet<RenderBlock*> > > TrackedC ontainerMap; | 64 typedef WTF::HashMap<const RenderBox*, OwnPtr<HashSet<RenderBlock*> > > TrackedC ontainerMap; |
| 65 typedef Vector<WordMeasurement, 64> WordMeasurements; | 65 typedef Vector<WordMeasurement, 64> WordMeasurements; |
| 66 | 66 |
| 67 enum CaretType { CursorCaret, DragCaret }; | 67 enum CaretType { CursorCaret, DragCaret }; |
| 68 enum ContainingBlockState { NewContainingBlock, SameContainingBlock }; | 68 enum ContainingBlockState { NewContainingBlock, SameContainingBlock }; |
| 69 enum ShapeOutsideFloatOffsetMode { ShapeOutsideFloatShapeOffset, ShapeOutsideFlo atBoundingBoxOffset }; | |
|
Julien - ping for review
2013/06/06 20:49:08
We don't need this anymore.
| |
| 69 | 70 |
| 70 enum TextRunFlag { | 71 enum TextRunFlag { |
| 71 DefaultTextRunFlags = 0, | 72 DefaultTextRunFlags = 0, |
| 72 RespectDirection = 1 << 0, | 73 RespectDirection = 1 << 0, |
| 73 RespectDirectionOverride = 1 << 1 | 74 RespectDirectionOverride = 1 << 1 |
| 74 }; | 75 }; |
| 75 | 76 |
| 76 typedef unsigned TextRunFlags; | 77 typedef unsigned TextRunFlags; |
| 77 | 78 |
| 78 class RenderBlock : public RenderBox { | 79 class RenderBlock : public RenderBox { |
| (...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 499 virtual void layout(); | 500 virtual void layout(); |
| 500 | 501 |
| 501 void layoutPositionedObjects(bool relayoutChildren, bool fixedPositionObject sOnly = false); | 502 void layoutPositionedObjects(bool relayoutChildren, bool fixedPositionObject sOnly = false); |
| 502 void markFixedPositionObjectForLayoutIfNeeded(RenderObject* child); | 503 void markFixedPositionObjectForLayoutIfNeeded(RenderObject* child); |
| 503 | 504 |
| 504 virtual void paint(PaintInfo&, const LayoutPoint&); | 505 virtual void paint(PaintInfo&, const LayoutPoint&); |
| 505 virtual void paintObject(PaintInfo&, const LayoutPoint&); | 506 virtual void paintObject(PaintInfo&, const LayoutPoint&); |
| 506 virtual void paintChildren(PaintInfo&, const LayoutPoint&); | 507 virtual void paintChildren(PaintInfo&, const LayoutPoint&); |
| 507 void paintChild(RenderBox*, PaintInfo&, const LayoutPoint&); | 508 void paintChild(RenderBox*, PaintInfo&, const LayoutPoint&); |
| 508 | 509 |
| 509 LayoutUnit logicalRightOffsetForLine(LayoutUnit position, LayoutUnit fixedOf fset, bool applyTextIndent, LayoutUnit* logicalHeightRemaining = 0, LayoutUnit l ogicalHeight = 0) const; | 510 LayoutUnit logicalRightOffsetForLine(LayoutUnit logicalTop, LayoutUnit fixed Offset, bool applyTextIndent, LayoutUnit* heightRemaining = 0, LayoutUnit logica lHeight = 0) const |
| 510 LayoutUnit logicalLeftOffsetForLine(LayoutUnit position, LayoutUnit fixedOff set, bool applyTextIndent, LayoutUnit* logicalHeightRemaining = 0, LayoutUnit lo gicalHeight = 0) const; | 511 { |
| 512 return logicalRightOffsetForLineWithoutFloats(logicalRightFloatOffsetFor Line(logicalTop, fixedOffset, heightRemaining, logicalHeight, ShapeOutsideFloatS hapeOffset), applyTextIndent); | |
| 513 } | |
| 514 LayoutUnit logicalLeftOffsetForLine(LayoutUnit logicalTop, LayoutUnit fixedO ffset, bool applyTextIndent, LayoutUnit* heightRemaining = 0, LayoutUnit logical Height = 0) const | |
| 515 { | |
| 516 return logicalLeftOffsetForLineWithoutFloats(logicalLeftFloatOffsetForLi ne(logicalTop, fixedOffset, heightRemaining, logicalHeight, ShapeOutsideFloatSha peOffset), applyTextIndent); | |
| 517 } | |
| 518 LayoutUnit logicalRightOffsetForLineUsingFloatBoundingBox(LayoutUnit logical Top, LayoutUnit fixedOffset, bool applyTextIndent, LayoutUnit* heightRemaining = 0, LayoutUnit logicalHeight = 0) const | |
| 519 { | |
| 520 return logicalRightOffsetForLineWithoutFloats(logicalRightFloatOffsetFor Line(logicalTop, fixedOffset, heightRemaining, logicalHeight, ShapeOutsideFloatB oundingBoxOffset), applyTextIndent); | |
| 521 } | |
| 522 LayoutUnit logicalLeftOffsetForLineUsingFloatBoundingBox(LayoutUnit logicalT op, LayoutUnit fixedOffset, bool applyTextIndent, LayoutUnit* heightRemaining = 0, LayoutUnit logicalHeight = 0) const | |
| 523 { | |
| 524 return logicalLeftOffsetForLineWithoutFloats(logicalLeftFloatOffsetForLi ne(logicalTop, fixedOffset, heightRemaining, logicalHeight, ShapeOutsideFloatBou ndingBoxOffset), applyTextIndent); | |
| 525 } | |
| 511 | 526 |
| 512 virtual ETextAlign textAlignmentForLine(bool endsWithSoftBreak) const; | 527 virtual ETextAlign textAlignmentForLine(bool endsWithSoftBreak) const; |
| 513 virtual void adjustInlineDirectionLineBounds(int /* expansionOpportunityCoun t */, float& /* logicalLeft */, float& /* logicalWidth */) const { } | 528 virtual void adjustInlineDirectionLineBounds(int /* expansionOpportunityCoun t */, float& /* logicalLeft */, float& /* logicalWidth */) const { } |
| 514 | 529 |
| 515 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) OVERRIDE; | 530 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) OVERRIDE; |
| 516 | 531 |
| 517 virtual void computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, Layo utUnit& maxLogicalWidth) const OVERRIDE; | 532 virtual void computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, Layo utUnit& maxLogicalWidth) const OVERRIDE; |
| 518 virtual void computePreferredLogicalWidths() OVERRIDE; | 533 virtual void computePreferredLogicalWidths() OVERRIDE; |
| 519 | 534 |
| 520 virtual int firstLineBoxBaseline() const; | 535 virtual int firstLineBoxBaseline() const; |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 565 } | 580 } |
| 566 | 581 |
| 567 bool updateRegionsAndExclusionsLogicalSize(RenderFlowThread*); | 582 bool updateRegionsAndExclusionsLogicalSize(RenderFlowThread*); |
| 568 void computeRegionRangeForBlock(RenderFlowThread*); | 583 void computeRegionRangeForBlock(RenderFlowThread*); |
| 569 | 584 |
| 570 void updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, RenderBox* ); | 585 void updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, RenderBox* ); |
| 571 | 586 |
| 572 virtual void checkForPaginationLogicalHeightChange(LayoutUnit& pageLogicalHe ight, bool& pageLogicalHeightChanged, bool& hasSpecifiedPageLogicalHeight); | 587 virtual void checkForPaginationLogicalHeightChange(LayoutUnit& pageLogicalHe ight, bool& pageLogicalHeightChanged, bool& hasSpecifiedPageLogicalHeight); |
| 573 | 588 |
| 574 private: | 589 private: |
| 590 LayoutUnit logicalRightFloatOffsetForLine(LayoutUnit logicalTop, LayoutUnit fixedOffset, LayoutUnit* heightRemaining, LayoutUnit logicalHeight, ShapeOutside FloatOffsetMode) const; | |
| 591 LayoutUnit logicalLeftFloatOffsetForLine(LayoutUnit logicalTop, LayoutUnit f ixedOffset, LayoutUnit* heightRemaining, LayoutUnit logicalHeight, ShapeOutsideF loatOffsetMode) const; | |
| 592 LayoutUnit logicalRightOffsetForLineWithoutFloats(LayoutUnit offsetFromFloat s, bool applyTextIndent) const; | |
| 593 LayoutUnit logicalLeftOffsetForLineWithoutFloats(LayoutUnit offsetFromFloats , bool applyTextIndent) const; | |
| 594 | |
| 575 void computeExclusionShapeSize(); | 595 void computeExclusionShapeSize(); |
| 576 void updateExclusionShapeInsideInfoAfterStyleChange(const ExclusionShapeValu e*, const ExclusionShapeValue* oldExclusionShape); | 596 void updateExclusionShapeInsideInfoAfterStyleChange(const ExclusionShapeValu e*, const ExclusionShapeValue* oldExclusionShape); |
| 577 | 597 |
| 578 virtual RenderObjectChildList* virtualChildren() OVERRIDE FINAL { return chi ldren(); } | 598 virtual RenderObjectChildList* virtualChildren() OVERRIDE FINAL { return chi ldren(); } |
| 579 virtual const RenderObjectChildList* virtualChildren() const OVERRIDE FINAL { return children(); } | 599 virtual const RenderObjectChildList* virtualChildren() const OVERRIDE FINAL { return children(); } |
| 580 | 600 |
| 581 virtual const char* renderName() const; | 601 virtual const char* renderName() const; |
| 582 | 602 |
| 583 virtual bool isRenderBlock() const OVERRIDE FINAL { return true; } | 603 virtual bool isRenderBlock() const OVERRIDE FINAL { return true; } |
| 584 virtual bool isBlockFlow() const OVERRIDE FINAL { return (!isInline() || isR eplaced()) && !isTable(); } | 604 virtual bool isBlockFlow() const OVERRIDE FINAL { return (!isInline() || isR eplaced()) && !isTable(); } |
| (...skipping 730 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1315 static String string(const int value); | 1335 static String string(const int value); |
| 1316 }; | 1336 }; |
| 1317 template<> struct ValueToString<RenderBlock::FloatingObject*> { | 1337 template<> struct ValueToString<RenderBlock::FloatingObject*> { |
| 1318 static String string(const RenderBlock::FloatingObject*); | 1338 static String string(const RenderBlock::FloatingObject*); |
| 1319 }; | 1339 }; |
| 1320 #endif | 1340 #endif |
| 1321 | 1341 |
| 1322 } // namespace WebCore | 1342 } // namespace WebCore |
| 1323 | 1343 |
| 1324 #endif // RenderBlock_h | 1344 #endif // RenderBlock_h |
| OLD | NEW |