Index: src/gpu/GrContext.cpp |
diff --git a/src/gpu/GrContext.cpp b/src/gpu/GrContext.cpp |
old mode 100644 |
new mode 100755 |
index 6c90c178d3ef6553df7aba35dd9820721f179fc4..d59d2e8d40bffedcfb688997a067f4daf476a5fc |
--- a/src/gpu/GrContext.cpp |
+++ b/src/gpu/GrContext.cpp |
@@ -16,6 +16,7 @@ |
#include "GrAARectRenderer.h" |
#include "GrBufferAllocPool.h" |
#include "GrGpu.h" |
+#include "GrDistanceFieldTextContext.h" |
#include "GrDrawTargetCaps.h" |
#include "GrIndexBuffer.h" |
#include "GrInOrderDrawBuffer.h" |
@@ -26,6 +27,7 @@ |
#include "GrResourceCache.h" |
#include "GrSoftwarePathRenderer.h" |
#include "GrStencilBuffer.h" |
+#include "GrStencilAndCoverTextContext.h" |
#include "GrStrokeInfo.h" |
#include "GrTextStrike.h" |
#include "GrTraceMarker.h" |
@@ -236,6 +238,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, |