aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkPaint.cpp
Commit message (Collapse)AuthorAge
* Gamma correction for distance field text.Gravatar jvanverth2014-06-10
| | | | | | | | | | | | | | Handles both non-LCD and LCD text. Uses a texture to look up the gamma correction values for a given text color or luminance. BUG=skia: Committed: https://skia.googlesource.com/skia/+/4d517fdbb145cb95e5e935470df331e1b6667cfc R=reed@google.com, bungeman@google.com, robertphillips@google.com, bsalomon@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/258883002
* Add assertHeld() to SkMutex.Gravatar mtklein2014-06-09
| | | | | | | | | BUG=skia: R=bungeman@google.com, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/313823004
* Revert of Gamma correction for distance field text. ↵Gravatar scroggo2014-06-09
| | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/258883002/) Reason for revert: Memory leaks. I suspect this is due to the lack of destructors in SkAutoGlyphCache Original issue's description: > Gamma correction for distance field text. > > Handles both non-LCD and LCD text. Uses a texture to look up the gamma correction values for a given text color or luminance. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/4d517fdbb145cb95e5e935470df331e1b6667cfc NOTRY=true NOTREECHECKS=true R=reed@google.com, bungeman@google.com, robertphillips@google.com, bsalomon@google.com, jvanverth@google.com, mtklein@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/323513005
* Gamma correction for distance field text.Gravatar jvanverth2014-06-09
| | | | | | | | | | | Handles both non-LCD and LCD text. Uses a texture to look up the gamma correction values for a given text color or luminance. BUG=skia: R=reed@google.com, bungeman@google.com, robertphillips@google.com, bsalomon@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/258883002
* Clean up Skia for Clang's -Wtautological-undefined-compareGravatar Mike Klein2014-06-07
| | | | | | | | This is blocking Chrome from rolling a new Clang, and me too for our TSAN bots. BUG=chromium:381910 Review URL: https://codereview.chromium.org/325603002
* formalize named picture versionsGravatar commit-bot@chromium.org2014-05-20
| | | | | | | | | | | BUG=skia: R=mtklein@google.com, robertphillips@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/291913004 git-svn-id: http://skia.googlecode.com/svn/trunk@14807 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix utf32 text in subpixel modeGravatar commit-bot@chromium.org2014-05-19
| | | | | | | | | | | BUG=skia:2568 R=scroggo@google.com, anders@kilohearts.com Author: reed@google.com Review URL: https://codereview.chromium.org/290893003 git-svn-id: http://skia.googlecode.com/svn/trunk@14789 2bbb7eff-a529-9590-31e7-b0007b416f81
* add release-mode checks for null, at least for a whileGravatar commit-bot@chromium.org2014-05-02
| | | | | | | | | | | BUG=skia: R=bungeman@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/263883006 git-svn-id: http://skia.googlecode.com/svn/trunk@14552 2bbb7eff-a529-9590-31e7-b0007b416f81
* guard against self-assignmentGravatar commit-bot@chromium.org2014-05-02
| | | | | | | | | | | BUG=skia: R=mtklein@google.com, bungeman@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/264793014 git-svn-id: http://skia.googlecode.com/svn/trunk@14545 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix warnings around size_t/intGravatar commit-bot@chromium.org2014-04-19
| | | | | | | | | | | | fix warnings around undeclared (non-static) functions TBR=bsalomon@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/242643008 git-svn-id: http://skia.googlecode.com/svn/trunk@14267 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-04-17
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@14234 2bbb7eff-a529-9590-31e7-b0007b416f81
* always store bitfields along with dirty in FlatteningTraitsGravatar commit-bot@chromium.org2014-04-16
| | | | | | | | | | | | This allows us to simplify lots of setters in SkPaint, which in the non-android case, could now be just assignments (and therefore inlineable). R=mtklein@google.com, robertphillips@google.com, tomhudson@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/240273004 git-svn-id: http://skia.googlecode.com/svn/trunk@14229 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove legacy filter-flags, and store FilterLevel directlyGravatar commit-bot@chromium.org2014-04-16
| | | | | | | | | | | BUG=skia: R=robertphillips@google.com, humper@google.com, jvanverth@google.com, mtklein@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/239393002 git-svn-id: http://skia.googlecode.com/svn/trunk@14217 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkPaint: eliminate some dead bytes in 64-bit build.Gravatar commit-bot@chromium.org2014-03-24
| | | | | | | | | | | | | | | | | | | + memcpy-based copy constructor was hiding this gap -> manual copy constructor. + Split tests for finer-grained failures. BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=13856 Committed: http://code.google.com/p/skia/source/detail?r=13887 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/203203003 git-svn-id: http://skia.googlecode.com/svn/trunk@13927 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of SkPaint: eliminate some dead bytes in 64-bit build. ↵Gravatar commit-bot@chromium.org2014-03-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/203203003/) Reason for revert: Huh, some Android tests are still failing despite the fix. IntelRhB, Xoom... that's weird. Original issue's description: > SkPaint: eliminate some dead bytes in 64-bit build. > > + memcpy-based copy constructor was hiding this gap -> manual copy constructor. > + Split tests for finer-grained failures. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=13856 > > Committed: http://code.google.com/p/skia/source/detail?r=13887 R=reed@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/206623005 git-svn-id: http://skia.googlecode.com/svn/trunk@13888 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkPaint: eliminate some dead bytes in 64-bit build.Gravatar commit-bot@chromium.org2014-03-20
| | | | | | | | | | | | | | | | | + memcpy-based copy constructor was hiding this gap -> manual copy constructor. + Split tests for finer-grained failures. BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=13856 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/203203003 git-svn-id: http://skia.googlecode.com/svn/trunk@13887 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of SkPaint: eliminate some dead bytes in 64-bit build. ↵Gravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/203203003/) Reason for revert: Causing RunTest failures on Android. Original issue's description: > SkPaint: eliminate some dead bytes in 64-bit build. > > + memcpy-based copy constructor was hiding this gap -> manual copy constructor. > + Split tests for finer-grained failures. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=13856 R=reed@google.com, mtklein@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, mtklein@google.com, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: jcgregorio@google.com Review URL: https://codereview.chromium.org/204543002 git-svn-id: http://skia.googlecode.com/svn/trunk@13858 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkPaint: eliminate some dead bytes in 64-bit build.Gravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | | | | + memcpy-based copy constructor was hiding this gap -> manual copy constructor. + Split tests for finer-grained failures. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/203203003 git-svn-id: http://skia.googlecode.com/svn/trunk@13856 2bbb7eff-a529-9590-31e7-b0007b416f81
* change tooBitForLCD to compare against linear size of the text, not the areaGravatar commit-bot@chromium.org2014-03-14
| | | | | | | | | | | BUG=skia: R=bungeman@google.com, alokp@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/200643003 git-svn-id: http://skia.googlecode.com/svn/trunk@13817 2bbb7eff-a529-9590-31e7-b0007b416f81
* Allow toString capability to be toggled independent of developer mode.Gravatar commit-bot@chromium.org2014-03-13
| | | | | | | | | | | | This change is motivated by the desire to see the text information in the debugger when not in developer mode. It is structured so user's can disable it if the capability is not wanted. R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/197763008 git-svn-id: http://skia.googlecode.com/svn/trunk@13795 2bbb7eff-a529-9590-31e7-b0007b416f81
* Enable use of distance fields via SkPaint flag.Gravatar commit-bot@chromium.org2014-03-11
| | | | | | | | | | | | | Now that distance field generation is fast enough to make it practical, this makes distances field fonts easily available to anyone who wants to try them out (i.e Chromium). BUG=skia:2173 R=reed@google.com, bsalomon@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/193163003 git-svn-id: http://skia.googlecode.com/svn/trunk@13741 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding code to calculate Underline Thickness from Font Metrics, this will be ↵Gravatar commit-bot@chromium.org2014-03-01
| | | | | | | | | | | | | useful when Skia is used with Blink/Chrome. Blink changes are uploaded with code change in patch https://codereview.chromium.org/147703002/ BUG=skia: R=reed@android.com, edisonn@google.com, reed@google.com, mtklein@google.com, mtklein@chromium.org, bungeman@google.com Author: h.joshi@samsung.com Review URL: https://codereview.chromium.org/152073003 git-svn-id: http://skia.googlecode.com/svn/trunk@13635 2bbb7eff-a529-9590-31e7-b0007b416f81
* 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