From 209e4b1b70a5e9c2f504de15f038999ed9ee4ae5 Mon Sep 17 00:00:00 2001 From: Hal Canary Date: Thu, 4 May 2017 14:23:55 -0400 Subject: Revert "Revert "SkTypeface::getAdvancedMetrics(): cleanup"" This reverts commit 59ad782b2b05b07aa6eb961aa4d62e934093cbd1. - SkAdvancedTypefaceMetrics is a struct not a class - SkTypeface::PerGlyphInfo is gone - s/getAdvancedTypefaceMetrics/getAdvancedMetrics/g - s/onGetAdvancedTypefaceMetrics/onGetAdvancedMetrics/g - [on]getAdvancedMetrics now return unique_ptr rather than bare ptr. - [on]getAdvancedMetrics no longer has parameters. (Only caller always used same arguments.) - SkAdvancedTypefaceMetrics uses C++11 in-class member initializers. - SkAdvancedTypefaceMetrics no longer inherits from SkRefCnt Change-Id: I91b56e60f7d9de7d46c426c6bd34ce124e0cf00e Reviewed-on: https://skia-review.googlesource.com/15360 Reviewed-by: Hal Canary Commit-Queue: Hal Canary --- src/fonts/SkRandomScalerContext.cpp | 8 +++----- src/fonts/SkRandomScalerContext.h | 5 +---- src/fonts/SkTestScalerContext.cpp | 8 ++------ src/fonts/SkTestScalerContext.h | 5 +---- 4 files changed, 7 insertions(+), 19 deletions(-) (limited to 'src/fonts') diff --git a/src/fonts/SkRandomScalerContext.cpp b/src/fonts/SkRandomScalerContext.cpp index a38f695563..49d9ab43ff 100644 --- a/src/fonts/SkRandomScalerContext.cpp +++ b/src/fonts/SkRandomScalerContext.cpp @@ -5,6 +5,7 @@ * found in the LICENSE file. */ +#include "SkAdvancedTypefaceMetrics.h" #include "SkBitmap.h" #include "SkCanvas.h" #include "SkGlyph.h" @@ -206,11 +207,8 @@ void SkRandomTypeface::onFilterRec(SkScalerContextRec* rec) const { rec->fMaskFormat = SkMask::kARGB32_Format; } -SkAdvancedTypefaceMetrics* SkRandomTypeface::onGetAdvancedTypefaceMetrics( - PerGlyphInfo info, - const uint32_t* glyphIDs, - uint32_t glyphIDsCount) const { - return fProxy->getAdvancedTypefaceMetrics(info, glyphIDs, glyphIDsCount); +std::unique_ptr SkRandomTypeface::onGetAdvancedMetrics() const { + return fProxy->getAdvancedMetrics(); } SkStreamAsset* SkRandomTypeface::onOpenStream(int* ttcIndex) const { diff --git a/src/fonts/SkRandomScalerContext.h b/src/fonts/SkRandomScalerContext.h index c84b76470e..b71689d9e2 100644 --- a/src/fonts/SkRandomScalerContext.h +++ b/src/fonts/SkRandomScalerContext.h @@ -27,10 +27,7 @@ protected: SkScalerContext* onCreateScalerContext(const SkScalerContextEffects&, const SkDescriptor*) const override; void onFilterRec(SkScalerContextRec*) const override; - SkAdvancedTypefaceMetrics* onGetAdvancedTypefaceMetrics( - PerGlyphInfo, - const uint32_t* glyphIDs, - uint32_t glyphIDsCount) const override; + std::unique_ptr onGetAdvancedMetrics() const override; SkStreamAsset* onOpenStream(int* ttcIndex) const override; void onGetFontDescriptor(SkFontDescriptor*, bool* isLocal) const override; diff --git a/src/fonts/SkTestScalerContext.cpp b/src/fonts/SkTestScalerContext.cpp index db726376f1..ec53c54fa2 100644 --- a/src/fonts/SkTestScalerContext.cpp +++ b/src/fonts/SkTestScalerContext.cpp @@ -146,12 +146,8 @@ void SkTestTypeface::onFilterRec(SkScalerContextRec* rec) const { rec->setHinting(SkPaint::kNo_Hinting); } -SkAdvancedTypefaceMetrics* SkTestTypeface::onGetAdvancedTypefaceMetrics( - PerGlyphInfo , - const uint32_t* glyphIDs, - uint32_t glyphIDsCount) const { -// pdf only - SkAdvancedTypefaceMetrics* info = new SkAdvancedTypefaceMetrics; +std::unique_ptr SkTestTypeface::onGetAdvancedMetrics() const { // pdf only + std::unique_ptr info(new SkAdvancedTypefaceMetrics); info->fFontName.set(fTestFont->fName); int glyphCount = this->onCountGlyphs(); diff --git a/src/fonts/SkTestScalerContext.h b/src/fonts/SkTestScalerContext.h index 5b2ec4f5a2..ec7ee853c7 100644 --- a/src/fonts/SkTestScalerContext.h +++ b/src/fonts/SkTestScalerContext.h @@ -65,10 +65,7 @@ protected: SkScalerContext* onCreateScalerContext(const SkScalerContextEffects&, const SkDescriptor* desc) const override; void onFilterRec(SkScalerContextRec* rec) const override; - SkAdvancedTypefaceMetrics* onGetAdvancedTypefaceMetrics( - PerGlyphInfo, - const uint32_t* glyphIDs, - uint32_t glyphIDsCount) const override; + std::unique_ptr onGetAdvancedMetrics() const override; SkStreamAsset* onOpenStream(int* ttcIndex) const override { return nullptr; -- cgit v1.2.3