aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
Commit message (Collapse)AuthorAge
* rm obsolete build-flag SK_IGNORE_HAIRLINE_CLIP_FIXGravatar reed@google.com2012-03-30
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3567 2bbb7eff-a529-9590-31e7-b0007b416f81
* check for integer-nan (0x8000...) and don't draw those as antihairlinesGravatar reed@google.com2012-03-30
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3558 2bbb7eff-a529-9590-31e7-b0007b416f81
* Cleanup code related to SkFlattenable::flatten()Gravatar djsollen@google.com2012-03-29
| | | | | | | | | | | | | | | | | The following changes were made by this CL: 1. Make flatten() a protected method as callers should use SkFlattenableWriteBuffer to flatten an object 2. Make flatten a const method (including subclasses) 3. Mark subclass implementation of flatten with SK_OVERRIDE 4. Ensure overridden flatten impls call their parent 5. Remove no-op implementations of flatten from subclasses Additionally, if necessary the unflattening constructor was also moved to the protected section of the subclasses header if it was not already there. git-svn-id: http://skia.googlecode.com/svn/trunk@3540 2bbb7eff-a529-9590-31e7-b0007b416f81
* Consolidate PixelRef flattables with the standard implGravatar djsollen@google.com2012-03-28
| | | | | | | | | | The flatten method on these functions can no longer be const as SkFlattenables declaration is not const and would result in the const methods only being called when the reference to the object was const. Review URL: https://codereview.appspot.com/5941043 git-svn-id: http://skia.googlecode.com/svn/trunk@3533 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix a bunch of Coverity defects - class members not initialized in the ↵Gravatar vandebo@chromium.org2012-03-28
| | | | | | | | | | constructor. CID=14533,14036,9275,9271,4156,4153,4151,1666,1665,1618,1617,1616,1615 Review URL: https://codereview.appspot.com/5940049 git-svn-id: http://skia.googlecode.com/svn/trunk@3532 2bbb7eff-a529-9590-31e7-b0007b416f81
* handle null-device correctly in setDeviceGravatar reed@google.com2012-03-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3518 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix a memory leak in SkAAClip::translate().Gravatar tomhudson@google.com2012-03-28
| | | | | | | | | | Originally proposed by Jochen Eisinger. http://codereview.appspot.com/5934053/ git-svn-id: http://skia.googlecode.com/svn/trunk@3517 2bbb7eff-a529-9590-31e7-b0007b416f81
* add debuggin matrix-proc to validate its output before calling the samplersGravatar reed@google.com2012-03-27
| | | | | | Review URL: https://codereview.appspot.com/5901063 git-svn-id: http://skia.googlecode.com/svn/trunk@3505 2bbb7eff-a529-9590-31e7-b0007b416f81
* Create macro for registering classes for deserializationGravatar djsollen@google.com2012-03-26
| | | | | | Review URL: https://codereview.appspot.com/5909063 git-svn-id: http://skia.googlecode.com/svn/trunk@3494 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make use of the functions in the flattenable reader/writerGravatar djsollen@google.com2012-03-26
| | | | | | Review URL: https://codereview.appspot.com/5905066 git-svn-id: http://skia.googlecode.com/svn/trunk@3493 2bbb7eff-a529-9590-31e7-b0007b416f81
* Cleanup Macros arround static initializers for SkFlattenable.Gravatar djsollen@google.com2012-03-23
| | | | | | | This CL also removes an unused debugging function from the class Review URL: https://codereview.appspot.com/5890043 git-svn-id: http://skia.googlecode.com/svn/trunk@3483 2bbb7eff-a529-9590-31e7-b0007b416f81
* apply imagefilter to all draw callsGravatar reed@google.com2012-03-23
| | | | | | Review URL: https://codereview.appspot.com/5856048 git-svn-id: http://skia.googlecode.com/svn/trunk@3476 2bbb7eff-a529-9590-31e7-b0007b416f81
* Initialize margin, which was being used uninitialized in compute_bounds()Gravatar tomhudson@google.com2012-03-23
| | | | | | | | | | | | on some code paths we apparently aren't exercising. Caught by Matt Woodrow & gwright@kde.org http://codereview.appspot.com/5519056/ http://code.google.com/p/skia/issues/detail?id=435 git-svn-id: http://skia.googlecode.com/svn/trunk@3474 2bbb7eff-a529-9590-31e7-b0007b416f81
* Upstream changes from Android repository.Gravatar djsollen@google.com2012-03-21
| | | | | | Review URL: https://codereview.appspot.com/5752055 git-svn-id: http://skia.googlecode.com/svn/trunk@3449 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move SkClampRange into src/effects, where it isn't being advertised asGravatar tomhudson@google.com2012-03-20
| | | | | | | | | | something for end-users. http://codereview.appspot.com/5864044/ git-svn-id: http://skia.googlecode.com/svn/trunk@3445 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix scaling issue when drawing text on a path.Gravatar djsollen@google.com2012-03-20
| | | | | | | | If the paint is stroked and the font size is small we were incorrectly rendering the sample text. Review URL: https://codereview.appspot.com/5844060 git-svn-id: http://skia.googlecode.com/svn/trunk@3437 2bbb7eff-a529-9590-31e7-b0007b416f81
* add optional updateMatrixClip param to getTopDevice(). Chrome should set thisGravatar reed@google.com2012-03-19
| | | | | | | | | only when it is needed, and in doing so it can stop using the layeriter just to get its top device. git-svn-id: http://skia.googlecode.com/svn/trunk@3432 2bbb7eff-a529-9590-31e7-b0007b416f81
* Another fix to r3423, reinstate blitter code that was commented out forGravatar tomhudson@google.com2012-03-19
| | | | | | | | testing and apparently isn't exercised by any of our GMs or tests. git-svn-id: http://skia.googlecode.com/svn/trunk@3427 2bbb7eff-a529-9590-31e7-b0007b416f81
* (SSE2) acceleration for rectangular opaque erases.Gravatar tomhudson@google.com2012-03-19
| | | | | | | | | | 15% speedup for rectangles < 31 px wide, 5% for larger. http://codereview.appspot.com/5843050/ git-svn-id: http://skia.googlecode.com/svn/trunk@3423 2bbb7eff-a529-9590-31e7-b0007b416f81
* add IRect variant of getBounds()Gravatar reed@google.com2012-03-16
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3414 2bbb7eff-a529-9590-31e7-b0007b416f81
* add getBounds() helperGravatar reed@google.com2012-03-15
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3409 2bbb7eff-a529-9590-31e7-b0007b416f81
* don't clamp the stopScale to 0 unless it originally exceeded the clip. This isGravatar reed@google.com2012-03-15
| | | | | | | | | a tweak on the fix in 3366, but in that earlier change, I mistakenly changed > to >=. This CL just restores the compare to > git-svn-id: http://skia.googlecode.com/svn/trunk@3400 2bbb7eff-a529-9590-31e7-b0007b416f81
* tweak gm bounds to better fit the contentGravatar reed@google.com2012-03-14
| | | | | | | | | remove assert that is too strict if the src is the dst of a prev draw (where alpha might be 0xFE, even if it *should* be 0xFF) git-svn-id: http://skia.googlecode.com/svn/trunk@3388 2bbb7eff-a529-9590-31e7-b0007b416f81
* add kUTF32_TextEncodingGravatar reed@google.com2012-03-14
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3387 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix four memory leaks uncovered by valgrinding gm tests.Gravatar vandebo@chromium.org2012-03-14
| | | | | | | | | | | | | All are triggered by PDF code. Two are missing unref's on SkData. One is a missing unref on a SkAdvancedTypefaceMetrics. The last is missing destruction of SkClipStack internal state. BUG=526 Review URL: https://codereview.appspot.com/5824049 git-svn-id: http://skia.googlecode.com/svn/trunk@3386 2bbb7eff-a529-9590-31e7-b0007b416f81
* enable fractionalint (64bit) math in bitmap procsGravatar reed@google.com2012-03-14
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3381 2bbb7eff-a529-9590-31e7-b0007b416f81
* add build option to revert hairline-clipping fix from 3366Gravatar reed@google.com2012-03-13
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3376 2bbb7eff-a529-9590-31e7-b0007b416f81
* if we are extending past our clip in antihairlines, don't draw that lastGravatar reed@google.com2012-03-12
| | | | | | | | | row/col (setting its scale to 0), so we don't violate the clip-rule and possibly double-draw the last pixel. git-svn-id: http://skia.googlecode.com/svn/trunk@3366 2bbb7eff-a529-9590-31e7-b0007b416f81
* detect all masks, and don't use masksuperblitter with thoseGravatar reed@google.com2012-03-12
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3364 2bbb7eff-a529-9590-31e7-b0007b416f81
* don't flip the fractional bits (low 4) for bilerp when in kMirror_TileModeGravatar reed@google.com2012-03-09
| | | | | | Review URL: https://codereview.appspot.com/5795043 git-svn-id: http://skia.googlecode.com/svn/trunk@3357 2bbb7eff-a529-9590-31e7-b0007b416f81
* If we try to clip against a path and the path only contains a rect, treat it ↵Gravatar tomhudson@google.com2012-03-09
| | | | | | | | | | | | | | as a clip against a rect. (Works around a performance issue: JavaScript Canvas2D API only provides canvas.clipPath(), and we don't optimize path clips nearly as much as we can rects; this shows up more in Ganesh than in the software rasterizer.) http://codereview.appspot.com/5795044/ git-svn-id: http://skia.googlecode.com/svn/trunk@3355 2bbb7eff-a529-9590-31e7-b0007b416f81
* disable 64bit opt for now, as I debug skew failure in DRTGravatar reed@google.com2012-03-08
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3349 2bbb7eff-a529-9590-31e7-b0007b416f81
* apply FractionalInt improvement to rotatedGravatar reed@google.com2012-03-08
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3348 2bbb7eff-a529-9590-31e7-b0007b416f81
* use higher precision (64bit) fixed-point for matrix procGravatar reed@google.com2012-03-07
| | | | | | Review URL: https://codereview.appspot.com/5772044 git-svn-id: http://skia.googlecode.com/svn/trunk@3336 2bbb7eff-a529-9590-31e7-b0007b416f81
* SSSE3 code for drawing rotated bitmaps; produces 25-30% speedup.Gravatar tomhudson@google.com2012-03-06
| | | | | | | | | | Courtesy of Jin Yang. http://codereview.appspot.com/5704055/ git-svn-id: http://skia.googlecode.com/svn/trunk@3331 2bbb7eff-a529-9590-31e7-b0007b416f81
* Erode and dilate image filter effects, CPU and GPU implementations.Gravatar senorblanco@chromium.org2012-03-02
| | | | | | | | Review URL: http://codereview.appspot.com/5656067/ git-svn-id: http://skia.googlecode.com/svn/trunk@3310 2bbb7eff-a529-9590-31e7-b0007b416f81
* move the post cleanup of the rec until after we wack it for maskfilterGravatar reed@google.com2012-03-01
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3297 2bbb7eff-a529-9590-31e7-b0007b416f81
* add experimental files to encapsulate device-level font settingsGravatar reed@google.com2012-03-01
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3292 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix edgecase in chopcubic where we computed duplicate tvaluesGravatar reed@google.com2012-02-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3285 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix bug and add test for aaclip when blitV is calledGravatar reed@google.com2012-02-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3281 2bbb7eff-a529-9590-31e7-b0007b416f81
* move SKPaint's defaults (that might be configurable) into a headerGravatar reed@google.com2012-02-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3280 2bbb7eff-a529-9590-31e7-b0007b416f81
* handle checking for large bounds correctly when SkScalar is fixedGravatar reed@google.com2012-02-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3274 2bbb7eff-a529-9590-31e7-b0007b416f81
* SSE2 version of ClampX_ClampY_{no}filter_affine, courtesy of Jin Yang.Gravatar tomhudson@google.com2012-02-28
| | | | | | | | | | Speeds up drawing rotated bitmaps by 20-30%. http://codereview.appspot.com/5700076/ git-svn-id: http://skia.googlecode.com/svn/trunk@3272 2bbb7eff-a529-9590-31e7-b0007b416f81
* since SkScalarCeil/Floor do not explicitly detect overflows from float->int,Gravatar reed@google.com2012-02-28
| | | | | | | | | | create special version of roundOut that checks if the result can fit, and if not we abort the draw. 32bits (or 30 for antialiasing) should be enough for anyone... git-svn-id: http://skia.googlecode.com/svn/trunk@3271 2bbb7eff-a529-9590-31e7-b0007b416f81
* Disable check for large bounds in antipathGravatar reed@google.com2012-02-27
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3267 2bbb7eff-a529-9590-31e7-b0007b416f81
* reapply r3259 (that was reverted) with fix.Gravatar djsollen@google.com2012-02-27
| | | | | | | The SkASSERT was incorrect and failing on debug runs. Review URL: https://codereview.appspot.com/5699071 git-svn-id: http://skia.googlecode.com/svn/trunk@3263 2bbb7eff-a529-9590-31e7-b0007b416f81
* Modify SkDeferredCanvas so that it uses its inherited SkCanvas to track ↵Gravatar junov@chromium.org2012-02-24
| | | | | | | | | | | | | | matrix and clipping state Removed 'virtual' from a few canvas methods that no longer need it thanks to this change. BUG=http://code.google.com/p/skia/issues/detail?id=506 TEST=Canvas unit test REVIEW=http://codereview.appspot.com/5697052/ git-svn-id: http://skia.googlecode.com/svn/trunk@3261 2bbb7eff-a529-9590-31e7-b0007b416f81
* reverting r3259 because of gm/test failure.Gravatar djsollen@google.com2012-02-24
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3260 2bbb7eff-a529-9590-31e7-b0007b416f81
* Enable quickRejectY in SkCanvas to be inlined.Gravatar djsollen@google.com2012-02-24
| | | | | | | | | This CL was tested against the picturePlayback bench and showed an approx 10-13% improvement on Android when playing back text. Review URL: https://codereview.appspot.com/5687083 git-svn-id: http://skia.googlecode.com/svn/trunk@3259 2bbb7eff-a529-9590-31e7-b0007b416f81
* reverting r3257 because of gm failure.Gravatar junov@chromium.org2012-02-24
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3258 2bbb7eff-a529-9590-31e7-b0007b416f81