add annotations to debugger
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2105113002
Review-Url: https://codereview.chromium.org/2105113002
diff --git a/tools/debugger/SkDrawCommand.h b/tools/debugger/SkDrawCommand.h
index 9b81ada..0d1ece0 100644
--- a/tools/debugger/SkDrawCommand.h
+++ b/tools/debugger/SkDrawCommand.h
@@ -28,6 +28,7 @@
kClipRect_OpType,
kClipRRect_OpType,
kConcat_OpType,
+ kDrawAnnotation_OpType,
kDrawBitmap_OpType,
kDrawBitmapNine_OpType,
kDrawBitmapRect_OpType,
@@ -247,6 +248,21 @@
typedef SkDrawCommand INHERITED;
};
+class SkDrawAnnotationCommand : public SkDrawCommand {
+public:
+ SkDrawAnnotationCommand(const SkRect&, const char key[], sk_sp<SkData> value);
+ void execute(SkCanvas* canvas) const override;
+ Json::Value toJSON(UrlDataManager& urlDataManager) const override;
+ static SkDrawAnnotationCommand* fromJSON(Json::Value& command, UrlDataManager& urlDataManager);
+
+private:
+ SkRect fRect;
+ SkString fKey;
+ sk_sp<SkData> fValue;
+
+ typedef SkDrawCommand INHERITED;
+};
+
class SkDrawBitmapCommand : public SkDrawCommand {
public:
SkDrawBitmapCommand(const SkBitmap& bitmap, SkScalar left, SkScalar top,