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-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 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 112 | 112 |
| 113 void moveAllChildrenIncludingFloatsTo(RenderBlock* toBlock, bool fullRemoveI nsert); | 113 void moveAllChildrenIncludingFloatsTo(RenderBlock* toBlock, bool fullRemoveI nsert); |
| 114 | 114 |
| 115 bool generatesLineBoxesForInlineChild(RenderObject*); | 115 bool generatesLineBoxesForInlineChild(RenderObject*); |
| 116 | 116 |
| 117 LayoutUnit logicalTopForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->y() : floatingObject->x(); } | 117 LayoutUnit logicalTopForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->y() : floatingObject->x(); } |
| 118 LayoutUnit logicalBottomForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->maxY() : floatingObject->m axX(); } | 118 LayoutUnit logicalBottomForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->maxY() : floatingObject->m axX(); } |
| 119 LayoutUnit logicalLeftForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->x() : floatingObject->y(); } | 119 LayoutUnit logicalLeftForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->x() : floatingObject->y(); } |
| 120 LayoutUnit logicalRightForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->maxX() : floatingObject->ma xY(); } | 120 LayoutUnit logicalRightForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->maxX() : floatingObject->ma xY(); } |
| 121 LayoutUnit logicalWidthForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->width() : floatingObject->h eight(); } | 121 LayoutUnit logicalWidthForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->width() : floatingObject->h eight(); } |
| 122 LayoutUnit logicalHeightForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->height() : floatingObject- >width(); } | |
| 123 LayoutSize logicalSizeForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? LayoutSize(floatingObject->width(), floating Object->height()) : LayoutSize(floatingObject->height(), floatingObject->width() ); } | |
|
Julien - ping for review
2014/10/03 01:26:42
We should keep logicalHeightForFloat() but on the
| |
| 124 | 122 |
| 125 int pixelSnappedLogicalTopForFloat(const FloatingObject* floatingObject) con st { return isHorizontalWritingMode() ? floatingObject->frameRect().pixelSnapped Y() : floatingObject->frameRect().pixelSnappedX(); } | 123 int pixelSnappedLogicalTopForFloat(const FloatingObject* floatingObject) con st { return isHorizontalWritingMode() ? floatingObject->frameRect().pixelSnapped Y() : floatingObject->frameRect().pixelSnappedX(); } |
| 126 int pixelSnappedLogicalBottomForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->frameRect().pixelSnap pedMaxY() : floatingObject->frameRect().pixelSnappedMaxX(); } | 124 int pixelSnappedLogicalBottomForFloat(const FloatingObject* floatingObject) const { return isHorizontalWritingMode() ? floatingObject->frameRect().pixelSnap pedMaxY() : floatingObject->frameRect().pixelSnappedMaxX(); } |
| 127 int pixelSnappedLogicalLeftForFloat(const FloatingObject* floatingObject) co nst { return isHorizontalWritingMode() ? floatingObject->frameRect().pixelSnappe dX() : floatingObject->frameRect().pixelSnappedY(); } | |
| 128 int pixelSnappedLogicalRightForFloat(const FloatingObject* floatingObject) c onst { return isHorizontalWritingMode() ? floatingObject->frameRect().pixelSnapp edMaxX() : floatingObject->frameRect().pixelSnappedMaxY(); } | |
|
Julien - ping for review
2014/10/03 01:26:42
We should keep them for consistency too.
| |
| 129 | 125 |
| 130 void setLogicalTopForFloat(FloatingObject* floatingObject, LayoutUnit logica lTop) | 126 void setLogicalTopForFloat(FloatingObject* floatingObject, LayoutUnit logica lTop) |
| 131 { | 127 { |
| 132 if (isHorizontalWritingMode()) | 128 if (isHorizontalWritingMode()) |
| 133 floatingObject->setY(logicalTop); | 129 floatingObject->setY(logicalTop); |
| 134 else | 130 else |
| 135 floatingObject->setX(logicalTop); | 131 floatingObject->setX(logicalTop); |
| 136 } | 132 } |
| 137 void setLogicalLeftForFloat(FloatingObject* floatingObject, LayoutUnit logic alLeft) | 133 void setLogicalLeftForFloat(FloatingObject* floatingObject, LayoutUnit logic alLeft) |
| 138 { | 134 { |
| (...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 473 // line layout code is separated from RenderBlock and RenderBlockFlow. | 469 // line layout code is separated from RenderBlock and RenderBlockFlow. |
| 474 // START METHODS DEFINED IN RenderBlockLineLayout | 470 // START METHODS DEFINED IN RenderBlockLineLayout |
| 475 private: | 471 private: |
| 476 InlineFlowBox* createLineBoxes(RenderObject*, const LineInfo&, InlineBox* ch ildBox); | 472 InlineFlowBox* createLineBoxes(RenderObject*, const LineInfo&, InlineBox* ch ildBox); |
| 477 RootInlineBox* constructLine(BidiRunList<BidiRun>&, const LineInfo&); | 473 RootInlineBox* constructLine(BidiRunList<BidiRun>&, const LineInfo&); |
| 478 void setMarginsForRubyRun(BidiRun*, RenderRubyRun*, RenderObject*, const Lin eInfo&); | 474 void setMarginsForRubyRun(BidiRun*, RenderRubyRun*, RenderObject*, const Lin eInfo&); |
| 479 void computeInlineDirectionPositionsForLine(RootInlineBox*, const LineInfo&, BidiRun* firstRun, BidiRun* trailingSpaceRun, bool reachedEnd, GlyphOverflowAnd FallbackFontsMap&, VerticalPositionCache&, WordMeasurements&); | 475 void computeInlineDirectionPositionsForLine(RootInlineBox*, const LineInfo&, BidiRun* firstRun, BidiRun* trailingSpaceRun, bool reachedEnd, GlyphOverflowAnd FallbackFontsMap&, VerticalPositionCache&, WordMeasurements&); |
| 480 BidiRun* computeInlineDirectionPositionsForSegment(RootInlineBox*, const Lin eInfo&, ETextAlign, float& logicalLeft, | 476 BidiRun* computeInlineDirectionPositionsForSegment(RootInlineBox*, const Lin eInfo&, ETextAlign, float& logicalLeft, |
| 481 float& availableLogicalWidth, BidiRun* firstRun, BidiRun* trailingSpaceR un, GlyphOverflowAndFallbackFontsMap& textBoxDataMap, VerticalPositionCache&, Wo rdMeasurements&); | 477 float& availableLogicalWidth, BidiRun* firstRun, BidiRun* trailingSpaceR un, GlyphOverflowAndFallbackFontsMap& textBoxDataMap, VerticalPositionCache&, Wo rdMeasurements&); |
| 482 void computeBlockDirectionPositionsForLine(RootInlineBox*, BidiRun*, GlyphOv erflowAndFallbackFontsMap&, VerticalPositionCache&); | 478 void computeBlockDirectionPositionsForLine(RootInlineBox*, BidiRun*, GlyphOv erflowAndFallbackFontsMap&, VerticalPositionCache&); |
| 483 BidiRun* handleTrailingSpaces(BidiRunList<BidiRun>&, BidiContext*); | |
| 484 void appendFloatingObjectToLastLine(FloatingObject*); | 479 void appendFloatingObjectToLastLine(FloatingObject*); |
| 485 // Helper function for layoutInlineChildren() | 480 // Helper function for layoutInlineChildren() |
| 486 RootInlineBox* createLineBoxesFromBidiRuns(unsigned bidiLevel, BidiRunList<B idiRun>&, const InlineIterator& end, LineInfo&, VerticalPositionCache&, BidiRun* trailingSpaceRun, WordMeasurements&); | 481 RootInlineBox* createLineBoxesFromBidiRuns(unsigned bidiLevel, BidiRunList<B idiRun>&, const InlineIterator& end, LineInfo&, VerticalPositionCache&, BidiRun* trailingSpaceRun, WordMeasurements&); |
| 487 void layoutRunsAndFloats(LineLayoutState&); | 482 void layoutRunsAndFloats(LineLayoutState&); |
| 488 const InlineIterator& restartLayoutRunsAndFloatsInRange(LayoutUnit oldLogica lHeight, LayoutUnit newLogicalHeight, FloatingObject* lastFloatFromPreviousLine , InlineBidiResolver&, const InlineIterator&); | 483 const InlineIterator& restartLayoutRunsAndFloatsInRange(LayoutUnit oldLogica lHeight, LayoutUnit newLogicalHeight, FloatingObject* lastFloatFromPreviousLine , InlineBidiResolver&, const InlineIterator&); |
| 489 void layoutRunsAndFloatsInRange(LineLayoutState&, InlineBidiResolver&, | 484 void layoutRunsAndFloatsInRange(LineLayoutState&, InlineBidiResolver&, |
| 490 const InlineIterator& cleanLineStart, const BidiStatus& cleanLineBidiSta tus); | 485 const InlineIterator& cleanLineStart, const BidiStatus& cleanLineBidiSta tus); |
| 491 void linkToEndLineIfNeeded(LineLayoutState&); | 486 void linkToEndLineIfNeeded(LineLayoutState&); |
| 492 static void markDirtyFloatsForPaintInvalidation(Vector<FloatWithRect>& float s); | 487 static void markDirtyFloatsForPaintInvalidation(Vector<FloatWithRect>& float s); |
| 493 void checkFloatsInCleanLine(RootInlineBox*, Vector<FloatWithRect>&, size_t& floatIndex, bool& encounteredNewFloat, bool& dirtiedByFloat); | 488 void checkFloatsInCleanLine(RootInlineBox*, Vector<FloatWithRect>&, size_t& floatIndex, bool& encounteredNewFloat, bool& dirtiedByFloat); |
| (...skipping 10 matching lines...) Expand all Loading... | |
| 504 | 499 |
| 505 // END METHODS DEFINED IN RenderBlockLineLayout | 500 // END METHODS DEFINED IN RenderBlockLineLayout |
| 506 | 501 |
| 507 }; | 502 }; |
| 508 | 503 |
| 509 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBlockFlow, isRenderBlockFlow()); | 504 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBlockFlow, isRenderBlockFlow()); |
| 510 | 505 |
| 511 } // namespace blink | 506 } // namespace blink |
| 512 | 507 |
| 513 #endif // RenderBlockFlow_h | 508 #endif // RenderBlockFlow_h |
| OLD | NEW |