Index: src/gpu/GrContext.cpp |
diff --git a/src/gpu/GrContext.cpp b/src/gpu/GrContext.cpp |
old mode 100644 |
new mode 100755 |
index e8ae18a4e225594c8da0dccf84ede68b454f3a3e..3b77b781ac095642642dbd21fc1b4a1018de3e35 |
--- a/src/gpu/GrContext.cpp |
+++ b/src/gpu/GrContext.cpp |
@@ -15,6 +15,7 @@ |
#include "GrAARectRenderer.h" |
#include "GrBufferAllocPool.h" |
#include "GrGpu.h" |
+#include "GrDistanceFieldTextContext.h" |
#include "GrDrawTargetCaps.h" |
#include "GrIndexBuffer.h" |
#include "GrInOrderDrawBuffer.h" |
@@ -25,6 +26,7 @@ |
#include "GrResourceCache.h" |
#include "GrSoftwarePathRenderer.h" |
#include "GrStencilBuffer.h" |
+#include "GrStencilAndCoverTextContext.h" |
#include "GrTextStrike.h" |
#include "GrTracing.h" |
#include "SkGr.h" |
@@ -232,6 +234,19 @@ void GrContext::getResourceCacheUsage(int* resourceCount, size_t* resourceBytes) |
} |
} |
+GrTextContext* GrContext::createTextContext(GrRenderTarget* renderTarget, |
+ const SkDeviceProperties& |
+ leakyProperties, |
+ bool enableDistanceFieldFonts) { |
+ if (fGpu->caps()->pathRenderingSupport()) { |
+ if (renderTarget->getStencilBuffer() && renderTarget->isMultisampled()) { |
+ return SkNEW_ARGS(GrStencilAndCoverTextContext, (this, leakyProperties)); |
+ } |
+ } |
+ return SkNEW_ARGS(GrDistanceFieldTextContext, (this, leakyProperties, |
+ enableDistanceFieldFonts)); |
+} |
+ |
//////////////////////////////////////////////////////////////////////////////// |
GrTexture* GrContext::findAndRefTexture(const GrTextureDesc& desc, |