aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm
Commit message (Collapse)AuthorAge
...
* Fix layer hoisting image filter corner casesGravatar robertphillips2014-12-16
| | | | | | | | | | | | | | | | | | | | | | | | This CL fixes 5 bugs related to hoisting image filters: For image filters the src layer (the one prior to filtering) often needs to be smaller then the final layer. This requires the saveLayer's optional bounds to be stored (in SkLayerInfo.h and SkRecordDraw.cpp) and then used in compute_source_rect and carried around in GrCachedLayer. The image filters can add an extra offset to the final draw operation. This is now computed in GrLayerHoister::FilterLayer and carried around in GrCachedLayer. Filtered layers must use exact matches. This is now done in GrLayerCache::lock. The filter cache requires a valid matrix so it can compute the correct offset. This is now done in GrLayerHoister::FilterLayer. Filtered layers need to be drawn with drawSprite while unfiltered (and therefore hopefully atlased) layers can be drawn with drawBitmap. This is now done in draw_replacement_bitmap. Review URL: https://codereview.chromium.org/803183003
* pass dst-rect through from drawBitmapRect for better precisionGravatar reed2014-12-15
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/797963002
* add paint::getFontBounds()Gravatar reed2014-12-15
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/804903006
* There can be only one (SkRandom)!Gravatar scroggo2014-12-15
| | | | | | | | | | | | | | | | | | | | | Remove SkLCGRandom. We already decided the new one was better, which is why we wrote the new SkRandom. Convert GMs that were using SkLCGRandom to use the improved SkRandom. Motivated by the fact that these GMs draw differently on some runs. We believe this to be a result of using the old SkLCGRandom. Add each of the tests that were using SkLCGRandom to ignore-tests.txt, since we expect they'll draw differently using SkRandom. Move a trimmed down version of SkLCGRandom into SkDiscretePathEffect. In order to preserve the old behavior, trim down SkLCGRandom to only the methods used by SkDiscretePathEffect, and hide it in SkDiscretePathEffect's cpp file. BUG=skia:3241 Review URL: https://codereview.chromium.org/805963002
* skimage, die die dieGravatar mtklein2014-12-15
| | | | | | | | DM's running with --images on all the bots now. They look happy. BUG=skia:3235 Review URL: https://codereview.chromium.org/804133003
* Do circle anti-aliasing in normalized space to avoid precision issues with ↵Gravatar bsalomon2014-12-15
| | | | | | half-floats on Adreno. Review URL: https://codereview.chromium.org/761593006
* DM warning-free on win64Gravatar bsalomon2014-12-12
| | | | Review URL: https://codereview.chromium.org/805543002
* More win64 warning fixesGravatar bsalomon2014-12-12
| | | | Review URL: https://codereview.chromium.org/798723002
* Remove GP from drawstate, revision of invariant output for GPGravatar joshualitt2014-12-11
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/c6bc58eded89b0c0a36b8e20e193c200f297a0da Review URL: https://codereview.chromium.org/791743003
* Update GM to permit correctness testing of MPD on the GMsGravatar robertphillips2014-12-11
| | | | Review URL: https://codereview.chromium.org/794273003
* Replace EncodeBitmap with an interface.Gravatar scroggo2014-12-11
| | | | | | | | | | | | | | Gives more flexibility to the caller to decide whether to use the encoded data returned by refEncodedData(). Provides an implementation that supports the old version of SkPicture::serialize(). TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely BUG=skia:3190 Review URL: https://codereview.chromium.org/784643002
* fix for chrome bug with sub pixel hairlinesGravatar joshualitt2014-12-10
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/796573002
* Revert of Remove GP from drawstate, revision of invariant output for GP ↵Gravatar joshualitt2014-12-10
| | | | | | | | | | | | | | | | | | | | | (patchset #9 id:160001 of https://codereview.chromium.org/791743003/) Reason for revert: breaks mac Original issue's description: > Remove GP from drawstate, revision of invariant output for GP > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/c6bc58eded89b0c0a36b8e20e193c200f297a0da TBR=bsalomon@google.com,egdaniel@google.com,joshualitt@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/794843002
* Remove GP from drawstate, revision of invariant output for GPGravatar joshualitt2014-12-10
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/791743003
* Remove MULTILINE, ^, and $ from re finding actual_results.json.Gravatar bungeman2014-12-10
| | | | | | | | | | | | | | | MULTILINE, ^, and $ work based on the platform, but the files being parsed are from other platforms. As a result, the current code for extracting the actual_results.json version will not find it in logfiles produced on Windows when run on Mac. The code for extracting the exact actual_results.json file to use from a logfile is itself something of a hack, as this information should be provided ina more structured manner. This proposed method of finding the exact file is no worse than the old one, and in cases like above, better. Review URL: https://codereview.chromium.org/789253002
* Remove SkCanvas::drawBitmapMatrix()Gravatar Florin Malita2014-12-10
| | | | | | R=mtklein@google.com, reed@google.com, robertphillips@google.com Review URL: https://codereview.chromium.org/789033002
* Add GM for 2-rects blur which cannot break into nine-patchGravatar qiankun.miao2014-12-10
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/791943002
* Remove canvas::NewRaster, and rename surface::NewRasterPMColor to N32PremulGravatar reed2014-12-10
| | | | | | | | | | patch from issue 781403002 at patchset 20001 (http://crrev.com/781403002#ps20001) BUG=skia: TBR= re-landing after chrome fixes have landed Review URL: https://codereview.chromium.org/784223007
* Revert of remove (dumb) canvas::NewRaster, and rename ↵Gravatar reed2014-12-09
| | | | | | | | | | | | | | | | | | | | | | | surface::NewRasterPMColor to N32Premul (patchset #3 id:40001 of https://codereview.chromium.org/790733003/) Reason for revert: need to update chrome first Original issue's description: > remove (dumb) canvas::NewRaster, and rename surface::NewRasterPMColor to N32Premul > > patch from issue 781403002 at patchset 20001 (http://crrev.com/781403002#ps20001) > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/2c1605a1fbaa2e35a27399a34254fb1200ec2ae6 TBR=fmalita@google.com,fmalita@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/791763002
* This cl moves color and coverage off of drawstate. In an effort to keep ↵Gravatar joshualitt2014-12-09
| | | | | | | | | | this CL manageable, I have left the compute invariant input / output in a bit of a strange state(fixing this will be complicated). In addition, NVPR makes this very complicated, and I haven't quite figured out a good way to handle it, so for now color and coverage DO live on optstate, but I will figure out some way to refactor that in future CLs. BUG=skia: Review URL: https://codereview.chromium.org/783763002
* Adding an option for pixelated rendering in SkPictureImageFilterGravatar junov2014-12-09
| | | | | | BUG=skia:3209 Review URL: https://codereview.chromium.org/787073003
* remove (dumb) canvas::NewRaster, and rename surface::NewRasterPMColor to ↵Gravatar reed2014-12-09
| | | | | | | | | | N32Premul patch from issue 781403002 at patchset 20001 (http://crrev.com/781403002#ps20001) BUG=skia: Review URL: https://codereview.chromium.org/790733003
* Make all blending up to GrOptDrawState be handled by the xp/xp factory.Gravatar egdaniel2014-12-09
| | | | | | | | | | | | In this cl the blending information is extracted for the xp and stored in the ODS which is then used as it currently is. In the follow up cl, an XP backend will be added and at that point all blending work will take place inside XP's. BUG=skia: Committed: https://skia.googlesource.com/skia/+/7c66342a399b529634bed0fabfaa562db2c0dbd4 Review URL: https://codereview.chromium.org/759713002
* Use texture size to determine precision of texture coord varyings.Gravatar bsalomon2014-12-09
| | | | Review URL: https://codereview.chromium.org/778783002
* Revert of Replace EncodeBitmap with an interface. (patchset #12 id:210001 of ↵Gravatar scroggo2014-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/784643002/) Reason for revert: Failing serialization tasks in DM: http://build.chromium.org/p/client.skia/builders/Test-Win8-ShuttleA-GTX660-x86-Debug/builds/352/steps/dm/logs/stdio Original issue's description: > Replace EncodeBitmap with an interface. > > Gives more flexibility to the caller to decide whether to use the > encoded data returned by refEncodedData(). > > Provides an implementation that supports the old version of > SkPicture::serialize(). > > TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely > > BUG=skia:3190 > > Committed: https://skia.googlesource.com/skia/+/0c4aba6edb9900c597359dfa49d3ce4a41bc5dd1 > > Committed: https://skia.googlesource.com/skia/+/02b217f80b01a7dda8493422e5257c36a9ce8464 TBR=reed@google.com,rmistry@google.com NOTREECHECKS=true NOTRY=true BUG=skia:3190 Review URL: https://codereview.chromium.org/783393004
* Replace EncodeBitmap with an interface.Gravatar scroggo2014-12-09
| | | | | | | | | | | | | | | | Gives more flexibility to the caller to decide whether to use the encoded data returned by refEncodedData(). Provides an implementation that supports the old version of SkPicture::serialize(). TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely BUG=skia:3190 Committed: https://skia.googlesource.com/skia/+/0c4aba6edb9900c597359dfa49d3ce4a41bc5dd1 Review URL: https://codereview.chromium.org/784643002
* Revert of Replace EncodeBitmap with an interface. (patchset #11 id:190001 of ↵Gravatar robertphillips2014-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/784643002/) Reason for revert: Compilation is failing on some bots Original issue's description: > Replace EncodeBitmap with an interface. > > Gives more flexibility to the caller to decide whether to use the > encoded data returned by refEncodedData(). > > Provides an implementation that supports the old version of > SkPicture::serialize(). > > TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely > > BUG=skia:3190 > > Committed: https://skia.googlesource.com/skia/+/0c4aba6edb9900c597359dfa49d3ce4a41bc5dd1 TBR=reed@google.com,scroggo@google.com NOTREECHECKS=true NOTRY=true BUG=skia:3190 Review URL: https://codereview.chromium.org/787833002
* Cleanup GM:pictureshadertileGravatar fmalita2014-12-09
| | | | | | | | Post review cleanup for https://codereview.chromium.org/733203005/ TBR=robertphillips@google.com Review URL: https://codereview.chromium.org/784053002
* Replace EncodeBitmap with an interface.Gravatar scroggo2014-12-09
| | | | | | | | | | | | | | Gives more flexibility to the caller to decide whether to use the encoded data returned by refEncodedData(). Provides an implementation that supports the old version of SkPicture::serialize(). TODO: Update Chrome, so we can remove SK_LEGACY_ENCODE_BITMAP entirely BUG=skia:3190 Review URL: https://codereview.chromium.org/784643002
* Revert of Make all blending up to GrOptDrawState be handled by the xp/xp ↵Gravatar egdaniel2014-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | factory. (patchset #7 id:140001 of https://codereview.chromium.org/759713002/) Reason for revert: break many gm's Original issue's description: > Make all blending up to GrOptDrawState be handled by the xp/xp factory. > > In this cl the blending information is extracted for the xp and stored in the ODS > which is then used as it currently is. In the follow up cl, an XP backend will be added > and at that point all blending work will take place inside XP's. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/7c66342a399b529634bed0fabfaa562db2c0dbd4 TBR=bsalomon@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/766653008
* Make all blending up to GrOptDrawState be handled by the xp/xp factory.Gravatar egdaniel2014-12-08
| | | | | | | | | | In this cl the blending information is extracted for the xp and stored in the ODS which is then used as it currently is. In the follow up cl, an XP backend will be added and at that point all blending work will take place inside XP's. BUG=skia: Review URL: https://codereview.chromium.org/759713002
* Tweak SkPictureShader's tile semantics.Gravatar fmalita2014-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the tile offset is added when drawing the picture. This might have made a tiny bit of sense when the picture was always positioned at origin, but with a picture cull rect offset things looks really strange. For example, to specify a tile == the picture cull rect we have to pass in [-cullrect.x, -cullrect.y, cullrect.width, cullrect.height]. Yikes. (there's also a bug when not passing a tile, as we use a default tile == cullrect but don't compensate for the above oddity) This changes the semantics of the tile offset: it is now subtracted when drawing the picture tile. As a consequence, one can pass in a tile equal to the cull rect and get the expected behavior (same when not passing a tile). This will require a minor Blink change with the roll, as one client works around the current behavior: https://codereview.chromium.org/789503003 R=reed@google.com,robertphillips@google.com BUG=440046 Review URL: https://codereview.chromium.org/733203005
* Add new GM (filterfastbounds)Gravatar robertphillips2014-12-08
| | | | | | | | This new GM visualizes the fast bounds computed by various image-filter-based SkPaints. This is lead up to fixing some issues in fast bound computation. BUG=418417 Review URL: https://codereview.chromium.org/788613003
* remove unnecessary save/clip/restoreGravatar reed2014-12-05
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/785493003
* Tolerate unstarted builds in rebaseline server.Gravatar bungeman2014-12-05
| | | | | | | | Currently server.py --rietveld-issue will crash if there are any unstarted trybots on the latest patch. Instead of crashing, warn that the bot hasn't started yet. Review URL: https://codereview.chromium.org/758793003
* First step to moving vertex attributes to the geometryProcessorGravatar joshualitt2014-12-03
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/761563002
* work in progressGravatar halcanary2014-12-02
| | | | Review URL: https://codereview.chromium.org/769423002
* Adding a PictureResolution option to SkPictureImageFilterGravatar Justin Novosad2014-12-02
| | | | | | | | | | | This change adds an option to SkPictureImageFilter to make it rasterize SkPicture in a resolution that matches the local coordinate space (equivalent to the record-time device space). BUG=skia:3176 R=reed@google.com, senorblanco@chromium.org Review URL: https://codereview.chromium.org/753073010
* use portable fontsGravatar halcanary2014-12-02
| | | | Review URL: https://codereview.chromium.org/769343002
* colorwheelnative gm, to test that colors look right under all conditions.Gravatar halcanary2014-12-02
| | | | | | | | Motivation: colorwheel on pdf-native (MacOS coregraphics) reverses Blue and Red. I want to see if this has anything to do with image decoding. BUG=skia:3184 Review URL: https://codereview.chromium.org/774713003
* Remove PDF JPEG shortcut, since it fails on grayscale JPEGs.Gravatar halcanary2014-12-02
| | | | | | BUG=436079 Review URL: https://codereview.chromium.org/767343002
* add gm to test rounding between clips and drawBitmapRectGravatar reed2014-12-01
| | | | | | BUG=skia:3179 Review URL: https://codereview.chromium.org/766333002
* Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.Gravatar mtklein2014-12-01
| | | | | | | | | | | | This was needed for pictures before v33, and we're now requiring v35+. Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc BUG=skia: Committed: https://skia.googlesource.com/skia/+/52c293547b973f7fb5de3c83f5062b07d759ab88 Review URL: https://codereview.chromium.org/769953002
* Revert of Remove SK_SUPPORT_LEGACY_DEEPFLATTENING. (patchset #1 id:1 of ↵Gravatar mtklein2014-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/769953002/) Reason for revert: Breaks canary builds. Will reland after the Chromium change lands. Original issue's description: > Remove SK_SUPPORT_LEGACY_DEEPFLATTENING. > > This was needed for pictures before v33, and we're now requiring v35+. > > Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/52c293547b973f7fb5de3c83f5062b07d759ab88 TBR=reed@google.com,mtklein@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/768183002
* Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.Gravatar mtklein2014-12-01
| | | | | | | | | | This was needed for pictures before v33, and we're now requiring v35+. Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc BUG=skia: Review URL: https://codereview.chromium.org/769953002
* more cGravatar reed2014-11-24
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/736133006
* add SkImage::newSurfaceGravatar reed2014-11-21
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/741763002
* Add SkNVRefCnt, prune down SkPicture's sizeGravatar mtklein2014-11-20
| | | | | | | | | | | | | | SkNVRefCnt is a variant of SkRefCnt that's Not Virtual, so weighs 4 bytes instead of 8 or 16. There's only benefit to doing this if the deriving class does not otherwise need a vtable, e.g. SkPicture. I've stripped out some cruft from SkPicture, rearranged fields to pack tightly, and added compile asserts for the sizes of SkPicture, SkRecord, and SkVarAlloc. BUG=skia:3144 Review URL: https://codereview.chromium.org/741793002
* Preventing division by 0 in non-separable blend mode shaders.Gravatar rosca2014-11-20
| | | | | | | | | In the software path, the same issue has been fixed some time ago: https://codereview.chromium.org/114173002 BUG=skia: Review URL: https://codereview.chromium.org/666043003
* Add an image filter row to GM:lcdtextpropsGravatar fmalita2014-11-19
| | | | | | | | | We should be disabling LCD text when rendering image filters, but currently don't. Add a GM to capture this behavior. R=reed@google.com Review URL: https://codereview.chromium.org/741433003