aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* ccpr: Improve CPU checks for collinear pointsGravatar Chris Dalton2018-04-10
| | | | | | | | Bug: skia: Change-Id: I1373b5e9740538b2bc5c1b33644b7ec5dfadc95c Reviewed-on: https://skia-review.googlesource.com/119982 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* ccpr: Remove fCurrAnchorPoint from GrCCGeometryGravatar Chris Dalton2018-04-10
| | | | | | | | | | | | Removes fCurrAnchorPoint, and various other cleanups. fCurrAnchorPoint was originally added because points were expected to be written directly to mapped GPU buffers, which is not going to happen anymore. Bug: skia: Change-Id: Icaf8d09dae218f58c19a2f368f3cd281e285e2dd Reviewed-on: https://skia-review.googlesource.com/119984 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Remove extra Vulkan submitCommandBuffer from deleteTestingOnlyBackendTextureGravatar Robert Phillips2018-04-10
| | | | | | | Change-Id: I6e2fd012d1c2af72a34be2d1971e210d7373fe21 Reviewed-on: https://skia-review.googlesource.com/120080 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Update getBackendInfo calls on GrBackendTexture to support VkImageLayout better.Gravatar Greg Daniel2018-04-10
| | | | | | | | | | | | | | | The big api level change here is that the getBackendInfo calls now return by value instead of a pointer. These changes are being made in support of Vulkan so that the client can update the VkImageLayout on the GrBackendTexture and have that update get reflected in our internal tracking of the image. This is done by storing a ref counted GrVkImageLayout object on the GrBackendTexture and the GrVkImage. Bug: skia: Change-Id: I8c6158fd3a66eb61fef97ebf09ea5364bca3f1ae Reviewed-on: https://skia-review.googlesource.com/119101 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* one more path is rect bugGravatar Cary Clark2018-04-10
| | | | | | | | | | | | | | | | Add a check to see that the close path generated line is horizontal or vertical when determining that path is a rect. Also change several tests to defer their initialization to reduce debugging interference. R=brianosman@google.com,robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I4a081ee4ffd3558b499a7a1aede2d6232059715e Reviewed-on: https://skia-review.googlesource.com/120081 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* fix path to rect when missing close verbGravatar Cary Clark2018-04-10
| | | | | | | | | | | R=brianosman@google.com,robertphillips@google.com TBR=reed@google.com Bug: 824145,skia:7792 Change-Id: I24f121cfa7d437c95b94bd917d3c4888a10c519e Reviewed-on: https://skia-review.googlesource.com/119569 Commit-Queue: Cary Clark <caryclark@skia.org> Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Remove SkDEBUGFAIL for non-invertible XYZ matrixGravatar Brian Osman2018-04-10
| | | | | | | | | | We have a reasonable fallback for this (extremely unlikely) scenario. Bug: chromium:819192 Change-Id: I7a9a28c067fb029fd1000e1eeb488ede688fc3b2 Reviewed-on: https://skia-review.googlesource.com/119945 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* use commonPaint for all raster pipelineGravatar Mike Klein2018-04-09
| | | | | | | | | | Looks like a typo? Change-Id: Ie5a1ab546d4d658a864e3362319883f2bf46c111 Reviewed-on: https://skia-review.googlesource.com/119942 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Reland "Remove deprectated GrContext::MakeGL overloads that take raw ptr"Gravatar Brian Salomon2018-04-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 87f852d1a30f040cfa0e9567b17ec236e14a0f41. Reason for revert: Google3 updated Original change's description: > Revert "Remove deprectated GrContext::MakeGL overloads that take raw ptr" > > This reverts commit efa60a1d13fa1de00a4cba0454fdd9ad375caa72. > > Reason for revert: Surprise! Google3 still uses these. > > Original change's description: > > Remove deprectated GrContext::MakeGL overloads that take raw ptr > > > > Change-Id: Iae12bf61fa1e2f5d4b13b98198cddb7482656fdf > > Reviewed-on: https://skia-review.googlesource.com/118660 > > Reviewed-by: Greg Daniel <egdaniel@google.com> > > Commit-Queue: Brian Salomon <bsalomon@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com > > Change-Id: Ica09d80e1563924a286a4a6aa8a1f93cb5ca9c5d > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://skia-review.googlesource.com/119001 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I87c12253f759a97cb4da3ff35dc1ec846513caef Reviewed-on: https://skia-review.googlesource.com/119921 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* ccpr: Remove WindMethod from GrCCCoverageProcessorGravatar Chris Dalton2018-04-09
| | | | | | | | | | | Handles weighted triangles from the tessellator instead with a "kWeightedTriangles" PrimitiveType. Bug: skia: Change-Id: I8a6f7b4205e1b3d6f340a30f3e90079ec44b8b6d Reviewed-on: https://skia-review.googlesource.com/119202 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Add canvas2D fast paths to new read/write pixels code paths.Gravatar Brian Salomon2018-04-09
| | | | | | | Change-Id: I31fccc5083957281f4ef2dc94f12e5961eed52f3 Reviewed-on: https://skia-review.googlesource.com/119142 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Make sure GrBackendTextures are valid before starting to do things with themGravatar Greg Daniel2018-04-09
| | | | | | | | Bug: skia: Change-Id: If05706f0fd732bb1b2bfb788b540e795fa724814 Reviewed-on: https://skia-review.googlesource.com/119887 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Implement Sk2f::Store2Gravatar Chris Dalton2018-04-09
| | | | | | | | Bug: skia: Change-Id: Ifea5957458e5547ee428809d9599286e70f3f8f9 Reviewed-on: https://skia-review.googlesource.com/119860 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Revert "Remove all notion of transport from the API."Gravatar Herb Derby2018-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4961a938586e3c46cf80f15ecb70a011324bfe59. Reason for revert: Breaks MSVC Original change's description: > Remove all notion of transport from the API. > > There is only a need to pass buffers in and out of the system. > All transport is external to the system. > > Change-Id: I26dfc8e0b4cce9969395c96d5230078e7dca3f3d > Reviewed-on: https://skia-review.googlesource.com/119062 > Commit-Queue: Herb Derby <herb@google.com> > Reviewed-by: Khushal Sagar <khushalsagar@google.com> TBR=herb@google.com,reed@google.com,khushalsagar@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I62cbac1be4483702ba7464822d93fb9f818f88b7 Reviewed-on: https://skia-review.googlesource.com/119580 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* SkPDF: smarter Jpeg when libjpeg-turbo is presentGravatar Hal Canary2018-04-07
| | | | | | | | | | | | The fallback code does not parse the color type for EXIF-only jpegs. Since these exist in the wild, we need to find out if they are really standard YUV or greyscale Jpegs and embed them in PDFs if they are. BUG=chromium:801430 Change-Id: I93eaf8b8fc22b7169b2fce9520e022b72ad0bf81 Reviewed-on: https://skia-review.googlesource.com/118992 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* Better layer tracking fidelityGravatar Herb Derby2018-04-06
| | | | | | | | | | | | | | Track layer processing more faithfully. This temporary until we can remove the old system for dissabling the unneeded system for falling back to A8 format. BUG=skia:7786 Change-Id: Iee9154f4209c4020f16b04edd03e42c6b7d0ec98 Reviewed-on: https://skia-review.googlesource.com/119104 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* detect if makeOffset failedGravatar Mike Reed2018-04-06
| | | | | | | | | | | If we don't detect this, this imagefilter might not write to all of the pixels it claims it will, resulting in uninitialized memory. Bug: oss-fuzz:7209 Change-Id: I6c53757046b4d6051da1b317310c89b8ec4752ca Reviewed-on: https://skia-review.googlesource.com/119145 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* vulkan: Fix an optimus-related failure with vkEnumeratePhysicalDevicesGravatar Chris Dalton2018-04-06
| | | | | | | | Bug: skia: Change-Id: I44be948b2e3ce925ff539de279db04bf8df7137c Reviewed-on: https://skia-review.googlesource.com/119060 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Make generated effects from sksl fp files not need SK_SUPPORT_GPUGravatar Greg Daniel2018-04-06
| | | | | | | | Bug: skia: Change-Id: I42a5c7fe7dc35a23290c8daa754c9fcce07f76fb Reviewed-on: https://skia-review.googlesource.com/119010 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Remove all notion of transport from the API.Gravatar Herb Derby2018-04-06
| | | | | | | | | | There is only a need to pass buffers in and out of the system. All transport is external to the system. Change-Id: I26dfc8e0b4cce9969395c96d5230078e7dca3f3d Reviewed-on: https://skia-review.googlesource.com/119062 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Khushal Sagar <khushalsagar@google.com>
* SkRegion: Use less memory for SkRegion::OperGravatar Hal Canary2018-04-06
| | | | | | | | | | Also add fuzzer. BUG=chromium:797940 Change-Id: Id6d483120f3325c3b1085a90277d56a4f7a0e989 Reviewed-on: https://skia-review.googlesource.com/118623 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Cary Clark <caryclark@skia.org>
* Remove unneeded SK_SUPPORT_GPU checks in gpu only files.Gravatar Greg Daniel2018-04-06
| | | | | | | | Bug: skia: Change-Id: I8f25c883f7d741866ac850c8e0ba9f439830570f Reviewed-on: https://skia-review.googlesource.com/119008 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Region Op FuzzerGravatar Hal Canary2018-04-06
| | | | | | | | | | | Also: assert Region IRects don't contain Sentinel value. Also: Region fuzzer can't produce Sentinel value. Change-Id: Ia33c7eeb9ef2c46b3da4a025d85de8a0406c3c0c Reviewed-on: https://skia-review.googlesource.com/119011 Reviewed-by: Kevin Lubick <kjlubick@google.com> Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* ccpr: Make curve corners more seamlessGravatar Chris Dalton2018-04-06
| | | | | | | | | | | | | | | Interpolates the acual curve's local coverage values from the corner box vertices, rather than an approximation based on the tangent. Clamps curve segment total coverage values above 0. This prevents us from using negative coverage (which is obviously wrong) when the curve approximation function is slightly inaccurate. Moves GrCCTriangleShader.h into GrCCCoverageProcessor.cpp. Bug: skia: Change-Id: I95de8e940c1508d4a359f5f802c3a688f2b84094 Reviewed-on: https://skia-review.googlesource.com/119066 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Remove SK_SUPPORT_LEGACY_BLURMASKFILTERGravatar Brian Osman2018-04-06
| | | | | | | Change-Id: I1d99d9bb83d8a612d1c1fd298c1f7ed706a2277b Reviewed-on: https://skia-review.googlesource.com/118990 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add versions of MakeGL() that don't require include GrGLInterface.h in order ↵Gravatar Brian Salomon2018-04-06
| | | | | | | | | to use the GrGLMakeNativeInterface Change-Id: I77bd3c683c284aecc50a3552bbf1fb901f1bcc44 Reviewed-on: https://skia-review.googlesource.com/119002 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Don't use GrPixelConfig value as proxy for valid on GrBackendSurface.Gravatar Greg Daniel2018-04-06
| | | | | | | | Bug: skia: Change-Id: I275b74b915240c9918bb2efa6a9708341f3bb189 Reviewed-on: https://skia-review.googlesource.com/119004 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* remove SK_IGNORE_TO_STRINGGravatar Cary Clark2018-04-05
| | | | | | | | | | | | | | | | | | | SK_IGNORE_TO_STRING is not defined anywhere. The same effect can be had by using a modern linker. Removing it simplifies bookmaker and makes our includes easier to understand. R=robertphillips@google.com TBR=reed@google.com Bug: skia:6898 Change-Id: Ib716f5ef1b42a7fbda0df43ece212d1b7c40289f Reviewed-on: https://skia-review.googlesource.com/118963 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@skia.org>
* Distinguish between glyphs with empty path and no path.Gravatar Ben Wagner2018-04-05
| | | | | | | | | BUG=skia:4904 Change-Id: I065e3b4d8596b415ddaf094d7f9a4b65da64d4d4 Reviewed-on: https://skia-review.googlesource.com/117280 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Mac to better serialize OTTO fonts.Gravatar Ben Wagner2018-04-05
| | | | | | | | | | | | | | | | | | Sometimes CoreText just gives up on filling out kCTFontFormatAttribute properly, in which case we need a simple fallback for format detection which isn't so reluctant to determine the type. The strategy prior to this change is to use the most common type (WindowsTrueType), but apparently if a font is actually an OpenType CFF font but has a WindowsTrueType tag as the first few bytes, CoreGraphics gives up and won't load the font. So check if there are any CFF tables and, if so, mark the font as OpenTypeCFF. BUG=skia:7630 Change-Id: Ie974e6db031db13628d5a19962e23ce2bf127367 Reviewed-on: https://skia-review.googlesource.com/118887 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Revert "Remove deprectated GrContext::MakeGL overloads that take raw ptr"Gravatar Robert Phillips2018-04-05
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit efa60a1d13fa1de00a4cba0454fdd9ad375caa72. Reason for revert: Surprise! Google3 still uses these. Original change's description: > Remove deprectated GrContext::MakeGL overloads that take raw ptr > > Change-Id: Iae12bf61fa1e2f5d4b13b98198cddb7482656fdf > Reviewed-on: https://skia-review.googlesource.com/118660 > Reviewed-by: Greg Daniel <egdaniel@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=egdaniel@google.com,bsalomon@google.com Change-Id: Ica09d80e1563924a286a4a6aa8a1f93cb5ca9c5d No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/119001 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Remove SK_DISABLE_TEXTURE_OP_AAGravatar Brian Salomon2018-04-05
| | | | | | | | | The corresponding Chrome bugs have been fixed and this macro has not been defined in Chrome for some time. Change-Id: I618283e7e6c409d96550fc5b1026c1618280246c Reviewed-on: https://skia-review.googlesource.com/118888 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Flush before snap SkThreadedBMPDeviceGravatar Yuqian Li2018-04-05
| | | | | | | | Bug: skia: Change-Id: I3551634cc3d066777b160adafa861f5c8f57d4e8 Reviewed-on: https://skia-review.googlesource.com/118961 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Remove deprectated GrContext::MakeGL overloads that take raw ptrGravatar Brian Salomon2018-04-05
| | | | | | | Change-Id: Iae12bf61fa1e2f5d4b13b98198cddb7482656fdf Reviewed-on: https://skia-review.googlesource.com/118660 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add maxTextureSize()/maxRenderTargetSize() to GrContextGravatar Brian Salomon2018-04-05
| | | | | | | | | This provides an alternative way to access these values which will allow removal GrContext::caps() from public API Change-Id: I53d3c00563da8847e1fc14aea9750dc9fd90d1e5 Reviewed-on: https://skia-review.googlesource.com/118962 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* replace size-alignment assert with round-downGravatar Mike Reed2018-04-05
| | | | | | | | | | | Don't need to assert here, we just won't write into all of the external memory if its length is not a multiple of what we need. Bug: skia: Change-Id: I277653f5dc3b3d7560ab71a10440275f55430833 Reviewed-on: https://skia-review.googlesource.com/118884 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* SkPDF: implement xheight for type3 fontsGravatar Hal Canary2018-04-05
| | | | | | | Change-Id: Ib8e5424e31003798ea141e958a74aa8110ee52c7 Reviewed-on: https://skia-review.googlesource.com/117860 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Add GrBackendTexture/RenderTarget accessors to SkSurfaceGravatar Robert Phillips2018-04-05
| | | | | | | | | Change-Id: I63477fd4b8d48dc50af72736f0f8df566cd96d4a Reviewed-on: https://skia-review.googlesource.com/85220 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Workaround for lack of ESSL3 external image extension on older Samsung devicesGravatar Brian Osman2018-04-05
| | | | | | | | | | | | | | | | This undoes the original workaround[1] and moves it to our caps workarounds. It also forces us to use the ESSL3 extension string when applying the workaround, as that appears to be necessary. (Otherwise, offending devices just fail to compile when using the older extension string with a newer GLSL version). [1] https://skia-review.googlesource.com/c/skia/+/114505 Bug: skia:7713 Change-Id: I9757034b282a663c6e4d5fd19889c977a12a4d91 Reviewed-on: https://skia-review.googlesource.com/118665 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Fix iOS bot in Chrome CQGravatar Robert Phillips2018-04-05
| | | | | | | | TBR=herb@google.com Change-Id: I5133278b8c8293ea6808ce8f0a724b884aba24f0 Reviewed-on: https://skia-review.googlesource.com/118589 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Avoid calling glGetString(GL_EXTENSIONS) on core profilesGravatar Brian Salomon2018-04-04
| | | | | | | Change-Id: I75c5cd61ddaad91187f65c494f75da720934936d Reviewed-on: https://skia-review.googlesource.com/118683 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Stop using clear-as-draw workaround on newer Intel drivers on macOSGravatar Brian Salomon2018-04-04
| | | | | | | | | Bug= chromium:777849 Change-Id: I6276cbbf4bf6403ff9bf613d1fb31e56785a035e Reviewed-on: https://skia-review.googlesource.com/118625 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Ensure that pointers/arrays are valid until flush in threaded backendGravatar Yuqian Li2018-04-04
| | | | | | | | Bug: skia:7672 skia:7414 Change-Id: Ia000781401fe7b1df8040abb97692e6ca35b312f Reviewed-on: https://skia-review.googlesource.com/118626 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Add GrBackendTexture accessor to SkImage (take 2)Gravatar Robert Phillips2018-04-04
| | | | | | | | | | | This makes accessing the GPU resource behind an SkImage a lot more typesafe. Additionally, the GrBackendObject is being deprecated so this is the path forward. I split the controversial stuff off into https://skia-review.googlesource.com/c/skia/+/118575 (Add SkImage::setLayout call). Change-Id: I297e72770e8fb360fac7c7cd74f050ae759ae133 Reviewed-on: https://skia-review.googlesource.com/118571 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* move SkIPoint16 to private headerGravatar Mike Reed2018-04-04
| | | | | | | | | Bug: skia: Change-Id: Ib8045ac7cc24a44c4b70e73153c6faf098730b63 Reviewed-on: https://skia-review.googlesource.com/118721 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Cary Clark <caryclark@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Fix SkLocalMatrixShader nesting semanticsGravatar Florin Malita2018-04-04
| | | | | | | | | | | | Inherited/outer local matrices are supposed to compose to the right of (preconcat) other/nested local matrices. BUG=skia:7781 Change-Id: Icd3c24f226845427be849a8be3d78293aef176b3 Reviewed-on: https://skia-review.googlesource.com/118344 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Reed <reed@google.com>
* Make sure we set the origin when initDescForDstCopy failsGravatar Greg Daniel2018-04-04
| | | | | | | | Bug: skia: Change-Id: Ic46a8086c530857d57dd713363482b50b48b5a4f Reviewed-on: https://skia-review.googlesource.com/118682 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Banish SkShaderBase::isRasterPipelineOnly()Gravatar Florin Malita2018-04-04
| | | | | | | | | | | | | | | | | Keeping related heuristics in sync with actual shader capabilities is somewhat tricky, and overall fragile. So how about this: instead of an explicit opt-in mechanism, try to instantiate a legacy shader context and fall back to raster pipeline on failure (null Context => implicit opt-in for raster pipeline). Shaders can still choose not to draw by returning both a null Context and failing appendStages(). BUG=skia:7772 Change-Id: I2e76f51af7064853a6cb851b4c30c82eba3ee828 Reviewed-on: https://skia-review.googlesource.com/118383 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Reed <reed@google.com>
* Fix drawBitmapRect in the threaded backendGravatar Yuqian Li2018-04-04
| | | | | | | | | | | | Previously, the threaded backend failed to drawBitmapRect (see, e.g., GM_bitmaprect_s) because it did not intercept the call to SkDraw::drawBitmap. Bug: skia: Change-Id: I7eeaae98e63d726b2b566c4d15f7ea939f59360e Reviewed-on: https://skia-review.googlesource.com/115983 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Tag the unique keys of lazy images.Gravatar Derek Sollenberger2018-04-04
| | | | | | | Change-Id: I54175db2aae43d28fd7aff224d57bf6ed9093b1e Reviewed-on: https://skia-review.googlesource.com/118588 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>