Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / platform / graphics / GraphicsLayerDebugInfo.h
index 31b9c61..6285142 100644 (file)
 #define GraphicsLayerDebugInfo_h
 
 #include "platform/JSONValues.h"
+#include "platform/geometry/FloatRect.h"
 #include "platform/geometry/LayoutRect.h"
 #include "platform/graphics/CompositingReasons.h"
+#include "platform/graphics/PaintInvalidationReason.h"
 #include "public/platform/WebGraphicsLayerDebugInfo.h"
-#include "public/platform/WebInvalidationDebugAnnotations.h"
 
 #include "wtf/Vector.h"
 
 namespace blink {
 
-class GraphicsLayerDebugInfo FINAL : public WebGraphicsLayerDebugInfo {
+class GraphicsLayerDebugInfo final : public WebGraphicsLayerDebugInfo {
 public:
     GraphicsLayerDebugInfo();
     virtual ~GraphicsLayerDebugInfo();
 
-    virtual void appendAsTraceFormat(WebString* out) const OVERRIDE;
-    virtual void getAnnotatedInvalidationRects(WebVector<WebAnnotatedInvalidationRect>& rects) const OVERRIDE;
+    virtual void appendAsTraceFormat(WebString* out) const override;
 
     GraphicsLayerDebugInfo* clone() const;
 
@@ -57,20 +57,27 @@ public:
     void setOwnerNodeId(int id) { m_ownerNodeId = id; }
     Vector<LayoutRect>& currentLayoutRects() { return m_currentLayoutRects; }
 
-    void appendAnnotatedInvalidateRect(const FloatRect&, WebInvalidationDebugAnnotations);
+    void appendAnnotatedInvalidateRect(const FloatRect&, PaintInvalidationReason);
     void clearAnnotatedInvalidateRects();
 
 private:
     void appendLayoutRects(JSONObject*) const;
+    void appendAnnotatedInvalidateRects(JSONObject*) const;
     void appendCompositingReasons(JSONObject*) const;
     void appendDebugName(JSONObject*) const;
     void appendOwnerNodeId(JSONObject*) const;
 
+    struct AnnotatedInvalidationRect {
+        FloatRect rect;
+        PaintInvalidationReason reason;
+    };
+
     String m_debugName;
     CompositingReasons m_compositingReasons;
     int m_ownerNodeId;
     Vector<LayoutRect> m_currentLayoutRects;
-    Vector<WebAnnotatedInvalidationRect> m_invalidations;
+    Vector<AnnotatedInvalidationRect> m_invalidations;
+    Vector<AnnotatedInvalidationRect> m_previousInvalidations;
 };
 
 } // namespace blink