Move DrawingManager to RecordingContext

This CL does make use of a new GrRecordingContextPriv backdoor to break CL deadlocks. This occurs when this CL tries to create GrContext-dependent objects outside its scope.

Change-Id: I278fe9d321f8e0a4f5e9b489b1a5cc01b8974521
Reviewed-on: https://skia-review.googlesource.com/c/191287
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
diff --git a/src/gpu/GrSurfaceContextPriv.h b/src/gpu/GrSurfaceContextPriv.h
index 4a45f8f..0749d3d 100644
--- a/src/gpu/GrSurfaceContextPriv.h
+++ b/src/gpu/GrSurfaceContextPriv.h
@@ -15,7 +15,7 @@
     additional data members or virtual methods. */
 class GrSurfaceContextPriv {
 public:
-    GrContext* getContext() { return fSurfaceContext->fContext; }
+    GrRecordingContext* getContext() { return fSurfaceContext->fContext; }
 
 private:
     explicit GrSurfaceContextPriv(GrSurfaceContext* surfaceContext)