aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkPaint.cpp
Commit message (Collapse)AuthorAge
...
* Factory methods for heap-allocated SkAnnotation objects.Gravatar commit-bot@chromium.org2014-02-27
| | | | | | | | | | | | | | | | | This is part of an effort to ensure that all SkPaint effects can only be allocated on the heap. This patch makes the constructors of SkAnnotation non-public and instead provides factory methods for creating these objects on the heap. BUG=skia:2187 R=reed@google.com, mtklein@google.com, scroggo@google.com Author: dominikg@chromium.org Review URL: https://codereview.chromium.org/181703003 git-svn-id: http://skia.googlecode.com/svn/trunk@13605 2bbb7eff-a529-9590-31e7-b0007b416f81
* Upstream changes from AndroidGravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | R=scroggo@google.com, reed@google.com Author: djsollen@google.com Review URL: https://codereview.chromium.org/176963003 git-svn-id: http://skia.googlecode.com/svn/trunk@13600 2bbb7eff-a529-9590-31e7-b0007b416f81
* Merge tomhudson and mtklein SkPaint shrinking approaches.Gravatar commit-bot@chromium.org2014-02-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary. bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.) a/b skp before after 0.83 desk_techcrunch.skp 0.29 0.24 0.83 tabl_gamedeksiam.skp 0.52 0.43 0.87 desk_carsvg.skp 0.4 0.35 0.87 desk_googlehome.skp 0.038 0.033 0.87 desk_pokemonwiki.skp 3.9 3.4 0.88 desk_fontwipe.skp 0.0089 0.0078 0.88 desk_googlespreadsheet.skp 0.16 0.14 0.89 desk_jsfiddlebigcar.skp 0.027 0.024 0.89 desk_tigersvg.skp 0.038 0.034 0.89 desk_weather.skp 0.19 0.17 0.89 tabl_engadget.skp 0.37 0.33 0.89 tabl_googleblog.skp 0.28 0.25 0.9 desk_facebook.skp 0.2 0.18 0.91 desk_mapsvg.skp 0.45 0.41 0.91 desk_youtube.skp 0.22 0.2 0.92 desk_forecastio.skp 0.12 0.11 0.92 desk_googlespreadsheetdashed.skp 0.49 0.45 0.92 desk_gws.skp 0.13 0.12 0.92 desk_pinterest.skp 0.037 0.034 0.92 desk_twitter.skp 0.25 0.23 0.92 tabl_culturalsolutions.skp 0.26 0.24 0.92 tabl_gspro.skp 0.072 0.066 0.92 tabl_mercurynews.skp 0.26 0.24 0.93 desk_booking.skp 0.46 0.43 0.93 desk_chalkboard.skp 0.28 0.26 0.93 desk_linkedin.skp 0.14 0.13 0.93 desk_mobilenews.skp 0.28 0.26 0.93 tabl_cuteoverload.skp 0.46 0.43 0.93 tabl_deviantart.skp 0.15 0.14 0.93 tabl_gmail.skp 0.029 0.027 0.93 tabl_googlecalendar.skp 0.15 0.14 0.93 tabl_mlb.skp 0.15 0.14 0.94 desk_blogger.skp 0.18 0.17 0.94 desk_jsfiddlehumperclip.skp 0.034 0.032 0.94 desk_wordpress.skp 0.33 0.31 0.94 desk_wowwiki.skp 0.94 0.88 0.94 desk_yahooanswers.skp 0.17 0.16 0.94 desk_youtubetvvideo.skp 0.017 0.016 0.94 tabl_sahadan.skp 0.093 0.087 0.94 tabl_worldjournal.skp 0.35 0.33 0.95 desk_css3gradients.skp 0.21 0.2 0.95 desk_gmailthread.skp 0.19 0.18 0.95 tabl_cnet.skp 0.42 0.4 0.95 tabl_mozilla.skp 1.9 1.8 0.95 tabl_pravda.skp 0.19 0.18 0.96 mobi_wikipedia.skp 0.55 0.53 0.96 tabl_cnn.skp 0.48 0.46 0.96 tabl_nofolo.skp 0.05 0.048 0.97 desk_googleplus.skp 0.29 0.28 0.97 tabl_frantzen.skp 0.059 0.057 0.97 tabl_onlinewsj.skp 0.38 0.37 0.97 tabl_slashdot.skp 0.1 0.097 0.97 tabl_vnexpress.skp 0.29 0.28 0.99 desk_amazon.skp 0.088 0.087 1 desk_baidu.skp 0.097 0.099 1 desk_ebay.skp 0.18 0.18 1 desk_espn.skp 0.24 0.24 1 desk_oldinboxapp.skp 0.026 0.026 1 desk_rectangletransition.skp 0.014 0.014 1 desk_samoasvg.skp 0.23 0.24 1 desk_yahoogames.skp 0.029 0.029 1 desk_yahoosports.skp 0.0033 0.0033 1 desk_youtubetvbrowse.skp 0.01 0.01 1 tabl_androidpolice.skp 0.65 0.65 1 tabl_digg.skp 0.33 0.33 1 tabl_hsfi.skp 0.32 0.32 1 tabl_nytimes.skp 0.22 0.22 1 tabl_techmeme.skp 0.069 0.072 1 tabl_ukwsj.skp 0.35 0.35 1.1 desk_sfgate.skp 0.25 0.28 BUG=skia:2190,skia:2194 Committed: http://code.google.com/p/skia/source/detail?r=13487 Committed: http://code.google.com/p/skia/source/detail?r=13496 R=tomhudson@google.com, reed@google.com, mtklein@google.com, robertphillips@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/158913005 git-svn-id: http://skia.googlecode.com/svn/trunk@13536 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r13496 (Merge tomhudson and mtklein SkPaint shrinking approaches) ↵Gravatar robertphillips@google.com2014-02-20
| | | | | | due to memory leaks git-svn-id: http://skia.googlecode.com/svn/trunk@13509 2bbb7eff-a529-9590-31e7-b0007b416f81
* Merge tomhudson and mtklein SkPaint shrinking approaches.Gravatar commit-bot@chromium.org2014-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary. bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.) a/b skp before after 0.83 desk_techcrunch.skp 0.29 0.24 0.83 tabl_gamedeksiam.skp 0.52 0.43 0.87 desk_carsvg.skp 0.4 0.35 0.87 desk_googlehome.skp 0.038 0.033 0.87 desk_pokemonwiki.skp 3.9 3.4 0.88 desk_fontwipe.skp 0.0089 0.0078 0.88 desk_googlespreadsheet.skp 0.16 0.14 0.89 desk_jsfiddlebigcar.skp 0.027 0.024 0.89 desk_tigersvg.skp 0.038 0.034 0.89 desk_weather.skp 0.19 0.17 0.89 tabl_engadget.skp 0.37 0.33 0.89 tabl_googleblog.skp 0.28 0.25 0.9 desk_facebook.skp 0.2 0.18 0.91 desk_mapsvg.skp 0.45 0.41 0.91 desk_youtube.skp 0.22 0.2 0.92 desk_forecastio.skp 0.12 0.11 0.92 desk_googlespreadsheetdashed.skp 0.49 0.45 0.92 desk_gws.skp 0.13 0.12 0.92 desk_pinterest.skp 0.037 0.034 0.92 desk_twitter.skp 0.25 0.23 0.92 tabl_culturalsolutions.skp 0.26 0.24 0.92 tabl_gspro.skp 0.072 0.066 0.92 tabl_mercurynews.skp 0.26 0.24 0.93 desk_booking.skp 0.46 0.43 0.93 desk_chalkboard.skp 0.28 0.26 0.93 desk_linkedin.skp 0.14 0.13 0.93 desk_mobilenews.skp 0.28 0.26 0.93 tabl_cuteoverload.skp 0.46 0.43 0.93 tabl_deviantart.skp 0.15 0.14 0.93 tabl_gmail.skp 0.029 0.027 0.93 tabl_googlecalendar.skp 0.15 0.14 0.93 tabl_mlb.skp 0.15 0.14 0.94 desk_blogger.skp 0.18 0.17 0.94 desk_jsfiddlehumperclip.skp 0.034 0.032 0.94 desk_wordpress.skp 0.33 0.31 0.94 desk_wowwiki.skp 0.94 0.88 0.94 desk_yahooanswers.skp 0.17 0.16 0.94 desk_youtubetvvideo.skp 0.017 0.016 0.94 tabl_sahadan.skp 0.093 0.087 0.94 tabl_worldjournal.skp 0.35 0.33 0.95 desk_css3gradients.skp 0.21 0.2 0.95 desk_gmailthread.skp 0.19 0.18 0.95 tabl_cnet.skp 0.42 0.4 0.95 tabl_mozilla.skp 1.9 1.8 0.95 tabl_pravda.skp 0.19 0.18 0.96 mobi_wikipedia.skp 0.55 0.53 0.96 tabl_cnn.skp 0.48 0.46 0.96 tabl_nofolo.skp 0.05 0.048 0.97 desk_googleplus.skp 0.29 0.28 0.97 tabl_frantzen.skp 0.059 0.057 0.97 tabl_onlinewsj.skp 0.38 0.37 0.97 tabl_slashdot.skp 0.1 0.097 0.97 tabl_vnexpress.skp 0.29 0.28 0.99 desk_amazon.skp 0.088 0.087 1 desk_baidu.skp 0.097 0.099 1 desk_ebay.skp 0.18 0.18 1 desk_espn.skp 0.24 0.24 1 desk_oldinboxapp.skp 0.026 0.026 1 desk_rectangletransition.skp 0.014 0.014 1 desk_samoasvg.skp 0.23 0.24 1 desk_yahoogames.skp 0.029 0.029 1 desk_yahoosports.skp 0.0033 0.0033 1 desk_youtubetvbrowse.skp 0.01 0.01 1 tabl_androidpolice.skp 0.65 0.65 1 tabl_digg.skp 0.33 0.33 1 tabl_hsfi.skp 0.32 0.32 1 tabl_nytimes.skp 0.22 0.22 1 tabl_techmeme.skp 0.069 0.072 1 tabl_ukwsj.skp 0.35 0.35 1.1 desk_sfgate.skp 0.25 0.28 BUG=skia:2190 Committed: http://code.google.com/p/skia/source/detail?r=13487 R=tomhudson@google.com, reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/158913005 git-svn-id: http://skia.googlecode.com/svn/trunk@13496 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Merge tomhudson and mtklein SkPaint shrinking approaches. ↵Gravatar commit-bot@chromium.org2014-02-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/158913005/) Reason for revert: Breaking the build - see https://code.google.com/p/skia/issues/detail?id=2190 Original issue's description: > Merge tomhudson and mtklein SkPaint shrinking approaches. > > I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary. > > bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.) > a/b skp before after > 0.83 desk_techcrunch.skp 0.29 0.24 > 0.83 tabl_gamedeksiam.skp 0.52 0.43 > 0.87 desk_carsvg.skp 0.4 0.35 > 0.87 desk_googlehome.skp 0.038 0.033 > 0.87 desk_pokemonwiki.skp 3.9 3.4 > 0.88 desk_fontwipe.skp 0.0089 0.0078 > 0.88 desk_googlespreadsheet.skp 0.16 0.14 > 0.89 desk_jsfiddlebigcar.skp 0.027 0.024 > 0.89 desk_tigersvg.skp 0.038 0.034 > 0.89 desk_weather.skp 0.19 0.17 > 0.89 tabl_engadget.skp 0.37 0.33 > 0.89 tabl_googleblog.skp 0.28 0.25 > 0.9 desk_facebook.skp 0.2 0.18 > 0.91 desk_mapsvg.skp 0.45 0.41 > 0.91 desk_youtube.skp 0.22 0.2 > 0.92 desk_forecastio.skp 0.12 0.11 > 0.92 desk_googlespreadsheetdashed.skp 0.49 0.45 > 0.92 desk_gws.skp 0.13 0.12 > 0.92 desk_pinterest.skp 0.037 0.034 > 0.92 desk_twitter.skp 0.25 0.23 > 0.92 tabl_culturalsolutions.skp 0.26 0.24 > 0.92 tabl_gspro.skp 0.072 0.066 > 0.92 tabl_mercurynews.skp 0.26 0.24 > 0.93 desk_booking.skp 0.46 0.43 > 0.93 desk_chalkboard.skp 0.28 0.26 > 0.93 desk_linkedin.skp 0.14 0.13 > 0.93 desk_mobilenews.skp 0.28 0.26 > 0.93 tabl_cuteoverload.skp 0.46 0.43 > 0.93 tabl_deviantart.skp 0.15 0.14 > 0.93 tabl_gmail.skp 0.029 0.027 > 0.93 tabl_googlecalendar.skp 0.15 0.14 > 0.93 tabl_mlb.skp 0.15 0.14 > 0.94 desk_blogger.skp 0.18 0.17 > 0.94 desk_jsfiddlehumperclip.skp 0.034 0.032 > 0.94 desk_wordpress.skp 0.33 0.31 > 0.94 desk_wowwiki.skp 0.94 0.88 > 0.94 desk_yahooanswers.skp 0.17 0.16 > 0.94 desk_youtubetvvideo.skp 0.017 0.016 > 0.94 tabl_sahadan.skp 0.093 0.087 > 0.94 tabl_worldjournal.skp 0.35 0.33 > 0.95 desk_css3gradients.skp 0.21 0.2 > 0.95 desk_gmailthread.skp 0.19 0.18 > 0.95 tabl_cnet.skp 0.42 0.4 > 0.95 tabl_mozilla.skp 1.9 1.8 > 0.95 tabl_pravda.skp 0.19 0.18 > 0.96 mobi_wikipedia.skp 0.55 0.53 > 0.96 tabl_cnn.skp 0.48 0.46 > 0.96 tabl_nofolo.skp 0.05 0.048 > 0.97 desk_googleplus.skp 0.29 0.28 > 0.97 tabl_frantzen.skp 0.059 0.057 > 0.97 tabl_onlinewsj.skp 0.38 0.37 > 0.97 tabl_slashdot.skp 0.1 0.097 > 0.97 tabl_vnexpress.skp 0.29 0.28 > 0.99 desk_amazon.skp 0.088 0.087 > 1 desk_baidu.skp 0.097 0.099 > 1 desk_ebay.skp 0.18 0.18 > 1 desk_espn.skp 0.24 0.24 > 1 desk_oldinboxapp.skp 0.026 0.026 > 1 desk_rectangletransition.skp 0.014 0.014 > 1 desk_samoasvg.skp 0.23 0.24 > 1 desk_yahoogames.skp 0.029 0.029 > 1 desk_yahoosports.skp 0.0033 0.0033 > 1 desk_youtubetvbrowse.skp 0.01 0.01 > 1 tabl_androidpolice.skp 0.65 0.65 > 1 tabl_digg.skp 0.33 0.33 > 1 tabl_hsfi.skp 0.32 0.32 > 1 tabl_nytimes.skp 0.22 0.22 > 1 tabl_techmeme.skp 0.069 0.072 > 1 tabl_ukwsj.skp 0.35 0.35 > 1.1 desk_sfgate.skp 0.25 0.28 > > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=13487 R=tomhudson@google.com, reed@google.com, mtklein@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, mtklein@google.com, reed@google.com, tomhudson@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: scroggo@google.com Review URL: https://codereview.chromium.org/169183003 git-svn-id: http://skia.googlecode.com/svn/trunk@13491 2bbb7eff-a529-9590-31e7-b0007b416f81
* Merge tomhudson and mtklein SkPaint shrinking approaches.Gravatar commit-bot@chromium.org2014-02-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary. bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.) a/b skp before after 0.83 desk_techcrunch.skp 0.29 0.24 0.83 tabl_gamedeksiam.skp 0.52 0.43 0.87 desk_carsvg.skp 0.4 0.35 0.87 desk_googlehome.skp 0.038 0.033 0.87 desk_pokemonwiki.skp 3.9 3.4 0.88 desk_fontwipe.skp 0.0089 0.0078 0.88 desk_googlespreadsheet.skp 0.16 0.14 0.89 desk_jsfiddlebigcar.skp 0.027 0.024 0.89 desk_tigersvg.skp 0.038 0.034 0.89 desk_weather.skp 0.19 0.17 0.89 tabl_engadget.skp 0.37 0.33 0.89 tabl_googleblog.skp 0.28 0.25 0.9 desk_facebook.skp 0.2 0.18 0.91 desk_mapsvg.skp 0.45 0.41 0.91 desk_youtube.skp 0.22 0.2 0.92 desk_forecastio.skp 0.12 0.11 0.92 desk_googlespreadsheetdashed.skp 0.49 0.45 0.92 desk_gws.skp 0.13 0.12 0.92 desk_pinterest.skp 0.037 0.034 0.92 desk_twitter.skp 0.25 0.23 0.92 tabl_culturalsolutions.skp 0.26 0.24 0.92 tabl_gspro.skp 0.072 0.066 0.92 tabl_mercurynews.skp 0.26 0.24 0.93 desk_booking.skp 0.46 0.43 0.93 desk_chalkboard.skp 0.28 0.26 0.93 desk_linkedin.skp 0.14 0.13 0.93 desk_mobilenews.skp 0.28 0.26 0.93 tabl_cuteoverload.skp 0.46 0.43 0.93 tabl_deviantart.skp 0.15 0.14 0.93 tabl_gmail.skp 0.029 0.027 0.93 tabl_googlecalendar.skp 0.15 0.14 0.93 tabl_mlb.skp 0.15 0.14 0.94 desk_blogger.skp 0.18 0.17 0.94 desk_jsfiddlehumperclip.skp 0.034 0.032 0.94 desk_wordpress.skp 0.33 0.31 0.94 desk_wowwiki.skp 0.94 0.88 0.94 desk_yahooanswers.skp 0.17 0.16 0.94 desk_youtubetvvideo.skp 0.017 0.016 0.94 tabl_sahadan.skp 0.093 0.087 0.94 tabl_worldjournal.skp 0.35 0.33 0.95 desk_css3gradients.skp 0.21 0.2 0.95 desk_gmailthread.skp 0.19 0.18 0.95 tabl_cnet.skp 0.42 0.4 0.95 tabl_mozilla.skp 1.9 1.8 0.95 tabl_pravda.skp 0.19 0.18 0.96 mobi_wikipedia.skp 0.55 0.53 0.96 tabl_cnn.skp 0.48 0.46 0.96 tabl_nofolo.skp 0.05 0.048 0.97 desk_googleplus.skp 0.29 0.28 0.97 tabl_frantzen.skp 0.059 0.057 0.97 tabl_onlinewsj.skp 0.38 0.37 0.97 tabl_slashdot.skp 0.1 0.097 0.97 tabl_vnexpress.skp 0.29 0.28 0.99 desk_amazon.skp 0.088 0.087 1 desk_baidu.skp 0.097 0.099 1 desk_ebay.skp 0.18 0.18 1 desk_espn.skp 0.24 0.24 1 desk_oldinboxapp.skp 0.026 0.026 1 desk_rectangletransition.skp 0.014 0.014 1 desk_samoasvg.skp 0.23 0.24 1 desk_yahoogames.skp 0.029 0.029 1 desk_yahoosports.skp 0.0033 0.0033 1 desk_youtubetvbrowse.skp 0.01 0.01 1 tabl_androidpolice.skp 0.65 0.65 1 tabl_digg.skp 0.33 0.33 1 tabl_hsfi.skp 0.32 0.32 1 tabl_nytimes.skp 0.22 0.22 1 tabl_techmeme.skp 0.069 0.072 1 tabl_ukwsj.skp 0.35 0.35 1.1 desk_sfgate.skp 0.25 0.28 BUG=skia: R=tomhudson@google.com, reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/158913005 git-svn-id: http://skia.googlecode.com/svn/trunk@13487 2bbb7eff-a529-9590-31e7-b0007b416f81
* Refactor read and write buffers.Gravatar commit-bot@chromium.org2014-01-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eliminates SkFlattenable{Read,Write}Buffer, promoting SkOrdered{Read,Write}Buffer a step each in the hierarchy. What used to be this: SkFlattenableWriteBuffer -> SkOrderedWriteBuffer SkFlattenableReadBuffer -> SkOrderedReadBuffer SkFlattenableReadBuffer -> SkValidatingReadBuffer is now SkWriteBuffer SkReadBuffer -> SkValidatingReadBuffer Benefits: - code is simpler, names are less wordy - the generic SkFlattenableFooBuffer code in SkPaint was incorrect; removed - write buffers are completely devirtualized, important for record speed This refactoring was mostly mechanical. You aren't going to find anything interesting in files with less than 10 lines changed. BUG=skia: R=reed@google.com, scroggo@google.com, djsollen@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/134163010 git-svn-id: http://skia.googlecode.com/svn/trunk@13245 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement a computeFastBounds() traversal for SkImageFilter.Gravatar senorblanco@chromium.org2014-01-27
| | | | | | | | | | | This allows for correct culling of primitives which have image filters applied. R=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/137423005 git-svn-id: http://skia.googlecode.com/svn/trunk@13207 2bbb7eff-a529-9590-31e7-b0007b416f81
* Clarify kAutohinting is kForceAutohinting.Gravatar bungeman@google.com2014-01-23
| | | | | | | | | BUG=skia:2047 R=reed@google.com Review URL: https://codereview.chromium.org/139943004 git-svn-id: http://skia.googlecode.com/svn/trunk@13156 2bbb7eff-a529-9590-31e7-b0007b416f81
* Convert SkWriter32 to use an SkTDArray for its internal storage.Gravatar commit-bot@chromium.org2014-01-14
| | | | | | | | | | | | | | | | | | | | | | | | This reduces the allocation overhead of a null picture (create, beginRecording(), endRecording) from about 18K to about 1.9K. (There's still lots more to prune.) SkPictureFlat can exploit the fact that Writer32 is contiguous simplify its memory management. The Writer32 itself becomes the scratch buffer. Remove lots and lots of arbitrary magic numbers that were size guesses and minimum allocation sizes. Keep your eyes open for the big obvious DUH why we save 16K per picture! (Spoiler alert. It's because that first save we issue in beginRecording() forces the old SkWriter32 to allocate 16K.) Tests passing, DM passing. bench --match writer: ~20% faster null bench_record: ~30% faster bench_record on buildbot .skps: ~3-6% slower, ranging 25% faster to 20% slower bench_pictures on buildbot .skps: ~1-2% faster, ranging 13% faster to 28% slower BUG=skia:1850 R=reed@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/137433003 git-svn-id: http://skia.googlecode.com/svn/trunk@13073 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove SK_SCALAR_IS_[FLOAT,FIXED] and assume floatsGravatar reed@google.com2013-12-17
| | | | | | | | | | | | | To keep the CL (slightly) managable, this does not make any changes to existing macros (e.g. SkScalarMul). Just tackling #ifdef constructs this time around. BUG= R=bsalomon@google.com, caryclark@google.com Review URL: https://codereview.chromium.org/117053002 git-svn-id: http://skia.googlecode.com/svn/trunk@12712 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r12427Gravatar rmistry@google.com2013-12-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12428 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-12-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12427 2bbb7eff-a529-9590-31e7-b0007b416f81
* Clean up 4 old bytes per paint.Gravatar commit-bot@chromium.org2013-11-26
| | | | | | | | | | | BUG= R=reed@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/27370003 git-svn-id: http://skia.googlecode.com/svn/trunk@12390 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove SkFloatToScalar macroGravatar commit-bot@chromium.org2013-11-25
| | | | | | | | | | | BUG= R=reed@google.com, djsollen@google.com Author: caryclark@google.com Review URL: https://codereview.chromium.org/85463005 git-svn-id: http://skia.googlecode.com/svn/trunk@12385 2bbb7eff-a529-9590-31e7-b0007b416f81
* All SkAnnotations are no-draw. Propose we fold that through.Gravatar commit-bot@chromium.org2013-10-29
| | | | | | | | | | | BUG= R=edisonn@google.com, reed@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/48523008 git-svn-id: http://skia.googlecode.com/svn/trunk@12008 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add display of filterLevel to debuggerGravatar robertphillips@google.com2013-10-16
| | | | | | | | https://codereview.chromium.org/27525002/ git-svn-id: http://skia.googlecode.com/svn/trunk@11818 2bbb7eff-a529-9590-31e7-b0007b416f81
* force readbuffer clients to use specialized readFoo for flattenablesGravatar reed@google.com2013-10-16
| | | | | | | | | BUG= R=mtklein@google.com Review URL: https://codereview.chromium.org/26702002 git-svn-id: http://skia.googlecode.com/svn/trunk@11803 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-10-15
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@11769 2bbb7eff-a529-9590-31e7-b0007b416f81
* change SkAnnotation to not inherit from SkFlattenable (does not need dynamic ↵Gravatar reed@google.com2013-10-14
| | | | | | | | | | | factories) BUG= R=scroggo@google.com Review URL: https://codereview.chromium.org/26606004 git-svn-id: http://skia.googlecode.com/svn/trunk@11762 2bbb7eff-a529-9590-31e7-b0007b416f81
* Update #if to #ifdef for consistencyGravatar commit-bot@chromium.org2013-10-08
| | | | | | | | | | R=mtklein@google.com Author: djsollen@google.com Review URL: https://codereview.chromium.org/26495002 git-svn-id: http://skia.googlecode.com/svn/trunk@11653 2bbb7eff-a529-9590-31e7-b0007b416f81
* We don't flatten or unflatten SkPaintOptionsAndroid. Reproduce and fix.Gravatar commit-bot@chromium.org2013-09-26
| | | | | | | | | | | BUG=skia:1625 R=djsollen@google.com, reed@google.com Author: mtklein@google.com Review URL: https://chromiumcodereview.appspot.com/24075010 git-svn-id: http://skia.googlecode.com/svn/trunk@11472 2bbb7eff-a529-9590-31e7-b0007b416f81
* Nobody defines SK_SUPPORT_HINTING_SCALE_FACTOR any more, so remove it.Gravatar mtklein@google.com2013-08-15
| | | | | | | | | | | | | | I left the dummy value in the flattened paint. I'm hoping to do an overhaul of the paint serialization format which will need a picture version bump anyway, so it can all go together. If that doesn't pan out we can remove this on its own later. BUG= R=reed@google.com Review URL: https://codereview.chromium.org/23056005 git-svn-id: http://skia.googlecode.com/svn/trunk@10757 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert r10603 (Remove operator== from SkPaint) due to Chrome failuresGravatar robertphillips@google.com2013-08-07
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@10632 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove operator== from SkPaintGravatar commit-bot@chromium.org2013-08-07
| | | | | | | | | | R=mtklein@google.com, reed@google.com Author: sglez@google.com Review URL: https://chromiumcodereview.appspot.com/21949007 git-svn-id: http://skia.googlecode.com/svn/trunk@10603 2bbb7eff-a529-9590-31e7-b0007b416f81
* add FilterLevel API to SkPaint, replacing various Flag bitsGravatar reed@google.com2013-07-18
| | | | | | | | | BUG= R=bsalomon@google.com Review URL: https://codereview.chromium.org/19769005 git-svn-id: http://skia.googlecode.com/svn/trunk@10138 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-06-05
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9440 2bbb7eff-a529-9590-31e7-b0007b416f81
* add size limit for using glyphcache. above that, draw using pathsGravatar reed@google.com2013-06-04
| | | | | | | | | BUG= R=bungeman@google.com Review URL: https://codereview.chromium.org/16336024 git-svn-id: http://skia.googlecode.com/svn/trunk@9429 2bbb7eff-a529-9590-31e7-b0007b416f81
* Android specific changes that are upstreamed from the android framework.Gravatar djsollen@google.com2013-05-24
| | | | | | | | R=reed@google.com Review URL: https://codereview.chromium.org/15720006 git-svn-id: http://skia.googlecode.com/svn/trunk@9283 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move SkDrawLooper implementation to its own file.Gravatar commit-bot@chromium.org2013-05-24
| | | | | | | | | | | | | It previously lived in SkPaint.cpp. BUG= R=reed@google.com, tomhudson@chromium.org, jbroman@chromium.org Author: jbroman@chromium.org Review URL: https://chromiumcodereview.appspot.com/15896004 git-svn-id: http://skia.googlecode.com/svn/trunk@9272 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add printing of SkColorFilter-derived classes to debuggerGravatar robertphillips@google.com2013-05-23
| | | | | | | | https://codereview.chromium.org/15697012/ git-svn-id: http://skia.googlecode.com/svn/trunk@9255 2bbb7eff-a529-9590-31e7-b0007b416f81
* API modifications needed to upstream Android font changes.Gravatar commit-bot@chromium.org2013-05-13
| | | | | | | | | | | | Committed: http://code.google.com/p/skia/source/detail?r=9083 R=reed@google.com Author: djsollen@google.com Review URL: https://chromiumcodereview.appspot.com/14761003 git-svn-id: http://skia.googlecode.com/svn/trunk@9107 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting 9083 & 9084 due to Android failuresGravatar robertphillips@google.com2013-05-09
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9085 2bbb7eff-a529-9590-31e7-b0007b416f81
* API modifications needed to upstream Android font changes.Gravatar commit-bot@chromium.org2013-05-09
| | | | | | | | | | R=reed@google.com Author: djsollen@google.com Review URL: https://chromiumcodereview.appspot.com/14761003 git-svn-id: http://skia.googlecode.com/svn/trunk@9083 2bbb7eff-a529-9590-31e7-b0007b416f81
* we only need one fontmetrics, since the paint (and fontcache) now know ↵Gravatar reed@google.com2013-05-08
| | | | | | | | | | explicitly if they are horizontal or vertical. Review URL: https://codereview.chromium.org/14940018 git-svn-id: http://skia.googlecode.com/svn/trunk@9058 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SkTypeface* parameter to SkScalerContext (and its callers)Gravatar reed@google.com2013-03-19
| | | | | | | Use SkTypeface to create scalercontext instead of SkFontHost Review URL: https://codereview.chromium.org/12706010 git-svn-id: http://skia.googlecode.com/svn/trunk@8223 2bbb7eff-a529-9590-31e7-b0007b416f81
* Added toString to SkMaskFilter-derived classesGravatar robertphillips@google.com2013-03-18
| | | | | | | | https://codereview.appspot.com/7889043/ git-svn-id: http://skia.googlecode.com/svn/trunk@8194 2bbb7eff-a529-9590-31e7-b0007b416f81
* move most of SkFontHost to private (preceeding making it all private)Gravatar reed@google.com2013-03-14
| | | | | | | In this change, have to accomodate PDF wanting to call openStream and advancedMetrics Review URL: https://codereview.chromium.org/12739006 git-svn-id: http://skia.googlecode.com/svn/trunk@8156 2bbb7eff-a529-9590-31e7-b0007b416f81
* Upstream changes from Android.Gravatar djsollen@google.com2013-03-08
| | | | | | Review URL: https://codereview.chromium.org/12699002 git-svn-id: http://skia.googlecode.com/svn/trunk@8045 2bbb7eff-a529-9590-31e7-b0007b416f81
* Initialize bounds even if the text length is zero.Gravatar djsollen@google.com2013-03-04
| | | | | | Review URL: https://codereview.chromium.org/12387092 git-svn-id: http://skia.googlecode.com/svn/trunk@7964 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixed sk_getMetrics_utf32_xy functionGravatar sugoi@google.com2013-02-26
| | | | | | | The unused parameters x and y here seems to be a mistake. Review URL: https://codereview.appspot.com/7386055 git-svn-id: http://skia.googlecode.com/svn/trunk@7873 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move SkPaint::toString from debugger to SkPaintGravatar robertphillips@google.com2013-02-14
| | | | | | | | https://codereview.appspot.com/7314092/ git-svn-id: http://skia.googlecode.com/svn/trunk@7732 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2013-01-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
* add optional cull-rect to patheffects, so they can do less work if their resultsGravatar reed@google.com2013-01-24
| | | | | | | lie outside of the current clip-bounds (the cull rect). Review URL: https://codereview.appspot.com/7206044 git-svn-id: http://skia.googlecode.com/svn/trunk@7378 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix VC++ warning and Android only code for 7317.Gravatar bungeman@google.com2013-01-22
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7319 2bbb7eff-a529-9590-31e7-b0007b416f81
* Expose geometry and gamma on device.Gravatar bungeman@google.com2013-01-22
| | | | | | | https://codereview.appspot.com/6499101/ git-svn-id: http://skia.googlecode.com/svn/trunk@7317 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix spelling: cannonical -> canonicalGravatar reed@google.com2013-01-08
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7074 2bbb7eff-a529-9590-31e7-b0007b416f81
* Clean up usage of mask gamma.Gravatar bungeman@google.com2012-10-26
| | | | | | | https://codereview.appspot.com/6749061/ git-svn-id: http://skia.googlecode.com/svn/trunk@6151 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fonts with cubic outlines are rendered without ClearType by GDI.Gravatar bungeman@google.com2012-10-12
| | | | | | | https://codereview.appspot.com/6643060/ git-svn-id: http://skia.googlecode.com/svn/trunk@5929 2bbb7eff-a529-9590-31e7-b0007b416f81