IWYU for SkCanvas.h

SkCanvas.h has accumulated a need to include a few more headers. Fixing
this allows for easier changes to other files.

Change-Id: I520eecf6c67580cc1201e68e8ffb8f7ee79587d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208665
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
diff --git a/include/core/SkCanvas.h b/include/core/SkCanvas.h
index e1b4d54..f67b299 100644
--- a/include/core/SkCanvas.h
+++ b/include/core/SkCanvas.h
@@ -10,21 +10,32 @@
 
 #include "../private/SkMacros.h"
 #include "SkBlendMode.h"
+#include "SkColor.h"
 #include "SkClipOp.h"
 #include "SkDeque.h"
 #include "SkFontTypes.h"
+#include "SkImageInfo.h"
+#include "SkMatrix.h"
 #include "SkPaint.h"
+#include "SkPoint.h"
 #include "SkRasterHandleAllocator.h"
+#include "SkRect.h"
+#include "SkRefCnt.h"
+#include "SkScalar.h"
+#include "SkSize.h"
+#include "SkString.h"
 #include "SkSurfaceProps.h"
+#include "SkTypes.h"
 #include "SkVertices.h"
 
+#include <cstring>
+#include <memory>
+
 class GrContext;
 class GrRenderTargetContext;
-class SkAndroidFrameworkUtils;
 class SkBaseDevice;
 class SkBitmap;
 class SkData;
-class SkDraw;
 class SkDrawable;
 struct SkDrawShadowRec;
 class SkFont;