OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005, 2007 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2007 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2009 Google, Inc. All rights reserved. | 4 * Copyright (C) 2009 Google, Inc. All rights reserved. |
5 * Copyright (C) 2009 Apple Inc. All rights reserved. | 5 * Copyright (C) 2009 Apple Inc. All rights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 void layout() override; | 63 void layout() override; |
64 | 64 |
65 void addChild(LayoutObject* child, LayoutObject* beforeChild = nullptr) fina
l; | 65 void addChild(LayoutObject* child, LayoutObject* beforeChild = nullptr) fina
l; |
66 void removeChild(LayoutObject*) final; | 66 void removeChild(LayoutObject*) final; |
67 void addOutlineRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffse
t, IncludeBlockVisualOverflowOrNot) const final; | 67 void addOutlineRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffse
t, IncludeBlockVisualOverflowOrNot) const final; |
68 | 68 |
69 FloatRect strokeBoundingBox() const final { return m_strokeBoundingBox; } | 69 FloatRect strokeBoundingBox() const final { return m_strokeBoundingBox; } |
70 | 70 |
71 bool nodeAtFloatPoint(HitTestResult&, const FloatPoint& pointInParent, HitTe
stAction) override; | 71 bool nodeAtFloatPoint(HitTestResult&, const FloatPoint& pointInParent, HitTe
stAction) override; |
72 | 72 |
| 73 // The following enumeration is used to optimize cases where the scale is |
| 74 // known to be invariant (see: LayoutSVGContainer::layout). The value |
| 75 // 'Full' can be used in the general case when the scale change is unknown, |
| 76 // or known to change. |
| 77 enum class TransformChange { |
| 78 None, |
| 79 ScaleInvariant, |
| 80 Full, |
| 81 }; |
73 // Allow LayoutSVGTransformableContainer to hook in at the right time in lay
out(). | 82 // Allow LayoutSVGTransformableContainer to hook in at the right time in lay
out(). |
74 virtual bool calculateLocalTransform() { return false; } | 83 virtual TransformChange calculateLocalTransform() { return TransformChange::
None; } |
75 | 84 |
76 // Allow LayoutSVGViewportContainer to hook in at the right times in layout(
) and nodeAtFloatPoint(). | 85 // Allow LayoutSVGViewportContainer to hook in at the right times in layout(
) and nodeAtFloatPoint(). |
77 virtual void calcViewport() { } | 86 virtual void calcViewport() { } |
78 virtual bool pointIsInsideViewportClip(const FloatPoint& /*pointInParent*/)
{ return true; } | 87 virtual bool pointIsInsideViewportClip(const FloatPoint& /*pointInParent*/)
{ return true; } |
79 | 88 |
80 virtual void determineIfLayoutSizeChanged() { } | 89 virtual void determineIfLayoutSizeChanged() { } |
81 | 90 |
82 void updateCachedBoundaries(); | 91 void updateCachedBoundaries(); |
83 | 92 |
84 void descendantIsolationRequirementsChanged(DescendantIsolationState) final; | 93 void descendantIsolationRequirementsChanged(DescendantIsolationState) final; |
(...skipping 10 matching lines...) Expand all Loading... |
95 bool m_didScreenScaleFactorChange : 1; | 104 bool m_didScreenScaleFactorChange : 1; |
96 mutable bool m_hasNonIsolatedBlendingDescendants : 1; | 105 mutable bool m_hasNonIsolatedBlendingDescendants : 1; |
97 mutable bool m_hasNonIsolatedBlendingDescendantsDirty : 1; | 106 mutable bool m_hasNonIsolatedBlendingDescendantsDirty : 1; |
98 }; | 107 }; |
99 | 108 |
100 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutSVGContainer, isSVGContainer()); | 109 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutSVGContainer, isSVGContainer()); |
101 | 110 |
102 } // namespace blink | 111 } // namespace blink |
103 | 112 |
104 #endif // LayoutSVGContainer_h | 113 #endif // LayoutSVGContainer_h |
OLD | NEW |