aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
Commit message (Collapse)AuthorAge
...
* Enable coverage counting path rendering on non-AndroidGravatar Chris Dalton2017-09-29
| | | | | | | | | Bug: skia: Change-Id: Ife4c4378bf4323fb4a58fecfade09320ebc28026 Reviewed-on: https://skia-review.googlesource.com/53000 Reviewed-by: Derek Sollenberger <djsollen@google.com> Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Add width and height option to SampleAppGravatar Yuqian Li2017-09-29
| | | | | | | | | | | So we can benchmark with given width/height dimensions. Bug: skia: Change-Id: I881c9f054cdcecc3e0b2bfb600afd778e1c57d95 Reviewed-on: https://skia-review.googlesource.com/51246 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Make SkASSERT and co. constexpr compatible.Gravatar Mike Klein2017-09-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of the nice bits of constexpr is that an expression is constexpr if there exists any set of argument values that make it constant. It doesn't have to be constant for _all_ argument values. This means that this expression is constexpr: condition ? constexpr_value : []{ arbitrary non-constexpr code; }(); ... it's constant when condition is true. We can use this to rewrite SkASSERT(condition) as ( (condition) ? (void)0 : []{ SK_ABORT(#condition); }() ) Both sides of the ?: are void, and when condition is true at compile time the right hand side disappears completely. In C++11 constexpr functions we just have to use the comma operator to jam SkASSERT() into the order of evaluation: constexpr uint32_t foo(int x, int y) { return SkASSERT(x > y), x - y; } Change-Id: I21878d14fb2af76d93591d2ae229460ee825cfde Reviewed-on: https://skia-review.googlesource.com/52663 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Trent Apted <tapted@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Revert "Revert "Revert "Make threaded proxy generation MDB-friendly, ↵Gravatar Brian Osman2017-09-29
| | | | | | | | | | | | and defer instantiation"""" This reverts commit 9f8d4d36b514ffe3cc3a4a48900e3dc1fecb2a96. Bug: skia: Change-Id: I8d7c1df24d8b13b94404f3d9ba69a1ab55ee00c0 Reviewed-on: https://skia-review.googlesource.com/52920 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Revert "Revert "Make threaded proxy generation MDB-friendly, and ↵Gravatar Brian Osman2017-09-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | defer instantiation""" This reverts commit e8b8397664666bfcba8f088ea073ede915da8a41. Reason for revert: More crashing. Original change's description: > Revert "Revert "Make threaded proxy generation MDB-friendly, and defer instantiation"" > > This reverts commit 837c6c7c0cc76bdb9d61a05244ca5f31e7573c37. > > Bug: skia: > Change-Id: I1821f1b2b772c67f1b749692b398eb757d8073c9 > Reviewed-on: https://skia-review.googlesource.com/52744 > Reviewed-by: Greg Daniel <egdaniel@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com Change-Id: I1c8a81ed1000446c298d646d2cd5e7ebd212f18c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/52860 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Revert "Make threaded proxy generation MDB-friendly, and defer ↵Gravatar Brian Osman2017-09-28
| | | | | | | | | | | | instantiation"" This reverts commit 837c6c7c0cc76bdb9d61a05244ca5f31e7573c37. Bug: skia: Change-Id: I1821f1b2b772c67f1b749692b398eb757d8073c9 Reviewed-on: https://skia-review.googlesource.com/52744 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Make threaded proxy generation MDB-friendly, and defer instantiation"Gravatar Brian Osman2017-09-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 742f3d02a1c6a916d7e0ed3bedb0b546bbe3c15f. Reason for revert: Aaah! Original change's description: > Make threaded proxy generation MDB-friendly, and defer instantiation > > Replaces GrPrepareCallback with GrDeferredProxyUploader, stored directly > on GrTextureProxy. Op lists now store a list of referenced proxies that > are being generated by worker threads. At flush time, iterate over those > proxies, and invoke their uploader. > > Lifetime of the uploader object is now tied to the proxy, but the ASAP > upload function will free the proxy's uploader, if it's called. > > Bug: skia: > Change-Id: Ieb2c6a805d19990012839a8e103c3ca5b8d3dfc6 > Reviewed-on: https://skia-review.googlesource.com/49904 > Commit-Queue: Brian Osman <brianosman@google.com> > Reviewed-by: Robert Phillips <robertphillips@google.com> TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com Change-Id: I8f76a67044dc4159f903097d8b1ef19ffb48c730 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/52760 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Make threaded proxy generation MDB-friendly, and defer instantiationGravatar Brian Osman2017-09-28
| | | | | | | | | | | | | | | | Replaces GrPrepareCallback with GrDeferredProxyUploader, stored directly on GrTextureProxy. Op lists now store a list of referenced proxies that are being generated by worker threads. At flush time, iterate over those proxies, and invoke their uploader. Lifetime of the uploader object is now tied to the proxy, but the ASAP upload function will free the proxy's uploader, if it's called. Bug: skia: Change-Id: Ieb2c6a805d19990012839a8e103c3ca5b8d3dfc6 Reviewed-on: https://skia-review.googlesource.com/49904 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Add GrTextureProxyPrivGravatar Robert Phillips2017-09-28
| | | | | | | | | Several upcoming additions should go in here Change-Id: I642f3c7cc36b1e6512ee0170640449e88a666d2c Reviewed-on: https://skia-review.googlesource.com/52661 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Enable caching of path mask textures by defaultGravatar Brian Osman2017-09-28
| | | | | | | | | | TBR=bsalomon@google.com Bug: skia: Change-Id: If12c3b44de76a2fed24dd527cb774fe5be270e8e Reviewed-on: https://skia-review.googlesource.com/52260 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* make SkPath::fConvexity atomicGravatar Mike Klein2017-09-28
| | | | | | | | | | | | | | | | | The TSAN bots fail regularly with races on fConvexity. Very annoying. We used to have this very same problem with SkPath::fFirstDirection until we made it atomic. This does the same to fConvexity. This makes the field as lightly atomic as possible, with all operations using a relaxed memory order. The value of fConvexity isn't guarding any other non-atomic memory or implying any other writes have happened so I don't think we need anything beyond relaxed here. Change-Id: I0da1f892dc2b7072d692ce8b460fb1862aebef77 Reviewed-on: https://skia-review.googlesource.com/52180 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap"Gravatar Jim Van Verth2017-09-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 88757dacd4f532a0f647c02ae0ee596d31ab5c68. Reason for revert: Still seems to be failing Chromium "telemetry_perf_unittests (with patch) on Android" on android_n5x_swarming_rel. Original change's description: > guard old apis for querying byte-size of a bitmap/imageinfo/pixmap > > Now with legacy behavior for allocpixels > > This was reverted, so the current CL is a "fix" on top of ... > https://skia-review.googlesource.com/c/skia/+/50980 > > Related update to Chrome (in preparation for this change) > https://chromium-review.googlesource.com/c/chromium/src/+/685719 > > Bug: skia: > Change-Id: I4b370ee7e95083ab27421f008132219c9c7b86e9 > Reviewed-on: https://skia-review.googlesource.com/51341 > Reviewed-by: Florin Malita <fmalita@chromium.org> > Commit-Queue: Mike Reed <reed@google.com> TBR=fmalita@chromium.org,reed@google.com Change-Id: I827a0ca1d1e3909e648fde3342cdb8601d34da8d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/52381 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* guard old apis for querying byte-size of a bitmap/imageinfo/pixmapGravatar Mike Reed2017-09-27
| | | | | | | | | | | | | | | | Now with legacy behavior for allocpixels This was reverted, so the current CL is a "fix" on top of ... https://skia-review.googlesource.com/c/skia/+/50980 Related update to Chrome (in preparation for this change) https://chromium-review.googlesource.com/c/chromium/src/+/685719 Bug: skia: Change-Id: I4b370ee7e95083ab27421f008132219c9c7b86e9 Reviewed-on: https://skia-review.googlesource.com/51341 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* changed vertex attribute precisions to be actual typesGravatar Ethan Nicholas2017-09-27
| | | | | | | | Bug: skia: Change-Id: Ic5555d9f1be7f24655bdea9f2a3677bfb128ef70 Reviewed-on: https://skia-review.googlesource.com/50221 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap"Gravatar Greg Daniel2017-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 98a6216b18b57c2f7a0d58f542c60503686aed69. Reason for revert: breaking the chrome roll. Looks like they may be writing data to create an image across all the row bytes and thus writing to unalloced data on the last row. Link to example failing bot: https://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/539960 Original change's description: > guard old apis for querying byte-size of a bitmap/imageinfo/pixmap > > Previously we had size_t and uint64_t variations. > > The new (simpler) API always.. > - returns size_t, or 0 if the calculation overflowed > - returns the trimmed size (does not include rowBytes padding for the last row) > > Bug: skia: > Change-Id: I05173e877918327c7b207d2f7f1ab0db36892e2e > Reviewed-on: https://skia-review.googlesource.com/50980 > Commit-Queue: Mike Reed <reed@google.com> > Reviewed-by: Florin Malita <fmalita@chromium.org> > Reviewed-by: Leon Scroggins <scroggo@google.com> TBR=mtklein@google.com,herb@google.com,scroggo@google.com,fmalita@chromium.org,reed@google.com Change-Id: I726f6ab1b36b14979ba6f37105e0a469b3f0dbc0 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/51262 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Remove fIsMipMapped from GrSurfaceDescGravatar Greg Daniel2017-09-26
| | | | | | | | | | | Part 3 of 3 for relanding of https://skia-review.googlesource.com/c/skia/+/42083 Bug: skia: Change-Id: I98c5406015213df5d11a0101df8722da6845157e Reviewed-on: https://skia-review.googlesource.com/44464 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* guard old apis for querying byte-size of a bitmap/imageinfo/pixmapGravatar Mike Reed2017-09-26
| | | | | | | | | | | | | | | Previously we had size_t and uint64_t variations. The new (simpler) API always.. - returns size_t, or 0 if the calculation overflowed - returns the trimmed size (does not include rowBytes padding for the last row) Bug: skia: Change-Id: I05173e877918327c7b207d2f7f1ab0db36892e2e Reviewed-on: https://skia-review.googlesource.com/50980 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Leon Scroggins <scroggo@google.com>
* Revert "Revert "migrate to sk_sp for SkFontMgr API""Gravatar Mike Reed2017-09-26
| | | | | | | | | | This reverts commit f40ae1a4b5365620463bd63b5140bd3fc78894a1. Bug: skia: Change-Id: I752606de92ea405d6e50219c98030409b00a2841 Reviewed-on: https://skia-review.googlesource.com/51160 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "migrate to sk_sp for SkFontMgr API"Gravatar Mike Reed2017-09-25
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4bf296be2821d2bdd0afabae9fdfe18e7e9b59cb. Reason for revert: need guard for flutter Original change's description: > migrate to sk_sp for SkFontMgr API > > Bug: skia: > Change-Id: I1bf2a13537f67938cdc9956080065d10ea0bd1d8 > Reviewed-on: https://skia-review.googlesource.com/48740 > Commit-Queue: Ben Wagner <bungeman@google.com> > Reviewed-by: Ben Wagner <bungeman@google.com> TBR=bungeman@google.com,reed@google.com Change-Id: Ib0b2d00fcbcdb6131444f94d1046df6dae24f551 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/50940 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* migrate to sk_sp for SkFontMgr APIGravatar Mike Reed2017-09-25
| | | | | | | | Bug: skia: Change-Id: I1bf2a13537f67938cdc9956080065d10ea0bd1d8 Reviewed-on: https://skia-review.googlesource.com/48740 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* Reland "Fix SkImageSource::filterBounds()" againGravatar Xianzhu Wang2017-09-25
| | | | | | | | | | | | | | | | | | | | | | | This relands commit cb4d58766668b003fea67798027fc25d84acd059 which was reverted by commit b6d2be1330f16fe05f1eed5abda927c0fbb50055 because the original CL broke some blink layout tests, and the first reland was reverted by commit because it broke filterfastbounds gm. This reland let SkImageSource::onFilterNodeBounds() return the dst rect with ctm applied when mapping forward or otherwise the default value. Original description: > Previously SkImageSource::filterBounds() uses the default > SkImageFilter::onFilterNodeBounds() which returns the input rect. > > Now override onFilterNodeBounds() in SkImageSource to return src > or dst rect (with transform applied). Change-Id: I4548981142b9a96beda8339d394cf9943c9f4c0f Reviewed-on: https://skia-review.googlesource.com/50420 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Remove unused function with an incorrect assertGravatar Brian Osman2017-09-22
| | | | | | | | Bug: skia: Change-Id: I4003085fbb1cadc4aeb2e950f1a9f44f96d03a93 Reviewed-on: https://skia-review.googlesource.com/50240 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add missing onDrawDrawable() overrides to utility canvasesGravatar Florin Malita2017-09-22
| | | | | | | | Change-Id: Ia5a7c523263e2c4744e0f3a743c6a4433760a4be Reviewed-on: https://skia-review.googlesource.com/49770 Reviewed-by: Stan Iliev <stani@google.com> Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* switched SkSL's temporary 'highfloat' type back to 'float'Gravatar Ethan Nicholas2017-09-22
| | | | | | | | Bug: skia: Change-Id: If0debae7318b6b5b4a7cb85d458996a09931127e Reviewed-on: https://skia-review.googlesource.com/48760 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Don't deserialize pathref oval/rrect bitsGravatar Brian Salomon2017-09-22
| | | | | | | Change-Id: Id891329ee789347fb269d41bef9991f85233e031 Reviewed-on: https://skia-review.googlesource.com/49771 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* no_sanitize is Clang 3.7+Gravatar Mike Klein2017-09-21
| | | | | | | | Change-Id: Ifa67c3e5cc188db71fab389f20f55e7cbfc6de8d Reviewed-on: https://skia-review.googlesource.com/49747 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Serialize rrect/oval paths as rrects rather than points and verbs.Gravatar Brian Salomon2017-09-21
| | | | | | | | | This is a step towards not trusting deserialized isoval/isrrect for general paths without losing the performance advantages of knowing that a path is a rrect/oval. Change-Id: I1a8c0608c0f29f4bf7a118dfa1d475e2ab5802ea Reviewed-on: https://skia-review.googlesource.com/49761 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Add SK_API to APIs used by the android framework.Gravatar Derek Sollenberger2017-09-21
| | | | | | | | | | | | | This CL enables us to set the default visibility of the symbols on Android to hidden. It is the intent that all of he SK_APIs that have been added to /src directies should be removed as soon as we can remove their callers within Android. Bug: b/31971097 Change-Id: Ic787f94df0fb0c2b8d941aa7095a12b317c4b5de Reviewed-on: https://skia-review.googlesource.com/49501 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* Teach TSAN directly about semaphore_t.Gravatar Mike Klein2017-09-21
| | | | | | | | | | | | | | | Instead of teaching TSAN than SkMutex is a lock to get around it not understanding Mach semaphore_t routines, teach it that there is a happens-before relationship between semaphore_signal() and semaphore_wait(). This reverts commit e395bf2d189e22822ddf2b46541c510d6d8fbcc0. New changes are entirely restricted to SkSemaphore.cpp. Change-Id: I27f647b93c48e81e8327db849881d669c4cd3d04 Reviewed-on: https://skia-review.googlesource.com/49180 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* add missing param names to SkBitmap.hGravatar Cary Clark2017-09-21
| | | | | | | | | | | | added names allow doxygen to reference something TBR=reed@google.com Bug: skia: Change-Id: I816f8e73ba4821356900ceb099404edee390d5b1 Reviewed-on: https://skia-review.googlesource.com/49741 Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@skia.org>
* regenerate includesGravatar Cary Clark2017-09-21
| | | | | | | | | | | | | Fresh off the griddle versions of: SkPaint.h, SkCanvas.h, SkPath.h, and SkPixmap.h. TBR=reed@google.com Bug: skia: 9868 Change-Id: If3f0c1cd7973c53482772c2478b12f1070c9fc4d Reviewed-on: https://skia-review.googlesource.com/46587 Commit-Queue: Cary Clark <caryclark@skia.org> Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Cary Clark <caryclark@skia.org>
* Add native caching of uniquely keyed GrTextureProxies (take 2)Gravatar Robert Phillips2017-09-21
| | | | | | | | | TBR=bsalomon@google.com Change-Id: I590dcdc85fb60706c7eb06277694791dc04c9141 Reviewed-on: https://skia-review.googlesource.com/49543 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Add native caching of uniquely keyed GrTextureProxies"Gravatar Robert Phillips2017-09-20
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d4f100dad90ed5beb1b614464d8c4fcb22c0a993. Reason for revert: ASAN Original change's description: > Add native caching of uniquely keyed GrTextureProxies > > Change-Id: I303fe025b7856b8d681a2d35b416c015bd468e1d > Reviewed-on: https://skia-review.googlesource.com/48300 > Commit-Queue: Robert Phillips <robertphillips@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com Change-Id: I7bbf549d4855ce6d985867c3880eef80080bd3d1 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/49442 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* remove dead code for STREAM_APIGravatar Mike Reed2017-09-20
| | | | | | | | Bug: skia: Change-Id: I5c5a65710af443c60a3d13fb309ce31309be7f74 Reviewed-on: https://skia-review.googlesource.com/49460 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add native caching of uniquely keyed GrTextureProxiesGravatar Robert Phillips2017-09-20
| | | | | | | Change-Id: I303fe025b7856b8d681a2d35b416c015bd468e1d Reviewed-on: https://skia-review.googlesource.com/48300 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Extra safety for SkRRect.Gravatar Brian Salomon2017-09-20
| | | | | | | | | | | | | This moves closer to ensuring that all SkRRects are valid. It also checks for validity of deserialized SkRRects and sets the SkRRect to empty if the serialized data is invalid rather than asserting. It is still possible to use mutators to create invalid SkRRects (e.g. outset() by large number, translate() so that type changes due to fp precision). Bug: skia: Change-Id: Ice5f73a020e99739ef4b3ce362181d3dbb35701c Reviewed-on: https://skia-review.googlesource.com/49220 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Use shader based blending to clamp kPlus mode w/F16Gravatar Brian Osman2017-09-20
| | | | | | | | Bug: skia:6173 Change-Id: I21042d484d9a7b3eee04aa3301d9793d00ad6908 Reviewed-on: https://skia-review.googlesource.com/48183 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add a SkWStream-based SkSVGCanvas factoryGravatar Florin Malita2017-09-19
| | | | | | | | | BUG=skia:7047 Change-Id: I729ec3bf7cb1bbdcef1e527ac63dbc1b1857bfa1 Reviewed-on: https://skia-review.googlesource.com/48520 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Reed <reed@google.com>
* Mac TSAN support: annotate Sk[Base]Mutex as a mutex.Gravatar Mike Klein2017-09-19
| | | | | | | | | | | | TSAN does not intercept Mach semaphore_t calls used to implement SkBaseMutex's fSemaphore (its OSSemaphore field). We can teach it that Sk[Base]Mutex is a mutex anyway with the same annotations we use for SkSharedMutex. Change-Id: Ib91928bb9fcfa94f5cea985b46dea31ff2b56963 Reviewed-on: https://skia-review.googlesource.com/48580 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* minor changes to SkMatrix.h and SkRect.hGravatar Cary Clark2017-09-19
| | | | | | | | | | | | | | | Add missing param names so doxygen comments have something to reference. Add commas for all members in enums for consistency across includes. TBR=reed@google.com Bug: skia: 6898 Change-Id: Ida92ed6144430072d52846001b2f618043b5b480 Reviewed-on: https://skia-review.googlesource.com/48046 Commit-Queue: Cary Clark <caryclark@skia.org> Reviewed-by: Cary Clark <caryclark@skia.org>
* add back SkPacked16toX32 to SkColorPrivGravatar Cary Clark2017-09-19
| | | | | | | | | | | | Android vendor requires this interface so moving it back to public for now. TBR=reed@google.com Bug: skia: 6898 Change-Id: I4eb6da0b929227fcf327dac0626e9efd8f9a2705 Reviewed-on: https://skia-review.googlesource.com/48420 Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@skia.org>
* Revert "Reland "Fix SkImageSource::filterBounds()""Gravatar Florin Malita2017-09-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit bf12c079707a89f683ad0a6c989127fa20d9d202. Reason for revert: broke the filterfastbounds GM (2nd column, 5th & 7th rows) Original change's description: > Reland "Fix SkImageSource::filterBounds()" > > This relands commit cb4d58766668b003fea67798027fc25d84acd059 > which was reverted by commit b6d2be1330f16fe05f1eed5abda927c0fbb50055 > because the original CL broke some blink layout tests. > > This reland let SkImageSource::filterBounds() return the dst rect with > ctm applied regardless of direction. > > Original description: > > > Previously SkImageSource::filterBounds() uses the default > > SkImageFilter::onFilterNodeBounds() which returns the input rect. > > > > Now override onFilterNodeBounds() in SkImageSource to return src > > or dst rect (with transform applied). > > Change-Id: I915b7889ff59829ddbc4479cd66d75a0bb581e54 > Reviewed-on: https://skia-review.googlesource.com/47501 > Commit-Queue: Stephen White <senorblanco@chromium.org> > Reviewed-by: Stephen White <senorblanco@chromium.org> TBR=senorblanco@chromium.org,reed@google.com,wangxianzhu@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I698433de66cf3de145b9319e09cb9ec9e30d2fa9 Reviewed-on: https://skia-review.googlesource.com/48160 Reviewed-by: Florin Malita <fmalita@chromium.org>
* re-land of new SkSL precisionsGravatar Ethan Nicholas2017-09-18
| | | | | | | | Bug: skia: Change-Id: Ic1deb3db2cbda6ca45f93dee99832971a36a2119 Reviewed-on: https://skia-review.googlesource.com/47841 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
* Change SkScalarTruncToInt to saturate.Gravatar Ben Wagner2017-09-18
| | | | | | | | | | | This is the same behavior as SkScalarFloorToInt, SkScalarCeilToInt, and SkScalarRoundToInt. Bug: skia:4632 Change-Id: Iec454e841b05c5b10f335b5b089718db56740323 Reviewed-on: https://skia-review.googlesource.com/47400 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
* Suppress float-cast-overflow for double-to-float in SkMatrix{,44}Gravatar Ben Wagner2017-09-18
| | | | | | | | | | No API change. Bug: skia:4632 Change-Id: Ic9cb9de7cce8aca43f0ce8066abcc44a0b04ca84 Reviewed-on: https://skia-review.googlesource.com/47681 Commit-Queue: Ben Wagner <benjaminwagner@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* expand on sk_double_to_float() commentGravatar Mike Klein2017-09-18
| | | | | | | | | | I want to make sure we've got our reasoning straight as we start to use this more. Change-Id: I64b8351549a59e118f564e8505d42a0a620449c1 Reviewed-on: https://skia-review.googlesource.com/47840 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
* add back missing dependencies in SkColorPriv.hGravatar Cary Clark2017-09-18
| | | | | | | | | | | SkColorPriv.h depends on SkColor.h and SK_RGBA_x32_SHIFT TBR=reed@google.com Bug: skia: 6898 Change-Id: I3f7bbaff306298e89bfb0bb571b19d6d223147e5 Reviewed-on: https://skia-review.googlesource.com/47861 Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@skia.org>
* Revert "Revert "Revert "Switched highp float to highfloat and mediump float ↵Gravatar Ethan Nicholas2017-09-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | to half.""" This reverts commit 05d5a13fea6246648de7e41358ed338d53c85ea2. Reason for revert: looks like it broke filterfastbounds Original change's description: > Revert "Revert "Switched highp float to highfloat and mediump float to half."" > > This reverts commit 1d816b92bb7cf2258007f3f74ffd143b89f25d01. > > Bug: skia: > Change-Id: I388b5e5e9bf619db48297a80c9a80c039f26c9f1 > Reviewed-on: https://skia-review.googlesource.com/46464 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> TBR=bsalomon@google.com,ethannicholas@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: Iddf6aef2ab084aa73da7ceebdfc303a1d2b80cde Reviewed-on: https://skia-review.googlesource.com/47441 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Suppress float-cast-overflow in SkPoint::Length.Gravatar Ben Wagner2017-09-16
| | | | | | | | Bug: skia:4632 Change-Id: I0f8a7d7a11fc76fcb315c3f0183577c3f0958926 Reviewed-on: https://skia-review.googlesource.com/47421 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
* Reland "Fix SkImageSource::filterBounds()"Gravatar Xianzhu Wang2017-09-16
| | | | | | | | | | | | | | | | | | | | | | This relands commit cb4d58766668b003fea67798027fc25d84acd059 which was reverted by commit b6d2be1330f16fe05f1eed5abda927c0fbb50055 because the original CL broke some blink layout tests. This reland let SkImageSource::filterBounds() return the dst rect with ctm applied regardless of direction. Original description: > Previously SkImageSource::filterBounds() uses the default > SkImageFilter::onFilterNodeBounds() which returns the input rect. > > Now override onFilterNodeBounds() in SkImageSource to return src > or dst rect (with transform applied). Change-Id: I915b7889ff59829ddbc4479cd66d75a0bb581e54 Reviewed-on: https://skia-review.googlesource.com/47501 Commit-Queue: Stephen White <senorblanco@chromium.org> Reviewed-by: Stephen White <senorblanco@chromium.org>