Go to file
Michael Ludwig 54d9447b6a Reland "Fill intermediate device image with clamped backdrop content"
This reverts commit 35ac48c715.

Reason for revert: guarded needs_subset

Original change's description:
> Revert "Fill intermediate device image with clamped backdrop content"
>
> This reverts commit 25f5e1f838.
>
> Reason for revert: needs_subset is unused for no-gpu+release builds
>
> Original change's description:
> > Fill intermediate device image with clamped backdrop content
> >
> > Adds asShader() to SkSpecialImage that accepts a local matrix and a
> > tilemode. It automatically handles the subsetting of the image data
> > (either by making a new bitmap view, or using GrTexturEffect), as well
> > as modifying the local matrix to account for the subset's offset within
> > the image data.
> >
> > By adding asShader(), SkCanvas can fill a device using drawPaint() to
> > apply the image's tilemode to the entire contents, ensuring that any
> > device bounds clipping from snapping of backdrop filters doesn't leave
> > the default transparent pixels around for later filtering.
> >
> > Additionally, making SkSpecialImage more like a shader will make it
> > easier down the road to continue refactoring the image filter pipeline
> > to be more backend agnostic and allow operations to be performed by
> > filling devices with shaders, instead of relying on FPs directly.
> >
> > Lastly, once SkImage::makeShader() can support subsets on the raster
> > backend, then SkSpecialImage may not be required at all in order to
> > implement the image filtering pipeline...
> >
> > Bug: b/197774543, skia:12784
> > Change-Id: I21dcb22b56b19ff58d246b3c0517bb8a265649bc
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/491445
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
>
> Bug: b/197774543, skia:12784
> Change-Id: Ia9adedaab9378d2679353ab94c7a9589c0ff9e02
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/491978
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

Bug: b/197774543, skia:12784
Change-Id: I6034e4ddbe4f6da476d058a78f85f4e2bb6742fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/492116
Reviewed-by: Brian Salomon <bsalomon@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-01-07 14:45:56 +00:00
animations
bazel Set up basic hello world sk_app 2022-01-06 20:29:35 +00:00
bench Re-enable blend micro benchs for non raster backends. 2022-01-05 16:24:48 +00:00
bin [sk] Update asset download references to use SK 2021-09-17 16:55:53 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Add Abseil dependency for Dawn 2021-09-22 22:05:32 +00:00
client_utils/android Make class members that are static constexpr also be inline. 2021-10-11 16:22:59 +00:00
demos.skia.org [demos] Add WebGPU demo using origin trial 2021-10-08 16:35:34 +00:00
dm [graphite] Move Recorder and Recording to public include. 2021-12-02 16:49:12 +00:00
docker Make out/Static/obj accessible for fiddler autodeployment 2022-01-06 21:32:19 +00:00
docs/examples Use angle brackets for system includes 2021-11-22 17:03:11 +00:00
example Set up basic hello world sk_app 2022-01-06 20:29:35 +00:00
experimental [graphite] Add UniquePaintParamsID 2022-01-07 13:27:54 +00:00
fuzz SkSL: Add color transform intrinsics 2021-12-28 14:05:49 +00:00
gm Add support for multiple child nodes to SkImageFilters::RuntimeShader 2022-01-05 20:07:00 +00:00
gn Revert "drawVertices in GPU backend uses drawVustomMesh implementation." 2022-01-07 14:12:16 +00:00
include Update Bazel files 2022-01-06 18:10:57 +00:00
infra [infra] Deploy debugger with Bazel 2022-01-05 13:18:15 +00:00
modules Set up basic hello world sk_app 2022-01-06 20:29:35 +00:00
platform_tools Reduce scope of SkQP to pass/fail runs of GMs and UnitTests 2022-01-04 18:07:48 +00:00
resources Test: duplicate fields in the same struct allowed 2022-01-06 19:40:50 +00:00
samplecode Fix when a glyph has a path 2021-12-07 14:58:29 +00:00
site Fix links & titles on all text API articles 2022-01-06 21:23:20 +00:00
specs [infra] Port serve.py from Python2 to 3 2021-08-31 15:28:19 +00:00
src Reland "Fill intermediate device image with clamped backdrop content" 2022-01-07 14:45:56 +00:00
tests [graphite] Add UniquePaintParamsID 2022-01-07 13:27:54 +00:00
third_party Update Bazel files 2022-01-06 18:10:57 +00:00
toolchain [infra] Add initial Bazel rules and files 2021-11-09 12:32:25 +00:00
tools Revert "drawVertices in GPU backend uses drawVustomMesh implementation." 2022-01-07 14:12:16 +00:00
.bazelrc [infra] Add SkParagraph (harfbuzz, ICU) to Canvaskit Bazel build. 2021-11-30 21:01:06 +00:00
.bazelversion [infra] Add Bazel rules for codecs. 2021-11-11 20:10:01 +00:00
.clang-format no more bin packing in .clang-format 2021-03-04 17:22:50 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore Add .vscode to the default gitignore list. 2021-10-13 15:23:02 +00:00
.gn Pre-emptive fix for upcoming ANGLE change. 2021-01-08 17:23:52 +00:00
.vpython [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
AUTHORS Reland "Enable non-standalone builds with dawn" 2021-11-15 20:52:41 +00:00
BUILD.bazel Update Bazel files 2022-01-06 18:10:57 +00:00
BUILD.gn Reduce scope of SkQP to pass/fail runs of GMs and UnitTests 2022-01-04 18:07:48 +00:00
codereview.settings Make uploading to Gerrit the default for Skia 2016-11-09 19:07:56 +00:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS Roll ANGLE from fd0142714ee5 to 2ebdd23b6040 (15 revisions) 2022-01-07 05:36:45 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
go_repositories.bzl [bazel] Add go/gazelle to WORKSPACE and use c++ extension. 2021-11-23 20:00:15 +00:00
go.mod Add new g3_canary_infra_failure metric 2021-12-21 20:30:25 +00:00
go.sum Add new g3_canary_infra_failure metric 2021-12-21 20:30:25 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
OWNERS [infra] Add wildcard OWNERS 2021-08-30 19:19:34 +00:00
PRESUBMIT.py Remove AUTHORS check from PRESUBMIT.py 2021-09-30 14:12:18 +00:00
public.bzl [infra] Fix globs in public.bzl 2021-11-24 15:53:30 +00:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
RELEASE_NOTES.txt Add support for multiple child nodes to SkImageFilters::RuntimeShader 2022-01-05 20:07:00 +00:00
whitespace.txt Test SkCQ 2021-07-24 21:07:28 +00:00
WORKSPACE.bazel Update Bazel files 2022-01-06 18:10:57 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.