Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
| 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
| 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) | 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) |
| 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved. | 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved. |
| 7 * Copyright (C) 2009 Google Inc. All rights reserved. | 7 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 8 * | 8 * |
| 9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
| 10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
| (...skipping 683 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 694 bool preferredLogicalWidthsDirty() const { return m_bitfields.preferredLogic alWidthsDirty(); } | 694 bool preferredLogicalWidthsDirty() const { return m_bitfields.preferredLogic alWidthsDirty(); } |
| 695 | 695 |
| 696 bool needsOverflowRecalcAfterStyleChange() const { return m_bitfields.selfNe edsOverflowRecalcAfterStyleChange() || m_bitfields.childNeedsOverflowRecalcAfter StyleChange(); } | 696 bool needsOverflowRecalcAfterStyleChange() const { return m_bitfields.selfNe edsOverflowRecalcAfterStyleChange() || m_bitfields.childNeedsOverflowRecalcAfter StyleChange(); } |
| 697 bool selfNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.se lfNeedsOverflowRecalcAfterStyleChange(); } | 697 bool selfNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.se lfNeedsOverflowRecalcAfterStyleChange(); } |
| 698 bool childNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.c hildNeedsOverflowRecalcAfterStyleChange(); } | 698 bool childNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.c hildNeedsOverflowRecalcAfterStyleChange(); } |
| 699 | 699 |
| 700 bool isSelectionBorder() const; | 700 bool isSelectionBorder() const; |
| 701 | 701 |
| 702 bool hasClip() const { return isOutOfFlowPositioned() && !style()->hasAutoCl ip(); } | 702 bool hasClip() const { return isOutOfFlowPositioned() && !style()->hasAutoCl ip(); } |
| 703 bool hasOverflowClip() const { return m_bitfields.hasOverflowClip(); } | 703 bool hasOverflowClip() const { return m_bitfields.hasOverflowClip(); } |
| 704 bool hasClipOrOverflowClip() const { return hasClip() || hasOverflowClip(); } | 704 bool hasOverflowClipPaintContainmentOrClip() const { return hasClip() || has OverflowClip() || style()->containsPaint(); } |
|
chrishtr
2015/12/09 23:34:58
hasClipRelatedProperty()
| |
| 705 | 705 |
| 706 bool hasTransformRelatedProperty() const { return m_bitfields.hasTransformRe latedProperty(); } | 706 bool hasTransformRelatedProperty() const { return m_bitfields.hasTransformRe latedProperty(); } |
| 707 bool hasMask() const { return style() && style()->hasMask(); } | 707 bool hasMask() const { return style() && style()->hasMask(); } |
| 708 bool hasClipPath() const { return style() && style()->clipPath(); } | 708 bool hasClipPath() const { return style() && style()->clipPath(); } |
| 709 bool hasHiddenBackface() const { return style() && style()->backfaceVisibili ty() == BackfaceVisibilityHidden; } | 709 bool hasHiddenBackface() const { return style() && style()->backfaceVisibili ty() == BackfaceVisibilityHidden; } |
| 710 | 710 |
| 711 bool hasFilter() const { return style() && style()->hasFilter(); } | 711 bool hasFilter() const { return style() && style()->hasFilter(); } |
| 712 bool hasBackdropFilter() const { return style() && style()->hasBackdropFilte r(); } | 712 bool hasBackdropFilter() const { return style() && style()->hasBackdropFilte r(); } |
| 713 | 713 |
| 714 bool hasShapeOutside() const { return style() && style()->shapeOutside(); } | 714 bool hasShapeOutside() const { return style() && style()->shapeOutside(); } |
| (...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 918 // LayoutBlocks are the one that handle laying out positioned elements, | 918 // LayoutBlocks are the one that handle laying out positioned elements, |
| 919 // thus this function is important during layout, to insert the positioned | 919 // thus this function is important during layout, to insert the positioned |
| 920 // elements into the correct LayoutBlock. | 920 // elements into the correct LayoutBlock. |
| 921 // | 921 // |
| 922 // See container() for the function that returns the containing block. | 922 // See container() for the function that returns the containing block. |
| 923 // See LayoutBlock.h for some extra explanations on containing blocks. | 923 // See LayoutBlock.h for some extra explanations on containing blocks. |
| 924 LayoutBlock* containingBlock() const; | 924 LayoutBlock* containingBlock() const; |
| 925 | 925 |
| 926 bool canContainFixedPositionObjects() const | 926 bool canContainFixedPositionObjects() const |
| 927 { | 927 { |
| 928 return isLayoutView() || (hasTransformRelatedProperty() && isLayoutBlock ()) || isSVGForeignObject(); | 928 return isLayoutView() || (hasTransformRelatedProperty() && isLayoutBlock ()) || isSVGForeignObject() || style()->containsPaint(); |
| 929 } | 929 } |
| 930 | 930 |
| 931 // Convert the given local point to absolute coordinates | 931 // Convert the given local point to absolute coordinates |
| 932 // FIXME: Temporary. If UseTransforms is true, take transforms into account. Eventually localToAbsolute() will always be transform-aware. | 932 // FIXME: Temporary. If UseTransforms is true, take transforms into account. Eventually localToAbsolute() will always be transform-aware. |
| 933 FloatPoint localToAbsolute(const FloatPoint& localPoint = FloatPoint(), MapC oordinatesFlags = 0) const; | 933 FloatPoint localToAbsolute(const FloatPoint& localPoint = FloatPoint(), MapC oordinatesFlags = 0) const; |
| 934 FloatPoint absoluteToLocal(const FloatPoint&, MapCoordinatesFlags = 0) const ; | 934 FloatPoint absoluteToLocal(const FloatPoint&, MapCoordinatesFlags = 0) const ; |
| 935 | 935 |
| 936 // Convert a local quad to absolute coordinates, taking transforms into acco unt. | 936 // Convert a local quad to absolute coordinates, taking transforms into acco unt. |
| 937 FloatQuad localToAbsoluteQuad(const FloatQuad& quad, MapCoordinatesFlags mod e = 0, bool* wasFixed = nullptr) const | 937 FloatQuad localToAbsoluteQuad(const FloatQuad& quad, MapCoordinatesFlags mod e = 0, bool* wasFixed = nullptr) const |
| 938 { | 938 { |
| (...skipping 1098 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2037 void showTree(const blink::LayoutObject*); | 2037 void showTree(const blink::LayoutObject*); |
| 2038 void showLineTree(const blink::LayoutObject*); | 2038 void showLineTree(const blink::LayoutObject*); |
| 2039 void showLayoutTree(const blink::LayoutObject* object1); | 2039 void showLayoutTree(const blink::LayoutObject* object1); |
| 2040 // We don't make object2 an optional parameter so that showLayoutTree | 2040 // We don't make object2 an optional parameter so that showLayoutTree |
| 2041 // can be called from gdb easily. | 2041 // can be called from gdb easily. |
| 2042 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2); | 2042 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2); |
| 2043 | 2043 |
| 2044 #endif | 2044 #endif |
| 2045 | 2045 |
| 2046 #endif // LayoutObject_h | 2046 #endif // LayoutObject_h |
| OLD | NEW |