aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/utils
Commit message (Collapse)AuthorAge
...
* Fix assert in debuggerGravatar robertphillips2015-03-24
| | | | Review URL: https://codereview.chromium.org/1029903002
* Both DM and nanobench need this, so moving the duplicated code toGravatar tomhudson2015-03-23
| | | | | | | | | | | | | one common spot. (It's incomplete, and has had bugs, so it's not like we can confidently write once, copy-paste, and not maintain again.) Because SkPathEffect::exposedInAndroidJavaAPI() only builds in the Android Framework, we might want to make all this code Framework-only? R=djsollen@google.com,mtklein@google.com Review URL: https://codereview.chromium.org/1021823003
* Do not playback pending commands for full deferred canvas writePixelsGravatar kkinnunen2015-03-23
| | | | | | | | | Do not playback pending commands for full deferred canvas writePixels. Changes the test to catch cases where discard is done without a snapshot. Review URL: https://codereview.chromium.org/939103002
* SkPaint::FilterLevel -> SkFilterQualityGravatar reed2015-03-16
| | | | | | | | | clone (+rebase) of https://codereview.chromium.org/1009183002/ BUG=skia: TBR=scroggo@google.com Review URL: https://codereview.chromium.org/1014533004
* Revert[6] of Change device creation to see the (optional) layer-paintGravatar reed2015-03-14
| | | | | | | | | This reverts commit 173e5fe5f4be28272246e5676f5d2e5c4b1f9167. BUG=skia: TBR= Review URL: https://codereview.chromium.org/1010503002
* Revert of Revert of Revert of Revert of Revert of Change device creation to ↵Gravatar reed2015-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1005173004/) Reason for revert: arrrg. this is a staging nightmare. override required on the chrome side. must revert (again) Original issue's description: > Revert of Revert of Revert of Revert of Change device creation to see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1001423002/) > > Reason for revert: > chrome now has the new virtual, so trying again > > Original issue's description: > > Revert of Revert of Revert of Change device creation to see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1006923002/) > > > > Reason for revert: > > platform_canvas tests failures > > > > skia_unittests (with patch) skia_unittests (with patch) PlatformCanvas.TranslateLayer failed 2 > > Flakiness dashboard > > > > failures: > > PlatformCanvas.TranslateLayer > > PlatformCanvas.FillLayer > > > > Original issue's description: > > > Revert of Revert of Change device creation to see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1008863002/) > > > > > > Reason for revert: > > > guard in chrome has landed > > > > > > Original issue's description: > > > > Revert of Change device creation to see the (optional) layer-paint (patchset #9 id:160001 of https://codereview.chromium.org/988413003/) > > > > > > > > Reason for revert: > > > > need to have chrome opt-in for the older API before this can land (in chrome) > > > > > > > > Original issue's description: > > > > > Change device creation to see the (optional) layer-paint > > > > > > > > > > Motivation: > > > > > > > > > > PDFDevice currently relies on 1) being told that the layer's paint has an imagefilter, and in the case, it creates a rasterdevice. It then relies on (2) canvas itself sniffing the layer's paint and offering to apply-the-imagefilter to call drawSprite instead of drawDevice. > > > > > > > > > > This subtle interchange is fragile, and also does not support other unsupported PDF features like colorfilters. This CL is a step toward making this use-raster-instead-of-native approach to layers more completely in the subclass' hands. > > > > > > > > > > Committed: https://skia.googlesource.com/skia/+/1182d9a96b80bd12183ee7c81325a979a51ee0c0 > > > > > > > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > > > > NOPRESUBMIT=true > > > > NOTREECHECKS=true > > > > NOTRY=true > > > > > > > > Committed: https://skia.googlesource.com/skia/+/0e040f7da2fdfeb49aa60d24117306e3b1e6ea90 > > > > > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > > > NOPRESUBMIT=true > > > NOTREECHECKS=true > > > NOTRY=true > > > > > > Committed: https://skia.googlesource.com/skia/+/f7076a13e2d4269903b34ef2780e1c84723e4477 > > > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > > > Committed: https://skia.googlesource.com/skia/+/8e14d660b2a434bc708a70180c84210883611683 > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com,reed@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Committed: https://skia.googlesource.com/skia/+/307d1ed129ff75eb64137dea75df858f9e250b69 TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1005183003
* Revert of Revert of Revert of Revert of Change device creation to see the ↵Gravatar reed2015-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1001423002/) Reason for revert: chrome now has the new virtual, so trying again Original issue's description: > Revert of Revert of Revert of Change device creation to see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1006923002/) > > Reason for revert: > platform_canvas tests failures > > skia_unittests (with patch) skia_unittests (with patch) PlatformCanvas.TranslateLayer failed 2 > Flakiness dashboard > > failures: > PlatformCanvas.TranslateLayer > PlatformCanvas.FillLayer > > Original issue's description: > > Revert of Revert of Change device creation to see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1008863002/) > > > > Reason for revert: > > guard in chrome has landed > > > > Original issue's description: > > > Revert of Change device creation to see the (optional) layer-paint (patchset #9 id:160001 of https://codereview.chromium.org/988413003/) > > > > > > Reason for revert: > > > need to have chrome opt-in for the older API before this can land (in chrome) > > > > > > Original issue's description: > > > > Change device creation to see the (optional) layer-paint > > > > > > > > Motivation: > > > > > > > > PDFDevice currently relies on 1) being told that the layer's paint has an imagefilter, and in the case, it creates a rasterdevice. It then relies on (2) canvas itself sniffing the layer's paint and offering to apply-the-imagefilter to call drawSprite instead of drawDevice. > > > > > > > > This subtle interchange is fragile, and also does not support other unsupported PDF features like colorfilters. This CL is a step toward making this use-raster-instead-of-native approach to layers more completely in the subclass' hands. > > > > > > > > Committed: https://skia.googlesource.com/skia/+/1182d9a96b80bd12183ee7c81325a979a51ee0c0 > > > > > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > > > NOPRESUBMIT=true > > > NOTREECHECKS=true > > > NOTRY=true > > > > > > Committed: https://skia.googlesource.com/skia/+/0e040f7da2fdfeb49aa60d24117306e3b1e6ea90 > > > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > > > Committed: https://skia.googlesource.com/skia/+/f7076a13e2d4269903b34ef2780e1c84723e4477 > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Committed: https://skia.googlesource.com/skia/+/8e14d660b2a434bc708a70180c84210883611683 TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1005173004
* Revert of Revert of Revert of Change device creation to see the (optional) ↵Gravatar reed2015-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1006923002/) Reason for revert: platform_canvas tests failures skia_unittests (with patch) skia_unittests (with patch) PlatformCanvas.TranslateLayer failed 2 Flakiness dashboard failures: PlatformCanvas.TranslateLayer PlatformCanvas.FillLayer Original issue's description: > Revert of Revert of Change device creation to see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1008863002/) > > Reason for revert: > guard in chrome has landed > > Original issue's description: > > Revert of Change device creation to see the (optional) layer-paint (patchset #9 id:160001 of https://codereview.chromium.org/988413003/) > > > > Reason for revert: > > need to have chrome opt-in for the older API before this can land (in chrome) > > > > Original issue's description: > > > Change device creation to see the (optional) layer-paint > > > > > > Motivation: > > > > > > PDFDevice currently relies on 1) being told that the layer's paint has an imagefilter, and in the case, it creates a rasterdevice. It then relies on (2) canvas itself sniffing the layer's paint and offering to apply-the-imagefilter to call drawSprite instead of drawDevice. > > > > > > This subtle interchange is fragile, and also does not support other unsupported PDF features like colorfilters. This CL is a step toward making this use-raster-instead-of-native approach to layers more completely in the subclass' hands. > > > > > > Committed: https://skia.googlesource.com/skia/+/1182d9a96b80bd12183ee7c81325a979a51ee0c0 > > > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > > > Committed: https://skia.googlesource.com/skia/+/0e040f7da2fdfeb49aa60d24117306e3b1e6ea90 > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Committed: https://skia.googlesource.com/skia/+/f7076a13e2d4269903b34ef2780e1c84723e4477 TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1001423002
* Revert of Revert of Change device creation to see the (optional) layer-paint ↵Gravatar reed2015-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #1 id:1 of https://codereview.chromium.org/1008863002/) Reason for revert: guard in chrome has landed Original issue's description: > Revert of Change device creation to see the (optional) layer-paint (patchset #9 id:160001 of https://codereview.chromium.org/988413003/) > > Reason for revert: > need to have chrome opt-in for the older API before this can land (in chrome) > > Original issue's description: > > Change device creation to see the (optional) layer-paint > > > > Motivation: > > > > PDFDevice currently relies on 1) being told that the layer's paint has an imagefilter, and in the case, it creates a rasterdevice. It then relies on (2) canvas itself sniffing the layer's paint and offering to apply-the-imagefilter to call drawSprite instead of drawDevice. > > > > This subtle interchange is fragile, and also does not support other unsupported PDF features like colorfilters. This CL is a step toward making this use-raster-instead-of-native approach to layers more completely in the subclass' hands. > > > > Committed: https://skia.googlesource.com/skia/+/1182d9a96b80bd12183ee7c81325a979a51ee0c0 > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Committed: https://skia.googlesource.com/skia/+/0e040f7da2fdfeb49aa60d24117306e3b1e6ea90 TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1006923002
* Revert of Change device creation to see the (optional) layer-paint (patchset ↵Gravatar reed2015-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | #9 id:160001 of https://codereview.chromium.org/988413003/) Reason for revert: need to have chrome opt-in for the older API before this can land (in chrome) Original issue's description: > Change device creation to see the (optional) layer-paint > > Motivation: > > PDFDevice currently relies on 1) being told that the layer's paint has an imagefilter, and in the case, it creates a rasterdevice. It then relies on (2) canvas itself sniffing the layer's paint and offering to apply-the-imagefilter to call drawSprite instead of drawDevice. > > This subtle interchange is fragile, and also does not support other unsupported PDF features like colorfilters. This CL is a step toward making this use-raster-instead-of-native approach to layers more completely in the subclass' hands. > > Committed: https://skia.googlesource.com/skia/+/1182d9a96b80bd12183ee7c81325a979a51ee0c0 TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1008863002
* Change device creation to see the (optional) layer-paintGravatar reed2015-03-13
| | | | | | | | | | Motivation: PDFDevice currently relies on 1) being told that the layer's paint has an imagefilter, and in the case, it creates a rasterdevice. It then relies on (2) canvas itself sniffing the layer's paint and offering to apply-the-imagefilter to call drawSprite instead of drawDevice. This subtle interchange is fragile, and also does not support other unsupported PDF features like colorfilters. This CL is a step toward making this use-raster-instead-of-native approach to layers more completely in the subclass' hands. Review URL: https://codereview.chromium.org/988413003
* Clean up poppler code.Gravatar mtklein2015-03-11
| | | | | | | | | We're not actually using it. BUG=skia:3362 DOCS_PREVIEW= https://skia.org/?cl=1002493002 Review URL: https://codereview.chromium.org/1002493002
* Fix debugger's overdraw color filterGravatar robertphillips2015-03-11
| | | | | | The colors seen in the overdraw color filter are not guaranteed to remain the colors from its own table. Looping through the table to find the old overdraw level is error prone and expensive. Review URL: https://codereview.chromium.org/997913002
* Revert of Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType ↵Gravatar reed2015-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #1 id:1 of https://codereview.chromium.org/966753002/) Reason for revert: Android has been updated, so we can re-land this. Original issue's description: > Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #3 id:40001 of https://codereview.chromium.org/964613002/) > > Reason for revert: > This breaks Android framework build. See > > https://android-build.storage.googleapis.com/builds/git_master-skia-linux-volantisg-userdebug/1759130/7f0fcdbf3c0d47530d770a15c912298dac20dd7d90a01de63ecb9ba16c96b25c/logs/build_error.log?Expires=1425047630&GoogleAccessId=701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Signature=BHPS1lffyH7WykwyEw5RXVVXWqQK5rab%2B6Pl1VaUrTlmWT%2FXb6fq%2FBe22AUDZYFPG24MBR%2F2IzIDzTqH3mihQS9wIkcKJ4kJpA2G%2BI3l8jCX20brZSr3bsDSx%2F4wsLwU1bBpIxI%2FbrauoPRqddbXP8sNI1l51u6ZCxpvRQms9Mc%3D > > We need to stop them from using kIgnore before we can reland this. > > Original issue's description: > > replace kIgnore_SkAlphaType with kUnknown_SkAlphaType > > > > BUG=skia: > > TBR= > > > > Committed: https://skia.googlesource.com/skia/+/1c8aeeaebce9675197be31bd769e8ffa2531bf86 > > TBR=reed@google.com,reed@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/574290f61a47bd1ce1f9e2d941533bda9c8f03fe TBR=reed@chromium.org,scroggo@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/966853002
* Add rewind capability to SkChunkAllocGravatar robertphillips2015-02-27
| | | | | | Split off from https://codereview.chromium.org/940533003/ (Decrease GrInOrderDrawBuffer::Cmd's reliance on GrInOrderDrawBuffer) Review URL: https://codereview.chromium.org/967553003
* Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #3 ↵Gravatar scroggo2015-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | id:40001 of https://codereview.chromium.org/964613002/) Reason for revert: This breaks Android framework build. See https://android-build.storage.googleapis.com/builds/git_master-skia-linux-volantisg-userdebug/1759130/7f0fcdbf3c0d47530d770a15c912298dac20dd7d90a01de63ecb9ba16c96b25c/logs/build_error.log?Expires=1425047630&GoogleAccessId=701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Signature=BHPS1lffyH7WykwyEw5RXVVXWqQK5rab%2B6Pl1VaUrTlmWT%2FXb6fq%2FBe22AUDZYFPG24MBR%2F2IzIDzTqH3mihQS9wIkcKJ4kJpA2G%2BI3l8jCX20brZSr3bsDSx%2F4wsLwU1bBpIxI%2FbrauoPRqddbXP8sNI1l51u6ZCxpvRQms9Mc%3D We need to stop them from using kIgnore before we can reland this. Original issue's description: > replace kIgnore_SkAlphaType with kUnknown_SkAlphaType > > BUG=skia: > TBR= > > Committed: https://skia.googlesource.com/skia/+/1c8aeeaebce9675197be31bd769e8ffa2531bf86 TBR=reed@google.com,reed@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/966753002
* replace kIgnore_SkAlphaType with kUnknown_SkAlphaTypeGravatar reed2015-02-27
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/964613002
* Use IDWriteFontFallback when available.Gravatar bungeman2015-02-23
| | | | | | | This is prefereable to the current IDWriteTextLayout method, but is only available on Windows 8.1 and later. Review URL: https://codereview.chromium.org/942083004
* Implement onMatchFamilyStyleCharacter for DirectWrite.Gravatar bungeman2015-02-20
| | | | Review URL: https://codereview.chromium.org/946603002
* Update DirectWrite streams to SkStreamAsset.Gravatar bungeman2015-02-18
| | | | | | | SkTypefaces now deal in terms of SkStreamAsset, but the DirectWrite port was never fully converted. Review URL: https://codereview.chromium.org/940563002
* Remove Chromium staging in SkDrawCommandGravatar robertphillips2015-02-18
| | | | | | | | This cannot land until https://codereview.chromium.org/917063008/ (Cleanup lingering scaffolding for Skia change) has landed. TBR=joshualitt@chromium.org Review URL: https://codereview.chromium.org/930973002
* Remove SkPictureFlat.h include from SkDrawCommands.hGravatar robertphillips2015-02-13
| | | | | | | | | | This cannot land until https://codereview.chromium.org/909353004/ (Prepare SkiaBenchmarkingExtensionTest for upcoming Skia changes) lands in Chromium Committed: https://skia.googlesource.com/skia/+/5a4c233a3657d12d836de388b41e30405b4ab976 Committed: https://skia.googlesource.com/skia/+/fa3a83d0fe53907e618346d3f1c17a95da1a9d22 Review URL: https://codereview.chromium.org/912403004
* Revert of Remove SkPictureFlat.h include from SkDrawCommands.h (patchset #3 ↵Gravatar robertphillips2015-02-12
| | | | | | | | | | | | | | | | | | | | | | | id:40001 of https://codereview.chromium.org/912403004/) Reason for revert: Erm - Chrome. Original issue's description: > Remove SkPictureFlat.h include from SkDrawCommands.h > > This cannot land until https://codereview.chromium.org/909353004/ (Prepare SkiaBenchmarkingExtensionTest for upcoming Skia changes) lands in Chromium > > Committed: https://skia.googlesource.com/skia/+/5a4c233a3657d12d836de388b41e30405b4ab976 > > Committed: https://skia.googlesource.com/skia/+/fa3a83d0fe53907e618346d3f1c17a95da1a9d22 TBR=reed@google.com,fmalita@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/923753002
* Remove SkPictureFlat.h include from SkDrawCommands.hGravatar robertphillips2015-02-12
| | | | | | | | This cannot land until https://codereview.chromium.org/909353004/ (Prepare SkiaBenchmarkingExtensionTest for upcoming Skia changes) lands in Chromium Committed: https://skia.googlesource.com/skia/+/5a4c233a3657d12d836de388b41e30405b4ab976 Review URL: https://codereview.chromium.org/912403004
* Move SkOSFile::Iter impls into ports.Gravatar bungeman2015-02-12
| | | | | | | This was one large ifdef in SkOSFile.cpp in utils. This moves the code to existing ports files. Review URL: https://codereview.chromium.org/920593002
* Add staging for ChromiumGravatar robertphillips2015-02-12
| | | | | | This staging is needed to land https://codereview.chromium.org/912403004/ (Remove SkPictureFlat.h include from SkDrawCommands.h) Review URL: https://codereview.chromium.org/916983002
* Revert of Fix Chromium build (patchset #2 id:20001 of ↵Gravatar robertphillips2015-02-11
| | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/916763003/) Reason for revert: Chrome Original issue's description: > Fix Chromium build > > TBR=jvanverth@google.com > > Committed: https://skia.googlesource.com/skia/+/f5e89c8f685ac8a5c4d117e087b4111d613106db TBR=jvanverth@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/916963002
* Revert of Fix Chromium build (again) (patchset #2 id:20001 of ↵Gravatar robertphillips2015-02-11
| | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/916193002/) Reason for revert: Chrome Original issue's description: > Fix Chromium build (again) > > TBR=jvanverth@google.com > > Committed: https://skia.googlesource.com/skia/+/b48e08e03a7573c6917d9932a60af5822c009abd TBR=jvanverth@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/920573002
* Revert of Remove SkPictureFlat.h include from SkDrawCommands.h (patchset #2 ↵Gravatar robertphillips2015-02-11
| | | | | | | | | | | | | | | | | | | id:20001 of https://codereview.chromium.org/912403004/) Reason for revert: Chrome Original issue's description: > Remove SkPictureFlat.h include from SkDrawCommands.h > > Committed: https://skia.googlesource.com/skia/+/5a4c233a3657d12d836de388b41e30405b4ab976 TBR=reed@google.com,fmalita@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/917933002
* Fix Chromium build (again)Gravatar robertphillips2015-02-11
| | | | | | TBR=jvanverth@google.com Review URL: https://codereview.chromium.org/916193002
* Fix Chromium buildGravatar robertphillips2015-02-11
| | | | | | TBR=jvanverth@google.com Review URL: https://codereview.chromium.org/916763003
* Remove SkPictureFlat.h include from SkDrawCommands.hGravatar robertphillips2015-02-11
| | | | Review URL: https://codereview.chromium.org/912403004
* Port SkRefCnt.h to new SkAtomics.hGravatar mtklein2015-02-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds sk_memory_barrier(), implemented using sk_atomic_fetch_add() on an uninitialized variable. If that becomes a problem we can drop this to the porting layer, using std::atomic_thread_fence() / __atomic_thread_fence() / __sync_synchronize(). The big win is that ref() doesn't generate a memory barrier any more on ARM. This is an instance of SkSafeRef() in SkPaint(const SkPaint&) after this CL: 4d0: 684a ldr r2, [r1, #4] 4d2: 6018 str r0, [r3, #0] 4d4: b13a cbz r2, 4e6 <_ZN7SkPaintC1ERKS_+0x2e> 4d6: 1d10 adds r0, r2, #4 4d8: e850 4f00 ldrex r4, [r0] 4dc: 3401 adds r4, #1 4de: e840 4500 strex r5, r4, [r0] 4e2: 2d00 cmp r5, #0 4e4: d1f8 bne.n 4d8 <_ZN7SkPaintC1ERKS_+0x20> Here's the before, pretty much the same with two memory barriers surrounding the ref(): 4d8: 684a ldr r2, [r1, #4] 4da: 6018 str r0, [r3, #0] 4dc: b15a cbz r2, 4f6 <_ZN7SkPaintC1ERKS_+0x3e> 4de: 1d10 adds r0, r2, #4 4e0: f3bf 8f5f dmb sy 4e4: e850 4f00 ldrex r4, [r0] 4e8: 3401 adds r4, #1 4ea: e840 4500 strex r5, r4, [r0] 4ee: 2d00 cmp r5, #0 4f0: d1f8 bne.n 4e4 <_ZN7SkPaintC1ERKS_+0x2c> 4f2: f3bf 8f5f dmb sy The miscellaneous files in here are just fixups to explicitly include SkMutex.h, instead of leeching it off SkRefCnt.h. No public API changes. TBR=reed@google.com Build trybots seem hosed. NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/896803002
* Add missing SK_OVERRIDEGravatar rmistry2015-02-02
| | | | | | | | | | Tested by running on clang head + ubuntu 14.04: GYP_DEFINES=”skia_gpu=0 skia_warnings_as_errors=1" tools/xsan_build thread dm BUILDTYPE=Release out/Release/dm -v BUG=skia:3386 Review URL: https://codereview.chromium.org/894833002
* Remove SkProxyCanvas.Gravatar scroggo2015-01-29
| | | | | | | | | | | | | | SkProxyCanvas is redundant with SkNWayCanvas, and means another class we have to keep in sync with the SkCanvas interface. Remove tests which use an SkProxyCanvas. Requires a change to chromium. BUG=skia:3279 BUG=skia:500 Review URL: https://codereview.chromium.org/886813002
* fix parsing SVG strings to paths with comma delimitersGravatar caryclark2015-01-29
| | | | | | | BUG=skia:583 R=reed@google.com Review URL: https://codereview.chromium.org/885103002
* remove (unused) GatherPixelRefsGravatar reed2015-01-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/869463002
* Fix SkIStream nits.Gravatar bungeman2015-01-22
| | | | | | | | | Fix comment, constness of one field, and delete already checks for NULL. TBR=reed@google.com Trivial change to debatably public api. Review URL: https://codereview.chromium.org/868643003
* Remove staging SkStream::unref().Gravatar bungeman2015-01-22
| | | | | | | | | SkStream::unref() was added to ease transitioning off of SkStream deriving from SkRefCnt. It is no longer needed, remove it. TBR=reed@google.com Review URL: https://codereview.chromium.org/861413002
* Don't require -DSK_USE_POSIX_THREADS.Gravatar mtklein2015-01-21
| | | | | | | | | | | | | To compile SkCondVar, we already require either pthreads or Windows. This simplifies that code to not need SK_USE_POSIX_THREADS to be explicitly defined. We'll just look to see if we're targeting Windows, and if not, assume pthreads. Both before and after this CL, that code will fail to compile if we're not on Windows and don't have pthreads. BUG=skia: Review URL: https://codereview.chromium.org/869443003
* Make SkStream *not* ref counted.Gravatar scroggo2015-01-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SkStream is a stateful object, so it does not make sense for it to have multiple owners. Make SkStream inherit directly from SkNoncopyable. Update methods which previously called SkStream::ref() (e.g. SkImageDecoder::buildTileIndex() and SkFrontBufferedStream::Create(), which required the existing owners to call SkStream::unref()) to take ownership of their SkStream parameters and delete when done (including on failure). Switch all SkAutoTUnref<SkStream>s to SkAutoTDelete<SkStream>s. In some cases this means heap allocating streams that were previously stack allocated. Respect ownership rules of SkTypeface::CreateFromStream() and SkImageDecoder::buildTileIndex(). Update the comments for exceptional methods which do not affect the ownership of their SkStream parameters (e.g. SkPicture::CreateFromStream() and SkTypeface::Deserialize()) to be explicit about ownership. Remove test_stream_life, which tested that buildTileIndex() behaved correctly when SkStream was a ref counted object. The test does not make sense now that it is not. In SkPDFStream, remove the SkMemoryStream member. Instead of using it, create a new SkMemoryStream to pass to fDataStream (which is now an SkAutoTDelete). Make other pdf rasterizers behave like SkPDFDocumentToBitmap. SkPDFDocumentToBitmap delete the SkStream, so do the same in the following pdf rasterizers: SkPopplerRasterizePDF SkNativeRasterizePDF SkNoRasterizePDF Requires a change to Android, which currently treats SkStreams as ref counted objects. Review URL: https://codereview.chromium.org/849103004
* Remove incremental draw optimization from SkDebugCanvasGravatar kkinnunen2015-01-13
| | | | | | | | | | | | | | | | | | | | | | | The SkDebugCanvas can be (or is currently) being used to draw to multiple different canvases. If this use-case is intended, then storing draw -related state in the canvas causes bugs. Remove incremental draw from SkDebugCanvas. It can only optimize the case where draw command index is advanced, no other changes are done and no visualization is used. This case is not that critical, as it happens only once per new frame at most. It causes bugs, because one SkDebugCanvas is used to draw to multiple canvases. Leave the draw to canvas in same state as it was passed in. This fixes the debugger bugs where: * Old, stale image would stay on the raster canvas when a new image is loaded. Also happened with resizes. * Proper image for overdraw filter would be visible only for the first frame Review URL: https://codereview.chromium.org/844493003
* namespace {} trick for SK_DECLARE_STATIC_ONCEGravatar mtklein2015-01-13
| | | | | | | | | | | | | | | Like all our other SK_DECLARE_STATIC_*, it's usually not a thread-safe thing to put inside a function. Adding namespace {} prevents that syntactically. Needs https://codereview.chromium.org/841263004/ to land first. BUG=chromium:447890 No public API changes. TBR=reed@google.com Review URL: https://codereview.chromium.org/806473006
* Fix up all the easy virtual ... SK_OVERRIDE cases.Gravatar mtklein2015-01-09
| | | | | | | | | | | | This fixes every case where virtual and SK_OVERRIDE were on the same line, which should be the bulk of cases. We'll have to manually clean up the rest over time unless I level up in regexes. for f in (find . -type f); perl -p -i -e 's/virtual (.*)SK_OVERRIDE/\1SK_OVERRIDE/g' $f; end BUG=skia: Review URL: https://codereview.chromium.org/806653007
* add ImageGenerator::NewFromData to porting layerGravatar reed2015-01-07
| | | | | | BUG=skia:3275 Review URL: https://codereview.chromium.org/834633006
* It is dangerous to ignore SkRect::intersect's return valueGravatar robertphillips2015-01-07
| | | | | | Committed: https://skia.googlesource.com/skia/+/152f524fd325b7776b01f84afbfe2fa071648a05 Review URL: https://codereview.chromium.org/833943002
* Revert of It is dangerous to ignore SkRect::intersect's return value ↵Gravatar robertphillips2015-01-07
| | | | | | | | | | | | | | | | | | (patchset #6 id:100001 of https://codereview.chromium.org/833943002/) Reason for revert: Still more Chromium clean up to do Original issue's description: > It is dangerous to ignore SkRect::intersect's return value > > Committed: https://skia.googlesource.com/skia/+/152f524fd325b7776b01f84afbfe2fa071648a05 TBR=reed@google.com NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/825983005
* It is dangerous to ignore SkRect::intersect's return valueGravatar robertphillips2015-01-07
| | | | Review URL: https://codereview.chromium.org/833943002
* Remove draw window size state from SkDebugCanvasGravatar kkinnunen2015-01-05
| | | | | | | | | | | | | | | | | The SkDebugCanvas can be (or is currently) being used to draw to multiple different canvases. If this use-case is intended, then storing draw -related state in the canvas causes bugs. Remove draw window size state form SkDebugCanvas. Instead, use the canvas base layer size as the window size to clip to. This is consistent with the current use in debugger. This is part of work trying to remove bugs in debugger that result from replaying one SkDrawCanvas to two different canvases. Currently the SkDrawCanvas stores state that can only be valid if it is used for one canvas. Review URL: https://codereview.chromium.org/835113002
* Revert of Revert of move remaining virtual draw methods to onDraw (patchset ↵Gravatar reed2015-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | #1 id:1 of https://codereview.chromium.org/835913002/) Reason for revert: test to see if it wasn't this CL that broke chromeos Original issue's description: > Revert of move remaining virtual draw methods to onDraw (patchset #5 id:80001 of https://codereview.chromium.org/817723005/) > > Reason for revert: > did this cause chromeos heap corruption on skp? > > Original issue's description: > > move remaining virtual draw methods to onDraw > > > > BUG=skia: > > > > Committed: https://skia.googlesource.com/skia/+/2e0f7d53bba5438c9bf11ee5ccae2c301e348419 > > TBR=robertphillips@google.com,djsollen@google.com,bsalomon@google.com,mtklein@google.com > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/e87e383351e1547b21d96d02bcd0c3cbbe0837f1 TBR=robertphillips@google.com,djsollen@google.com,bsalomon@google.com,mtklein@google.com,reed@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/831253002