From 59ad782b2b05b07aa6eb961aa4d62e934093cbd1 Mon Sep 17 00:00:00 2001 From: Hal Canary Date: Thu, 4 May 2017 18:20:35 +0000 Subject: Revert "SkTypeface::getAdvancedMetrics(): cleanup" This reverts commit cef018896e5cad8eb46a536b60cdf79ebe2b0191. Reason for revert: broke chromium roll (windows). Original change's description: > SkTypeface::getAdvancedMetrics(): cleanup > > - 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: I37571ebcc383ba9eb21bc20c60c734e3ca317582 > Reviewed-on: https://skia-review.googlesource.com/15311 > Reviewed-by: Ben Wagner > Commit-Queue: Hal Canary > TBR=halcanary@google.com,bungeman@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I84c7d53df566aaf83427e3368edaa02b7b5a9cb8 Reviewed-on: https://skia-review.googlesource.com/15319 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, 19 insertions(+), 7 deletions(-) (limited to 'src/fonts') diff --git a/src/fonts/SkRandomScalerContext.cpp b/src/fonts/SkRandomScalerContext.cpp index 49d9ab43ff..a38f695563 100644 --- a/src/fonts/SkRandomScalerContext.cpp +++ b/src/fonts/SkRandomScalerContext.cpp @@ -5,7 +5,6 @@ * found in the LICENSE file. */ -#include "SkAdvancedTypefaceMetrics.h" #include "SkBitmap.h" #include "SkCanvas.h" #include "SkGlyph.h" @@ -207,8 +206,11 @@ void SkRandomTypeface::onFilterRec(SkScalerContextRec* rec) const { rec->fMaskFormat = SkMask::kARGB32_Format; } -std::unique_ptr SkRandomTypeface::onGetAdvancedMetrics() const { - return fProxy->getAdvancedMetrics(); +SkAdvancedTypefaceMetrics* SkRandomTypeface::onGetAdvancedTypefaceMetrics( + PerGlyphInfo info, + const uint32_t* glyphIDs, + uint32_t glyphIDsCount) const { + return fProxy->getAdvancedTypefaceMetrics(info, glyphIDs, glyphIDsCount); } SkStreamAsset* SkRandomTypeface::onOpenStream(int* ttcIndex) const { diff --git a/src/fonts/SkRandomScalerContext.h b/src/fonts/SkRandomScalerContext.h index b71689d9e2..c84b76470e 100644 --- a/src/fonts/SkRandomScalerContext.h +++ b/src/fonts/SkRandomScalerContext.h @@ -27,7 +27,10 @@ protected: SkScalerContext* onCreateScalerContext(const SkScalerContextEffects&, const SkDescriptor*) const override; void onFilterRec(SkScalerContextRec*) const override; - std::unique_ptr onGetAdvancedMetrics() const override; + SkAdvancedTypefaceMetrics* onGetAdvancedTypefaceMetrics( + PerGlyphInfo, + const uint32_t* glyphIDs, + uint32_t glyphIDsCount) 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 ec53c54fa2..db726376f1 100644 --- a/src/fonts/SkTestScalerContext.cpp +++ b/src/fonts/SkTestScalerContext.cpp @@ -146,8 +146,12 @@ void SkTestTypeface::onFilterRec(SkScalerContextRec* rec) const { rec->setHinting(SkPaint::kNo_Hinting); } -std::unique_ptr SkTestTypeface::onGetAdvancedMetrics() const { // pdf only - std::unique_ptr info(new SkAdvancedTypefaceMetrics); +SkAdvancedTypefaceMetrics* SkTestTypeface::onGetAdvancedTypefaceMetrics( + PerGlyphInfo , + const uint32_t* glyphIDs, + uint32_t glyphIDsCount) const { +// pdf only + SkAdvancedTypefaceMetrics* 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 ec7ee853c7..5b2ec4f5a2 100644 --- a/src/fonts/SkTestScalerContext.h +++ b/src/fonts/SkTestScalerContext.h @@ -65,7 +65,10 @@ protected: SkScalerContext* onCreateScalerContext(const SkScalerContextEffects&, const SkDescriptor* desc) const override; void onFilterRec(SkScalerContextRec* rec) const override; - std::unique_ptr onGetAdvancedMetrics() const override; + SkAdvancedTypefaceMetrics* onGetAdvancedTypefaceMetrics( + PerGlyphInfo, + const uint32_t* glyphIDs, + uint32_t glyphIDsCount) const override; SkStreamAsset* onOpenStream(int* ttcIndex) const override { return nullptr; -- cgit v1.2.3