Go to file
Christopher Cameron 186a295111 Change Metal to not take ownership of objects
Prior to this change, Skia/Metal interfaces take ownership of the Metal
objects passed in (that is, the caller should count passing the object
to Skia as "freeing" the object).

Change this behavior so that Skia/Metal retains its own separate
ownership of the Metal objects.

Make GrBackendTexture and GrBackendRenderTarget maintain their own
references to the underlying MTLTexture by using the CFRetain/CFRelease
interfaces. Do this by adding a private GrMtlBackendSurfaceInfo.

Move GrMtlBackendSurfaceInfo (formerly GrMtlTextureInfo) out of the
union in GrBackendTexture and GrBackendRenderTarget because unions
cannot have nontrivial constructors and destructors (how fVkInfo isn't
causing a compile error is unclear).

Change-Id: Iae3719c0715825d86503d03c766e47f0f6015bdf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215685
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-05-25 01:53:25 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Move SkLeanWindows.h to src. 2019-05-21 13:48:00 +00:00
bin SkQP: new docker test code 2019-04-19 18:50:03 +00:00
dm add SkNamedTransferFn::kRec2020 2019-05-24 16:03:03 +00:00
docker Include wasm debugger in continuous build part 2 2019-04-01 19:51:43 +00:00
docs/examples Use SkTextEncoding enum instead of macros. 2019-05-07 20:54:16 +00:00
example Use SkTextEncoding enum instead of macros. 2019-05-07 20:54:16 +00:00
experimental update SkUserConfig.h a bit 2019-05-20 17:52:22 +00:00
fuzz Use SkFontHinting instead of macros. 2019-05-08 12:16:37 +00:00
gm split RGB into YUV planes 2019-05-23 19:57:30 +00:00
gn Change Metal to not take ownership of objects 2019-05-25 01:53:25 +00:00
include Change Metal to not take ownership of objects 2019-05-25 01:53:25 +00:00
infra Roll recipe dependencies (trivial). 2019-05-25 00:59:15 +00:00
modules Reland "Active layer excludes outPoint" 2019-05-24 23:25:17 +00:00
platform_tools rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
resources [skottie] Add kBottom text alignment extension 2019-05-24 15:28:01 +00:00
samplecode Remove Nima from DEPS, experiments, Viewer, etc. 2019-05-16 17:02:11 +00:00
site rewrite docs to explicitly use python2 2019-05-13 19:21:47 +00:00
specs [img-decode] Start on proposed new spec 2019-05-06 17:39:19 +00:00
src Change Metal to not take ownership of objects 2019-05-25 01:53:25 +00:00
tests Add "GrMipMapped" parameter to visitProxies 2019-05-24 21:28:11 +00:00
third_party Roll skia/third_party/skcms fb9fa4a9a009..5b8149aaf52b (1 commits) 2019-05-24 19:35:58 +00:00
tools Change Metal to not take ownership of objects 2019-05-25 01:53:25 +00:00
.clang-format restore .clang-format 2019-03-21 15:52:32 +00:00
.clang-tidy add google-build-namespaces to clang-tidy checks 2018-12-12 16:33:59 +00:00
.gitignore clean up some .gitignores 2019-05-15 19:55:45 +00:00
.gn Basic standalone GN configs. 2016-07-21 12:25:45 -07:00
AUTHORS Fix use of 'is' operator for comparison 2019-05-07 14:22:15 +00:00
BUILD.gn remove -ffp-contract 2019-05-22 16:29:09 +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 third_party/externals/angle2 8224a58b4749..e794ddc8a662 (5 commits) 2019-05-24 05:36:20 +00:00
go.mod [infra] Pin infra code using Go modules 2019-05-06 17:53:19 +00:00
go.sum [infra] Pin infra code using Go modules 2019-05-06 17:53:19 +00:00
LICENSE BUG=skia:5602 2016-09-02 11:19:34 -07:00
OWNERS add OWNERS file 2017-12-01 19:50:19 +00:00
PRESUBMIT.py add mtklein to api approvals 2019-04-02 15:16:56 +00:00
public.bzl Revert "Revert "Experimental SkVideoDecoder, to wrap calls to ffmpeg"" 2019-05-17 21:25:48 +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
whitespace.txt Whitespace test 2019-05-18 13:05:29 +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.