Index: tools/debugger/SkDrawCommand.cpp |
diff --git a/tools/debugger/SkDrawCommand.cpp b/tools/debugger/SkDrawCommand.cpp |
index 985f7d5cc3705de219d2b7620e69e1fd0456b941..9ba0ab541d7c7e706d8d69abdda9632c1da0a8c2 100644 |
--- a/tools/debugger/SkDrawCommand.cpp |
+++ b/tools/debugger/SkDrawCommand.cpp |
@@ -12,6 +12,7 @@ |
#include "SkColorFilter.h" |
#include "SkDashPathEffect.h" |
#include "SkImageFilter.h" |
+#include "SkJsonWriteBuffer.h" |
#include "SkMaskFilter.h" |
#include "SkObjectParser.h" |
#include "SkPaintDefaults.h" |
@@ -63,6 +64,7 @@ |
#define SKDEBUGCANVAS_ATTRIBUTE_VERBS "verbs" |
#define SKDEBUGCANVAS_ATTRIBUTE_NAME "name" |
#define SKDEBUGCANVAS_ATTRIBUTE_DATA "data" |
+#define SKDEBUGCANVAS_ATTRIBUTE_FLATTENED "flattened" |
#define SKDEBUGCANVAS_ATTRIBUTE_SHADER "shader" |
#define SKDEBUGCANVAS_ATTRIBUTE_PATHEFFECT "pathEffect" |
#define SKDEBUGCANVAS_ATTRIBUTE_MASKFILTER "maskFilter" |
@@ -601,6 +603,13 @@ static void flatten(const SkFlattenable* flattenable, Json::Value* target, |
Json::Value jsonFlattenable; |
jsonFlattenable[SKDEBUGCANVAS_ATTRIBUTE_NAME] = Json::Value(flattenable->getTypeName()); |
jsonFlattenable[SKDEBUGCANVAS_ATTRIBUTE_DATA] = jsonData; |
+ |
+ { |
+ SkJsonWriteBuffer jsonBuffer; |
+ flattenable->flatten(jsonBuffer); |
+ jsonFlattenable[SKDEBUGCANVAS_ATTRIBUTE_FLATTENED] = jsonBuffer.getValue(); |
+ } |
+ |
(*target) = jsonFlattenable; |
sk_free(data); |
} |