| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google 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 are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 struct LineContext; | 89 struct LineContext; |
| 90 struct Violation; | 90 struct Violation; |
| 91 | 91 |
| 92 // Use an inline capacity of 8, since flexbox containers usually have less t
han 8 children. | 92 // Use an inline capacity of 8, since flexbox containers usually have less t
han 8 children. |
| 93 typedef Vector<LayoutRect, 8> ChildFrameRects; | 93 typedef Vector<LayoutRect, 8> ChildFrameRects; |
| 94 | 94 |
| 95 bool hasOrthogonalFlow(LayoutBox& child) const; | 95 bool hasOrthogonalFlow(LayoutBox& child) const; |
| 96 bool isColumnFlow() const; | 96 bool isColumnFlow() const; |
| 97 bool isLeftToRightFlow() const; | 97 bool isLeftToRightFlow() const; |
| 98 bool isMultiline() const; | 98 bool isMultiline() const; |
| 99 Length flexBasisForChild(LayoutBox& child) const; | 99 Length flexBasisForChild(const LayoutBox& child) const; |
| 100 LayoutUnit crossAxisExtentForChild(LayoutBox& child) const; | 100 LayoutUnit crossAxisExtentForChild(LayoutBox& child) const; |
| 101 LayoutUnit crossAxisIntrinsicExtentForChild(LayoutBox& child) const; | 101 LayoutUnit crossAxisIntrinsicExtentForChild(LayoutBox& child) const; |
| 102 LayoutUnit childIntrinsicHeight(LayoutBox& child) const; | 102 LayoutUnit childIntrinsicHeight(LayoutBox& child) const; |
| 103 LayoutUnit childIntrinsicWidth(LayoutBox& child) const; | 103 LayoutUnit childIntrinsicWidth(LayoutBox& child) const; |
| 104 LayoutUnit mainAxisExtentForChild(LayoutBox& child) const; | 104 LayoutUnit mainAxisExtentForChild(LayoutBox& child) const; |
| 105 LayoutUnit crossAxisExtent() const; | 105 LayoutUnit crossAxisExtent() const; |
| 106 LayoutUnit mainAxisExtent() const; | 106 LayoutUnit mainAxisExtent() const; |
| 107 LayoutUnit crossAxisContentExtent() const; | 107 LayoutUnit crossAxisContentExtent() const; |
| 108 LayoutUnit mainAxisContentExtent(LayoutUnit contentLogicalHeight); | 108 LayoutUnit mainAxisContentExtent(LayoutUnit contentLogicalHeight); |
| 109 LayoutUnit computeMainAxisExtentForChild(LayoutBox& child, SizeType, const L
ength& size); | 109 LayoutUnit computeMainAxisExtentForChild(LayoutBox& child, SizeType, const L
ength& size); |
| (...skipping 15 matching lines...) Expand all Loading... |
| 125 LayoutPoint flowAwareLocationForChild(LayoutBox& child) const; | 125 LayoutPoint flowAwareLocationForChild(LayoutBox& child) const; |
| 126 // FIXME: Supporting layout deltas. | 126 // FIXME: Supporting layout deltas. |
| 127 void setFlowAwareLocationForChild(LayoutBox& child, const LayoutPoint&); | 127 void setFlowAwareLocationForChild(LayoutBox& child, const LayoutPoint&); |
| 128 void adjustAlignmentForChild(LayoutBox& child, LayoutUnit); | 128 void adjustAlignmentForChild(LayoutBox& child, LayoutUnit); |
| 129 ItemPosition alignmentForChild(LayoutBox& child) const; | 129 ItemPosition alignmentForChild(LayoutBox& child) const; |
| 130 LayoutUnit mainAxisBorderAndPaddingExtentForChild(LayoutBox& child) const; | 130 LayoutUnit mainAxisBorderAndPaddingExtentForChild(LayoutBox& child) const; |
| 131 LayoutUnit computeInnerFlexBaseSizeForChild(LayoutBox& child, ChildLayoutTyp
e = LayoutIfNeeded); | 131 LayoutUnit computeInnerFlexBaseSizeForChild(LayoutBox& child, ChildLayoutTyp
e = LayoutIfNeeded); |
| 132 bool mainAxisLengthIsDefinite(LayoutBox& child, const Length& flexBasis) con
st; | 132 bool mainAxisLengthIsDefinite(LayoutBox& child, const Length& flexBasis) con
st; |
| 133 bool childFlexBaseSizeRequiresLayout(LayoutBox& child) const; | 133 bool childFlexBaseSizeRequiresLayout(LayoutBox& child) const; |
| 134 bool needToStretchChildLogicalHeight(LayoutBox& child) const; | 134 bool needToStretchChildLogicalHeight(LayoutBox& child) const; |
| 135 bool childHasIntrinsicMainAxisSize(const LayoutBox& child) const; |
| 135 EOverflow mainAxisOverflowForChild(LayoutBox& child) const; | 136 EOverflow mainAxisOverflowForChild(LayoutBox& child) const; |
| 137 EOverflow crossAxisOverflowForChild(LayoutBox& child) const; |
| 136 | 138 |
| 137 void layoutFlexItems(bool relayoutChildren, SubtreeLayoutScope&); | 139 void layoutFlexItems(bool relayoutChildren, SubtreeLayoutScope&); |
| 138 LayoutUnit autoMarginOffsetInMainAxis(const OrderedFlexItemList&, LayoutUnit
& availableFreeSpace); | 140 LayoutUnit autoMarginOffsetInMainAxis(const OrderedFlexItemList&, LayoutUnit
& availableFreeSpace); |
| 139 void updateAutoMarginsInMainAxis(LayoutBox& child, LayoutUnit autoMarginOffs
et); | 141 void updateAutoMarginsInMainAxis(LayoutBox& child, LayoutUnit autoMarginOffs
et); |
| 140 bool hasAutoMarginsInCrossAxis(LayoutBox& child) const; | 142 bool hasAutoMarginsInCrossAxis(LayoutBox& child) const; |
| 141 bool updateAutoMarginsInCrossAxis(LayoutBox& child, LayoutUnit availableAlig
nmentSpace); | 143 bool updateAutoMarginsInCrossAxis(LayoutBox& child, LayoutUnit availableAlig
nmentSpace); |
| 142 void repositionLogicalHeightDependentFlexItems(Vector<LineContext>&); | 144 void repositionLogicalHeightDependentFlexItems(Vector<LineContext>&); |
| 143 LayoutUnit clientLogicalBottomAfterRepositioning(); | 145 LayoutUnit clientLogicalBottomAfterRepositioning(); |
| 144 | 146 |
| 145 LayoutUnit availableAlignmentSpaceForChild(LayoutUnit lineCrossAxisExtent, L
ayoutBox& child); | 147 LayoutUnit availableAlignmentSpaceForChild(LayoutUnit lineCrossAxisExtent, L
ayoutBox& child); |
| (...skipping 28 matching lines...) Expand all Loading... |
| 174 | 176 |
| 175 mutable OrderIterator m_orderIterator; | 177 mutable OrderIterator m_orderIterator; |
| 176 int m_numberOfInFlowChildrenOnFirstLine; | 178 int m_numberOfInFlowChildrenOnFirstLine; |
| 177 }; | 179 }; |
| 178 | 180 |
| 179 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutFlexibleBox, isFlexibleBox()); | 181 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutFlexibleBox, isFlexibleBox()); |
| 180 | 182 |
| 181 } // namespace blink | 183 } // namespace blink |
| 182 | 184 |
| 183 #endif // LayoutFlexibleBox_h | 185 #endif // LayoutFlexibleBox_h |
| OLD | NEW |