SkFontDescriptor and its serialization and usage are updated to better
reflect how variations should be serialized. In addition this begins
teasing apart SkFontData since it is now mostly an artifact of how the
FreeType port works than anything else.
This also removes SkTypeface::MakeFromFontData since it is no longer
used and since SkFontData (which it takes as a parameter) was never
public. SkFontMgr::makeFromFontData now only exists to support older
skps and may be removed in the future.
Change-Id: I266bd5e87de85788661cdf5c571592ea1f2ae669
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307344
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
RRect needs 8 radii, 4 corners x XY, so should pass 8 values, not 4.
Change-Id: I997cbf2a61e6ffb32e4a13d5c95d16cb172152be
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307789
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
This is a reland of c2dc572a03
Original change's description:
> Revise GrMtlGpu::onUpdateBackendTexture.
>
> * Use main command buffer rather than a temporary
> * Use staging buffer for uploads
> * Set up finishedCallback
>
> Bug: skia:10530
> Change-Id: I73dbf1466ec4a48de8c1dcb741fa1bb6de1cd554
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307230
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
Bug: skia:10530
Change-Id: Ie7e4d5d939a59c42e2e0689b0eac099fa0e640e7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307785
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
This reverts commit aed15a701a.
Reason for revert: some devices don't have "stat"
Original change's description:
> [recipes] Verify that we actually deleted the file/dir on android
>
> Bug: skia:10539
> Change-Id: I3b51ef8c0106ac439f14a7f0ff61c8b88c7152ff
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305957
> Reviewed-by: Ravi Mistry <rmistry@google.com>
> Reviewed-by: Kevin Lubick <kjlubick@google.com>
> Commit-Queue: Eric Boren <borenet@google.com>
TBR=borenet@google.com,rmistry@google.com,kjlubick@google.com
Change-Id: I0c03c3ec581cb52829c51891f81c59b900625c50
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10539
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307787
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Change-Id: I68bb6bb239074d7cf657f56acf6c970771af62f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307717
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Bug: skia:10539
Change-Id: I3b51ef8c0106ac439f14a7f0ff61c8b88c7152ff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305957
Reviewed-by: Ravi Mistry <rmistry@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Prevents invalid types from making it to the pipeline stage generator,
when it's too late to do anything.
Bug: oss-fuzz:24542
Change-Id: I8b6fa2afd5d586b0e60bea82e0ec4f3ae43de973
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307656
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Previously one could not color text with paints, even though TextStyle's foregroundColor and
backgroundColor fields are SkPaints. Canvaskit only exposed these as colors in order to allow
SimpleTextStyle to be a value object that would not have to be deleted by the user.
CanvasKit.Paint is a bound SkPaint. I wanted to allow a user to pass a paint to be used
in a text style without alterting SimpleTextStyle's status as a value-object.
So I've added a new bound method, pushPaintStyle which acts just like pushStyle but allows
a foreground and background paint to be supplied which are used to override the existing paints.
The user is responsible for deleting these paints.
Sorry for the kludgy design, if you have got a more elegant way, I'm open to suggestions.
Change-Id: Ib78464171346fe9f717f6d5b9d9428b1d0278498
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307596
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Change-Id: I6709963bae0c69e17f651e9688201f11ceae844e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307700
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
41442cce3d..709472c9dd
2020-08-04 m.maiya@samsung.com Vulkan: Fix variable scope bug during vkCreateInstance
2020-08-03 jmadill@chromium.org Vulkan: Add an overlay counter for descriptor writes.
2020-08-03 jmadill@chromium.org Vulkan: Move Resource Serial gen into Renderer.
2020-08-03 jmadill@chromium.org Trace Tests: Disable timestamp queries.
2020-08-03 jonahr@google.com Metal: Enable EGL_KHR_surfaceless_context.
2020-08-03 nguyenmh@google.com Add vertex array serialization capability
2020-08-03 m.maiya@samsung.com Capture/Replay: Account for EGL_KHR_no_config_context
2020-08-03 nguyenmh@google.com Add texture serialization capability
2020-08-03 lehoangq@gmail.com Metal: Implement EGL_ANGLE_iosurface_client_buffer.
2020-08-03 lehoangq@gmail.com Metal: Enable end2end tests on Intel.
2020-08-03 jonahr@google.com Add entry points for OES/EXT_texture_buffer
2020-08-03 cclao@google.com Vulkan: Set depthStencil loadOp to DontCare when not used and stored
2020-08-03 jmadill@chromium.org Capture/Replay: Use vector for resource maps.
2020-08-03 lehoangq@gmail.com Metal: Fix Intel's LOD clamp and blit shader's filtering.
2020-08-03 jmadill@chromium.org Vulkan: Remove ImageHelper::mSerial.
2020-08-03 jmadill@chromium.org Trace Tests: Scale results based on frames in capture.
2020-08-03 jmadill@chromium.org Vulkan: Clean up ScopedDescriptorSetUpdates.
2020-08-03 nguyenmh@google.com Add shaders and programs serialization capability
2020-08-03 jmadill@chromium.org Rename RenderPass test to performance counter test.
2020-08-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-ValidationLayers from 71573c7f64cb to c967a2ddf18b (8 revisions)
2020-08-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll glslang from 7ab4564696a7 to 928b7b26bd73 (1 revision)
2020-08-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from 2aaa8653da4f to b78f4b1518e0 (2 revisions)
2020-08-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from aa5bd7657e6c to 4568d8587998 (1 revision)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC herb@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: herb@google.com
Change-Id: Ic81a5016beb711e93c491290eab56dd649045e99
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307740
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This reverts commit c2dc572a03.
Reason for revert: Breaking ASAN bot.
Original change's description:
> Revise GrMtlGpu::onUpdateBackendTexture.
>
> * Use main command buffer rather than a temporary
> * Use staging buffer for uploads
> * Set up finishedCallback
>
> Bug: skia:10530
> Change-Id: I73dbf1466ec4a48de8c1dcb741fa1bb6de1cd554
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307230
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
TBR=jvanverth@google.com,robertphillips@google.com
Change-Id: Ia20a007942194e8127dff09769fcff5fdef26199
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10530
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307704
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Change-Id: I2ea97fa2fed83fde49155189cd31fee877cd4a69
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307698
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
This adds support for things like "foo.xxx1", which is equivalent to
"float4(foo, foo, foo, 1)".
Change-Id: Id52111917e30d7dd8ba2e0633074b64d7ac6c72a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306727
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Use main command buffer rather than a temporary
* Use staging buffer for uploads
* Set up finishedCallback
Bug: skia:10530
Change-Id: I73dbf1466ec4a48de8c1dcb741fa1bb6de1cd554
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307230
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Make the rect in the AtlasLocator account for the padding for the different types of atlas entries.
Change-Id: I53ccc1c2aa7c7811379f3bb8555cd9e7060fddf2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307300
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Fixes a bug with alpha-only image shaders not being modulated by paint
alpha (demonstrated by included GM). Compose shaders were the only
thing relaying on the old behavior, so make those manually unpremul the
input color, with a comment explaining the rationale.
This makes runtime shaders (and other new FPs) simpler to reason about:
sampling a child shader always produces a premul color, even if that
child is null (eg, the input color).
Bug: skia:10556
Change-Id: Ie629a9129d04ea80dae0b263c3811ca754202aab
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306947
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
The majority of existing call sites were automatically updated using
clang-tidy -fix. A small handful required a manual update,
e.g. CppCodeGen.
This check is a bit lenient, and in particular will not flag cases like
`std::unique_ptr<Base>(new Derived())` which is still pretty common
throughout our codebase. This CL does not attempt to replace all the
cases that ClangTidy does not flag.
Change-Id: I5eba48ef880e25d22de80f321a68c389ba769e36
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307459
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Change-Id: I027b5e4a8ab737047e9fcd16be8b7597644c7dd6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307569
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
We never hit a case where uniforms are large enough to need a uniform
buffer, and we don't support any API version older than iOS 9.0 so the
backup interfaces aren't needed.
Bug: skia:10530
Change-Id: Ia5e2d61243033d30d9010b8890cd7a4fd796cb21
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307219
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
This is a recent addition to GN that Dawn takes advantages of but which
Skia's GN toolchain didn't implement yet.
Bug:
Change-Id: I7a592bd4663db5c9726767bedf46c38d9c86ed2e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307576
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Change-Id: Ibb296dde9a412bf7f9de23f08cd4db700843729f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307557
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Putting the entire body of the function into a header risks an ODR
violation.
Change-Id: I6d32df195049058f781defc2aace23a2bbd66150
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307559
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Need to notify the underlying pathref if we've made oval or rrect
Bug: skia:9000
Change-Id: I57a801f1fb446b99634d7b028249a812a5a978f1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307516
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
I'm hoping that updating depot_tools will fix the Chromium -> Skia roll.
Change-Id: I9bb581e88e4bbffe3ad68adf794e662b76622710
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307137
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
cbd5bee81d..41442cce3d
2020-08-01 syoussefi@chromium.org Autogenerated changes for GL_EXT_multisampled_render_to_texture2
2020-07-31 jmadill@chromium.org Vulkan: Add RenderPass count test.
2020-07-31 cclao@google.com Vulkan: Avoid clearWithClearAttachment if RP command buffer is empty
2020-07-31 syoussefi@chromium.org Fix validation of glFramebufferTexture2DMultisampleEXT
2020-07-31 cclao@google.com Vulkan: Make CommandBufferHelper::empty() logic less obtuse
2020-07-31 nguyenmh@google.com Add renderbuffer serialization capability
2020-07-31 jmadill@chromium.org Trace Tests: Fix Win/x86 crash.
2020-07-31 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 08a3cc4cfbaa to aa5bd7657e6c (3 revisions)
2020-07-31 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-ValidationLayers from 4400cab64b22 to 71573c7f64cb (8 revisions)
2020-07-31 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from c6e6597c4f51 to 2aaa8653da4f (5 revisions)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC herb@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: chromium:1111764
Tbr: herb@google.com
Change-Id: Ib8fc6bf3010522986e011132113ba4e313a58e4a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307485
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
https://clang.llvm.org/extra/clang-tidy/checks/misc-definitions-in-headers.html
Finds non-extern non-inline function and variable definitions in header
files, which can lead to potential ODR violations in case these headers
are included from multiple translation units.
Change-Id: I5a80d8bddbc7fae97a3b714ac4e376bcefc3b060
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307436
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
https://clang.llvm.org/extra/clang-tidy/checks/readability-redundant-preprocessor.html
-----
Finds potentially redundant preprocessor directives.
- #ifdef .. #endif pairs which are nested inside an outer pair with the
same condition. For example:
```
#ifdef FOO
#ifdef FOO // inner ifdef is considered redundant
void f();
#endif
#endif
```
- #ifndef .. #endif pairs
- #ifndef inside an #ifdef with the same condition
- #ifdef inside an #ifndef with the same condition:
- #if .. #endif pairs which are nested inside an outer pair with the
same condition.
Change-Id: Ic1c745c0755a985e34f77a398686bf36f310acf2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307343
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Gradient colorizers are now sampled via explicit coordinates instead of
by passing coordinate data in a color channel. This change caused the
GrTextureGradientColorizer to become a no-op/passthrough effect.
Change-Id: I5233c93914716cac186b0ea8f5a3698746a89742
Bug: skia:10548
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307298
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
The Y coordinate isn't meant to be interpreted as a coordinate. It's
used as a side channel for the discard signal.
Change-Id: Idbdd470c78c49a8b0a28eb05a93905c95b3282d1
Bug: skia:10548
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/307297
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>