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 680 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
691 bool preferredLogicalWidthsDirty() const { return m_bitfields.preferredLogic
alWidthsDirty(); } | 691 bool preferredLogicalWidthsDirty() const { return m_bitfields.preferredLogic
alWidthsDirty(); } |
692 | 692 |
693 bool needsOverflowRecalcAfterStyleChange() const { return m_bitfields.selfNe
edsOverflowRecalcAfterStyleChange() || m_bitfields.childNeedsOverflowRecalcAfter
StyleChange(); } | 693 bool needsOverflowRecalcAfterStyleChange() const { return m_bitfields.selfNe
edsOverflowRecalcAfterStyleChange() || m_bitfields.childNeedsOverflowRecalcAfter
StyleChange(); } |
694 bool selfNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.se
lfNeedsOverflowRecalcAfterStyleChange(); } | 694 bool selfNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.se
lfNeedsOverflowRecalcAfterStyleChange(); } |
695 bool childNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.c
hildNeedsOverflowRecalcAfterStyleChange(); } | 695 bool childNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.c
hildNeedsOverflowRecalcAfterStyleChange(); } |
696 | 696 |
697 bool isSelectionBorder() const; | 697 bool isSelectionBorder() const; |
698 | 698 |
699 bool hasClip() const { return isOutOfFlowPositioned() && !style()->hasAutoCl
ip(); } | 699 bool hasClip() const { return isOutOfFlowPositioned() && !style()->hasAutoCl
ip(); } |
700 bool hasOverflowClip() const { return m_bitfields.hasOverflowClip(); } | 700 bool hasOverflowClip() const { return m_bitfields.hasOverflowClip(); } |
701 bool hasClipOrOverflowClip() const { return hasClip() || hasOverflowClip();
} | 701 bool hasClipRelatedProperty() const { return hasClip() || hasOverflowClip()
|| style()->containsPaint(); } |
702 | 702 |
703 bool hasTransformRelatedProperty() const { return m_bitfields.hasTransformRe
latedProperty(); } | 703 bool hasTransformRelatedProperty() const { return m_bitfields.hasTransformRe
latedProperty(); } |
704 bool hasMask() const { return style() && style()->hasMask(); } | 704 bool hasMask() const { return style() && style()->hasMask(); } |
705 bool hasClipPath() const { return style() && style()->clipPath(); } | 705 bool hasClipPath() const { return style() && style()->clipPath(); } |
706 bool hasHiddenBackface() const { return style() && style()->backfaceVisibili
ty() == BackfaceVisibilityHidden; } | 706 bool hasHiddenBackface() const { return style() && style()->backfaceVisibili
ty() == BackfaceVisibilityHidden; } |
707 | 707 |
708 bool hasFilter() const { return style() && style()->hasFilter(); } | 708 bool hasFilter() const { return style() && style()->hasFilter(); } |
709 bool hasBackdropFilter() const { return style() && style()->hasBackdropFilte
r(); } | 709 bool hasBackdropFilter() const { return style() && style()->hasBackdropFilte
r(); } |
710 | 710 |
711 bool hasShapeOutside() const { return style() && style()->shapeOutside(); } | 711 bool hasShapeOutside() const { return style() && style()->shapeOutside(); } |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
923 // LayoutBlocks are the one that handle laying out positioned elements, | 923 // LayoutBlocks are the one that handle laying out positioned elements, |
924 // thus this function is important during layout, to insert the positioned | 924 // thus this function is important during layout, to insert the positioned |
925 // elements into the correct LayoutBlock. | 925 // elements into the correct LayoutBlock. |
926 // | 926 // |
927 // See container() for the function that returns the containing block. | 927 // See container() for the function that returns the containing block. |
928 // See LayoutBlock.h for some extra explanations on containing blocks. | 928 // See LayoutBlock.h for some extra explanations on containing blocks. |
929 LayoutBlock* containingBlock() const; | 929 LayoutBlock* containingBlock() const; |
930 | 930 |
931 bool canContainFixedPositionObjects() const | 931 bool canContainFixedPositionObjects() const |
932 { | 932 { |
933 return isLayoutView() || (hasTransformRelatedProperty() && isLayoutBlock
()) || isSVGForeignObject(); | 933 return isLayoutView() || (hasTransformRelatedProperty() && isLayoutBlock
()) || isSVGForeignObject() || style()->containsPaint(); |
934 } | 934 } |
935 | 935 |
936 // Convert the given local point to absolute coordinates | 936 // Convert the given local point to absolute coordinates |
937 // FIXME: Temporary. If UseTransforms is true, take transforms into account.
Eventually localToAbsolute() will always be transform-aware. | 937 // FIXME: Temporary. If UseTransforms is true, take transforms into account.
Eventually localToAbsolute() will always be transform-aware. |
938 FloatPoint localToAbsolute(const FloatPoint& localPoint = FloatPoint(), MapC
oordinatesFlags = 0) const; | 938 FloatPoint localToAbsolute(const FloatPoint& localPoint = FloatPoint(), MapC
oordinatesFlags = 0) const; |
939 FloatPoint absoluteToLocal(const FloatPoint&, MapCoordinatesFlags = 0) const
; | 939 FloatPoint absoluteToLocal(const FloatPoint&, MapCoordinatesFlags = 0) const
; |
940 | 940 |
941 // Convert a local quad to absolute coordinates, taking transforms into acco
unt. | 941 // Convert a local quad to absolute coordinates, taking transforms into acco
unt. |
942 FloatQuad localToAbsoluteQuad(const FloatQuad& quad, MapCoordinatesFlags mod
e = 0, bool* wasFixed = nullptr) const | 942 FloatQuad localToAbsoluteQuad(const FloatQuad& quad, MapCoordinatesFlags mod
e = 0, bool* wasFixed = nullptr) const |
943 { | 943 { |
(...skipping 1116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2060 void showTree(const blink::LayoutObject*); | 2060 void showTree(const blink::LayoutObject*); |
2061 void showLineTree(const blink::LayoutObject*); | 2061 void showLineTree(const blink::LayoutObject*); |
2062 void showLayoutTree(const blink::LayoutObject* object1); | 2062 void showLayoutTree(const blink::LayoutObject* object1); |
2063 // We don't make object2 an optional parameter so that showLayoutTree | 2063 // We don't make object2 an optional parameter so that showLayoutTree |
2064 // can be called from gdb easily. | 2064 // can be called from gdb easily. |
2065 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec
t* object2); | 2065 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec
t* object2); |
2066 | 2066 |
2067 #endif | 2067 #endif |
2068 | 2068 |
2069 #endif // LayoutObject_h | 2069 #endif // LayoutObject_h |
OLD | NEW |