| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Apple Inc. All rights reserved. | 2 * Copyright (C) 2011 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 1536 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1547 LayoutUnit columnBreadth = LayoutUnit(); | 1547 LayoutUnit columnBreadth = LayoutUnit(); |
| 1548 offsetAndBreadthForPositionedChild(*child, ForColumns, columnOffset, col
umnBreadth); | 1548 offsetAndBreadthForPositionedChild(*child, ForColumns, columnOffset, col
umnBreadth); |
| 1549 LayoutUnit rowOffset = LayoutUnit(); | 1549 LayoutUnit rowOffset = LayoutUnit(); |
| 1550 LayoutUnit rowBreadth = LayoutUnit(); | 1550 LayoutUnit rowBreadth = LayoutUnit(); |
| 1551 offsetAndBreadthForPositionedChild(*child, ForRows, rowOffset, rowBreadt
h); | 1551 offsetAndBreadthForPositionedChild(*child, ForRows, rowOffset, rowBreadt
h); |
| 1552 | 1552 |
| 1553 child->setOverrideContainingBlockContentLogicalWidth(columnBreadth); | 1553 child->setOverrideContainingBlockContentLogicalWidth(columnBreadth); |
| 1554 child->setOverrideContainingBlockContentLogicalHeight(rowBreadth); | 1554 child->setOverrideContainingBlockContentLogicalHeight(rowBreadth); |
| 1555 child->setExtraInlineOffset(columnOffset); | 1555 child->setExtraInlineOffset(columnOffset); |
| 1556 child->setExtraBlockOffset(rowOffset); | 1556 child->setExtraBlockOffset(rowOffset); |
| 1557 |
| 1558 if (child->parent() == this) { |
| 1559 PaintLayer* childLayer = child->layer(); |
| 1560 childLayer->setStaticInlinePosition(borderStart() + columnOffset); |
| 1561 childLayer->setStaticBlockPosition(borderBefore() + rowOffset); |
| 1562 } |
| 1557 } | 1563 } |
| 1558 | 1564 |
| 1559 LayoutBlock::layoutPositionedObjects(relayoutChildren, info); | 1565 LayoutBlock::layoutPositionedObjects(relayoutChildren, info); |
| 1560 } | 1566 } |
| 1561 | 1567 |
| 1562 void LayoutGrid::offsetAndBreadthForPositionedChild(const LayoutBox& child, Grid
TrackSizingDirection direction, LayoutUnit& offset, LayoutUnit& breadth) | 1568 void LayoutGrid::offsetAndBreadthForPositionedChild(const LayoutBox& child, Grid
TrackSizingDirection direction, LayoutUnit& offset, LayoutUnit& breadth) |
| 1563 { | 1569 { |
| 1564 ASSERT(!isOrthogonalChild(child)); | 1570 ASSERT(!isOrthogonalChild(child)); |
| 1565 bool isForColumns = direction == ForColumns; | 1571 bool isForColumns = direction == ForColumns; |
| 1566 | 1572 |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1634 } else { | 1640 } else { |
| 1635 offset = translateRTLCoordinate(m_columnPositions[endLine]) - border
LogicalLeft(); | 1641 offset = translateRTLCoordinate(m_columnPositions[endLine]) - border
LogicalLeft(); |
| 1636 | 1642 |
| 1637 if (endLine > firstExplicitLine && endLine < lastExplicitLine) { | 1643 if (endLine > firstExplicitLine && endLine < lastExplicitLine) { |
| 1638 offset += guttersSize(direction, 2); | 1644 offset += guttersSize(direction, 2); |
| 1639 offset += isForColumns ? m_offsetBetweenColumns : m_offsetBetwee
nRows; | 1645 offset += isForColumns ? m_offsetBetweenColumns : m_offsetBetwee
nRows; |
| 1640 } | 1646 } |
| 1641 } | 1647 } |
| 1642 } | 1648 } |
| 1643 | 1649 |
| 1644 if (child.parent() == this && !startIsAuto) { | |
| 1645 // If column/row start is "auto" the static position has been already se
t in prepareChildForPositionedLayout(). | |
| 1646 PaintLayer* childLayer = child.layer(); | |
| 1647 if (isForColumns) | |
| 1648 childLayer->setStaticInlinePosition(borderStart() + offset); | |
| 1649 else | |
| 1650 childLayer->setStaticBlockPosition(borderBefore() + offset); | |
| 1651 } | |
| 1652 } | 1650 } |
| 1653 | 1651 |
| 1654 GridArea LayoutGrid::cachedGridArea(const LayoutBox& gridItem) const | 1652 GridArea LayoutGrid::cachedGridArea(const LayoutBox& gridItem) const |
| 1655 { | 1653 { |
| 1656 ASSERT(m_gridItemArea.contains(&gridItem)); | 1654 ASSERT(m_gridItemArea.contains(&gridItem)); |
| 1657 return m_gridItemArea.get(&gridItem); | 1655 return m_gridItemArea.get(&gridItem); |
| 1658 } | 1656 } |
| 1659 | 1657 |
| 1660 GridSpan LayoutGrid::cachedGridSpan(const LayoutBox& gridItem, GridTrackSizingDi
rection direction) const | 1658 GridSpan LayoutGrid::cachedGridSpan(const LayoutBox& gridItem, GridTrackSizingDi
rection direction) const |
| 1661 { | 1659 { |
| (...skipping 478 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2140 | 2138 |
| 2141 return LayoutPoint(rowAxisOffset, columnAxisOffsetForChild(child, sizingData
)); | 2139 return LayoutPoint(rowAxisOffset, columnAxisOffsetForChild(child, sizingData
)); |
| 2142 } | 2140 } |
| 2143 | 2141 |
| 2144 void LayoutGrid::paintChildren(const PaintInfo& paintInfo, const LayoutPoint& pa
intOffset) const | 2142 void LayoutGrid::paintChildren(const PaintInfo& paintInfo, const LayoutPoint& pa
intOffset) const |
| 2145 { | 2143 { |
| 2146 GridPainter(*this).paintChildren(paintInfo, paintOffset); | 2144 GridPainter(*this).paintChildren(paintInfo, paintOffset); |
| 2147 } | 2145 } |
| 2148 | 2146 |
| 2149 } // namespace blink | 2147 } // namespace blink |
| OLD | NEW |