Commit Graph

45 Commits

Author SHA1 Message Date
senorblanco@chromium.org
194d775edc This patch implements a crop rect for SkImageFilter. It has been implemented for SkColorFilterImageFilter and SkBlurImageFilter as examples.
In order to preserve the immutability of SkImageFilters, the crop rect is passed as a constructor parameter. If NULL (the default), the bounds of the input image are used, as before.

This also tightens up the boundary handling for SkImageBlurFilter on the GPU backend. Where we were previously using clamping semantics, we now respect decal semantics (so we don't oversaturate the edges). This brings the GPU and raster backends into closer alignment, but will require some new baselines for the GPU tests.

At a minimum, the following tests will need new baselines: imageblur, imagefiltersbase, imagefilterscropped, spritebitmap.

R=reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=10251

Review URL: https://codereview.chromium.org/19775006

git-svn-id: http://skia.googlecode.com/svn/trunk@10338 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-24 22:19:24 +00:00
robertphillips@google.com
58c856a54a Reverting r10251 (Implement crop rect for SkImageFilter) due to Chromium-side unit test failures
git-svn-id: http://skia.googlecode.com/svn/trunk@10304 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-24 13:18:06 +00:00
senorblanco@chromium.org
ccf225cebb This patch implements a crop rect for SkImageFilter. It has been implemented for SkColorFilterImageFilter and SkBlurImageFilter as examples.
In order to preserve the immutability of SkImageFilters, the crop rect is passed as a constructor parameter. If NULL (the default), the bounds of the input image are used, as before.

This also tightens up the boundary handling for SkImageBlurFilter on the GPU backend. Where we were previously using clamping semantics, we now respect decal semantics (so we don't oversaturate the edges). This brings the GPU and raster backends into closer alignment, but will require some new baselines for the GPU tests.

At a minimum, the following tests will need new baselines: imageblur, imagefiltersbase, imagefilterscropped, spritebitmap.

R=reed@google.com

Review URL: https://codereview.chromium.org/19775006

git-svn-id: http://skia.googlecode.com/svn/trunk@10251 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-22 20:03:22 +00:00
skia.committer@gmail.com
eed625df23 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8059 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-09 07:01:15 +00:00
reed@google.com
c7d0ea3cd3 add asScalars() to document when we want to treat SkPoint or SkRect as an array
of SkScalars.
Review URL: https://codereview.chromium.org/12530010

git-svn-id: http://skia.googlecode.com/svn/trunk@8041 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-08 16:07:54 +00:00
skia.committer@gmail.com
e16efc1882 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-26 07:06:02 +00:00
skia.committer@gmail.com
43a6b6a046 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@7357 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 07:06:13 +00:00
reed@google.com
1d6cff7293 add alias for MakeFromIRect (just Make)
git-svn-id: http://skia.googlecode.com/svn/trunk@7340 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 15:37:56 +00:00
skia.committer@gmail.com
4d28d9889b Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@7240 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 07:06:06 +00:00
reed@google.com
6f54724c11 remove legacy build-flags for drawBitmapRect
add SkRect::isetWH()
Review URL: https://codereview.appspot.com/7127045

git-svn-id: http://skia.googlecode.com/svn/trunk@7221 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:15:24 +00:00
skia.committer@gmail.com
d9f7503e0c Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6362 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-09 02:01:24 +00:00
reed@google.com
6898d52c37 add centerX() and centerY() to SkIRect (because they made me)
Review URL: https://codereview.appspot.com/6826078

git-svn-id: http://skia.googlecode.com/svn/trunk@6360 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-08 22:36:19 +00:00
skia.committer@gmail.com
72b2e6fff3 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6344 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-08 02:03:56 +00:00
bsalomon@google.com
7b7cdd147f Some improvements to reduce the number of pixels touched in generating alpha clip masks
Review URL: https://codereview.appspot.com/6828043

git-svn-id: http://skia.googlecode.com/svn/trunk@6329 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-07 16:17:24 +00:00
reed@google.com
4d3038379d add more utilities: roundIn(), offsetTo()
git-svn-id: http://skia.googlecode.com/svn/trunk@6320 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-06 22:02:51 +00:00
reed@google.com
e1e7d7a6b5 add SkScalarsEqual() so we don't have to use memcmp for arrays of floats.
git-svn-id: http://skia.googlecode.com/svn/trunk@6226 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-31 19:59:23 +00:00
bsalomon@google.com
3ab43d5c5b Minimize use of SkDraw's matrix in SkGpuDevice.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6604068

git-svn-id: http://skia.googlecode.com/svn/trunk@5906 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-11 19:39:09 +00:00
rmistry@google.com
fbfcd56021 Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/)
This CL is part I of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6485054

git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 18:09:54 +00:00
reed@google.com
0bb18bb264 explicitly track if a path is finite or not
we need this (it appears) so we can definitively reject non-finite paths
in canvas, before passing them down into the guts.
Review URL: https://codereview.appspot.com/6453047

git-svn-id: http://skia.googlecode.com/svn/trunk@4784 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 15:20:36 +00:00
reed@google.com
0d10280190 We often rgn-diff an area >= the other rgn. now we detect that and return empty
We do this when we update our devices in SkCanvas.cpp
Review URL: https://codereview.appspot.com/6249073

git-svn-id: http://skia.googlecode.com/svn/trunk@4101 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 18:28:59 +00:00
reed@google.com
7b463acd46 speedup SkRect::isFinite() (almost 2x)
add SkRect:set(p0, p1) for quick bounds of 2 points



git-svn-id: http://skia.googlecode.com/svn/trunk@3967 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 13:35:36 +00:00
robertphillips@google.com
6623fcd1ee Convert AAClipCache's GrRects to GrIRects
http://codereview.appspot.com/6210057/



git-svn-id: http://skia.googlecode.com/svn/trunk@3942 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 16:47:23 +00:00
robertphillips@google.com
5d64068a36 Warn if return values from SkRect's Make* methods are ignored
http://codereview.appspot.com/6200060/



git-svn-id: http://skia.googlecode.com/svn/trunk@3894 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 14:50:44 +00:00
reed@google.com
d6195f956f add x() and y() aliases for fLeft and fTop (matching SkIRect)
git-svn-id: http://skia.googlecode.com/svn/trunk@3737 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-19 21:01:24 +00:00
reed@google.com
1607863b60 rename hasValidCoordinates to isFinite (on SkRect) and reimplement for speed
git-svn-id: http://skia.googlecode.com/svn/trunk@2811 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-06 18:56:37 +00:00
reed@google.com
f0f617a502 add SkRect::intersect(a, b), matching what was already available in SkIRect
git-svn-id: http://skia.googlecode.com/svn/trunk@2513 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-21 14:05:06 +00:00
reed@google.com
c74ab18130 add accessors to irect
git-svn-id: http://skia.googlecode.com/svn/trunk@2399 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-03 20:27:14 +00:00
bsalomon@google.com
e174ea4bb1 Fix some warnings when including some Skia headers in Chromium code under VS2008.
Review URL: http://codereview.appspot.com/4956058/



git-svn-id: http://skia.googlecode.com/svn/trunk@2209 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-01 15:34:14 +00:00
bsalomon@google.com
647a804c3d Core skia changes to prepare for Gr AA Hairline renderer
Review URL: http://codereview.appspot.com/4940045/



git-svn-id: http://skia.googlecode.com/svn/trunk@2160 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-08-23 14:39:01 +00:00
reed@google.com
099d22dbce add roundOut()
git-svn-id: http://skia.googlecode.com/svn/trunk@2019 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-08-01 20:53:19 +00:00
epoger@google.com
ec3ed6a5eb Automatic update of all copyright notices to reflect new license terms.
I have manually examined all of these diffs and restored a few files that
seem to require manual adjustment.

The following files still need to be modified manually, in a separate CL:

android_sample/SampleApp/AndroidManifest.xml
android_sample/SampleApp/res/layout/layout.xml
android_sample/SampleApp/res/menu/sample.xml
android_sample/SampleApp/res/values/strings.xml
android_sample/SampleApp/src/com/skia/sampleapp/SampleApp.java
android_sample/SampleApp/src/com/skia/sampleapp/SampleView.java
experimental/CiCarbonSampleMain.c
experimental/CocoaDebugger/main.m
experimental/FileReaderApp/main.m
experimental/SimpleCocoaApp/main.m
experimental/iOSSampleApp/Shared/SkAlertPrompt.h
experimental/iOSSampleApp/Shared/SkAlertPrompt.m
experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig
gpu/src/android/GrGLDefaultInterface_android.cpp
gyp/common.gypi
gyp_skia
include/ports/SkHarfBuzzFont.h
include/views/SkOSWindow_wxwidgets.h
make.bat
make.py
src/opts/memset.arm.S
src/opts/memset16_neon.S
src/opts/memset32_neon.S
src/opts/opts_check_arm.cpp
src/ports/SkDebug_brew.cpp
src/ports/SkMemory_brew.cpp
src/ports/SkOSFile_brew.cpp
src/ports/SkXMLParser_empty.cpp
src/utils/ios/SkImageDecoder_iOS.mm
src/utils/ios/SkOSFile_iOS.mm
src/utils/ios/SkStream_NSData.mm
tests/FillPathTest.cpp
Review URL: http://codereview.appspot.com/4816058

git-svn-id: http://skia.googlecode.com/svn/trunk@1982 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-28 14:26:00 +00:00
reed@google.com
b530ef5869 have == always return bool, never int
git-svn-id: http://skia.googlecode.com/svn/trunk@1915 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-20 19:55:42 +00:00
reed@google.com
4b4fb3a52c fully expand the initialization for rect (android compiler didn't like {0})
git-svn-id: http://skia.googlecode.com/svn/trunk@1336 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-16 18:24:19 +00:00
reed@google.com
af8edcc477 update dox
git-svn-id: http://skia.googlecode.com/svn/trunk@1318 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-12 22:31:01 +00:00
bsalomon@google.com
ee9aa30457 Fixes from Sk/Gr rect unification.
git-svn-id: http://skia.googlecode.com/svn/trunk@1288 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-09 22:32:52 +00:00
reed@google.com
20efde71b4 Share code with SkRect
http://codereview.appspot.com/4523046/



git-svn-id: http://skia.googlecode.com/svn/trunk@1277 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-09 17:00:02 +00:00
ctguil@chromium.org
7ffb1b21ab Add code needed to build skia as a windows dll within the chromium project.
- Export/import skia APIs if SKIA_DLL is defined.
- This change has no effect on skia.

Review URL: http://codereview.appspot.com/4282042

git-svn-id: http://skia.googlecode.com/svn/trunk@944 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-15 21:27:08 +00:00
reed@google.com
1d12b1fd66 add setXYWH to rects
new tests for circles



git-svn-id: http://skia.googlecode.com/svn/trunk@877 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-03 13:23:35 +00:00
wjmaclean@chromium.org
116b2bcd2c Proposed fix for crash in Cr70244.
git-svn-id: http://skia.googlecode.com/svn/trunk@764 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-07 17:48:37 +00:00
reed@android.com
097a351353 add SkRegion::setRects(), and its unit tests
git-svn-id: http://skia.googlecode.com/svn/trunk@588 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-07-13 18:35:14 +00:00
reed@android.com
2687ae05cb add more MakeFoo factories for SkRect
git-svn-id: http://skia.googlecode.com/svn/trunk@541 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-12 21:21:59 +00:00
reed@android.com
233481ebd0 add static Make methods to return rects
git-svn-id: http://skia.googlecode.com/svn/trunk@508 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-02-24 01:49:13 +00:00
reed@android.com
da6fb3246a more layers extracted from webkit
git-svn-id: http://skia.googlecode.com/svn/trunk@503 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-02-19 21:41:30 +00:00
reed@android.com
d457775787 add checks for exceeding 16bits, and apply those for glyphs in getMetrics()
git-svn-id: http://skia.googlecode.com/svn/trunk@441 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-11-21 02:48:11 +00:00
reed@android.com
8a1c16ff38 grab from latest android
git-svn-id: http://skia.googlecode.com/svn/trunk@27 2bbb7eff-a529-9590-31e7-b0007b416f81
2008-12-17 15:59:43 +00:00