OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. |
3 * Copyright (C) 2013 Intel Corporation. All rights reserved. | 3 * Copyright (C) 2013 Intel Corporation. All rights reserved. |
4 * | 4 * |
5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
6 * | 6 * |
7 * Other contributors: | 7 * Other contributors: |
8 * Robert O'Callahan <roc+@cs.cmu.edu> | 8 * Robert O'Callahan <roc+@cs.cmu.edu> |
9 * David Baron <dbaron@fas.harvard.edu> | 9 * David Baron <dbaron@fas.harvard.edu> |
10 * Christian Biesinger <cbiesinger@web.de> | 10 * Christian Biesinger <cbiesinger@web.de> |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 #define RenderLayerRepainter_h | 46 #define RenderLayerRepainter_h |
47 | 47 |
48 #include "platform/geometry/LayoutRect.h" | 48 #include "platform/geometry/LayoutRect.h" |
49 #include "wtf/Noncopyable.h" | 49 #include "wtf/Noncopyable.h" |
50 | 50 |
51 namespace WebCore { | 51 namespace WebCore { |
52 | 52 |
53 enum RepaintStatus { | 53 enum RepaintStatus { |
54 NeedsNormalRepaint = 0, | 54 NeedsNormalRepaint = 0, |
55 NeedsFullRepaint = 1 << 0, | 55 NeedsFullRepaint = 1 << 0, |
56 NeedsFullRepaintForPositionedMovementLayout = 1 << 1 | 56 NeedsFullRepaintForPositionedMovementLayout = NeedsFullRepaint | 1 << 1 |
57 }; | 57 }; |
58 | 58 |
59 class RenderGeometryMap; | 59 class RenderGeometryMap; |
60 class RenderLayer; | 60 class RenderLayer; |
61 class RenderLayerModelObject; | 61 class RenderLayerModelObject; |
62 | 62 |
63 class RenderLayerRepainter { | 63 class RenderLayerRepainter { |
64 WTF_MAKE_NONCOPYABLE(RenderLayerRepainter); | 64 WTF_MAKE_NONCOPYABLE(RenderLayerRepainter); |
65 public: | 65 public: |
66 RenderLayerRepainter(RenderLayerModelObject*); | 66 RenderLayerRepainter(RenderLayerModelObject*); |
(...skipping 12 matching lines...) Expand all Loading... |
79 void computeRepaintRectsIncludingDescendants(); | 79 void computeRepaintRectsIncludingDescendants(); |
80 | 80 |
81 // Indicate that the layer contents need to be repainted. Only has an effect | 81 // Indicate that the layer contents need to be repainted. Only has an effect |
82 // if layer compositing is being used, | 82 // if layer compositing is being used, |
83 void setBackingNeedsRepaint(); | 83 void setBackingNeedsRepaint(); |
84 void setBackingNeedsRepaintInRect(const LayoutRect&); // r is in the coordin
ate space of the layer's render object | 84 void setBackingNeedsRepaintInRect(const LayoutRect&); // r is in the coordin
ate space of the layer's render object |
85 | 85 |
86 void setFilterBackendNeedsRepaintingInRect(const LayoutRect&); | 86 void setFilterBackendNeedsRepaintingInRect(const LayoutRect&); |
87 | 87 |
88 private: | 88 private: |
89 bool shouldRepaintAfterLayout() const; | 89 bool shouldRepaintLayer() const; |
90 | 90 |
91 void clearRepaintRects(); | 91 void clearRepaintRects(); |
92 | 92 |
93 RenderLayer* enclosingFilterRepaintLayer() const; | 93 RenderLayer* enclosingFilterRepaintLayer() const; |
94 | 94 |
95 RenderLayerModelObject* m_renderer; | 95 RenderLayerModelObject* m_renderer; |
96 | 96 |
97 unsigned m_repaintStatus; // RepaintStatus | 97 unsigned m_repaintStatus; // RepaintStatus |
98 | 98 |
99 LayoutRect m_repaintRect; // Cached repaint rects. Used by layout. | 99 LayoutRect m_repaintRect; // Cached repaint rects. Used by layout. |
100 LayoutRect m_outlineBox; | 100 LayoutRect m_outlineBox; |
101 }; | 101 }; |
102 | 102 |
103 } // namespace WebCore | 103 } // namespace WebCore |
104 | 104 |
105 #endif // RenderLayerRepainter_h | 105 #endif // RenderLayerRepainter_h |
OLD | NEW |