aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
Commit message (Collapse)AuthorAge
* Clean up SkFloatBitsGravatar mtklein2016-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - remove dead code - rewrite float -> int converters The strategy for the new converters is: - convert input to double - floor/ceil/round in double space - pin that double to [SK_MinS32, SK_MaxS32] - truncate that double to int32_t This simpler strategy does not work: - floor/ceil/round in float space - pin that float to [SK_MinS32, SK_MaxS32] - truncate that float to int32_t SK_MinS32 and SK_MaxS32 are not representable as floats: they round to the nearest float, ±2^31, which makes the pin insufficient for floats near SK_MinS32 (-2^31+1) or SK_MaxS32 (+2^31-1). float only has 24 bits of precision, and we need 31. double can represent all integers up to 50-something bits. An alternative is to pin in float to ±2147483520, the last exactly representable float before SK_MaxS32 (127 too small). Our tests test that we round as floor(x+0.5), which can return different numbers than round(x) for negative x. So this CL explicitly uses floor(x+0.5). I've updated the tests with ±inf and ±NaN, and tried to make them a little clearer, especially using SK_MinS32 instead of -SK_MaxS32. I have not timed anything here. I have never seen any of these methods in a profile. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012333003 Review-Url: https://codereview.chromium.org/2012333003
* Make SkPath::isOval() and SkPath::isRRect return the orientation and ↵Gravatar bsalomon2016-05-27
| | | | | | | | | | | starting index. These are tracked in SkPathRef. Unit tests are updated to test that the returned values are correct. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012233002 Review-Url: https://codereview.chromium.org/2012233002
* Add SkColorSpace to SkImageInfoGravatar msarett2016-05-27
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=2000713003 Review-Url: https://codereview.chromium.org/2000713003
* pin before calling acosGravatar caryclark2016-05-27
| | | | | | | | | | | | Adobe reports some user crashes in acos(). While the cause is unknown, it's safe and may help stability to pin the input in case the arguments drifted slightly outside [-1, 1]. R=reed@google.com BUG=skia:5222 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2006653006 Review-Url: https://codereview.chromium.org/2006653006
* add more SK_WARN_UNUSED_RESULT attributes to functions that ignore ↵Gravatar reed2016-05-26
| | | | | | | | | | | out-params if they fail BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012943003 TBR= Review-Url: https://codereview.chromium.org/2012943003
* Srcover for sprite blitters.Gravatar herb2016-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order for this code to run, the gDefaultProfileIsSRGB flag needs to be true. min base min exp percent name 5601856 4689911 0.837207 top25desk_espn.skp_1 3491515 3202806 0.917311 top25desk_facebook.skp_1 5110247 4865740 0.952154 top25desk_weather_com.skp_1 605445 585520 0.96709 top25desk_techcrunch_com.skp_1 1007151 986193 0.979191 top25desk_wikipedia__1_tab_.skp_1 5951286 5889979 0.989699 top25desk_sports_yahoo_com_.skp_1 2825583 2804853 0.992663 top25desk_plus_google_com_11003.skp_1 8839265 8823249 0.998188 top25desk_twitter.skp_1 4169125 4168882 0.999942 top25desk_docs___1_open_documen.skp_1 6615327 6620663 1.00081 top25desk_youtube_com.skp_1 4613903 4647583 1.0073 top25desk_wordpress.skp_1 2532280 2554154 1.00864 top25desk_ebay_com.skp_1 4015689 4063584 1.01193 top25desk_google_com__hl_en_q_b.skp_1 9427478 9579203 1.01609 top25desk_answers_yahoo_com.skp_1 7403901 7542770 1.01876 top25desk_booking_com.skp_1 12249953 12528353 1.02273 top25desk_google_com_search_q_c.skp_1 1078648 1111050 1.03004 top25desk_games_yahoo_com.skp_1 7232627 7481555 1.03442 top25desk_pinterest.skp_1 2996819 3112091 1.03846 top25desk_google_com_calendar_.skp_1 2181531 2271677 1.04132 top25desk_amazon_com.skp_1 925245 987545 1.06733 top25desk_blogger.skp_1 4143359 4442607 1.07222 top25desk_linkedin.skp_1 4370962 4744580 1.08548 top25desk_news_yahoo_com.skp_1 4284025 4735094 1.10529 top25desk_mail_google_com_mail_.skp_1 [mtklein] We measured the noise here to be [-5%, +8%], so most of these changes fall within the noise. We manually confirmed the two above that noise window (yahoo and mail) are also noise... srcover_srgb_srgb() did not figure prominently in their profiles. The espn and facebook improvements look real. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996683003 Review-Url: https://codereview.chromium.org/1996683003
* Complex clipPath accountingGravatar fmalita2016-05-25
| | | | | | | | | | | Add a clipPath heuristic to SkPathCounter, and extend SkPictureGpuAnalyzer to support external clipPath() op accounting. BUG=skia:5347 R=reed@google.com,mtklein@google.com,senorblanco@chromium.org,bsalomon@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2000423005 Review-Url: https://codereview.chromium.org/2000423005
* Write ICC profiles from SkColorSpace objectGravatar msarett2016-05-25
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2001203003 Review-Url: https://codereview.chromium.org/2001203003
* Don't store resources with a unique key in GrResourceCache's fScratchMapGravatar robertphillips2016-05-24
| | | | | | | | | | | The reasoning here is that resources with a unique key are never selected from fScratchMap and just clog up the search for an available resource. This knocks a 200x loop over the SVGbouncingrects case from 264ms down to 164ms. BUG=603969 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2008083002 Review-Url: https://codereview.chromium.org/2008083002
* SkColorSpace tweaksGravatar msarett2016-05-24
| | | | | | | | | | | ***Move includes to the correct file ***Add "const" ***Use std::move for more efficient refs and unrefs BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2005263002 Review-Url: https://codereview.chromium.org/2005263002
* Test color correction in DMGravatar msarett2016-05-23
| | | | | | | | | | | | | | | | | | | | | This will allow me to test and visualize some assumptions on parsing and applying color profiles. Also, it should help me find and fix bugs. This is certainly not an optimized implementation, and, as far as I know, it doesn't take any shortcuts to improve performance. We'll probably want to do both of these once we know where it fits in the pipeline. Right now this test is only run on an arbitrary set of ~100 images from the top 10k skps. I'll continue to add more "interesting" images and probably tweak the code as necessary. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1995233003 Review-Url: https://codereview.chromium.org/1995233003
* Make SkColorSpace a public APIGravatar msarett2016-05-23
| | | | | | | | | I've trimmed uniqueID for now, and added some comments. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996973002 Review-Url: https://codereview.chromium.org/1996973002
* Make an embeddable container to hold linear pipelines.Gravatar herb2016-05-19
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1998793002 Review-Url: https://codereview.chromium.org/1998793002
* Attempt to improve lifetime management of SkGlyphCache in Ganesh atlas text ↵Gravatar bsalomon2016-05-19
| | | | | | | | code. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1983353003 Review-Url: https://codereview.chromium.org/1983353003
* Remove mutex for retrieving default typeface.Gravatar bungeman2016-05-19
| | | | | | | | | | This mutex was added due to FontConfigTypeface::LegacyCreateTypeface being non-thread safe. This method no longer exists and the logic was moved to SkFontMgr_FCI::onLegacyCreateTypeface which has access to an appropriate mutex ("Clean up SkFontConfigInterface implementation.", 0265707c191a31dfde08dd1cd7011c1fe5b8e643). Review-Url: https://codereview.chromium.org/1994703003
* Propagate filter mode when rendering Alpha8 bitmapsGravatar brianosman2016-05-19
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1988023009 Review-Url: https://codereview.chromium.org/1988023009
* Assert complex precondition in SkGlyphCache::Visit.Gravatar bungeman2016-05-19
| | | | | | | | | SkGlyphCache::Visit takes a descriptor and a typeface, but it is implied that the fFontID in the descriptor is the id of the typeface. This seems to be handled correctly by current callers but this is a subtle requirement which if violated could lead to subtle bugs. Review-Url: https://codereview.chromium.org/1992053002
* SkCanvas::adjustToTopLayer()Gravatar tomhudson2016-05-18
| | | | | | | | | | | | Given a matrix and a clip bounds, offsets them to reflect the difference between device coordinates and global coordinates. Useful when a client wants an OS-specific backing for a canvas. R=reed@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986383002 Review-Url: https://codereview.chromium.org/1986383002
* Parse parametric gamma curvesGravatar msarett2016-05-18
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1972403002 Review-Url: https://codereview.chromium.org/1972403002
* SkColorSpace follow-upsGravatar msarett2016-05-17
| | | | | | | | | | Based on comments from: https://codereview.chromium.org/1985903002/ BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986833002 Review-Url: https://codereview.chromium.org/1986833002
* Fix leak of SkGammasGravatar msarett2016-05-17
| | | | | | | | TBR=borenet@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1990533002 Review-Url: https://codereview.chromium.org/1990533002
* Rename SkDescriptor::equals to SkDescriptor::operator==Gravatar bsalomon2016-05-17
| | | | | | | BUG=chromium:608566 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986253002 Review-Url: https://codereview.chromium.org/1986253002
* (Mostly) Retract GrRenderTarget from SkGpuDeviceGravatar robertphillips2016-05-17
| | | | | | | | | | | | | | | This gets us most of the way to having SkGpuDevice exclusively use a GrDrawContext instead of a GrRenderTarget. There are a few other refactorings (e.g., rm need for fLegacyBitmap and accessRenderTarget) before the GrRenderTarget can be completely removed. Has calved off: https://codereview.chromium.org/1925313002/ (Tighten up SkSpecialSurface factory functions) https://codereview.chromium.org/1925803004/ (Add sk_sp to SkSurface_Gpu and SkGpuDevice) https://codereview.chromium.org/1956473002/ (Retract GrRenderTarget a bit within SkGpuDevice) https://codereview.chromium.org/1979913002/ (Rename GrDrawingMgr::abandon to wasAbandoned & add a matching entry point to GrDrawingContext) https://codereview.chromium.org/1982583002/ (Add isUnifiedMultisampled entry point to GrDrawContext) GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1930013002 Review-Url: https://codereview.chromium.org/1930013002
* Prepare SkColorSpace to be a public APIGravatar msarett2016-05-17
| | | | | | | | | Moves implementation details into SkColorSpacePriv.h BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1985903002 Review-Url: https://codereview.chromium.org/1985903002
* Revert of Change to sRGB default for codec generated images. (patchset #2 ↵Gravatar herb2016-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | id:20001 of https://codereview.chromium.org/1955063002/ ) Reason for revert: TBR=brianosman@google.com Original issue's description: > Change to sRGB default for codec generated images. > > Compared the gm and skps for 8888 and srgb. There are no differences for 8888, there are 100 differences for sRGB, but the 100 look correct compared to the old ones. > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1955063002 > > Committed: https://skia.googlesource.com/skia/+/7acc00853174361cf921ecac8fbeaf6812f53eed TBR=brianosman@google.com,msarett@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/1982323002
* Change to sRGB default for codec generated images.Gravatar herb2016-05-16
| | | | | | | | | Compared the gm and skps for 8888 and srgb. There are no differences for 8888, there are 100 differences for sRGB, but the 100 look correct compared to the old ones. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1955063002 Review-Url: https://codereview.chromium.org/1955063002
* Recognize Adobe RGB profilesGravatar msarett2016-05-16
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971203002 Review-Url: https://codereview.chromium.org/1971203002
* SkPictureGpuAnalyzerGravatar fmalita2016-05-13
| | | | | | | | | | | | | Stateful helper for gathering multi-picture GPU stats. Exposes the existing SkPicture GPU veto semantics, while preserving the SKP impl (which has some nice properties: lazy, hierarchical, cached per pic). R=reed@google.com,bsalomon@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974833003 Review-Url: https://codereview.chromium.org/1974833003
* Convert GrClip to an abstract base classGravatar cdalton2016-05-13
| | | | | | | | | | | | | | | | Converts GrClip to an abstract base class and adds a "GrFixedClip" implementation. GrFixedClip denotes a clip implemented with fixed- function hardware. GrFixedClip allows us to remove the stateful "fClipMode" member from GrClipMaskManager, and in the future will be able to nicely encapsulate window rectangles. After this change GrClipMaskManager is just a wrapper around GrDrawTarget. We may want to consider removing it altogether. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971343002 Review-Url: https://codereview.chromium.org/1971343002
* This has all the different source types in and working. There are many ↵Gravatar herb2016-05-13
| | | | | | | | | | | SkDiffs, but they seem to be due to better resolution. This seems to fix all the bugs involved with make all the images produced by the codec to default to sRGB. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1967283002 Review-Url: https://codereview.chromium.org/1967283002
* Recognize more sRGB gammasGravatar msarett2016-05-13
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1975883003 Review-Url: https://codereview.chromium.org/1975883003
* Swap SkGpuBlurUtils over to using SkIRectsGravatar robertphillips2016-05-13
| | | | | | | | | | We don't have to land this, but I found it more comforting for the blurring code to explicitly deal with SkIRects rather than SkRects with integer values. Split out of: https://codereview.chromium.org/1959493002/ (Retract GrRenderTarget from SkGpuBlurUtils) GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1968603003 Review-Url: https://codereview.chromium.org/1968603003
* Make PixelGetters much smaller, move more common code to PixelAccessor.Gravatar herb2016-05-12
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971863002 Review-Url: https://codereview.chromium.org/1971863002
* Remove SkPicture::hasText()Gravatar fmalita2016-05-12
| | | | | | | No longer used in Chromium. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978533002 Review-Url: https://codereview.chromium.org/1978533002
* Fix bug & add code to catch ImageFilter clearing bugsGravatar robertphillips2016-05-12
| | | | | | | | | | Follow on to https://codereview.chromium.org/1969193002/ (SkPictureImageFilter - clear local canvas before use) BUG=610667 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1972213002 Review-Url: https://codereview.chromium.org/1972213002
* Fix bad pixel address calculation.Gravatar herb2016-05-12
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974053002 Review-Url: https://codereview.chromium.org/1974053002
* Move SkTypeface to sk_sp.Gravatar bungeman2016-05-12
| | | | | | | Committed: https://skia.googlesource.com/skia/+/6296da736fbf40aae881650c239420f64e576c3f GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1933393002 Review-Url: https://codereview.chromium.org/1933393002
* fix hairline clipGravatar caryclark2016-05-12
| | | | | | | | | | | Don't remove inner clip if it's non-rectangular. Add cubic hairline clip code to quad and conic cases. R=reed@google.com BUG=skia:5252 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1943403006 Review-Url: https://codereview.chromium.org/1943403006
* Revert of Move SkTypeface to sk_sp. (patchset #5 id:80001 of ↵Gravatar scroggo2016-05-12
| | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1933393002/ ) Reason for revert: fontmgr_iterAndroid failing to draw emoji. E.g. https://gold.skia.org/search2?blame=6296da736fbf40aae881650c239420f64e576c3f&unt=true&head=true&query=source_type%3Dgm Original issue's description: > Move SkTypeface to sk_sp. > > Committed: https://skia.googlesource.com/skia/+/6296da736fbf40aae881650c239420f64e576c3f TBR=reed@google.com,fmalita@chromium.org,tomhudson@google.com,bungeman@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/1974783002
* Move SkTypeface to sk_sp.Gravatar bungeman2016-05-11
| | | | Review-Url: https://codereview.chromium.org/1933393002
* Use common code from SkPM4fPrivGravatar herb2016-05-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1967793003 Review-Url: https://codereview.chromium.org/1967793003
* Refactor sample to share boiler plate code. TODO: move to common calls from ↵Gravatar herb2016-05-11
| | | | | | | | | | | SkPM4f. This preparation to finish handling the rest of the SkColorTypes. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970813002 Review-Url: https://codereview.chromium.org/1970813002
* compressed texture support has been broken/untested for a while, remove cruftGravatar reed2016-05-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970773002 Review-Url: https://codereview.chromium.org/1970773002
* Minor GrRenderTarget retractionGravatar robertphillips2016-05-11
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1967743003 Review-Url: https://codereview.chromium.org/1967743003
* Remove SkFontHost.h.Gravatar bungeman2016-05-10
| | | | | | What is left of this file is now in SkFontLCDConfig.h. Review-Url: https://codereview.chromium.org/1945883002
* refactor drawPath to have drawDevPathGravatar reed2016-05-09
| | | | | | | | | | | pre-CL for larger change to support read-only paths BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1957263003 TBR= Review-Url: https://codereview.chromium.org/1957263003
* Approximate common gamma tables as single valuesGravatar msarett2016-05-09
| | | | | | | | | | | | | | | | | | | | | This should improve performance of gamma conversion in software (we can use vector math instead of table look ups). Additionally this allows us to quickly and easily identify sRGB-like gammas. On gpu, identifying sRGB gamma improves performance/memory, because the hardware may support gamma conversion. This will help us identify situations where gamma conversion is not necessary. Ex: sRGB input -> sRGB display BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1950183006 Review-Url: https://codereview.chromium.org/1950183006
* SkAdvancedTypefaceMetrics: getAdvanceData uses std::functionGravatar halcanary2016-05-09
| | | | | | | Reduce templatedness. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1955053002 Review-Url: https://codereview.chromium.org/1955053002
* Reland of Disable layer hoisting for non-8888 canvases (patchset #1 id:1 of ↵Gravatar robertphillips2016-05-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1961483002/ ) Reason for revert: This CL was not the culprit in the perf regression. Original issue's description: > Revert of Disable layer hoisting for non-8888 canvases (patchset #2 id:20001 of https://codereview.chromium.org/1957433002/ ) > > Reason for revert: > Experimental revert to investigate perf regression > > Original issue's description: > > Disable layer hoisting for non-8888 canvases > > > > This just stops the bleeding. A real fix would propagate the canvas' backing type down to the layer hoister. > > > > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1957433002 > > > > Committed: https://skia.googlesource.com/skia/+/4e30f27164179d344f0c8efa9a691d1bc9a53e3f > > TBR=bsalomon@google.com > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Committed: https://skia.googlesource.com/skia/+/6b53b9daeb2137a91d8ddb8e890d66c702bfbaa3 TBR=bsalomon@google.com # Not skipping CQ checks because original CL landed more than 1 days ago. Review-Url: https://codereview.chromium.org/1962603002
* SkAdvancedTypefaceMetrics: abstract out linked listGravatar halcanary2016-05-08
| | | | | | | | | | | | | + use SkSinglyLinkedList<T> + move SkSinglyLinkedList.h to core + remove SkHackyAutoTDelete + getAdvanceData() -> setGlyphWidths() + finishRange no longer templated + remove unused templated functions GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953153004 Review-Url: https://codereview.chromium.org/1953153004