aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
Commit message (Collapse)AuthorAge
* Move GrGLInterface function pointers into a nested structGravatar commit-bot@chromium.org2014-01-21
| | | | | | | | | | | BUG=skia:2042 R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/133073009 git-svn-id: http://skia.googlecode.com/svn/trunk@13130 2bbb7eff-a529-9590-31e7-b0007b416f81
* Scope our ANNOTATE_BENIGN_RACE.Gravatar commit-bot@chromium.org2014-01-21
| | | | | | | | | | | | | | | This should unstick the DEPS roll. When building with TSAN, Chromium's pulling in the canonical one from dynamic_annotations.h, and we're trying to redefine it. R=robertphillips@google.com, reed@google.com, bsalomon@google.com TBR=reed@google.com BUG= Author: mtklein@google.com Review URL: https://codereview.chromium.org/144063002 git-svn-id: http://skia.googlecode.com/svn/trunk@13129 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make leak counters thread-safe and turn them on by default for DebugGravatar commit-bot@chromium.org2014-01-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make leak counters implemented with SK_DECLARE_INST_COUNT thread-safe. Enable the leak counting for Debug builds when Skia is built as a static library. Having SK_DECLARE_INST_COUNT without SK_DEFINE_INST_COUNT relies on static variables in member functions declared in the header files. These might be duplicated in the clients of the library when Skia is built as a dynamic library, producing incorrect operation. Protect the instance counter initialization step (initStep) by using SkOnce. Makes SkOnce.h part of the public API, since SkInstCnt is public. Protect the per-class child list shared variable with a per-class mutex. Changes the behavior in the way that if the child list has been "cleaned up", it will still try to create subsequent child lists. BUG=skia:1219 R=robertphillips@google.com, mtklein@google.com, bsalomon@google.com, bungeman@google.com, djsollen@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/99483003 git-svn-id: http://skia.googlecode.com/svn/trunk@13120 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding SK_API to SkGLContextHelper and SkNullGLContext for use in blink unit ↵Gravatar commit-bot@chromium.org2014-01-17
| | | | | | | | | | | | | test component build BUG=skia: R=bsalomon@chromium.org Author: junov@chromium.org Review URL: https://codereview.chromium.org/141813002 git-svn-id: http://skia.googlecode.com/svn/trunk@13119 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move GrGLExtensions from GrGLContextInfo to GrGLInterfaceGravatar commit-bot@chromium.org2014-01-17
| | | | | | | | | | | BUG=skia:2042 R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/140823003 git-svn-id: http://skia.googlecode.com/svn/trunk@13118 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove GR_GL_IGNORE_ES3_MSAA.sGravatar commit-bot@chromium.org2014-01-16
| | | | | | | | | | R=jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/140933005 git-svn-id: http://skia.googlecode.com/svn/trunk@13115 2bbb7eff-a529-9590-31e7-b0007b416f81
* Allow GrGLInterface factories in Chromium to continue to compile.Gravatar commit-bot@chromium.org2014-01-16
| | | | | | | | | | | BUG=skia:2042 TBR=jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/136573003 git-svn-id: http://skia.googlecode.com/svn/trunk@13112 2bbb7eff-a529-9590-31e7-b0007b416f81
* Rename GrGLBinding->GrGLStandard, no longer a bitfieldGravatar commit-bot@chromium.org2014-01-16
| | | | | | | | | | | BUG=skia:2042 R=jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/133413003 git-svn-id: http://skia.googlecode.com/svn/trunk@13108 2bbb7eff-a529-9590-31e7-b0007b416f81
* SK_API SkMallocPixelRefGravatar commit-bot@chromium.org2014-01-16
| | | | | | | | | | | | Motivation: make https://codereview.chromium.org/138393002/ work. R=reed@google.com, djsollen@google.com, bsalomon@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/135853019 git-svn-id: http://skia.googlecode.com/svn/trunk@13106 2bbb7eff-a529-9590-31e7-b0007b416f81
* Factor out UnPreMultiplyPreservingByteOrderGravatar commit-bot@chromium.org2014-01-15
| | | | | | | | | | | BUG= R=reed@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/130303005 git-svn-id: http://skia.googlecode.com/svn/trunk@13103 2bbb7eff-a529-9590-31e7-b0007b416f81
* no need to refcnt colortables, since pixelrefs own themGravatar reed@google.com2014-01-15
| | | | | | | | | BUG=skia: R=halcanary@google.com, scroggo@google.com Review URL: https://codereview.chromium.org/139463007 git-svn-id: http://skia.googlecode.com/svn/trunk@13098 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make GrGLInterface be context-specific on all platformsGravatar commit-bot@chromium.org2014-01-15
| | | | | | | | | | | BUG=skia:2042 R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/137753005 git-svn-id: http://skia.googlecode.com/svn/trunk@13097 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-01-15
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13083 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement a resize image filter. This is needed for the "filterRes" feature ↵Gravatar senorblanco@chromium.org2014-01-15
| | | | | | | | | | | | | | | | | in SVG filter effects, which specifies the required size for intermediate processing buffers. In order to make this work, we need to render the primitive at the given resolution (doable at the callsite in Blink), and then to resize the result to the actual on-screen size. The latter is where this filter comes in. It simply applies a scaling factor (and the current CTM) to its input, and draws its input bitmap at that size. R=reed@google.com Committed: https://code.google.com/p/skia/source/detail?r=13077 Reverted: https://code.google.com/p/skia/source/detail?r=13078 BUG= Review URL: https://codereview.chromium.org/136863006 git-svn-id: http://skia.googlecode.com/svn/trunk@13082 2bbb7eff-a529-9590-31e7-b0007b416f81
* use some helper Make functions to initialize SkImageInfoGravatar commit-bot@chromium.org2014-01-15
| | | | | | | | | | | BUG= R=halcanary@google.com, scroggo@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/137993012 git-svn-id: http://skia.googlecode.com/svn/trunk@13081 2bbb7eff-a529-9590-31e7-b0007b416f81
* Deprecate two more functions using SK_ATTR_DEPRECATED macro.Gravatar tfarina@chromium.org2014-01-15
| | | | | | | | | | BUG=None TEST=None R=reed@google.com, scroggo@google.com Review URL: https://codereview.chromium.org/136973007 git-svn-id: http://skia.googlecode.com/svn/trunk@13079 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Implement a resize image filter."Gravatar senorblanco@chromium.org2014-01-14
| | | | | | | | | | This reverts commit 3f996e31c7043929fc1553b9b5ecd6a82b5fe125 (r13077). TBR=reed Review URL: https://codereview.chromium.org/136793012 git-svn-id: http://skia.googlecode.com/svn/trunk@13078 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement a resize image filter. This is needed for the "filterRes" feature ↵Gravatar senorblanco@chromium.org2014-01-14
| | | | | | | | | | | | in SVG filter effects, which specifies the required size for intermediate processing buffers. In order to make this work, we need to render the primitive at the given resolution (doable at the callsite in Blink), and then to resize the result to the actual on-screen size. The latter is where this filter comes in. It simply applies a scaling factor (and the current CTM) to its input, and draws its input bitmap at that size. R=reed@google.com Review URL: https://codereview.chromium.org/136863006 git-svn-id: http://skia.googlecode.com/svn/trunk@13077 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Make leak counters thread-safe and turn them on by default for Debug"Gravatar djsollen@google.com2014-01-14
| | | | | | | | | | iThis CL is breaking the Android debug test bots by firing an assert. BUG=skia:1219 Review URL: https://codereview.chromium.org/138683006 git-svn-id: http://skia.googlecode.com/svn/trunk@13076 2bbb7eff-a529-9590-31e7-b0007b416f81
* Convert SkWriter32 to use an SkTDArray for its internal storage.Gravatar commit-bot@chromium.org2014-01-14
| | | | | | | | | | | | | | | | | | | | | | | | This reduces the allocation overhead of a null picture (create, beginRecording(), endRecording) from about 18K to about 1.9K. (There's still lots more to prune.) SkPictureFlat can exploit the fact that Writer32 is contiguous simplify its memory management. The Writer32 itself becomes the scratch buffer. Remove lots and lots of arbitrary magic numbers that were size guesses and minimum allocation sizes. Keep your eyes open for the big obvious DUH why we save 16K per picture! (Spoiler alert. It's because that first save we issue in beginRecording() forces the old SkWriter32 to allocate 16K.) Tests passing, DM passing. bench --match writer: ~20% faster null bench_record: ~30% faster bench_record on buildbot .skps: ~3-6% slower, ranging 25% faster to 20% slower bench_pictures on buildbot .skps: ~1-2% faster, ranging 13% faster to 28% slower BUG=skia:1850 R=reed@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/137433003 git-svn-id: http://skia.googlecode.com/svn/trunk@13073 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make leak counters thread-safe and turn them on by default for DebugGravatar commit-bot@chromium.org2014-01-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | Make leak counters implemented with SK_DECLARE_INST_COUNT thread-safe. Enable the leak counting for Debug builds. Protect the instance counter initialization step (initStep) by using SkOnce. Makes SkOnce.h part of the public API, since SkInstCnt is public. Protect the per-class child list shared variable with a per-class mutex. Changes the behavior in the way that if the child list has been "cleaned up", it will still try to create subsequent child lists. BUG=skia:1219 Committed: http://code.google.com/p/skia/source/detail?r=12635 R=robertphillips@google.com, mtklein@google.com, bsalomon@google.com, bungeman@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/99483003 git-svn-id: http://skia.googlecode.com/svn/trunk@13068 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove drawPosTextOnPath() from SkDevice API.Gravatar tfarina@chromium.org2014-01-13
| | | | | | | | | | | | | | | All clients were updated including Chrome, so we can remove this now from Skia. This was committed on Chromium at https://src.chromium.org/viewvc/chrome?view=rev&revision=244287 BUG=skia:1834 R=reed@google.com Review URL: https://codereview.chromium.org/135583002 git-svn-id: http://skia.googlecode.com/svn/trunk@13059 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of https://codereview.chromium.org/132643007/Gravatar commit-bot@chromium.org2014-01-13
| | | | | | | | | | | | | | | Reason for revert: broken tests TBR= NOTREECHECKS=true NOTRY=true BUG= Author: reed@google.com Review URL: https://codereview.chromium.org/134843008 git-svn-id: http://skia.googlecode.com/svn/trunk@13058 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Revert of https://codereview.chromium.org/129423002/"Gravatar reed@google.com2014-01-13
| | | | | | | | | | | | fixed new api references in unit tests This reverts commit ffc0058e1fbcbd69617e1f41b2dce5b5765ff99e. BUG= Review URL: https://codereview.chromium.org/132643007 git-svn-id: http://skia.googlecode.com/svn/trunk@13057 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of https://codereview.chromium.org/129423002/Gravatar commit-bot@chromium.org2014-01-13
| | | | | | | | | | | | | | | | Reason for revert: broke tests (compile) R=scroggo@google.com, halcanary@google.com TBR=halcanary@google.com, scroggo@google.com NOTREECHECKS=true NOTRY=true BUG= Author: reed@google.com Review URL: https://codereview.chromium.org/137133003 git-svn-id: http://skia.googlecode.com/svn/trunk@13056 2bbb7eff-a529-9590-31e7-b0007b416f81
* add SkBitmap::installPixelRef()Gravatar reed@google.com2014-01-13
| | | | | | | | | BUG= R=scroggo@google.com Review URL: https://codereview.chromium.org/129423002 git-svn-id: http://skia.googlecode.com/svn/trunk@13055 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove (now dead code) for SK_SUPPORT_LEGACY_COLORTYPE and ↵Gravatar reed@google.com2014-01-13
| | | | | | | | | | SK_SUPPORT_LEGACY_ALPHATYPE BUG= Review URL: https://codereview.chromium.org/135033002 git-svn-id: http://skia.googlecode.com/svn/trunk@13043 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove remaining references to Sk64 (obsolete)Gravatar reed@google.com2014-01-13
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/136673002 git-svn-id: http://skia.googlecode.com/svn/trunk@13042 2bbb7eff-a529-9590-31e7-b0007b416f81
* Handle drawBitmapRect src_rect->dst_rect mapping as a local matrix rather ↵Gravatar commit-bot@chromium.org2014-01-13
| | | | | | | | | | | | | than view matrix when there is a mask filter. BUG=skia:1998 R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/131323004 git-svn-id: http://skia.googlecode.com/svn/trunk@13041 2bbb7eff-a529-9590-31e7-b0007b416f81
* Pull in Chromium's version of GatherPixelRefsGravatar robertphillips@google.com2014-01-13
| | | | | | | | https://codereview.chromium.org/134473002/ git-svn-id: http://skia.googlecode.com/svn/trunk@13038 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove (now unused) Sk64 -- just use int64_tGravatar reed@google.com2014-01-10
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/134373006 git-svn-id: http://skia.googlecode.com/svn/trunk@13032 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reduce verbosity of SkGraphics::Init in default case.Gravatar halcanary@google.com2014-01-10
| | | | | | | | | | | | | | | | | SkGraphics::Init() now checks to see if there are any non-default runtime configuration options before announcing that it is about to print out the non-default runtime configuration options. This makes the executables in tools/ less verbose. Add SkRTConfRegistry::countNonDefault() function. BUG= R=mtklein@google.com, reed@google.com Review URL: https://codereview.chromium.org/133583003 git-svn-id: http://skia.googlecode.com/svn/trunk@13017 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix race on creating the default typeface.Gravatar bungeman@google.com2014-01-09
| | | | | | | | | BUG=skia:1906 R=mtklein@google.com, reed@google.com Review URL: https://codereview.chromium.org/113543005 git-svn-id: http://skia.googlecode.com/svn/trunk@12993 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-01-09
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12980 2bbb7eff-a529-9590-31e7-b0007b416f81
* Rename GPU functions on SkBlurMaskFilter and pass ctm.Gravatar commit-bot@chromium.org2014-01-08
| | | | | | | | | | R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/109823012 git-svn-id: http://skia.googlecode.com/svn/trunk@12978 2bbb7eff-a529-9590-31e7-b0007b416f81
* use SkImageInfo directly, instead of converting to SkBitmap::ConfigGravatar reed@google.com2014-01-08
| | | | | | | | | BUG= R=scroggo@google.com Review URL: https://codereview.chromium.org/128933004 git-svn-id: http://skia.googlecode.com/svn/trunk@12972 2bbb7eff-a529-9590-31e7-b0007b416f81
* Use a spinlock in SkOnce.Gravatar commit-bot@chromium.org2014-01-08
| | | | | | | | | | | | | | | | | SkOnceFlag is now statically initializable on all platforms. Also adds sk_atomic_cas, used to implement new SkSpinlock. Going to punt on making SkOnceFlag any smaller (for now, it's 8 bytes). We could conceivably get it down to two bits, one for done and one for a one-bit spinlock (we'd need atomic-& and atomic-| to make that work, but they appear to be available everywhere). BUG=skia:1929 R=bungeman@google.com, reed@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/123093002 git-svn-id: http://skia.googlecode.com/svn/trunk@12968 2bbb7eff-a529-9590-31e7-b0007b416f81
* change offset to xy for pixelref subsettingGravatar reed@google.com2014-01-08
| | | | | | | | | BUG= R=scroggo@google.com Review URL: https://codereview.chromium.org/105893012 git-svn-id: http://skia.googlecode.com/svn/trunk@12958 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add AlphaThreshold filter.Gravatar commit-bot@chromium.org2014-01-06
| | | | | | | | | | | | | This is based on the Bitmap Alpha Threshold filter, and will be used by Chromium to implement the window shape API. R=bsalomon@chromium.org, wez@chromium.org, bsalomon@google.com, reed@google.com Author: zork@chromium.org Review URL: https://codereview.chromium.org/115633002 git-svn-id: http://skia.googlecode.com/svn/trunk@12935 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove SK_SUPPORTED_DEPRECATED_FIXEDROUND, no longer neededGravatar reed@google.com2014-01-06
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12918 2bbb7eff-a529-9590-31e7-b0007b416f81
* Renamed JsCanvas to JsContext and moved into it's own file.Gravatar commit-bot@chromium.org2014-01-06
| | | | | | | | | | | | | Fleshed out a lot of the Path interface. BUG= R=robertphillips@google.com, tfarina@chromium.org, reed@google.com Author: jcgregorio@google.com Review URL: https://codereview.chromium.org/121303004 git-svn-id: http://skia.googlecode.com/svn/trunk@12913 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Revert "Revert "Revert of https://codereview.chromium.org/110593003/"""Gravatar reed@google.com2014-01-06
| | | | | | | | | | This reverts commit aaa89649590323fe40f52439d9a9a3376bb3b8ae. BUG= Review URL: https://codereview.chromium.org/123223007 git-svn-id: http://skia.googlecode.com/svn/trunk@12910 2bbb7eff-a529-9590-31e7-b0007b416f81
* add rowBytes param to setPreLock, in prep for onNewLockPixels changeGravatar reed@google.com2014-01-06
| | | | | | | | | | need _win.cc change from https://codereview.chromium.org/124503002/ when this lands in chrome R=robertphillips@google.com Review URL: https://codereview.chromium.org/125063002 git-svn-id: http://skia.googlecode.com/svn/trunk@12907 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Revert "Revert of https://codereview.chromium.org/110593003/""Gravatar reed@google.com2014-01-06
| | | | | | | | | | This reverts commit 0fef787f33aa38109a0c8427e0098d997efdd5ff. failed in chrome: https://codereview.chromium.org/124503002/ Review URL: https://codereview.chromium.org/105523008 git-svn-id: http://skia.googlecode.com/svn/trunk@12906 2bbb7eff-a529-9590-31e7-b0007b416f81
* SK_SUPPORTED_DEPRECATED_FIXEDROUND around deprecated fixed[round,ceil,floor]Gravatar mike@reedtribe.org2014-01-06
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12903 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-01-04
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12901 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make SkImageFilter crop rects relative to the primitive origin, instead of ↵Gravatar senorblanco@chromium.org2014-01-03
| | | | | | | | | | | | | | | | | | relative to their parent's crop rect. This is required by SVG semantics, and is more sane anyway. To do this, this patch changes the "offset/loc" parameter in filterImage() / onFilterImage() from an inout-param to an out-param only, so that the calling filter can know how much the input filter wants its result offset (and doesn't include the original primitive position). This offset can then be applied to the current filter's crop rect. (I've renamed the parameter "offset" in all cases to make this clear.) This makes the call sites in SkCanvas/SkGpuDevice responsible for applying the resulting offset to the primitive's position, which is actually a fairly small change. This change also fixes SkTileImageFilter and SkOffsetImageFilter to correctly handle an input offset, which they weren't before. This required modifying the GM's, since they assumed the broken behaviour. NOTE: this will require rebaselining the imagefiltersgraph test, since it has a new test case. NOTE: this will "break" the Blink layout tests css3/filters/effect-reference-subregion-chained-hw.html and css3/filters/effect-reference-subregion-hw.html, but it actually makes them give correct results. It should be suppressed on the skia roll, and I'll rebaseline it. R=reed@google.com Review URL: https://codereview.chromium.org/112803004 git-svn-id: http://skia.googlecode.com/svn/trunk@12895 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Revert of https://codereview.chromium.org/110593003/"Gravatar reed@google.com2014-01-03
| | | | | | | | | | | | This reverts commit c7abb25b25ba8b97948371d2bf0a2e3e78468f73. and fixes the ashmem break BUG= Review URL: https://codereview.chromium.org/119753010 git-svn-id: http://skia.googlecode.com/svn/trunk@12887 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of https://codereview.chromium.org/110593003/Gravatar commit-bot@chromium.org2014-01-03
| | | | | | | | | | | | | | | | Reason for revert: SkImageRef_ashmem doesn't compile R=halcanary@google.com, scroggo@google.com TBR=halcanary@google.com, scroggo@google.com NOTREECHECKS=true NOTRY=true BUG= Author: reed@google.com Review URL: https://codereview.chromium.org/119753009 git-svn-id: http://skia.googlecode.com/svn/trunk@12884 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add onNewLockPixels, that returns rowbytes and relies on info in pixelrefGravatar reed@google.com2014-01-03
| | | | | | | | | | | This reverts commit 890a6ec633c1f54891104a072a8964b4c2c81af9. BUG= R=scroggo@google.com Review URL: https://codereview.chromium.org/110593003 git-svn-id: http://skia.googlecode.com/svn/trunk@12883 2bbb7eff-a529-9590-31e7-b0007b416f81