Currently this is possible by getting the canvas off of surface and then
getting the context off of the canvas. However, if in the future we wanted
a surface that didn't have a canvas (maybe something that looked like a
mutible image that only had a writePixels call), this would allow us to
still get the GrContext.
Bug: skia:10118
Change-Id: Ie8504bb708c1e4532edc8c7832ead86ae711e237
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289479
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
It turns out no one was using the intersection of rect functionality on
GrClip, and this helps simplify what the new clip stack needs to define.
Bug: skia:10205
Change-Id: If85a0c744dd68a8ad2f380b54a539ac74850e4ac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289440
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Supports marked matrices and srgb_unpremul colors
Change-Id: Icabd329758ac0a12ee323d73724d68c7927106c3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289242
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
We add a new flushAndSubmit() to replace the current flush() call. In
the future all other flush(GrFlushInfo) type calls will not do a
submission of work to the GPU. Instead an explicit submit call will have
to be made. flushAndSubmit will do a flush and submit.
Also adds a no-op submit call. This allows us to stage the flush submit
changes by updating all clients that use non simple flushes to add
a submit call immediately after each flush. Then we can change the logic
of where the submission happens from flush to submit without breaking
folks.
Bug: skia:10118
Change-Id: I4f02189a21912d52b888597c7734b4ca0baee792
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289478
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Change-Id: I2402394fa02d2e2e0957fe55e7c9088ddfeffcc2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289483
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Change-Id: Ic5786b995fdb439871f2e3ab94cd07a945de19af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288776
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This font comes up fairly often due to being included as a primary font
in css testing. There are several Paragraph samples which already assume
it is present at this location. It is fairly small and very liberally
licensed.
This font file is ahem.ttf from
https://www.w3.org/Style/CSS/Test/Fonts/Ahem/ .
Change-Id: I6fdcb036cecca66e725ecb30e0a07fef1dfb1cdf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289445
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Adds the verboseParagraph command line flag to Paragraph samples so that
the informative SkDebugf calls are not made during normal execution.
Also put everything possible into the anonymous namespace.
Change-Id: Idaeb6845e2d8f322fdd0b988441f092d276ffbf1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289441
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Change-Id: Iba79ed5d5116e2e3966e55f674249fa84636fe45
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289436
Auto-Submit: Adlai Holler <adlai@google.com>
Commit-Queue: Adlai Holler <adlai@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
9823d86a5a..3b82fdcf1c
git log 9823d86a5a40..3b82fdcf1c83 --date=short --first-parent --format='%ad %ae %s'
2020-05-13 timvp@google.com Revert "Add support for GL_CHROMIUM_texture_filtering"
2020-05-13 ianelliott@google.com Vulkan: Rename SurfaceRotationType to SurfaceRotation
2020-05-12 spang@chromium.org Revert "Vulkan: Add semaphores test to VulkanExternalImageTest"
2020-05-12 jmadill@chromium.org Vulkan: Add immediate scissored clears.
2020-05-12 spang@chromium.org Vulkan: Add semaphores test to VulkanExternalImageTest
2020-05-12 spang@chromium.org Enable validation layers in VulkanExternalHelper
2020-05-12 shrekshao@google.com Fix GetBooleani_v validation and params length for WebGL OES_draw_buffers_indexed
2020-05-12 geofflang@google.com GL: Use a valid internal format for CopyTexImage in BlitGL::blitColorBufferWithShader
2020-05-12 ianelliott@google.com Vulkan: Enhance ReadPixels to deal with pre-rotation
2020-05-12 lexa.knyazev@gmail.com Skip indexed clears on disabled draw buffers
2020-05-12 xinyi.he@arm.com Vulkan: Set maxShaderImageUniforms zero on some Mali GPUs
2020-05-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src bb279b9f0bda..fe0b6a61d732 (5 commits)
2020-05-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src b5f003d7a3ec..55f9d97f3b1e (2 commits)
2020-05-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 7b87548e5a63..d9ba4b7dd30b (1 commits)
Created with:
gclient setdep -r third_party/externals/angle2@3b82fdcf1c83
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 jlavrova@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/+/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: jlavrova@google.com
Change-Id: I8e2e6db4c5c6b32ed6cd58ae10f166484467b265
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289338
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
The plan is to create an AttachmentsDescriptor and AttachmentFlags from the GrProgramInfo in order to get a GrVkRenderPass which can be used to findOrCreate a PipelineState.
This is pulled out of:
https://skia-review.googlesource.com/c/skia/+/288462 ([Omnibus] Add program pre-compilation to Vulkan backend)
Bug: skia:9455
Change-Id: I5bc3f65f92cee50567b7bd2d5f2414628869c9b7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289222
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
drawPicture(..., paint)
If paint is non-null, drawPicture will always draw the picture into a
temp layer. Thus we should not blindly pass in a "filtered" paint unless
it will actually draw differently (other than the layer itself).
Side-effect: drawing into a layer is also much slower, so a 2nd reason
to not blindly pass in a non-null paint.
Change-Id: I766c0a129d3bb2882cab976fb2780ef9a09278ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289241
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
This reverts commit de228e53fe.
Reason for revert: GrReducedClip now assumes context isn't abandoned,
windowrectangles GM abuses GrReducedClip and has to be abandon-aware.
Original change's description:
> Revert "Refactor stencil clip mask generation into helper"
>
> This reverts commit 8b3a8a5238.
>
> Reason for revert: GM assert failure
>
> Original change's description:
> > Refactor stencil clip mask generation into helper
> >
> > Change-Id: If3dc80efde3b44e87ba8e7af3a258896ec5e78e6
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288977
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> > Reviewed-by: Chris Dalton <csmartdalton@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
>
> TBR=bsalomon@google.com,csmartdalton@google.com,michaelludwig@google.com
>
> Change-Id: I16559f791601145f57d147cdae345c200af313f1
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289237
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
# Not skipping CQ checks because this is a reland.
Change-Id: I6a9372edecd0bdc1a38464ab85f7b7f3ca85e5ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289239
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
This allows tracking of pre-compiled vs. inline-compiled pipelines.
This is pulled out of:
https://skia-review.googlesource.com/c/skia/+/288462 ([Omnibus] Add program pre-compilation to Vulkan backend)
Bug: skia:9455
Change-Id: I926b61c266c8d8b2ea4fb2b8aea35d308bac322b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289178
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
These changes just serve to muddy the water in the real CL.
This is pulled out of:
https://skia-review.googlesource.com/c/skia/+/288462 ([Omnibus] Add program pre-compilation to Vulkan backend)
Change-Id: I033ff7976ce0ee39e9e99b6dec1b80277f7c04ab
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289221
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Change-Id: If3dc80efde3b44e87ba8e7af3a258896ec5e78e6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288977
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Simplifies all the helpers. Also changed "override" to "post-concat", to
reflect what it's really doing (because we're going to need post-concat
soon anyway).
Change-Id: Iff388998407441c8df418a3c8464eb8f6aad0786
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289197
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
The code wasn't executed because we always reset pixelGeometry to
kUnknown_SkPixelGeometry unless kPreserveLCDText_SaveLayerFlag
(which has not been actually used yet) was specified.
The client should be responsible to use
kPreserveLCDText_SaveLayerFlag only when it's appropriate.
Bug: chromium:1076019
Change-Id: Ie2a559445c11cae63db20976cbedee269fca6b24
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289129
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
9f32304208..9823d86a5a
git log 9f32304208de..9823d86a5a40 --date=short --first-parent --format='%ad %ae %s'
2020-05-11 spang@chromium.org Fix EGLSurfaceTest.ResizeWindow on Fuchsia
2020-05-11 spang@chromium.org Skip swiftshader tests based on active GPU
2020-05-11 spang@chromium.org Vulkan: Use dedicated allocations in VulkanExternalHelper
2020-05-11 jmadill@chromium.org Capture/Replay: Regenerate glue if captures change.
2020-05-11 spang@chromium.org Vulkan: Add dedicated allocation support to MemoryObjectVk
2020-05-11 jmadill@chromium.org Trace/Replay: Always use Linux-style line endings.
2020-05-11 lehoangq@gmail.com Update spirv-cross to f38cbeb814c73510b85697adbe5e894f9eac978f.
2020-05-11 cclao@google.com Vulkan: Split barriers into multiple calls to ensure no extra dependency
2020-05-11 jmadill@chromium.org Update trace capture workflow doc.
2020-05-11 amaiorano@google.com Add support for GL_CHROMIUM_texture_filtering
2020-05-11 amy.liu@arm.com Vulkan: Fix texture copy from texture3d to texture2d or cubemap
2020-05-11 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 2dd864470e31..7b87548e5a63 (1 commits)
2020-05-11 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src 43ea8c0fdf49..bb279b9f0bda (14 commits)
Created with:
gclient setdep -r third_party/externals/angle2@9823d86a5a40
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 jlavrova@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/+/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: jlavrova@google.com
Change-Id: I07c13c7eda50883371c163fafbd03cdf2c40ef0d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289119
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This is a reland of bf1904fd48
Fix for case of scaling matrix and update GM to use a scaling
matrix.
Original change's description:
> Another fix for dash line thickness.
>
> Use the device space offset from the dash centerline for
> antialiasing in y direction.
>
> Bug: chromium:1049028
>
> Change-Id: Ib6363579680d05cbf1fe34795695422baeca7065
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288764
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
Bug: chromium:1049028
Change-Id: I6d2b04f9cf5de302c41045c2e2494cee43092d9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288976
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
It's just a shortcut for
Assembler::Label l;
a->label(&l);
and it never really took off.
It's easier to work on Label without it.
Change-Id: I4a060f78f235ac3fcc87b996f5d9404ffba43c53
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288997
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Bug: skia:10184
Change-Id: I6fd13b8ca36be6b84c816aa4978ec0bf31b399ae
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288910
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
It appears https://skia-review.googlesource.com/c/skia/+/288262 uncovered a driver bug.
Change-Id: I6aa27b68510c1b01fc140d0ff991e11bca6e6d86
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288905
Commit-Queue: Weston Tracey <westont@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Weston Tracey <westont@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
This reverts commit 83c6626946.
Reason for revert: technospark is failing to upload pixmaps to non base mip levels
Original change's description:
> Reland "Add api on GrContext to update the data of GrBackendTextures."
>
> This reverts commit 93ca54e0ac.
>
> Reason for revert: relanding with fix
>
> Original change's description:
> > Revert "Add api on GrContext to update the data of GrBackendTextures."
> >
> > This reverts commit ac09f7cd7a.
> >
> > Reason for revert: breaking bots, may need to use swizzled color for
> > correctness test
> >
> > Original change's description:
> > > Add api on GrContext to update the data of GrBackendTextures.
> > >
> > > Change-Id: I680f12bf58fc7b66a6b2f3fa4c4723ae84d3f949
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288555
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > Commit-Queue: Greg Daniel <egdaniel@google.com>
> >
> > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
> >
> > Change-Id: I47f41f536619ac13ca3ceeb216e7eaed9a9af255
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288630
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
>
> # Not skipping CQ checks because this is a reland.
>
> Change-Id: I82283b2437e523b80acead71c5f7c651180620db
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288631
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
Change-Id: I5d6614db8db59a69ded511726507a186596cfbd4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288907
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Prior to this change if a path started with two move-to verbs in a row
the error
Could not set path segments.
src\xps\SkXPSDevice.cpp(1265) : error 0x80004003: Invalid pointer
would be emitted. The issue is that IXpsOMGeometryFigure::SetSegments
returns E_POINTER if any of the pointers passed to it are nullptr even
if the counts are all 0. Since the IXpsOMGeometryFigure already contains
the starting point there is no need to add the empty segment.
In addition, this re-orders some code to always use segmentTypes,
segmentData, and segmentStrokes in that order (the order they are passed
to SetSegments) for consistency.
Change-Id: I1aa141516c883f9286a50ac265acbbebc039d348
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288635
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
This reverts commit 93ca54e0ac.
Reason for revert: relanding with fix
Original change's description:
> Revert "Add api on GrContext to update the data of GrBackendTextures."
>
> This reverts commit ac09f7cd7a.
>
> Reason for revert: breaking bots, may need to use swizzled color for
> correctness test
>
> Original change's description:
> > Add api on GrContext to update the data of GrBackendTextures.
> >
> > Change-Id: I680f12bf58fc7b66a6b2f3fa4c4723ae84d3f949
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288555
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
>
> Change-Id: I47f41f536619ac13ca3ceeb216e7eaed9a9af255
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288630
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
# Not skipping CQ checks because this is a reland.
Change-Id: I82283b2437e523b80acead71c5f7c651180620db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288631
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>