| 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-2013 Apple Inc. All rights reserved. | 5 * Copyright (C) 2003-2013 Apple Inc. All rights reserved. |
| 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
| 7 * Copyright (C) 2013 Google Inc. All rights reserved. | 7 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 8 * | 8 * |
| 9 * Redistribution and use in source and binary forms, with or without | 9 * Redistribution and use in source and binary forms, with or without |
| 10 * modification, are permitted provided that the following conditions are | 10 * modification, are permitted provided that the following conditions are |
| (...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 return adjustLogicalRightOffsetForLine(logicalRightFloatOffsetForLine(lo
gicalTop, fixedOffset, logicalHeight), applyTextIndent); | 249 return adjustLogicalRightOffsetForLine(logicalRightFloatOffsetForLine(lo
gicalTop, fixedOffset, logicalHeight), applyTextIndent); |
| 250 } | 250 } |
| 251 LayoutUnit logicalLeftOffsetForLine(LayoutUnit logicalTop, LayoutUnit fixedO
ffset, bool applyTextIndent, LayoutUnit logicalHeight = 0) const | 251 LayoutUnit logicalLeftOffsetForLine(LayoutUnit logicalTop, LayoutUnit fixedO
ffset, bool applyTextIndent, LayoutUnit logicalHeight = 0) const |
| 252 { | 252 { |
| 253 return adjustLogicalLeftOffsetForLine(logicalLeftFloatOffsetForLine(logi
calTop, fixedOffset, logicalHeight), applyTextIndent); | 253 return adjustLogicalLeftOffsetForLine(logicalLeftFloatOffsetForLine(logi
calTop, fixedOffset, logicalHeight), applyTextIndent); |
| 254 } | 254 } |
| 255 | 255 |
| 256 virtual void insertedIntoTree() OVERRIDE; | 256 virtual void insertedIntoTree() OVERRIDE; |
| 257 virtual void willBeDestroyed() OVERRIDE; | 257 virtual void willBeDestroyed() OVERRIDE; |
| 258 private: | 258 private: |
| 259 void layoutBlockFlow(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0
); | 259 void layoutBlockFlow(bool relayoutChildren); |
| 260 void layoutBlockChildren(bool relayoutChildren, LayoutUnit& maxFloatLogicalB
ottom, SubtreeLayoutScope&, LayoutUnit beforeEdge, LayoutUnit afterEdge); | 260 void layoutBlockChildren(bool relayoutChildren, LayoutUnit& maxFloatLogicalB
ottom, SubtreeLayoutScope&, LayoutUnit beforeEdge, LayoutUnit afterEdge); |
| 261 | 261 |
| 262 void layoutBlockChild(RenderBox* child, MarginInfo&, LayoutUnit& previousFlo
atLogicalBottom, LayoutUnit& maxFloatLogicalBottom); | 262 void layoutBlockChild(RenderBox* child, MarginInfo&, LayoutUnit& previousFlo
atLogicalBottom, LayoutUnit& maxFloatLogicalBottom); |
| 263 void adjustPositionedBlock(RenderBox* child, const MarginInfo&); | 263 void adjustPositionedBlock(RenderBox* child, const MarginInfo&); |
| 264 void adjustFloatingBlock(const MarginInfo&); | 264 void adjustFloatingBlock(const MarginInfo&); |
| 265 | 265 |
| 266 LayoutPoint flipFloatForWritingModeForChild(const FloatingObject*, const Lay
outPoint&) const; | 266 LayoutPoint flipFloatForWritingModeForChild(const FloatingObject*, const Lay
outPoint&) const; |
| 267 | 267 |
| 268 LayoutUnit xPositionForFloatIncludingMargin(const FloatingObject* child) con
st | 268 LayoutUnit xPositionForFloatIncludingMargin(const FloatingObject* child) con
st |
| 269 { | 269 { |
| (...skipping 16 matching lines...) Expand all Loading... |
| 286 FloatingObject* insertFloatingObject(RenderBox*); | 286 FloatingObject* insertFloatingObject(RenderBox*); |
| 287 void removeFloatingObject(RenderBox*); | 287 void removeFloatingObject(RenderBox*); |
| 288 void removeFloatingObjectsBelow(FloatingObject*, int logicalOffset); | 288 void removeFloatingObjectsBelow(FloatingObject*, int logicalOffset); |
| 289 | 289 |
| 290 // Called from lineWidth, to position the floats added in the last line. | 290 // Called from lineWidth, to position the floats added in the last line. |
| 291 // Returns true if and only if it has positioned any floats. | 291 // Returns true if and only if it has positioned any floats. |
| 292 bool positionNewFloats(); | 292 bool positionNewFloats(); |
| 293 | 293 |
| 294 LayoutUnit getClearDelta(RenderBox* child, LayoutUnit yPos); | 294 LayoutUnit getClearDelta(RenderBox* child, LayoutUnit yPos); |
| 295 | 295 |
| 296 bool hasOverhangingFloats() { return parent() && !hasColumns() && containsFl
oats() && lowestFloatLogicalBottom() > logicalHeight(); } | 296 bool hasOverhangingFloats() { return parent() && containsFloats() && lowestF
loatLogicalBottom() > logicalHeight(); } |
| 297 bool hasOverhangingFloat(RenderBox*); | 297 bool hasOverhangingFloat(RenderBox*); |
| 298 void addIntrudingFloats(RenderBlockFlow* prev, LayoutUnit xoffset, LayoutUni
t yoffset); | 298 void addIntrudingFloats(RenderBlockFlow* prev, LayoutUnit xoffset, LayoutUni
t yoffset); |
| 299 LayoutUnit addOverhangingFloats(RenderBlockFlow* child, bool makeChildPaintO
therFloats); | 299 LayoutUnit addOverhangingFloats(RenderBlockFlow* child, bool makeChildPaintO
therFloats); |
| 300 | 300 |
| 301 LayoutUnit lowestFloatLogicalBottom(FloatingObject::Type = FloatingObject::F
loatLeftRight) const; | 301 LayoutUnit lowestFloatLogicalBottom(FloatingObject::Type = FloatingObject::F
loatLeftRight) const; |
| 302 LayoutUnit nextFloatLogicalBottomBelow(LayoutUnit, ShapeOutsideFloatOffsetMo
de = ShapeOutsideFloatMarginBoxOffset) const; | 302 LayoutUnit nextFloatLogicalBottomBelow(LayoutUnit, ShapeOutsideFloatOffsetMo
de = ShapeOutsideFloatMarginBoxOffset) const; |
| 303 | 303 |
| 304 virtual bool hitTestFloats(const HitTestRequest&, HitTestResult&, const HitT
estLocation& locationInContainer, const LayoutPoint& accumulatedOffset) OVERRIDE
FINAL; | 304 virtual bool hitTestFloats(const HitTestRequest&, HitTestResult&, const HitT
estLocation& locationInContainer, const LayoutPoint& accumulatedOffset) OVERRIDE
FINAL; |
| 305 | 305 |
| 306 virtual void repaintOverhangingFloats(bool paintAllDescendants) OVERRIDE FIN
AL; | 306 virtual void repaintOverhangingFloats(bool paintAllDescendants) OVERRIDE FIN
AL; |
| 307 virtual void repaintOverflow() OVERRIDE FINAL; | 307 virtual void repaintOverflow() OVERRIDE FINAL; |
| 308 virtual void paintFloats(PaintInfo&, const LayoutPoint&, bool preservePhase
= false) OVERRIDE FINAL; | 308 virtual void paintFloats(PaintInfo&, const LayoutPoint&, bool preservePhase
= false) OVERRIDE FINAL; |
| 309 virtual void clipOutFloatingObjects(RenderBlock*, const PaintInfo*, const La
youtPoint&, const LayoutSize&) OVERRIDE; | 309 virtual void clipOutFloatingObjects(RenderBlock*, const PaintInfo*, const La
youtPoint&, const LayoutSize&) OVERRIDE; |
| 310 void clearFloats(EClear); | 310 void clearFloats(EClear); |
| 311 | 311 |
| 312 LayoutUnit logicalRightFloatOffsetForLine(LayoutUnit logicalTop, LayoutUnit
fixedOffset, LayoutUnit logicalHeight) const; | 312 LayoutUnit logicalRightFloatOffsetForLine(LayoutUnit logicalTop, LayoutUnit
fixedOffset, LayoutUnit logicalHeight) const; |
| 313 LayoutUnit logicalLeftFloatOffsetForLine(LayoutUnit logicalTop, LayoutUnit f
ixedOffset, LayoutUnit logicalHeight) const; | 313 LayoutUnit logicalLeftFloatOffsetForLine(LayoutUnit logicalTop, LayoutUnit f
ixedOffset, LayoutUnit logicalHeight) const; |
| 314 | 314 |
| 315 LayoutUnit logicalRightOffsetForPositioningFloat(LayoutUnit logicalTop, Layo
utUnit fixedOffset, bool applyTextIndent, LayoutUnit* heightRemaining) const; | 315 LayoutUnit logicalRightOffsetForPositioningFloat(LayoutUnit logicalTop, Layo
utUnit fixedOffset, bool applyTextIndent, LayoutUnit* heightRemaining) const; |
| 316 LayoutUnit logicalLeftOffsetForPositioningFloat(LayoutUnit logicalTop, Layou
tUnit fixedOffset, bool applyTextIndent, LayoutUnit* heightRemaining) const; | 316 LayoutUnit logicalLeftOffsetForPositioningFloat(LayoutUnit logicalTop, Layou
tUnit fixedOffset, bool applyTextIndent, LayoutUnit* heightRemaining) const; |
| 317 | 317 |
| 318 LayoutUnit adjustLogicalRightOffsetForLine(LayoutUnit offsetFromFloats, bool
applyTextIndent) const; | 318 LayoutUnit adjustLogicalRightOffsetForLine(LayoutUnit offsetFromFloats, bool
applyTextIndent) const; |
| 319 LayoutUnit adjustLogicalLeftOffsetForLine(LayoutUnit offsetFromFloats, bool
applyTextIndent) const; | 319 LayoutUnit adjustLogicalLeftOffsetForLine(LayoutUnit offsetFromFloats, bool
applyTextIndent) const; |
| 320 | 320 |
| 321 virtual void adjustForBorderFit(LayoutUnit x, LayoutUnit& left, LayoutUnit&
right) const OVERRIDE; // Helper function for borderFitAdjust | 321 virtual void adjustForBorderFit(LayoutUnit x, LayoutUnit& left, LayoutUnit&
right) const OVERRIDE; // Helper function for borderFitAdjust |
| 322 | 322 |
| 323 virtual RootInlineBox* createRootInlineBox(); // Subclassed by SVG | 323 virtual RootInlineBox* createRootInlineBox(); // Subclassed by SVG |
| 324 | 324 |
| 325 void updateLogicalWidthForAlignment(const ETextAlign&, const RootInlineBox*,
BidiRun* trailingSpaceRun, float& logicalLeft, float& totalLogicalWidth, float&
availableLogicalWidth, int expansionOpportunityCount); | 325 void updateLogicalWidthForAlignment(const ETextAlign&, const RootInlineBox*,
BidiRun* trailingSpaceRun, float& logicalLeft, float& totalLogicalWidth, float&
availableLogicalWidth, int expansionOpportunityCount); |
| 326 virtual bool relayoutForPagination(bool hasSpecifiedPageLogicalHeight, Layou
tUnit pageLogicalHeight, LayoutStateMaintainer&); | 326 virtual bool relayoutForPagination(bool hasSpecifiedPageLogicalHeight, Layou
tUnit pageLogicalHeight, LayoutStateMaintainer&) { return false; } |
| 327 public: | 327 public: |
| 328 struct FloatWithRect { | 328 struct FloatWithRect { |
| 329 FloatWithRect(RenderBox* f) | 329 FloatWithRect(RenderBox* f) |
| 330 : object(f) | 330 : object(f) |
| 331 , rect(LayoutRect(f->x() - f->marginLeft(), f->y() - f->marginTop(),
f->width() + f->marginWidth(), f->height() + f->marginHeight())) | 331 , rect(LayoutRect(f->x() - f->marginLeft(), f->y() - f->marginTop(),
f->width() + f->marginWidth(), f->height() + f->marginHeight())) |
| 332 , everHadLayout(f->everHadLayout()) | 332 , everHadLayout(f->everHadLayout()) |
| 333 { | 333 { |
| 334 } | 334 } |
| 335 | 335 |
| 336 RenderBox* object; | 336 RenderBox* object; |
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 520 | 520 |
| 521 // END METHODS DEFINED IN RenderBlockLineLayout | 521 // END METHODS DEFINED IN RenderBlockLineLayout |
| 522 | 522 |
| 523 }; | 523 }; |
| 524 | 524 |
| 525 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBlockFlow, isRenderBlockFlow()); | 525 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBlockFlow, isRenderBlockFlow()); |
| 526 | 526 |
| 527 } // namespace WebCore | 527 } // namespace WebCore |
| 528 | 528 |
| 529 #endif // RenderBlockFlow_h | 529 #endif // RenderBlockFlow_h |
| OLD | NEW |