Place the atlas path renderer above triangulation in the chain
This will cause some regressions on static, cached content, but the
hope is that the overall reliability of the atlas approach is more
desirable in the end.
Bug: skia:12258
Change-Id: I6db29342a70af6ebef61ebe91d406ed7692467f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/433916
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
diff --git a/src/gpu/GrPathRendererChain.cpp b/src/gpu/GrPathRendererChain.cpp
index ea4a190..e4233cd 100644
--- a/src/gpu/GrPathRendererChain.cpp
+++ b/src/gpu/GrPathRendererChain.cpp
@@ -43,9 +43,6 @@
if (options.fGpuPathRenderers & GpuPathRenderers::kSmall) {
fChain.push_back(sk_make_sp<GrSmallPathRenderer>());
}
- if (options.fGpuPathRenderers & GpuPathRenderers::kTriangulating) {
- fChain.push_back(sk_make_sp<GrTriangulatingPathRenderer>());
- }
if (options.fGpuPathRenderers & GpuPathRenderers::kAtlas) {
if (auto atlasPathRenderer = GrAtlasPathRenderer::Make(context)) {
fAtlasPathRenderer = atlasPathRenderer.get();
@@ -53,6 +50,9 @@
fChain.push_back(std::move(atlasPathRenderer));
}
}
+ if (options.fGpuPathRenderers & GpuPathRenderers::kTriangulating) {
+ fChain.push_back(sk_make_sp<GrTriangulatingPathRenderer>());
+ }
if (options.fGpuPathRenderers & GpuPathRenderers::kTessellation) {
if (GrTessellationPathRenderer::IsSupported(caps)) {
auto tess = sk_make_sp<GrTessellationPathRenderer>();