OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef RoundedInnerRectClipper_h | 5 #ifndef RoundedInnerRectClipper_h |
6 #define RoundedInnerRectClipper_h | 6 #define RoundedInnerRectClipper_h |
7 | 7 |
8 #include "platform/graphics/paint/DisplayItem.h" | 8 #include "platform/graphics/paint/DisplayItem.h" |
| 9 #include "wtf/Allocator.h" |
9 | 10 |
10 namespace blink { | 11 namespace blink { |
11 | 12 |
12 class FloatRoundedRect; | 13 class FloatRoundedRect; |
13 class LayoutRect; | 14 class LayoutRect; |
14 class LayoutObject; | 15 class LayoutObject; |
15 struct PaintInfo; | 16 struct PaintInfo; |
16 | 17 |
17 enum RoundedInnerRectClipperBehavior { | 18 enum RoundedInnerRectClipperBehavior { |
18 ApplyToDisplayListIfEnabled, | 19 ApplyToDisplayListIfEnabled, |
19 ApplyToContext | 20 ApplyToContext |
20 }; | 21 }; |
21 | 22 |
22 class RoundedInnerRectClipper { | 23 class RoundedInnerRectClipper { |
| 24 ALLOW_ONLY_INLINE_ALLOCATION(); |
23 public: | 25 public: |
24 RoundedInnerRectClipper(LayoutObject&, const PaintInfo&, const LayoutRect&,
const FloatRoundedRect& clipRect, RoundedInnerRectClipperBehavior); | 26 RoundedInnerRectClipper(LayoutObject&, const PaintInfo&, const LayoutRect&,
const FloatRoundedRect& clipRect, RoundedInnerRectClipperBehavior); |
25 ~RoundedInnerRectClipper(); | 27 ~RoundedInnerRectClipper(); |
26 | 28 |
27 private: | 29 private: |
28 LayoutObject& m_layoutObject; | 30 LayoutObject& m_layoutObject; |
29 const PaintInfo& m_paintInfo; | 31 const PaintInfo& m_paintInfo; |
30 bool m_useDisplayItemList; | 32 bool m_useDisplayItemList; |
31 DisplayItem::Type m_clipType; | 33 DisplayItem::Type m_clipType; |
32 }; | 34 }; |
33 | 35 |
34 } // namespace blink | 36 } // namespace blink |
35 | 37 |
36 #endif // RoundedInnerRectClipper_h | 38 #endif // RoundedInnerRectClipper_h |
OLD | NEW |