6#include "flutter/display_list/skia/dl_sk_canvas.h"
7#include "flutter/fml/macros.h"
13#ifndef FLUTTER_SHELL_PLATFORM_FUCHSIA_FLUTTER_CANVAS_SPY_H_
14#define FLUTTER_SHELL_PLATFORM_FUCHSIA_FLUTTER_CANVAS_SPY_H_
51 std::unique_ptr<SkNWayCanvas> n_way_canvas_;
52 std::unique_ptr<DidDrawCanvas> did_draw_canvas_;
65 bool did_draw_ =
false;
133#ifdef SK_SUPPORT_LEGACY_ONDRAWIMAGERECT
135 void onDrawImage(
const SkImage*,
141 void onDrawImageRect(
const SkImage*,
148 void onDrawImageLattice(
const SkImage*,
154 void onDrawAtlas(
const SkImage*,
251 void MarkDrawIfNonTransparentPaint(
const SkPaint&
paint);
static bool left(const SkPoint &p0, const SkPoint &p1)
SkCanvas * GetRawSpyingCanvas()
The underlying Skia canvas that implements the spying (mainly for testing)
bool DidDrawIntoCanvas()
Returns true if any non transparent content has been drawn into the spying canvas....
DlCanvas * GetSpyingCanvas()
The returned canvas delegate all operations to the target canvas while spying on them.
void onDrawBehind(const SkPaint &) override
void onDrawDRRect(const SkRRect &, const SkRRect &, const SkPaint &) override
void onClipRect(const SkRect &, SkClipOp, ClipEdgeStyle) override
void onClipRRect(const SkRRect &, SkClipOp, ClipEdgeStyle) override
void onClipPath(const SkPath &, SkClipOp, ClipEdgeStyle) override
void onDrawPath(const SkPath &, const SkPaint &) override
virtual void onDrawTextBlob(const SkTextBlob *blob, SkScalar x, SkScalar y, const SkPaint &paint) override
void onDrawAnnotation(const SkRect &, const char[], SkData *) override
void willRestore() override
void onDrawImageLattice2(const SkImage *, const Lattice &, const SkRect &, SkFilterMode, const SkPaint *) override
void onDrawDrawable(SkDrawable *, const SkMatrix *) override
void onDrawImage2(const SkImage *, SkScalar left, SkScalar top, const SkSamplingOptions &, const SkPaint *) override
void onDrawOval(const SkRect &, const SkPaint &) override
void didConcat44(const SkM44 &) override
~DidDrawCanvas() override
void onClipRegion(const SkRegion &, SkClipOp) override
bool onDoSaveBehind(const SkRect *) override
void onDrawAtlas2(const SkImage *, const SkRSXform[], const SkRect[], const SkColor[], int, SkBlendMode, const SkSamplingOptions &, const SkRect *, const SkPaint *) override
SaveLayerStrategy getSaveLayerStrategy(const SaveLayerRec &) override
void onDrawImageRect2(const SkImage *, const SkRect &src, const SkRect &dst, const SkSamplingOptions &, const SkPaint *, SrcRectConstraint) override
void onDrawRegion(const SkRegion &, const SkPaint &) override
void onDrawShadowRec(const SkPath &, const SkDrawShadowRec &) override
virtual void onDrawPatch(const SkPoint cubics[12], const SkColor colors[4], const SkPoint texCoords[4], SkBlendMode, const SkPaint &paint) override
void didTranslate(SkScalar, SkScalar) override
void onDrawPaint(const SkPaint &) override
void onDrawRRect(const SkRRect &, const SkPaint &) override
void didScale(SkScalar, SkScalar) override
void onDrawArc(const SkRect &, SkScalar, SkScalar, bool, const SkPaint &) override
void onDrawEdgeAAQuad(const SkRect &, const SkPoint[4], SkCanvas::QuadAAFlags, const SkColor4f &, SkBlendMode) override
void onDrawEdgeAAImageSet2(const ImageSetEntry[], int count, const SkPoint[], const SkMatrix[], const SkSamplingOptions &, const SkPaint *, SrcRectConstraint) override
void onDrawVerticesObject(const SkVertices *, SkBlendMode, const SkPaint &) override
void onDrawPoints(PointMode, size_t count, const SkPoint pts[], const SkPaint &) override
void onDrawPicture(const SkPicture *, const SkMatrix *, const SkPaint *) override
void onDrawRect(const SkRect &, const SkPaint &) override
Developer-facing API for rendering anything within the engine.
Backend implementation of |DlCanvas| for |SkCanvas|.
#define FML_DISALLOW_COPY_AND_ASSIGN(TypeName)