aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
Commit message (Collapse)AuthorAge
* Reimplement drawBitmapRectToRect to correctly handle fraction srcRect.Gravatar reed@google.com2012-09-25
| | | | | | | | | | | | | | | | | | | | | | | | The prev impl relied on drawBitmap "deducing" the destination rect by applying the computed matrix to the bitmap's bounds. This cannot be done if the srcRect is fractional, and therefore not representable w/ a bitmap. The new impl computes the same matrix, but calls down to the device via drawRect + a bitmap_shader. This allows us to specfiy the dstRect explicitly. The possible down-side is that we now rely on the device subclass to efficiently handle draRect+shader, instead of calling its drawBitmap entry-point. To give the device the chance to handle this differently, I now call through to a new device virtual: drawBitmapRect. The default impl is to create the shader and call drawRect, but a subclass can intercept that. For now, the GPU override of drawBitmapRect is mimicing the old behavior (by rounding the srcRect to an iRect). This preserves its ability to call drawBitmap which handles very-large textures, but shows some gittering/imprecision, due to the rounding. ... this is the same GPU behavior we have before this CL. Review URL: https://codereview.appspot.com/6542065 git-svn-id: http://skia.googlecode.com/svn/trunk@5663 2bbb7eff-a529-9590-31e7-b0007b416f81
* Addressed xcode analysis complaintsGravatar robertphillips@google.com2012-09-24
| | | | | | | | http://codereview.appspot.com/6558048/ git-svn-id: http://skia.googlecode.com/svn/trunk@5646 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make flattenables no longer depend on global static initializers.Gravatar scroggo@google.com2012-09-21
| | | | | | | | | | | | | | | | | Instead, force all builds to call InitializeFlattenables. Remove the make_debugger script, which was created to force rebuilding without global static initializers so that all flattenables would be linked. It is no longer necessary since all flattenables will be linked thanks to InitializeFlattenables, which now can (and must) be called when global static initializers are turned on. BUG=https://code.google.com/p/skia/issues/detail?id=903 BUG=https://code.google.com/p/skia/issues/detail?id=902 Review URL: https://codereview.appspot.com/6548044 git-svn-id: http://skia.googlecode.com/svn/trunk@5642 2bbb7eff-a529-9590-31e7-b0007b416f81
* check for very large blurs, and don't try to cache the result in fontcacheGravatar reed@google.com2012-09-21
| | | | | | | | http://code.google.com/p/chromium/issues/detail?id=138208 git-svn-id: http://skia.googlecode.com/svn/trunk@5640 2bbb7eff-a529-9590-31e7-b0007b416f81
* first cut at making iOS workGravatar caryclark@google.com2012-09-20
| | | | | | | | | | | | | Replace __arm__ with SK_CPU_ARM add support for iOS simulator and device fix const warning in iOSSampleApp update gyp files https://code.google.com/p/skia/issues/detail?id=900 tracks fixing missing arm assembly Review URL: https://codereview.appspot.com/6552045 git-svn-id: http://skia.googlecode.com/svn/trunk@5606 2bbb7eff-a529-9590-31e7-b0007b416f81
* Explicitly convert from int to SkScalar to avoid a compiler error on gcc 4.5Gravatar george@mozilla.com2012-09-18
| | | | | | Review URL: https://codereview.appspot.com/6526047 git-svn-id: http://skia.googlecode.com/svn/trunk@5589 2bbb7eff-a529-9590-31e7-b0007b416f81
* re-re-land 5578Gravatar reed@google.com2012-09-18
| | | | | | | | will follow w/ new .skp files to keep the waterfall green (I hope) git-svn-id: http://skia.googlecode.com/svn/trunk@5584 2bbb7eff-a529-9590-31e7-b0007b416f81
* revert 5580Gravatar reed@google.com2012-09-18
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5581 2bbb7eff-a529-9590-31e7-b0007b416f81
* re-land 5578 w/ pipe fixGravatar reed@google.com2012-09-18
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5580 2bbb7eff-a529-9590-31e7-b0007b416f81
* revert 5578 -- broke pipeGravatar reed@google.com2012-09-18
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5579 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change drawBitmapRect to take a float-src-rect instead of integer-src-rect. ThisGravatar reed@google.com2012-09-18
| | | | | | | | | | | | | | | | | | allows the client more control over the scaling. Because of virtual overrides and wanting to keep the old call-sites up and running, this CL renames the virtual entry-point to drawBitmapRectToRect, and downgrades drawBitmapRect to a non-virtual helper function. The implementation is to use the float-rect for computing the matrix, but still cons-up an integer rect for the purposes of subsetting the original bitmap. We do this by calling float_src->roundOut(&int_src) so that we include all (partially) covered src pixels. No change needed on SkDevice, since that signature is explicitly passed the computed matrix. Review URL: https://codereview.appspot.com/6501140 git-svn-id: http://skia.googlecode.com/svn/trunk@5578 2bbb7eff-a529-9590-31e7-b0007b416f81
* Check for invalid SkPicturesGravatar borenet@google.com2012-09-17
| | | | | | | | | - Remove hasRecorded() since nobody uses it. - Add "success" boolean to SkPicture stream constructor - Track failures in render_pictures and bench_pictures Review URL: https://codereview.appspot.com/6493105 git-svn-id: http://skia.googlecode.com/svn/trunk@5573 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2012-09-15
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5561 2bbb7eff-a529-9590-31e7-b0007b416f81
* Temporarily revert r5433 due to http://www.crbug.com/148637 until after M23 ↵Gravatar bsalomon@google.com2012-09-14
| | | | | | branch. git-svn-id: http://skia.googlecode.com/svn/trunk@5557 2bbb7eff-a529-9590-31e7-b0007b416f81
* speculative fix for crbug.com/147406 -- disabling save/clip/restore peepholeGravatar reed@google.com2012-09-14
| | | | | | | | optimization, to see if it reduces crash rates. git-svn-id: http://skia.googlecode.com/svn/trunk@5556 2bbb7eff-a529-9590-31e7-b0007b416f81
* Double size of buffer for SkString::printf()Gravatar rileya@google.com2012-09-14
| | | | | | Review URL: https://codereview.appspot.com/6503120 git-svn-id: http://skia.googlecode.com/svn/trunk@5555 2bbb7eff-a529-9590-31e7-b0007b416f81
* For a picture playback with nothing written, use an empty SkData.Gravatar scroggo@google.com2012-09-14
| | | | | | | | | | This prevents crashing when attempting to access fOpData. BUG=https://code.google.com/p/skia/issues/detail?id=870 Review URL: https://codereview.appspot.com/6499108 git-svn-id: http://skia.googlecode.com/svn/trunk@5550 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix some nits from http://codereview.appspot.com/6506103/Gravatar rileya@google.com2012-09-14
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5547 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix fragile cubic stepper, where we want to assert that each tesselated segmentGravatar reed@google.com2012-09-14
| | | | | | | | | | | is monotonically going down, but the finite math we use cannot ensure that... so we explicitly pin the y-value after it is calculated. add unittest that exercises the bug/assert that was found on an SVG site git-svn-id: http://skia.googlecode.com/svn/trunk@5544 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2012-09-14
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5539 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix for gcc compile error. Unreviewed.Gravatar rileya@google.com2012-09-13
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5538 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add R-Tree record flag to SkPicture, plus some cleanup/fixes in associated ↵Gravatar rileya@google.com2012-09-13
| | | | | | | | classes. Review URL: https://codereview.appspot.com/6506103 git-svn-id: http://skia.googlecode.com/svn/trunk@5537 2bbb7eff-a529-9590-31e7-b0007b416f81
* Address warnings from clang build botGravatar robertphillips@google.com2012-09-13
| | | | | | | | http://codereview.appspot.com/6506111/ git-svn-id: http://skia.googlecode.com/svn/trunk@5518 2bbb7eff-a529-9590-31e7-b0007b416f81
* re-apply 5508, but with the new compile-flag disabled for nowGravatar reed@google.com2012-09-12
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5516 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make texteffects gm work through serialization and pipe.Gravatar scroggo@google.com2012-09-12
| | | | | | | | | | | | | | | Move Line2DPathEffect (now Sk_) into a separate header file so it can be shared and initialized. Switch to the shared version in SampleAll and SampleSlides. Remove the skip pipe flag from texteffects, since it can now be serialized. I have a separate change to turn serialization on by default at https://codereview.appspot.com/6498121/ Review URL: https://codereview.appspot.com/6503106 git-svn-id: http://skia.googlecode.com/svn/trunk@5512 2bbb7eff-a529-9590-31e7-b0007b416f81
* revert 5508 -- it broke most of the buildsGravatar reed@google.com2012-09-12
| | | | | | | | Use http://skia.googlecode.com/svn/buildbot/buildbots.html to see the state of the build. git-svn-id: http://skia.googlecode.com/svn/trunk@5511 2bbb7eff-a529-9590-31e7-b0007b416f81
* Using the device scale factor for glyph positioningGravatar wjmaclean@chromium.org2012-09-12
| | | | | | | | | | | | The master bug is http://code.google.com/p/chromium/issues/detail?id=138101 . The corresponding WebKit changes for this CL are here: https://bugs.webkit.org/show_bug.cgi?id=96137 BUG= Review URL: https://codereview.appspot.com/6506099 git-svn-id: http://skia.googlecode.com/svn/trunk@5508 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2012-09-12
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5504 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SkBBoxRecord subclass that builds up a BBoxHierarchy and PictureStateTree.Gravatar rileya@google.com2012-09-11
| | | | | | Review URL: https://codereview.appspot.com/6490104 git-svn-id: http://skia.googlecode.com/svn/trunk@5500 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix 5492.Gravatar bungeman@google.com2012-09-11
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5493 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reduce SkMaskGamma cache thrashing.Gravatar bungeman@google.com2012-09-11
| | | | | | | https://codereview.appspot.com/6497114/ git-svn-id: http://skia.googlecode.com/svn/trunk@5492 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make BBoxHierarchy ref-counted, fix leak in RTreeTest.Gravatar rileya@google.com2012-09-11
| | | | | | Review URL: https://codereview.appspot.com/6489108 git-svn-id: http://skia.googlecode.com/svn/trunk@5484 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add helper for maintaining clip/matrix state in non-contiguous picture playback.Gravatar rileya@google.com2012-09-11
| | | | | | Review URL: https://codereview.appspot.com/6509043 git-svn-id: http://skia.googlecode.com/svn/trunk@5483 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix bug in R-Tree bulk-load. Unreviewed.Gravatar rileya@google.com2012-09-10
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5468 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add optional aspect ratio parameter to R-Tree, this helps the bulk load ↵Gravatar rileya@google.com2012-09-10
| | | | | | | | algorithm create more square tiles. Review URL: https://codereview.appspot.com/6489102 git-svn-id: http://skia.googlecode.com/svn/trunk@5466 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2012-09-08
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5447 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix mask gamma rounding issues on x87.Gravatar bungeman@google.com2012-09-07
| | | | | | | | | https://codereview.appspot.com/6497091/ May require rebaselines. git-svn-id: http://skia.googlecode.com/svn/trunk@5446 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkPathRef: one allocation for pts+verbs, path GenID, copy-on-writeGravatar bsalomon@google.com2012-09-07
| | | | | | | | Review URL: https://codereview.appspot.com/6488063/ git-svn-id: http://skia.googlecode.com/svn/trunk@5433 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2012-09-07
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5425 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SkPictureRecord subclass that computes bounding boxes.Gravatar rileya@google.com2012-09-06
| | | | | | Review URL: https://codereview.appspot.com/6506082 git-svn-id: http://skia.googlecode.com/svn/trunk@5423 2bbb7eff-a529-9590-31e7-b0007b416f81
* Export SkPath equality operator.Gravatar wjmaclean@chromium.org2012-09-06
| | | | | | | | | | This change will allow external access to the SkPath equality operator. BUG=none Review URL: https://codereview.appspot.com/6500079 git-svn-id: http://skia.googlecode.com/svn/trunk@5418 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2012-09-06
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5410 2bbb7eff-a529-9590-31e7-b0007b416f81
* Record the initial matrix when we begin picture-playback, and concat withGravatar reed@google.com2012-09-05
| | | | | | | | that if we see a setMatrix command. In this way we can respect the caller's overall playback matrix environment. Review URL: https://codereview.appspot.com/6495092 git-svn-id: http://skia.googlecode.com/svn/trunk@5409 2bbb7eff-a529-9590-31e7-b0007b416f81
* Shut up some Mac (xcode 3) warningsGravatar bsalomon@google.com2012-09-05
| | | | | | | | Review URL: http://codereview.appspot.com/6503053/ git-svn-id: http://skia.googlecode.com/svn/trunk@5402 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add R-Tree data structure.Gravatar rileya@google.com2012-09-05
| | | | | | Review URL: https://codereview.appspot.com/6489055 git-svn-id: http://skia.googlecode.com/svn/trunk@5401 2bbb7eff-a529-9590-31e7-b0007b416f81
* Future proof luminance caches.Gravatar bungeman@google.com2012-09-04
| | | | | | | https://codereview.appspot.com/6495071/ git-svn-id: http://skia.googlecode.com/svn/trunk@5382 2bbb7eff-a529-9590-31e7-b0007b416f81
* truncate our llist w/ null during rewind.Gravatar reed@google.com2012-08-31
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5375 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2012-08-31
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5373 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove dead code and update a comment.Gravatar scroggo@google.com2012-08-30
| | | | | | | | | InlineFactoryNames_Flag is no longer used, so remove it and update the comment. Review URL: https://codereview.appspot.com/6492057 git-svn-id: http://skia.googlecode.com/svn/trunk@5348 2bbb7eff-a529-9590-31e7-b0007b416f81
* peephole optimize save/restore brackets that contain no draw calls.Gravatar reed@google.com2012-08-30
| | | | | | Review URL: https://codereview.appspot.com/6443149 git-svn-id: http://skia.googlecode.com/svn/trunk@5347 2bbb7eff-a529-9590-31e7-b0007b416f81