@shopify/react-native-skia 2.2.21 → 2.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/CMakeLists.txt +0 -3
 - package/android/cpp/rnskia-android/RNSkAndroidPlatformContext.h +4 -1
 - package/apple/RNSkApplePlatformContext.mm +21 -12
 - package/cpp/api/JsiSkCanvas.h +3 -21
 - package/cpp/api/JsiSkImage.h +8 -2
 - package/cpp/api/JsiSkPath.h +1 -1
 - package/cpp/api/JsiSkPathFactory.h +1 -1
 - package/cpp/api/JsiSkSVG.h +4 -1
 - package/cpp/api/JsiSkSVGFactory.h +127 -8
 - package/cpp/skia/include/android/AHardwareBufferUtils.h +3 -0
 - package/cpp/skia/include/android/GrAHardwareBufferUtils.h +0 -4
 - package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +0 -4
 - package/cpp/skia/include/android/SkImageAndroid.h +1 -0
 - package/cpp/skia/include/codec/SkCodec.h +23 -2
 - package/cpp/skia/include/codec/SkPngRustDecoder.h +30 -0
 - package/cpp/skia/include/core/SkBitmap.h +1 -1
 - package/cpp/skia/include/core/SkCPURecorder.h +5 -0
 - package/cpp/skia/include/core/SkCanvas.h +2 -0
 - package/cpp/skia/include/core/SkColorSpace.h +11 -12
 - package/cpp/skia/include/core/SkContourMeasure.h +6 -2
 - package/cpp/skia/include/core/SkExecutor.h +18 -0
 - package/cpp/skia/include/core/SkFont.h +26 -19
 - package/cpp/skia/include/core/SkImage.h +4 -66
 - package/cpp/skia/include/core/SkImageGenerator.h +0 -5
 - package/cpp/skia/include/core/SkMatrix.h +84 -120
 - package/cpp/skia/include/core/SkMilestone.h +1 -1
 - package/cpp/skia/include/core/SkPath.h +390 -395
 - package/cpp/skia/include/core/SkPathBuilder.h +64 -34
 - package/cpp/skia/include/core/SkPathEffect.h +12 -5
 - package/cpp/skia/include/core/SkPathIter.h +90 -0
 - package/cpp/skia/include/core/SkPathMeasure.h +5 -1
 - package/cpp/skia/include/core/SkPathTypes.h +7 -3
 - package/cpp/skia/include/core/SkPathUtils.h +20 -13
 - package/cpp/skia/include/core/SkRRect.h +7 -11
 - package/cpp/skia/include/core/SkRecorder.h +12 -0
 - package/cpp/skia/include/core/SkRect.h +33 -8
 - package/cpp/skia/include/core/SkRegion.h +14 -3
 - package/cpp/skia/include/core/SkScalar.h +0 -12
 - package/cpp/skia/include/core/SkShader.h +20 -7
 - package/cpp/skia/include/core/SkStrokeRec.h +2 -1
 - package/cpp/skia/include/core/SkTypeface.h +8 -10
 - package/cpp/skia/include/core/SkTypes.h +4 -0
 - package/cpp/skia/include/encode/SkJpegEncoder.h +5 -10
 - package/cpp/skia/include/encode/SkPngEncoder.h +8 -7
 - package/cpp/skia/include/encode/SkPngRustEncoder.h +88 -0
 - package/cpp/skia/include/encode/SkWebpEncoder.h +5 -10
 - package/cpp/skia/include/gpu/graphite/BackendSemaphore.h +5 -2
 - package/cpp/skia/include/gpu/graphite/BackendTexture.h +5 -2
 - package/cpp/skia/include/gpu/graphite/Context.h +15 -2
 - package/cpp/skia/include/gpu/graphite/ContextOptions.h +26 -0
 - package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +75 -0
 - package/cpp/skia/include/gpu/graphite/Recorder.h +15 -6
 - package/cpp/skia/include/gpu/graphite/Recording.h +0 -3
 - package/cpp/skia/include/gpu/graphite/mtl/MtlBackendContext.h +2 -0
 - package/cpp/skia/include/gpu/graphite/precompile/PaintOptions.h +3 -7
 - package/cpp/skia/include/gpu/graphite/precompile/PrecompileBase.h +2 -10
 - package/cpp/skia/include/gpu/graphite/precompile/PrecompileImageFilter.h +1 -6
 - package/cpp/skia/include/gpu/graphite/precompile/PrecompileMaskFilter.h +1 -5
 - package/cpp/skia/include/gpu/graphite/precompile/PrecompileShader.h +16 -3
 - package/cpp/skia/include/gpu/vk/VulkanPreferredFeatures.h +3 -0
 - package/cpp/skia/{modules/pathops/include → include/pathops}/SkPathOps.h +49 -20
 - package/cpp/skia/include/ports/SkFontMgr_FontConfigInterface.h +2 -1
 - package/cpp/skia/include/ports/SkFontMgr_android.h +0 -4
 - package/cpp/skia/include/ports/SkFontMgr_android_ndk.h +4 -2
 - package/cpp/skia/include/ports/SkFontMgr_fontconfig.h +0 -3
 - package/cpp/skia/include/private/SkEncodedInfo.h +73 -54
 - package/cpp/skia/include/private/SkHdrMetadata.h +173 -0
 - package/cpp/skia/include/private/SkPathRef.h +117 -146
 - package/cpp/skia/include/private/base/SkTemplates.h +74 -32
 - package/cpp/skia/include/utils/SkParsePath.h +9 -1
 - package/cpp/skia/modules/skcms/src/Transform_inl.h +53 -7
 - package/cpp/skia/modules/skcms/src/skcms_Transform.h +2 -0
 - package/cpp/skia/modules/skcms/src/skcms_internals.h +8 -0
 - package/cpp/skia/modules/skottie/include/TextShaper.h +4 -0
 - package/cpp/skia/modules/skparagraph/include/FontCollection.h +1 -1
 - package/cpp/skia/modules/skparagraph/include/ParagraphStyle.h +7 -1
 - package/cpp/skia/modules/skparagraph/include/TextStyle.h +12 -0
 - package/cpp/skia/modules/sksg/include/SkSGGeometryEffect.h +26 -0
 - package/cpp/skia/modules/sksg/include/SkSGPath.h +1 -1
 - package/cpp/skia/modules/skunicode/include/SkUnicode.h +11 -1
 - package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +7 -11
 - package/cpp/skia/modules/svg/include/SkSVGCircle.h +1 -1
 - package/cpp/skia/modules/svg/include/SkSVGEllipse.h +1 -2
 - package/cpp/skia/modules/svg/include/SkSVGFe.h +0 -1
 - package/cpp/skia/modules/svg/include/SkSVGFeLightSource.h +0 -1
 - package/cpp/skia/modules/svg/include/SkSVGFeLighting.h +0 -1
 - package/cpp/skia/modules/svg/include/SkSVGLine.h +1 -1
 - package/cpp/skia/modules/svg/include/SkSVGNode.h +11 -10
 - package/cpp/skia/modules/svg/include/SkSVGPath.h +1 -1
 - package/cpp/skia/modules/svg/include/SkSVGPattern.h +4 -3
 - package/cpp/skia/modules/svg/include/SkSVGPoly.h +1 -1
 - package/cpp/skia/modules/svg/include/SkSVGRadialGradient.h +0 -1
 - package/cpp/skia/modules/svg/include/SkSVGRect.h +1 -2
 - package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +5 -5
 - package/cpp/skia/modules/svg/include/SkSVGSVG.h +0 -1
 - package/cpp/skia/modules/svg/include/SkSVGShape.h +1 -1
 - package/cpp/skia/modules/svg/include/SkSVGTransformableNode.h +2 -2
 - package/cpp/skia/src/base/SkTLazy.h +8 -0
 - package/cpp/skia/src/core/SkLRUCache.h +17 -13
 - package/lib/commonjs/skia/types/SVG/SVGFactory.d.ts +3 -2
 - package/lib/commonjs/skia/types/SVG/SVGFactory.js.map +1 -1
 - package/lib/module/skia/types/SVG/SVGFactory.d.ts +3 -2
 - package/lib/module/skia/types/SVG/SVGFactory.js.map +1 -1
 - package/lib/typescript/src/skia/types/SVG/SVGFactory.d.ts +3 -2
 - package/package.json +9 -8
 - package/react-native-skia.podspec +1 -2
 - package/scripts/install-skia.mjs +360 -0
 - package/src/skia/types/SVG/SVGFactory.ts +11 -2
 - package/cpp/skia/include/android/SkHeifDecoder.h +0 -50
 - package/lib/commonjs/__tests__/globalSetup.d.ts +0 -9
 - package/lib/commonjs/__tests__/globalTeardown.d.ts +0 -2
 - package/lib/commonjs/__tests__/setup.d.ts +0 -36
 - package/lib/commonjs/mock/__tests__/mock.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Data.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Drawings.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/FitBox.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Glyphs.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Image.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Paths.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Picture.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Simple.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Surfaces.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Text.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/Transform.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/documentation/Group.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/documentation/paint/Overview.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/documentation/shapes/Box.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/AdvancedImageFilters.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Atlas.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Blending.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Blur.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Box.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Camera.spec.d.ts +0 -21
 - package/lib/commonjs/renderer/__tests__/e2e/ColorFilters.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/CoonPatch.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/DataEncoding.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Drawings.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/FontMgr.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Gradient.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Group.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Image.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/ImageFilter.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/ImageFilters.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/LightingImageFilters.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Mask.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Matrix4.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Offscreen.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Opacity.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Paint.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/ParagraphMethods.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Paragraphs.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/PathEffects.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Paths.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Picture.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Point.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Rect.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/SDF.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/SVG.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Shader.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Skottie.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Snapshot.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Surfaces.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Text.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/TextPath.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Transforms.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Vertices.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/Video.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/e2e/setup/Paragraph.d.ts +0 -20
 - package/lib/commonjs/renderer/__tests__/e2e/setup/SVG.d.ts +0 -13
 - package/lib/commonjs/renderer/__tests__/e2e/setup/SkiaObject.d.ts +0 -11
 - package/lib/commonjs/renderer/__tests__/e2e/setup/index.d.ts +0 -3
 - package/lib/commonjs/renderer/__tests__/examples/BlendModes.spec.d.ts +0 -1
 - package/lib/commonjs/renderer/__tests__/setup.d.ts +0 -71
 - package/lib/commonjs/skia/__tests__/ColorFilter.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Data.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Drawings.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Enums.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Geometry.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/ImageFilter.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Mock.spec.d.ts +0 -0
 - package/lib/commonjs/skia/__tests__/Paint.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Path.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/RuntimeEffect.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Shader.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Text.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Transform.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/Vertices.spec.d.ts +0 -1
 - package/lib/commonjs/skia/__tests__/setup.d.ts +0 -16
 - package/lib/commonjs/sksg/__tests__/Simple.spec.d.ts +0 -1
 - package/lib/module/__tests__/globalSetup.d.ts +0 -9
 - package/lib/module/__tests__/globalTeardown.d.ts +0 -2
 - package/lib/module/__tests__/setup.d.ts +0 -36
 - package/lib/module/mock/__tests__/mock.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Data.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Drawings.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/FitBox.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Glyphs.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Image.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Paths.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Picture.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Simple.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Surfaces.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Text.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/Transform.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/documentation/Group.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/documentation/paint/Overview.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/documentation/shapes/Box.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/AdvancedImageFilters.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Atlas.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Blending.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Blur.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Box.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Camera.spec.d.ts +0 -21
 - package/lib/module/renderer/__tests__/e2e/ColorFilters.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/CoonPatch.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/DataEncoding.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Drawings.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/FontMgr.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Gradient.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Group.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Image.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/ImageFilter.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/ImageFilters.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/LightingImageFilters.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Mask.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Matrix4.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Offscreen.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Opacity.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Paint.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/ParagraphMethods.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Paragraphs.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/PathEffects.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Paths.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Picture.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Point.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Rect.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/SDF.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/SVG.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Shader.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Skottie.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Snapshot.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Surfaces.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Text.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/TextPath.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Transforms.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Vertices.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/Video.d.ts +0 -1
 - package/lib/module/renderer/__tests__/e2e/setup/Paragraph.d.ts +0 -20
 - package/lib/module/renderer/__tests__/e2e/setup/SVG.d.ts +0 -13
 - package/lib/module/renderer/__tests__/e2e/setup/SkiaObject.d.ts +0 -11
 - package/lib/module/renderer/__tests__/e2e/setup/index.d.ts +0 -3
 - package/lib/module/renderer/__tests__/examples/BlendModes.spec.d.ts +0 -1
 - package/lib/module/renderer/__tests__/setup.d.ts +0 -71
 - package/lib/module/skia/__tests__/ColorFilter.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Data.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Drawings.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Enums.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Geometry.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/ImageFilter.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Mock.spec.d.ts +0 -0
 - package/lib/module/skia/__tests__/Paint.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Path.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/RuntimeEffect.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Shader.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Text.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Transform.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/Vertices.spec.d.ts +0 -1
 - package/lib/module/skia/__tests__/setup.d.ts +0 -16
 - package/lib/module/sksg/__tests__/Simple.spec.d.ts +0 -1
 - package/lib/typescript/src/__tests__/globalSetup.d.ts +0 -9
 - package/lib/typescript/src/__tests__/globalTeardown.d.ts +0 -2
 - package/lib/typescript/src/__tests__/setup.d.ts +0 -36
 - package/lib/typescript/src/mock/__tests__/mock.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Data.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Drawings.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/FitBox.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Glyphs.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Image.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Paths.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Picture.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Simple.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Surfaces.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Text.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/Transform.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/documentation/Group.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/documentation/paint/Overview.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/documentation/shapes/Box.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/AdvancedImageFilters.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Atlas.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Blending.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Blur.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Box.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Camera.spec.d.ts +0 -21
 - package/lib/typescript/src/renderer/__tests__/e2e/ColorFilters.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/CoonPatch.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/DataEncoding.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Drawings.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/FontMgr.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Gradient.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Group.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Image.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/ImageFilter.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/ImageFilters.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/LightingImageFilters.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Mask.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Matrix4.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Offscreen.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Opacity.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Paint.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/ParagraphMethods.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Paragraphs.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/PathEffects.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Paths.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Picture.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Point.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Rect.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/SDF.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/SVG.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Shader.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Skottie.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Snapshot.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Surfaces.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Text.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/TextPath.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Transforms.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Vertices.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/Video.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/e2e/setup/Paragraph.d.ts +0 -20
 - package/lib/typescript/src/renderer/__tests__/e2e/setup/SVG.d.ts +0 -13
 - package/lib/typescript/src/renderer/__tests__/e2e/setup/SkiaObject.d.ts +0 -11
 - package/lib/typescript/src/renderer/__tests__/e2e/setup/index.d.ts +0 -3
 - package/lib/typescript/src/renderer/__tests__/examples/BlendModes.spec.d.ts +0 -1
 - package/lib/typescript/src/renderer/__tests__/setup.d.ts +0 -71
 - package/lib/typescript/src/skia/__tests__/ColorFilter.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Data.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Drawings.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Enums.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Geometry.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/ImageFilter.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Mock.spec.d.ts +0 -0
 - package/lib/typescript/src/skia/__tests__/Paint.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Path.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/RuntimeEffect.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Shader.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Text.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Transform.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/Vertices.spec.d.ts +0 -1
 - package/lib/typescript/src/skia/__tests__/setup.d.ts +0 -16
 - package/lib/typescript/src/sksg/__tests__/Simple.spec.d.ts +0 -1
 - package/libs/android/arm64-v8a/libjsonreader.a +0 -0
 - package/libs/android/arm64-v8a/libpathops.a +0 -0
 - package/libs/android/arm64-v8a/libskia.a +0 -0
 - package/libs/android/arm64-v8a/libskottie.a +0 -0
 - package/libs/android/arm64-v8a/libskparagraph.a +0 -0
 - package/libs/android/arm64-v8a/libsksg.a +0 -0
 - package/libs/android/arm64-v8a/libskshaper.a +0 -0
 - package/libs/android/arm64-v8a/libskunicode_core.a +0 -0
 - package/libs/android/arm64-v8a/libskunicode_icu.a +0 -0
 - package/libs/android/arm64-v8a/libsvg.a +0 -0
 - package/libs/android/armeabi-v7a/libjsonreader.a +0 -0
 - package/libs/android/armeabi-v7a/libpathops.a +0 -0
 - package/libs/android/armeabi-v7a/libskia.a +0 -0
 - package/libs/android/armeabi-v7a/libskottie.a +0 -0
 - package/libs/android/armeabi-v7a/libskparagraph.a +0 -0
 - package/libs/android/armeabi-v7a/libsksg.a +0 -0
 - package/libs/android/armeabi-v7a/libskshaper.a +0 -0
 - package/libs/android/armeabi-v7a/libskunicode_core.a +0 -0
 - package/libs/android/armeabi-v7a/libskunicode_icu.a +0 -0
 - package/libs/android/armeabi-v7a/libsvg.a +0 -0
 - package/libs/android/x86/libjsonreader.a +0 -0
 - package/libs/android/x86/libpathops.a +0 -0
 - package/libs/android/x86/libskia.a +0 -0
 - package/libs/android/x86/libskottie.a +0 -0
 - package/libs/android/x86/libskparagraph.a +0 -0
 - package/libs/android/x86/libsksg.a +0 -0
 - package/libs/android/x86/libskshaper.a +0 -0
 - package/libs/android/x86/libskunicode_core.a +0 -0
 - package/libs/android/x86/libskunicode_icu.a +0 -0
 - package/libs/android/x86/libsvg.a +0 -0
 - package/libs/android/x86_64/libjsonreader.a +0 -0
 - package/libs/android/x86_64/libpathops.a +0 -0
 - package/libs/android/x86_64/libskia.a +0 -0
 - package/libs/android/x86_64/libskottie.a +0 -0
 - package/libs/android/x86_64/libskparagraph.a +0 -0
 - package/libs/android/x86_64/libsksg.a +0 -0
 - package/libs/android/x86_64/libskshaper.a +0 -0
 - package/libs/android/x86_64/libskunicode_core.a +0 -0
 - package/libs/android/x86_64/libskunicode_icu.a +0 -0
 - package/libs/android/x86_64/libsvg.a +0 -0
 - package/libs/apple/libpathops.xcframework/Info.plist +0 -94
 - package/libs/apple/libpathops.xcframework/ios-arm64_arm64e/libpathops.a +0 -0
 - package/libs/apple/libpathops.xcframework/ios-arm64_arm64e_x86_64-simulator/libpathops.a +0 -0
 - package/libs/apple/libpathops.xcframework/macos-arm64_x86_64/libpathops.a +0 -0
 - package/libs/apple/libpathops.xcframework/tvos-arm64_arm64e/libpathops.a +0 -0
 - package/libs/apple/libpathops.xcframework/tvos-arm64_arm64e_x86_64-simulator/libpathops.a +0 -0
 - package/libs/apple/libskia.xcframework/Info.plist +0 -94
 - package/libs/apple/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
 - package/libs/apple/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
 - package/libs/apple/libskia.xcframework/macos-arm64_x86_64/libskia.a +0 -0
 - package/libs/apple/libskia.xcframework/tvos-arm64_arm64e/libskia.a +0 -0
 - package/libs/apple/libskia.xcframework/tvos-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
 - package/libs/apple/libskottie.xcframework/Info.plist +0 -94
 - package/libs/apple/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
 - package/libs/apple/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
 - package/libs/apple/libskottie.xcframework/macos-arm64_x86_64/libskottie.a +0 -0
 - package/libs/apple/libskottie.xcframework/tvos-arm64_arm64e/libskottie.a +0 -0
 - package/libs/apple/libskottie.xcframework/tvos-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
 - package/libs/apple/libskparagraph.xcframework/Info.plist +0 -94
 - package/libs/apple/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
 - package/libs/apple/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
 - package/libs/apple/libskparagraph.xcframework/macos-arm64_x86_64/libskparagraph.a +0 -0
 - package/libs/apple/libskparagraph.xcframework/tvos-arm64_arm64e/libskparagraph.a +0 -0
 - package/libs/apple/libskparagraph.xcframework/tvos-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
 - package/libs/apple/libsksg.xcframework/Info.plist +0 -94
 - package/libs/apple/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
 - package/libs/apple/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
 - package/libs/apple/libsksg.xcframework/macos-arm64_x86_64/libsksg.a +0 -0
 - package/libs/apple/libsksg.xcframework/tvos-arm64_arm64e/libsksg.a +0 -0
 - package/libs/apple/libsksg.xcframework/tvos-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
 - package/libs/apple/libskshaper.xcframework/Info.plist +0 -94
 - package/libs/apple/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
 - package/libs/apple/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
 - package/libs/apple/libskshaper.xcframework/macos-arm64_x86_64/libskshaper.a +0 -0
 - package/libs/apple/libskshaper.xcframework/tvos-arm64_arm64e/libskshaper.a +0 -0
 - package/libs/apple/libskshaper.xcframework/tvos-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
 - package/libs/apple/libskunicode_core.xcframework/Info.plist +0 -94
 - package/libs/apple/libskunicode_core.xcframework/ios-arm64_arm64e/libskunicode_core.a +0 -0
 - package/libs/apple/libskunicode_core.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode_core.a +0 -0
 - package/libs/apple/libskunicode_core.xcframework/macos-arm64_x86_64/libskunicode_core.a +0 -0
 - package/libs/apple/libskunicode_core.xcframework/tvos-arm64_arm64e/libskunicode_core.a +0 -0
 - package/libs/apple/libskunicode_core.xcframework/tvos-arm64_arm64e_x86_64-simulator/libskunicode_core.a +0 -0
 - package/libs/apple/libskunicode_libgrapheme.xcframework/Info.plist +0 -94
 - package/libs/apple/libskunicode_libgrapheme.xcframework/ios-arm64_arm64e/libskunicode_libgrapheme.a +0 -0
 - package/libs/apple/libskunicode_libgrapheme.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode_libgrapheme.a +0 -0
 - package/libs/apple/libskunicode_libgrapheme.xcframework/macos-arm64_x86_64/libskunicode_libgrapheme.a +0 -0
 - package/libs/apple/libskunicode_libgrapheme.xcframework/tvos-arm64_arm64e/libskunicode_libgrapheme.a +0 -0
 - package/libs/apple/libskunicode_libgrapheme.xcframework/tvos-arm64_arm64e_x86_64-simulator/libskunicode_libgrapheme.a +0 -0
 - package/libs/apple/libsvg.xcframework/Info.plist +0 -94
 - package/libs/apple/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
 - package/libs/apple/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
 - package/libs/apple/libsvg.xcframework/macos-arm64_x86_64/libsvg.a +0 -0
 - package/libs/apple/libsvg.xcframework/tvos-arm64_arm64e/libsvg.a +0 -0
 - package/libs/apple/libsvg.xcframework/tvos-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
 - package/src/__tests__/globalSetup.ts +0 -53
 - package/src/__tests__/globalTeardown.ts +0 -11
 - package/src/__tests__/setup.ts +0 -192
 - package/src/__tests__/snapshots/animated-images/bird.png +0 -0
 - package/src/__tests__/snapshots/animations/green.png +0 -0
 - package/src/__tests__/snapshots/animations/lightblue.png +0 -0
 - package/src/__tests__/snapshots/animations/quarter-lightblue.png +0 -0
 - package/src/__tests__/snapshots/animations/red.png +0 -0
 - package/src/__tests__/snapshots/atlas/identity.png +0 -0
 - package/src/__tests__/snapshots/atlas/rsxform.png +0 -0
 - package/src/__tests__/snapshots/atlas/rsxform1.png +0 -0
 - package/src/__tests__/snapshots/atlas/simple.png +0 -0
 - package/src/__tests__/snapshots/atlas/simple2.png +0 -0
 - package/src/__tests__/snapshots/box/box-shadow-opacity.png +0 -0
 - package/src/__tests__/snapshots/box/box-shadow.png +0 -0
 - package/src/__tests__/snapshots/box/box-shadow2.png +0 -0
 - package/src/__tests__/snapshots/box/box-shadow3.png +0 -0
 - package/src/__tests__/snapshots/box/box-stroke.png +0 -0
 - package/src/__tests__/snapshots/color-filter/color-filter-composition.png +0 -0
 - package/src/__tests__/snapshots/color-filter/matrix1.png +0 -0
 - package/src/__tests__/snapshots/color-filter/matrix3.png +0 -0
 - package/src/__tests__/snapshots/color-filter/zurich-sepia.png +0 -0
 - package/src/__tests__/snapshots/coons-patch/patch-with-opacity.png +0 -0
 - package/src/__tests__/snapshots/coons-patch/simple.png +0 -0
 - package/src/__tests__/snapshots/cyan-buffer.png +0 -0
 - package/src/__tests__/snapshots/data/oslo.png +0 -0
 - package/src/__tests__/snapshots/data/red.png +0 -0
 - package/src/__tests__/snapshots/data/zurich.png +0 -0
 - package/src/__tests__/snapshots/demos/apple-breathe.png +0 -0
 - package/src/__tests__/snapshots/demos/apple-breathe1.png +0 -0
 - package/src/__tests__/snapshots/demos/breathe.png +0 -0
 - package/src/__tests__/snapshots/demos/breathe2.png +0 -0
 - package/src/__tests__/snapshots/demos/product.png +0 -0
 - package/src/__tests__/snapshots/demos/product2.png +0 -0
 - package/src/__tests__/snapshots/demos/skia-neon.png +0 -0
 - package/src/__tests__/snapshots/demos/skia-neon1.png +0 -0
 - package/src/__tests__/snapshots/drawings/arc.png +0 -0
 - package/src/__tests__/snapshots/drawings/blend-mode-multiply.png +0 -0
 - package/src/__tests__/snapshots/drawings/blend-modes.png +0 -0
 - package/src/__tests__/snapshots/drawings/blur-node.png +0 -0
 - package/src/__tests__/snapshots/drawings/blur.png +0 -0
 - package/src/__tests__/snapshots/drawings/blur2.png +0 -0
 - package/src/__tests__/snapshots/drawings/custom-drawing.png +0 -0
 - package/src/__tests__/snapshots/drawings/cyan-circle.png +0 -0
 - package/src/__tests__/snapshots/drawings/cyan.png +0 -0
 - package/src/__tests__/snapshots/drawings/default-props.png +0 -0
 - package/src/__tests__/snapshots/drawings/hello-world.png +0 -0
 - package/src/__tests__/snapshots/drawings/image-default-props.png +0 -0
 - package/src/__tests__/snapshots/drawings/lightblue-quarter-circle.png +0 -0
 - package/src/__tests__/snapshots/drawings/lightblue-rect.png +0 -0
 - package/src/__tests__/snapshots/drawings/line.png +0 -0
 - package/src/__tests__/snapshots/drawings/multiple-paints.png +0 -0
 - package/src/__tests__/snapshots/drawings/nested-shader.png +0 -0
 - package/src/__tests__/snapshots/drawings/nested-shader2.png +0 -0
 - package/src/__tests__/snapshots/drawings/opacity-image.png +0 -0
 - package/src/__tests__/snapshots/drawings/opacity-multiplication.png +0 -0
 - package/src/__tests__/snapshots/drawings/opacity-multiplication2.png +0 -0
 - package/src/__tests__/snapshots/drawings/points.png +0 -0
 - package/src/__tests__/snapshots/drawings/purple.png +0 -0
 - package/src/__tests__/snapshots/drawings/rotated-image.png +0 -0
 - package/src/__tests__/snapshots/drawings/rotated-scaled-image.png +0 -0
 - package/src/__tests__/snapshots/drawings/rrect-aa.png +0 -0
 - package/src/__tests__/snapshots/drawings/rrect-no-aa.png +0 -0
 - package/src/__tests__/snapshots/drawings/scaled-image.png +0 -0
 - package/src/__tests__/snapshots/drawings/scaled-image2.png +0 -0
 - package/src/__tests__/snapshots/drawings/semi-transparent-layer.png +0 -0
 - package/src/__tests__/snapshots/drawings/shader-opacity-reference.png +0 -0
 - package/src/__tests__/snapshots/drawings/skew-transform.png +0 -0
 - package/src/__tests__/snapshots/drawings/skew-transform2.png +0 -0
 - package/src/__tests__/snapshots/drawings/small-lightblue-rect.png +0 -0
 - package/src/__tests__/snapshots/drawings/stroke.png +0 -0
 - package/src/__tests__/snapshots/drawings/transform-origin.png +0 -0
 - package/src/__tests__/snapshots/drawings/transparent-layer.png +0 -0
 - package/src/__tests__/snapshots/drawings/transparent.png +0 -0
 - package/src/__tests__/snapshots/drawings/violet.png +0 -0
 - package/src/__tests__/snapshots/font/green.png +0 -0
 - package/src/__tests__/snapshots/font/red.png +0 -0
 - package/src/__tests__/snapshots/glyphs/simple.png +0 -0
 - package/src/__tests__/snapshots/gradient/linear-with-opacity.png +0 -0
 - package/src/__tests__/snapshots/gradient/linear.png +0 -0
 - package/src/__tests__/snapshots/green.png +0 -0
 - package/src/__tests__/snapshots/image-filter/blur.png +0 -0
 - package/src/__tests__/snapshots/image-filter/test-shadow.png +0 -0
 - package/src/__tests__/snapshots/images/bundle-android.png +0 -0
 - package/src/__tests__/snapshots/images/bundle-ios.png +0 -0
 - package/src/__tests__/snapshots/images/bundle-node.png +0 -0
 - package/src/__tests__/snapshots/images/bundle.png +0 -0
 - package/src/__tests__/snapshots/images/filter.png +0 -0
 - package/src/__tests__/snapshots/leak.png +0 -0
 - package/src/__tests__/snapshots/matrix4/camera-corner.png +0 -0
 - package/src/__tests__/snapshots/matrix4/camera-offset.png +0 -0
 - package/src/__tests__/snapshots/matrix4/camera-top-left-center.png +0 -0
 - package/src/__tests__/snapshots/matrix4/camera-zoom-out.png +0 -0
 - package/src/__tests__/snapshots/matrix4/full-rect.png +0 -0
 - package/src/__tests__/snapshots/matrix4/perspective.png +0 -0
 - package/src/__tests__/snapshots/matrix4/rect.png +0 -0
 - package/src/__tests__/snapshots/matrix4/scaled-rect.png +0 -0
 - package/src/__tests__/snapshots/matrix4/test-perspective.png +0 -0
 - package/src/__tests__/snapshots/matrix4/test-perspective2.png +0 -0
 - package/src/__tests__/snapshots/paint/blend-mode.png +0 -0
 - package/src/__tests__/snapshots/paint/circle.png +0 -0
 - package/src/__tests__/snapshots/paint/colors.png +0 -0
 - package/src/__tests__/snapshots/paint/dither.png +0 -0
 - package/src/__tests__/snapshots/paint/path-paint.png +0 -0
 - package/src/__tests__/snapshots/paint/without-dither.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-auto-linebreaks-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-auto-linebreaks-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-node.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-ellipse-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-ellipse-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-linebreaks-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-linebreaks-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-center-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-center-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-justify-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-justify-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-left-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-left-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-right-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-right-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-rtl-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-align-rtl-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-colors-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-colors-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-decoration-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-decoration-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-shadow-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-shadow-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-android-box.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-ios-box.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-in-paragraph-style-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/paragraph-text-style-in-paragraph-style-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/simple-paragraph-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/simple-paragraph-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-android.png +0 -0
 - package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-ios.png +0 -0
 - package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-node.png +0 -0
 - package/src/__tests__/snapshots/path/interpolate.png +0 -0
 - package/src/__tests__/snapshots/path/logo.png +0 -0
 - package/src/__tests__/snapshots/path-effects/discrete.png +0 -0
 - package/src/__tests__/snapshots/path-effects/sum.png +0 -0
 - package/src/__tests__/snapshots/path-effects/sum2.png +0 -0
 - package/src/__tests__/snapshots/paths/arc.png +0 -0
 - package/src/__tests__/snapshots/paths/emptyPath.png +0 -0
 - package/src/__tests__/snapshots/paths/interpolation1.png +0 -0
 - package/src/__tests__/snapshots/paths/oval.png +0 -0
 - package/src/__tests__/snapshots/paths/pattern.png +0 -0
 - package/src/__tests__/snapshots/paths/poly.png +0 -0
 - package/src/__tests__/snapshots/paths/rrect.png +0 -0
 - package/src/__tests__/snapshots/paths/skia-trimmed.png +0 -0
 - package/src/__tests__/snapshots/paths/skia.png +0 -0
 - package/src/__tests__/snapshots/pictures/create-picture.png +0 -0
 - package/src/__tests__/snapshots/pictures/green.png +0 -0
 - package/src/__tests__/snapshots/pictures/hello-world.png +0 -0
 - package/src/__tests__/snapshots/pictures/red.png +0 -0
 - package/src/__tests__/snapshots/pictures/simple-picture.png +0 -0
 - package/src/__tests__/snapshots/platform-buffer-bgra.png +0 -0
 - package/src/__tests__/snapshots/platform-buffer.png +0 -0
 - package/src/__tests__/snapshots/points/points.png +0 -0
 - package/src/__tests__/snapshots/points/points2.png +0 -0
 - package/src/__tests__/snapshots/render-nodes/simple.png +0 -0
 - package/src/__tests__/snapshots/render-nodes/simple2.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/blend-color-burn.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/blend-color-burn2.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/blend-color-burn3.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/blend-color-dodge.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/blend-multiply.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/int-uniform.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/linear-gradient.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/linear-gradient2.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/small-spiral.png +0 -0
 - package/src/__tests__/snapshots/runtime-effects/spiral.png +0 -0
 - package/src/__tests__/snapshots/runtime-shader/scaled-circle.png +0 -0
 - package/src/__tests__/snapshots/runtime-shader/scaled-circle2.png +0 -0
 - package/src/__tests__/snapshots/runtime-shader/simple.png +0 -0
 - package/src/__tests__/snapshots/runtime-shader/spiral.png +0 -0
 - package/src/__tests__/snapshots/runtime-shader/unscaled-image.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot1-android-ci.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot1-android.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot1-ios.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot2-android-ci.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot2-android.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot2-ios.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot3-android-ci.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot3-android.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot3-ios.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot4-android-ci.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot4-android.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot4-ios.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot5-android.png +0 -0
 - package/src/__tests__/snapshots/screens/snapshot5-ios.png +0 -0
 - package/src/__tests__/snapshots/sdf/circle.png +0 -0
 - package/src/__tests__/snapshots/sdf/heart.png +0 -0
 - package/src/__tests__/snapshots/sdf/line.png +0 -0
 - package/src/__tests__/snapshots/sdf/rectangle.png +0 -0
 - package/src/__tests__/snapshots/shader/bilinear-interpolation.png +0 -0
 - package/src/__tests__/snapshots/shader/hue.png +0 -0
 - package/src/__tests__/snapshots/shader/hue2.png +0 -0
 - package/src/__tests__/snapshots/shader/shader1.png +0 -0
 - package/src/__tests__/snapshots/shader/shader2.png +0 -0
 - package/src/__tests__/snapshots/shader/sweep-gradient.png +0 -0
 - package/src/__tests__/snapshots/sksg/breathe-0.png +0 -0
 - package/src/__tests__/snapshots/sksg/breathe.png +0 -0
 - package/src/__tests__/snapshots/sksg/simple.png +0 -0
 - package/src/__tests__/snapshots/sksg/simple2.png +0 -0
 - package/src/__tests__/snapshots/text/text-bounds-android.png +0 -0
 - package/src/__tests__/snapshots/text/text-bounds-ios.png +0 -0
 - package/src/__tests__/snapshots/text/text-default-font-android.png +0 -0
 - package/src/__tests__/snapshots/text/text-default-font-ios.png +0 -0
 - package/src/__tests__/snapshots/text/text-path-bug-android.png +0 -0
 - package/src/__tests__/snapshots/text/text-path-bug-ios.png +0 -0
 - package/src/__tests__/snapshots/text/text-path-bug-node.png +0 -0
 - package/src/__tests__/snapshots/text/text-path1-android.png +0 -0
 - package/src/__tests__/snapshots/text/text-path1-ios.png +0 -0
 - package/src/__tests__/snapshots/text/text-path1-node.png +0 -0
 - package/src/__tests__/snapshots/text/text-path2-android.png +0 -0
 - package/src/__tests__/snapshots/text/text-path2-ios.png +0 -0
 - package/src/__tests__/snapshots/text/text-path2-node.png +0 -0
 - package/src/__tests__/snapshots/transform/rectangles.png +0 -0
 - package/src/__tests__/snapshots/transform/rotate-radiants.png +0 -0
 - package/src/__tests__/snapshots/transform/rotate.png +0 -0
 - package/src/__tests__/snapshots/transform/scale-origin.png +0 -0
 - package/src/__tests__/snapshots/transform/scale.png +0 -0
 - package/src/__tests__/snapshots/transform/skew.png +0 -0
 - package/src/__tests__/snapshots/transparent.png +0 -0
 - package/src/__tests__/snapshots/vertices/billinear-gradient.png +0 -0
 - package/src/__tests__/snapshots/vertices/strip.png +0 -0
 - package/src/__tests__/snapshots/vertices/vertices.png +0 -0
 - package/src/mock/__tests__/mock.spec.ts +0 -47
 - package/src/renderer/__tests__/Data.spec.tsx +0 -66
 - package/src/renderer/__tests__/Drawings.spec.tsx +0 -96
 - package/src/renderer/__tests__/FitBox.spec.tsx +0 -677
 - package/src/renderer/__tests__/Glyphs.spec.tsx +0 -46
 - package/src/renderer/__tests__/Image.spec.tsx +0 -45
 - package/src/renderer/__tests__/Paths.spec.tsx +0 -75
 - package/src/renderer/__tests__/Picture.spec.tsx +0 -83
 - package/src/renderer/__tests__/Simple.spec.tsx +0 -81
 - package/src/renderer/__tests__/Surfaces.spec.tsx +0 -68
 - package/src/renderer/__tests__/Text.spec.tsx +0 -134
 - package/src/renderer/__tests__/Transform.spec.tsx +0 -72
 - package/src/renderer/__tests__/documentation/Group.spec.tsx +0 -170
 - package/src/renderer/__tests__/documentation/getting-started/HelloWorld.spec.tsx +0 -51
 - package/src/renderer/__tests__/documentation/paint/Overview.spec.tsx +0 -84
 - package/src/renderer/__tests__/documentation/shapes/Box.spec.tsx +0 -46
 - package/src/renderer/__tests__/e2e/AdvancedImageFilters.spec.tsx +0 -492
 - package/src/renderer/__tests__/e2e/AnimatedImages.spec.tsx +0 -87
 - package/src/renderer/__tests__/e2e/Atlas.spec.tsx +0 -358
 - package/src/renderer/__tests__/e2e/BackdropFilters.spec.tsx +0 -164
 - package/src/renderer/__tests__/e2e/Blending.spec.tsx +0 -115
 - package/src/renderer/__tests__/e2e/Blur.spec.tsx +0 -56
 - package/src/renderer/__tests__/e2e/Box.spec.tsx +0 -105
 - package/src/renderer/__tests__/e2e/Camera.spec.tsx +0 -475
 - package/src/renderer/__tests__/e2e/ColorFilters.spec.tsx +0 -227
 - package/src/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.tsx +0 -102
 - package/src/renderer/__tests__/e2e/CoonPatch.spec.tsx +0 -74
 - package/src/renderer/__tests__/e2e/DataEncoding.spec.tsx +0 -79
 - package/src/renderer/__tests__/e2e/Drawings.spec.tsx +0 -254
 - package/src/renderer/__tests__/e2e/FontMgr.spec.tsx +0 -150
 - package/src/renderer/__tests__/e2e/Gradient.spec.tsx +0 -40
 - package/src/renderer/__tests__/e2e/Group.spec.tsx +0 -128
 - package/src/renderer/__tests__/e2e/Image.spec.tsx +0 -77
 - package/src/renderer/__tests__/e2e/ImageEncoding.spec.tsx +0 -255
 - package/src/renderer/__tests__/e2e/ImageFilter.spec.tsx +0 -99
 - package/src/renderer/__tests__/e2e/ImageFilters.spec.tsx +0 -320
 - package/src/renderer/__tests__/e2e/LightingImageFilters.spec.tsx +0 -1478
 - package/src/renderer/__tests__/e2e/Mask.spec.tsx +0 -85
 - package/src/renderer/__tests__/e2e/Matrix4.spec.tsx +0 -367
 - package/src/renderer/__tests__/e2e/NativeBuffer.spec.tsx +0 -158
 - package/src/renderer/__tests__/e2e/Offscreen.spec.tsx +0 -109
 - package/src/renderer/__tests__/e2e/Opacity.spec.tsx +0 -301
 - package/src/renderer/__tests__/e2e/Paint.spec.tsx +0 -230
 - package/src/renderer/__tests__/e2e/ParagraphMethods.spec.tsx +0 -388
 - package/src/renderer/__tests__/e2e/ParagraphPaint.spec.tsx +0 -262
 - package/src/renderer/__tests__/e2e/Paragraphs.spec.tsx +0 -615
 - package/src/renderer/__tests__/e2e/PathEffects.spec.tsx +0 -73
 - package/src/renderer/__tests__/e2e/Paths.spec.tsx +0 -394
 - package/src/renderer/__tests__/e2e/Picture.spec.tsx +0 -134
 - package/src/renderer/__tests__/e2e/Point.spec.tsx +0 -35
 - package/src/renderer/__tests__/e2e/Rect.spec.tsx +0 -139
 - package/src/renderer/__tests__/e2e/RuntimeShader.spec.tsx +0 -323
 - package/src/renderer/__tests__/e2e/SDF.spec.tsx +0 -148
 - package/src/renderer/__tests__/e2e/SVG.spec.tsx +0 -192
 - package/src/renderer/__tests__/e2e/Shader.spec.tsx +0 -353
 - package/src/renderer/__tests__/e2e/Skottie.spec.tsx +0 -463
 - package/src/renderer/__tests__/e2e/Snapshot.spec.tsx +0 -29
 - package/src/renderer/__tests__/e2e/Surfaces.spec.tsx +0 -17
 - package/src/renderer/__tests__/e2e/Text.spec.tsx +0 -109
 - package/src/renderer/__tests__/e2e/TextPath.spec.tsx +0 -43
 - package/src/renderer/__tests__/e2e/Transforms.spec.tsx +0 -63
 - package/src/renderer/__tests__/e2e/Vertices.spec.tsx +0 -30
 - package/src/renderer/__tests__/e2e/Video.ts +0 -68
 - package/src/renderer/__tests__/e2e/setup/Paragraph.ts +0 -60
 - package/src/renderer/__tests__/e2e/setup/SVG.ts +0 -31
 - package/src/renderer/__tests__/e2e/setup/SkiaObject.ts +0 -31
 - package/src/renderer/__tests__/e2e/setup/index.ts +0 -3
 - package/src/renderer/__tests__/e2e/setup/skottie/basic_slots.json +0 -1118
 - package/src/renderer/__tests__/e2e/setup/skottie/color-props.json +0 -1
 - package/src/renderer/__tests__/e2e/setup/skottie/confetti.json +0 -5899
 - package/src/renderer/__tests__/e2e/setup/skottie/drinks.json +0 -43857
 - package/src/renderer/__tests__/e2e/setup/skottie/fingerprint.json +0 -1
 - package/src/renderer/__tests__/e2e/setup/skottie/lego_loader.json +0 -29540
 - package/src/renderer/__tests__/e2e/setup/skottie/new-drop.json +0 -1
 - package/src/renderer/__tests__/e2e/setup/skottie/onboarding.json +0 -1
 - package/src/renderer/__tests__/e2e/setup/skottie/text-layer.json +0 -1
 - package/src/renderer/__tests__/examples/BlendModes.spec.tsx +0 -123
 - package/src/renderer/__tests__/setup.tsx +0 -525
 - package/src/skia/__tests__/ColorFilter.spec.ts +0 -67
 - package/src/skia/__tests__/Data.spec.ts +0 -29
 - package/src/skia/__tests__/Drawings.spec.ts +0 -119
 - package/src/skia/__tests__/Enums.spec.ts +0 -136
 - package/src/skia/__tests__/Geometry.spec.ts +0 -39
 - package/src/skia/__tests__/ImageFilter.spec.ts +0 -19
 - package/src/skia/__tests__/Mock.spec.ts +0 -7
 - package/src/skia/__tests__/Paint.spec.ts +0 -25
 - package/src/skia/__tests__/Path.spec.ts +0 -384
 - package/src/skia/__tests__/RuntimeEffect.spec.ts +0 -66
 - package/src/skia/__tests__/Shader.spec.ts +0 -96
 - package/src/skia/__tests__/Text.spec.ts +0 -32
 - package/src/skia/__tests__/Transform.spec.ts +0 -89
 - package/src/skia/__tests__/Vertices.spec.ts +0 -40
 - package/src/skia/__tests__/assets/Avenir-Heavy.ttf +0 -0
 - package/src/skia/__tests__/assets/DIN-Medium.ttf +0 -0
 - package/src/skia/__tests__/assets/NotoColorEmoji.ttf +0 -0
 - package/src/skia/__tests__/assets/NotoSansSC-Regular.otf +0 -0
 - package/src/skia/__tests__/assets/Pacifico-Regular.ttf +0 -0
 - package/src/skia/__tests__/assets/Roboto-BlackItalic.ttf +0 -0
 - package/src/skia/__tests__/assets/Roboto-Bold.ttf +0 -0
 - package/src/skia/__tests__/assets/Roboto-Italic.ttf +0 -0
 - package/src/skia/__tests__/assets/Roboto-Medium.ttf +0 -0
 - package/src/skia/__tests__/assets/Roboto-Regular.ttf +0 -0
 - package/src/skia/__tests__/assets/UberMove-Medium_mono.ttf +0 -0
 - package/src/skia/__tests__/assets/bird.gif +0 -0
 - package/src/skia/__tests__/assets/box.png +0 -0
 - package/src/skia/__tests__/assets/box2.png +0 -0
 - package/src/skia/__tests__/assets/card.png +0 -0
 - package/src/skia/__tests__/assets/mask.png +0 -0
 - package/src/skia/__tests__/assets/oslo-mini.jpg +0 -0
 - package/src/skia/__tests__/assets/oslo.jpg +0 -0
 - package/src/skia/__tests__/assets/product.png +0 -0
 - package/src/skia/__tests__/assets/skia_logo.png +0 -0
 - package/src/skia/__tests__/assets/skia_logo_jpeg.jpg +0 -0
 - package/src/skia/__tests__/assets/tiger.svg +0 -724
 - package/src/skia/__tests__/assets/zurich.jpg +0 -0
 - package/src/skia/__tests__/setup.ts +0 -27
 - package/src/sksg/__tests__/Simple.spec.tsx +0 -148
 
| 
         @@ -22,13 +22,31 @@ public: 
     | 
|
| 
       22 
22 
     | 
    
         
             
                static std::unique_ptr<SkExecutor> MakeLIFOThreadPool(int threads = 0,
         
     | 
| 
       23 
23 
     | 
    
         
             
                                                                      bool allowBorrowing = true);
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
      
 25 
     | 
    
         
            +
                // A work list is the queue or stack to which work is added and removed. The above two
         
     | 
| 
      
 26 
     | 
    
         
            +
                // factory functions create an executor with only one list while the following two factories
         
     | 
| 
      
 27 
     | 
    
         
            +
                // can create executors with multiple work lists. Having multiple work lists allows for
         
     | 
| 
      
 28 
     | 
    
         
            +
                // prioritization with work being pulled from the lower indexed work lists first - with
         
     | 
| 
      
 29 
     | 
    
         
            +
                // work list '0' being the highest priority.
         
     | 
| 
      
 30 
     | 
    
         
            +
                static std::unique_ptr<SkExecutor> MakeMultiListFIFOThreadPool(int numWorkLists,
         
     | 
| 
      
 31 
     | 
    
         
            +
                                                                               int threads = 0,
         
     | 
| 
      
 32 
     | 
    
         
            +
                                                                               bool allowBorrowing = true);
         
     | 
| 
      
 33 
     | 
    
         
            +
                static std::unique_ptr<SkExecutor> MakeMultiListLIFOThreadPool(int numWorkLists,
         
     | 
| 
      
 34 
     | 
    
         
            +
                                                                               int threads = 0,
         
     | 
| 
      
 35 
     | 
    
         
            +
                                                                               bool allowBorrowing = true);
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
       25 
37 
     | 
    
         
             
                // There is always a default SkExecutor available by calling SkExecutor::GetDefault().
         
     | 
| 
       26 
38 
     | 
    
         
             
                static SkExecutor& GetDefault();
         
     | 
| 
       27 
39 
     | 
    
         
             
                static void SetDefault(SkExecutor*);  // Does not take ownership.  Not thread safe.
         
     | 
| 
       28 
40 
     | 
    
         | 
| 
       29 
41 
     | 
    
         
             
                // Add work to execute.
         
     | 
| 
      
 42 
     | 
    
         
            +
                virtual void add(std::function<void(void)> fn, int /* workList */) { this->add(std::move(fn)); }
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
                // deprecated
         
     | 
| 
       30 
45 
     | 
    
         
             
                virtual void add(std::function<void(void)>) = 0;
         
     | 
| 
       31 
46 
     | 
    
         | 
| 
      
 47 
     | 
    
         
            +
                // Returns the number of discarded work units
         
     | 
| 
      
 48 
     | 
    
         
            +
                virtual int discardAllPendingWork() { return 0; }
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
       32 
50 
     | 
    
         
             
                // If it makes sense for this executor, use this thread to execute work for a little while.
         
     | 
| 
       33 
51 
     | 
    
         
             
                virtual void borrow() {}
         
     | 
| 
       34 
52 
     | 
    
         | 
| 
         @@ -8,7 +8,8 @@ 
     | 
|
| 
       8 
8 
     | 
    
         
             
            #ifndef SkFont_DEFINED
         
     | 
| 
       9 
9 
     | 
    
         
             
            #define SkFont_DEFINED
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
     | 
    
         
            -
            #include "include/core/ 
     | 
| 
      
 11 
     | 
    
         
            +
            #include "include/core/SkPath.h"  // IWYU pragma: keep (for SK_HIDE_PATH_EDIT_METHODS)
         
     | 
| 
      
 12 
     | 
    
         
            +
            #include "include/core/SkPoint.h" // IWYU pragma: keep (for unspanned apis)
         
     | 
| 
       12 
13 
     | 
    
         
             
            #include "include/core/SkRect.h"
         
     | 
| 
       13 
14 
     | 
    
         
             
            #include "include/core/SkRefCnt.h"
         
     | 
| 
       14 
15 
     | 
    
         
             
            #include "include/core/SkScalar.h"
         
     | 
| 
         @@ -20,15 +21,17 @@ 
     | 
|
| 
       20 
21 
     | 
    
         | 
| 
       21 
22 
     | 
    
         
             
            #include <cstddef>
         
     | 
| 
       22 
23 
     | 
    
         
             
            #include <cstdint>
         
     | 
| 
      
 24 
     | 
    
         
            +
            #include <optional>
         
     | 
| 
       23 
25 
     | 
    
         
             
            #include <vector>
         
     | 
| 
       24 
26 
     | 
    
         | 
| 
       25 
27 
     | 
    
         
             
            class SkMatrix;
         
     | 
| 
       26 
28 
     | 
    
         
             
            class SkPaint;
         
     | 
| 
       27 
     | 
    
         
            -
            class SkPath;
         
     | 
| 
       28 
29 
     | 
    
         
             
            enum class SkFontHinting;
         
     | 
| 
       29 
30 
     | 
    
         
             
            enum class SkTextEncoding;
         
     | 
| 
       30 
31 
     | 
    
         
             
            struct SkFontMetrics;
         
     | 
| 
       31 
32 
     | 
    
         | 
| 
      
 33 
     | 
    
         
            +
            namespace skcpu { class GlyphRunListPainter; }
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
       32 
35 
     | 
    
         
             
            /** \class SkFont
         
     | 
| 
       33 
36 
     | 
    
         
             
                SkFont controls options applied when drawing and measuring text.
         
     | 
| 
       34 
37 
     | 
    
         
             
            */
         
     | 
| 
         @@ -48,10 +51,10 @@ public: 
     | 
|
| 
       48 
51 
     | 
    
         
             
                */
         
     | 
| 
       49 
52 
     | 
    
         
             
                SkFont();
         
     | 
| 
       50 
53 
     | 
    
         | 
| 
       51 
     | 
    
         
            -
                /** Constructs SkFont with default values with SkTypeface and size 
     | 
| 
      
 54 
     | 
    
         
            +
                /** Constructs SkFont with default values with SkTypeface and size.
         
     | 
| 
       52 
55 
     | 
    
         | 
| 
       53 
56 
     | 
    
         
             
                    @param typeface  font and style used to draw and measure text
         
     | 
| 
       54 
     | 
    
         
            -
                    @param size       
     | 
| 
      
 57 
     | 
    
         
            +
                    @param size      EM size in local coordinate units
         
     | 
| 
       55 
58 
     | 
    
         
             
                    @return          initialized SkFont
         
     | 
| 
       56 
59 
     | 
    
         
             
                */
         
     | 
| 
       57 
60 
     | 
    
         
             
                SkFont(sk_sp<SkTypeface> typeface, SkScalar size);
         
     | 
| 
         @@ -69,7 +72,7 @@ public: 
     | 
|
| 
       69 
72 
     | 
    
         
             
                    and expanded fonts. Horizontal skew emulates oblique fonts.
         
     | 
| 
       70 
73 
     | 
    
         | 
| 
       71 
74 
     | 
    
         
             
                    @param typeface  font and style used to draw and measure text
         
     | 
| 
       72 
     | 
    
         
            -
                    @param size       
     | 
| 
      
 75 
     | 
    
         
            +
                    @param size      EM size in local coordinate units
         
     | 
| 
       73 
76 
     | 
    
         
             
                    @param scaleX    text horizontal scale
         
     | 
| 
       74 
77 
     | 
    
         
             
                    @param skewX     additional shear on x-axis relative to y-axis
         
     | 
| 
       75 
78 
     | 
    
         
             
                    @return          initialized SkFont
         
     | 
| 
         @@ -196,7 +199,7 @@ public: 
     | 
|
| 
       196 
199 
     | 
    
         
             
                /** Returns a font with the same attributes of this font, but with the specified size.
         
     | 
| 
       197 
200 
     | 
    
         
             
                    Returns nullptr if size is less than zero, infinite, or NaN.
         
     | 
| 
       198 
201 
     | 
    
         | 
| 
       199 
     | 
    
         
            -
                    @param size   
     | 
| 
      
 202 
     | 
    
         
            +
                    @param size  EM size in local coordinate units
         
     | 
| 
       200 
203 
     | 
    
         
             
                    @return      initialized SkFont
         
     | 
| 
       201 
204 
     | 
    
         
             
                 */
         
     | 
| 
       202 
205 
     | 
    
         
             
                SkFont makeWithSize(SkScalar size) const;
         
     | 
| 
         @@ -210,9 +213,10 @@ public: 
     | 
|
| 
       210 
213 
     | 
    
         
             
                    return fTypeface.get();
         
     | 
| 
       211 
214 
     | 
    
         
             
                }
         
     | 
| 
       212 
215 
     | 
    
         | 
| 
       213 
     | 
    
         
            -
                /**  
     | 
| 
      
 216 
     | 
    
         
            +
                /** Return EM size in local coordinate units.
         
     | 
| 
      
 217 
     | 
    
         
            +
                    See https://skia.org/docs/user/coordinates/#local-coordinates .
         
     | 
| 
       214 
218 
     | 
    
         | 
| 
       215 
     | 
    
         
            -
                    @return   
     | 
| 
      
 219 
     | 
    
         
            +
                    @return  EM size in local coordinate units
         
     | 
| 
       216 
220 
     | 
    
         
             
                */
         
     | 
| 
       217 
221 
     | 
    
         
             
                SkScalar    getSize() const { return fSize; }
         
     | 
| 
       218 
222 
     | 
    
         | 
| 
         @@ -247,10 +251,11 @@ public: 
     | 
|
| 
       247 
251 
     | 
    
         
             
                */
         
     | 
| 
       248 
252 
     | 
    
         
             
                void setTypeface(sk_sp<SkTypeface> tf);
         
     | 
| 
       249 
253 
     | 
    
         | 
| 
       250 
     | 
    
         
            -
                /** Sets  
     | 
| 
      
 254 
     | 
    
         
            +
                /** Sets the EM size in local coordinate units.
         
     | 
| 
      
 255 
     | 
    
         
            +
                    See https://skia.org/docs/user/coordinates/#local-coordinates .
         
     | 
| 
       251 
256 
     | 
    
         
             
                    Has no effect if textSize is not greater than or equal to zero.
         
     | 
| 
       252 
257 
     | 
    
         | 
| 
       253 
     | 
    
         
            -
                    @param textSize   
     | 
| 
      
 258 
     | 
    
         
            +
                    @param textSize  EM size in local coordinate units
         
     | 
| 
       254 
259 
     | 
    
         
             
                */
         
     | 
| 
       255 
260 
     | 
    
         
             
                void setSize(SkScalar textSize);
         
     | 
| 
       256 
261 
     | 
    
         | 
| 
         @@ -428,16 +433,18 @@ public: 
     | 
|
| 
       428 
433 
     | 
    
         
             
                                                    SkScalar top, SkScalar bottom,
         
     | 
| 
       429 
434 
     | 
    
         
             
                                                    const SkPaint* = nullptr) const;
         
     | 
| 
       430 
435 
     | 
    
         | 
| 
       431 
     | 
    
         
            -
                 
     | 
| 
       432 
     | 
    
         
            -
             
     | 
| 
       433 
     | 
    
         
            -
             
     | 
| 
       434 
     | 
    
         
            -
             
     | 
| 
       435 
     | 
    
         
            -
             
     | 
| 
       436 
     | 
    
         
            -
             
     | 
| 
       437 
     | 
    
         
            -
                    @param path     pointer to existing SkPath
         
     | 
| 
       438 
     | 
    
         
            -
                    @return         true if glyphID is described by path
         
     | 
| 
      
 436 
     | 
    
         
            +
                /*
         
     | 
| 
      
 437 
     | 
    
         
            +
                 * If the specified glyph can be represented as a path, return its path.
         
     | 
| 
      
 438 
     | 
    
         
            +
                 * If it is not (e.g. it is represented with a bitmap) return {}.
         
     | 
| 
      
 439 
     | 
    
         
            +
                 *
         
     | 
| 
      
 440 
     | 
    
         
            +
                 * Note: an 'empty' glyph (e.g. what a space " " character might map to) can return
         
     | 
| 
      
 441 
     | 
    
         
            +
                 * a path, but that path may have zero contours.
         
     | 
| 
       439 
442 
     | 
    
         
             
                 */
         
     | 
| 
      
 443 
     | 
    
         
            +
                std::optional<SkPath> getPath(SkGlyphID glyphID) const;
         
     | 
| 
      
 444 
     | 
    
         
            +
             
     | 
| 
      
 445 
     | 
    
         
            +
            #ifndef SK_HIDE_PATH_EDIT_METHODS
         
     | 
| 
       440 
446 
     | 
    
         
             
                bool getPath(SkGlyphID glyphID, SkPath* path) const;
         
     | 
| 
      
 447 
     | 
    
         
            +
            #endif
         
     | 
| 
       441 
448 
     | 
    
         | 
| 
       442 
449 
     | 
    
         
             
                /** Returns path corresponding to glyph array.
         
     | 
| 
       443 
450 
     | 
    
         | 
| 
         @@ -560,7 +567,7 @@ private: 
     | 
|
| 
       560 
567 
     | 
    
         
             
                bool hasSomeAntiAliasing() const;
         
     | 
| 
       561 
568 
     | 
    
         | 
| 
       562 
569 
     | 
    
         
             
                friend class SkFontPriv;
         
     | 
| 
       563 
     | 
    
         
            -
                friend class  
     | 
| 
      
 570 
     | 
    
         
            +
                friend class skcpu::GlyphRunListPainter;
         
     | 
| 
       564 
571 
     | 
    
         
             
                friend class SkStrikeSpec;
         
     | 
| 
       565 
572 
     | 
    
         
             
                friend class SkRemoteGlyphCacheTest;
         
     | 
| 
       566 
573 
     | 
    
         
             
            };
         
     | 
| 
         @@ -21,7 +21,6 @@ 
     | 
|
| 
       21 
21 
     | 
    
         
             
            #include <optional>
         
     | 
| 
       22 
22 
     | 
    
         | 
| 
       23 
23 
     | 
    
         
             
            class GrDirectContext;
         
     | 
| 
       24 
     | 
    
         
            -
            class GrRecordingContext;
         
     | 
| 
       25 
24 
     | 
    
         
             
            class SkBitmap;
         
     | 
| 
       26 
25 
     | 
    
         
             
            class SkColorSpace;
         
     | 
| 
       27 
26 
     | 
    
         
             
            class SkData;
         
     | 
| 
         @@ -43,8 +42,6 @@ enum class SkTileMode; 
     | 
|
| 
       43 
42 
     | 
    
         
             
            struct SkIPoint;
         
     | 
| 
       44 
43 
     | 
    
         
             
            struct SkSamplingOptions;
         
     | 
| 
       45 
44 
     | 
    
         | 
| 
       46 
     | 
    
         
            -
            namespace skgpu::graphite { class Recorder; }
         
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
45 
     | 
    
         
             
            namespace SkImages {
         
     | 
| 
       49 
46 
     | 
    
         | 
| 
       50 
47 
     | 
    
         
             
            /** Caller data passed to RasterReleaseProc; may be nullptr. */
         
     | 
| 
         @@ -435,8 +432,8 @@ public: 
     | 
|
| 
       435 
432 
     | 
    
         
             
                virtual size_t textureSize() const = 0;
         
     | 
| 
       436 
433 
     | 
    
         | 
| 
       437 
434 
     | 
    
         
             
                /** Returns true if SkImage can be drawn on either raster surface or GPU surface.
         
     | 
| 
       438 
     | 
    
         
            -
                    If  
     | 
| 
       439 
     | 
    
         
            -
                    otherwise, tests if SkImage draws on  
     | 
| 
      
 435 
     | 
    
         
            +
                    If recorder is nullptr, tests if SkImage draws on raster surface;
         
     | 
| 
      
 436 
     | 
    
         
            +
                    otherwise, tests if SkImage draws on the associated GPU surface.
         
     | 
| 
       440 
437 
     | 
    
         | 
| 
       441 
438 
     | 
    
         
             
                    SkImage backed by GPU texture may become invalid if associated context is
         
     | 
| 
       442 
439 
     | 
    
         
             
                    invalid. lazy image may be invalid and may not draw to raster surface or
         
     | 
| 
         @@ -447,7 +444,6 @@ public: 
     | 
|
| 
       447 
444 
     | 
    
         | 
| 
       448 
445 
     | 
    
         
             
                    example: https://fiddle.skia.org/c/@Image_isValid
         
     | 
| 
       449 
446 
     | 
    
         
             
                */
         
     | 
| 
       450 
     | 
    
         
            -
                virtual bool isValid(GrRecordingContext* context) const = 0;
         
     | 
| 
       451 
447 
     | 
    
         
             
                virtual bool isValid(SkRecorder*) const = 0;
         
     | 
| 
       452 
448 
     | 
    
         | 
| 
       453 
449 
     | 
    
         
             
                /** \enum SkImage::CachingHint
         
     | 
| 
         @@ -745,29 +741,8 @@ public: 
     | 
|
| 
       745 
741 
     | 
    
         
             
                */
         
     | 
| 
       746 
742 
     | 
    
         
             
                sk_sp<SkData> refEncodedData() const;
         
     | 
| 
       747 
743 
     | 
    
         | 
| 
       748 
     | 
    
         
            -
                /** Returns subset of this image.
         
     | 
| 
       749 
     | 
    
         
            -
             
     | 
| 
       750 
     | 
    
         
            -
                    Returns nullptr if any of the following are true:
         
     | 
| 
       751 
     | 
    
         
            -
                      - Subset is empty
         
     | 
| 
       752 
     | 
    
         
            -
                      - Subset is not contained inside the image's bounds
         
     | 
| 
       753 
     | 
    
         
            -
                      - Pixels in the source image could not be read or copied
         
     | 
| 
       754 
     | 
    
         
            -
                      - This image is texture-backed and the provided context is null or does not match
         
     | 
| 
       755 
     | 
    
         
            -
                        the source image's context.
         
     | 
| 
       756 
     | 
    
         
            -
             
     | 
| 
       757 
     | 
    
         
            -
                    If the source image was texture-backed, the resulting image will be texture-backed also.
         
     | 
| 
       758 
     | 
    
         
            -
                    Otherwise, the returned image will be raster-backed.
         
     | 
| 
       759 
     | 
    
         
            -
             
     | 
| 
       760 
     | 
    
         
            -
                    @param direct  the GrDirectContext of the source image (nullptr is ok if the source image
         
     | 
| 
       761 
     | 
    
         
            -
                                   is not texture-backed).
         
     | 
| 
       762 
     | 
    
         
            -
                    @param subset  bounds of returned SkImage
         
     | 
| 
       763 
     | 
    
         
            -
                    @return        the subsetted image, or nullptr
         
     | 
| 
       764 
     | 
    
         
            -
             
     | 
| 
       765 
     | 
    
         
            -
                    example: https://fiddle.skia.org/c/@Image_makeSubset
         
     | 
| 
       766 
     | 
    
         
            -
                */
         
     | 
| 
       767 
     | 
    
         
            -
                virtual sk_sp<SkImage> makeSubset(GrDirectContext* direct, const SkIRect& subset) const = 0;
         
     | 
| 
       768 
     | 
    
         
            -
             
     | 
| 
       769 
744 
     | 
    
         
             
                struct RequiredProperties {
         
     | 
| 
       770 
     | 
    
         
            -
                    bool fMipmapped;
         
     | 
| 
      
 745 
     | 
    
         
            +
                    bool fMipmapped = false;
         
     | 
| 
       771 
746 
     | 
    
         | 
| 
       772 
747 
     | 
    
         
             
                    bool operator==(const RequiredProperties& other) const {
         
     | 
| 
       773 
748 
     | 
    
         
             
                        return fMipmapped == other.fMipmapped;
         
     | 
| 
         @@ -798,7 +773,7 @@ public: 
     | 
|
| 
       798 
773 
     | 
    
         
             
                    @param RequiredProperties  properties the returned SkImage must possess (e.g. mipmaps)
         
     | 
| 
       799 
774 
     | 
    
         
             
                    @return                    the subsetted image, or nullptr
         
     | 
| 
       800 
775 
     | 
    
         
             
                */
         
     | 
| 
       801 
     | 
    
         
            -
                virtual sk_sp<SkImage> makeSubset( 
     | 
| 
      
 776 
     | 
    
         
            +
                virtual sk_sp<SkImage> makeSubset(SkRecorder*,
         
     | 
| 
       802 
777 
     | 
    
         
             
                                                  const SkIRect& subset,
         
     | 
| 
       803 
778 
     | 
    
         
             
                                                  RequiredProperties) const = 0;
         
     | 
| 
       804 
779 
     | 
    
         | 
| 
         @@ -881,25 +856,6 @@ public: 
     | 
|
| 
       881 
856 
     | 
    
         
             
                */
         
     | 
| 
       882 
857 
     | 
    
         
             
                virtual bool isLazyGenerated() const = 0;
         
     | 
| 
       883 
858 
     | 
    
         | 
| 
       884 
     | 
    
         
            -
                /** Creates SkImage in target SkColorSpace.
         
     | 
| 
       885 
     | 
    
         
            -
                    Returns nullptr if SkImage could not be created.
         
     | 
| 
       886 
     | 
    
         
            -
             
     | 
| 
       887 
     | 
    
         
            -
                    Returns original SkImage if it is in target SkColorSpace.
         
     | 
| 
       888 
     | 
    
         
            -
                    Otherwise, converts pixels from SkImage SkColorSpace to target SkColorSpace.
         
     | 
| 
       889 
     | 
    
         
            -
                    If SkImage colorSpace() returns nullptr, SkImage SkColorSpace is assumed to be sRGB.
         
     | 
| 
       890 
     | 
    
         
            -
             
     | 
| 
       891 
     | 
    
         
            -
                    If this image is texture-backed, the context parameter is required and must match the
         
     | 
| 
       892 
     | 
    
         
            -
                    context of the source image.
         
     | 
| 
       893 
     | 
    
         
            -
             
     | 
| 
       894 
     | 
    
         
            -
                    @param direct  The GrDirectContext in play, if it exists
         
     | 
| 
       895 
     | 
    
         
            -
                    @param target  SkColorSpace describing color range of returned SkImage
         
     | 
| 
       896 
     | 
    
         
            -
                    @return        created SkImage in target SkColorSpace
         
     | 
| 
       897 
     | 
    
         
            -
             
     | 
| 
       898 
     | 
    
         
            -
                    example: https://fiddle.skia.org/c/@Image_makeColorSpace
         
     | 
| 
       899 
     | 
    
         
            -
                */
         
     | 
| 
       900 
     | 
    
         
            -
                virtual sk_sp<SkImage> makeColorSpace(GrDirectContext* direct,
         
     | 
| 
       901 
     | 
    
         
            -
                                                      sk_sp<SkColorSpace> target) const = 0;
         
     | 
| 
       902 
     | 
    
         
            -
             
     | 
| 
       903 
859 
     | 
    
         
             
                /** Creates SkImage in target SkColorSpace.
         
     | 
| 
       904 
860 
     | 
    
         
             
                    Returns nullptr if SkImage could not be created.
         
     | 
| 
       905 
861 
     | 
    
         | 
| 
         @@ -918,24 +874,6 @@ public: 
     | 
|
| 
       918 
874 
     | 
    
         
             
                                                      sk_sp<SkColorSpace> targetColorSpace,
         
     | 
| 
       919 
875 
     | 
    
         
             
                                                      RequiredProperties) const = 0;
         
     | 
| 
       920 
876 
     | 
    
         | 
| 
       921 
     | 
    
         
            -
                /** Experimental.
         
     | 
| 
       922 
     | 
    
         
            -
                    Creates SkImage in target SkColorType and SkColorSpace.
         
     | 
| 
       923 
     | 
    
         
            -
                    Returns nullptr if SkImage could not be created.
         
     | 
| 
       924 
     | 
    
         
            -
             
     | 
| 
       925 
     | 
    
         
            -
                    Returns original SkImage if it is in target SkColorType and SkColorSpace.
         
     | 
| 
       926 
     | 
    
         
            -
             
     | 
| 
       927 
     | 
    
         
            -
                    If this image is texture-backed, the context parameter is required and must match the
         
     | 
| 
       928 
     | 
    
         
            -
                    context of the source image.
         
     | 
| 
       929 
     | 
    
         
            -
             
     | 
| 
       930 
     | 
    
         
            -
                    @param direct           The GrDirectContext in play, if it exists
         
     | 
| 
       931 
     | 
    
         
            -
                    @param targetColorType  SkColorType of returned SkImage
         
     | 
| 
       932 
     | 
    
         
            -
                    @param targetColorSpace SkColorSpace of returned SkImage
         
     | 
| 
       933 
     | 
    
         
            -
                    @return                 created SkImage in target SkColorType and SkColorSpace
         
     | 
| 
       934 
     | 
    
         
            -
                */
         
     | 
| 
       935 
     | 
    
         
            -
                virtual sk_sp<SkImage> makeColorTypeAndColorSpace(GrDirectContext* direct,
         
     | 
| 
       936 
     | 
    
         
            -
                                                                  SkColorType targetColorType,
         
     | 
| 
       937 
     | 
    
         
            -
                                                                  sk_sp<SkColorSpace> targetCS) const = 0;
         
     | 
| 
       938 
     | 
    
         
            -
             
     | 
| 
       939 
877 
     | 
    
         
             
                /** Experimental.
         
     | 
| 
       940 
878 
     | 
    
         
             
                    Creates SkImage in target SkColorType and SkColorSpace.
         
     | 
| 
       941 
879 
     | 
    
         
             
                    Returns nullptr if SkImage could not be created.
         
     | 
| 
         @@ -18,7 +18,6 @@ 
     | 
|
| 
       18 
18 
     | 
    
         
             
            #include <cstddef>
         
     | 
| 
       19 
19 
     | 
    
         
             
            #include <cstdint>
         
     | 
| 
       20 
20 
     | 
    
         | 
| 
       21 
     | 
    
         
            -
            class GrRecordingContext;
         
     | 
| 
       22 
21 
     | 
    
         
             
            class SkRecorder;
         
     | 
| 
       23 
22 
     | 
    
         | 
| 
       24 
23 
     | 
    
         
             
            class SK_API SkImageGenerator {
         
     | 
| 
         @@ -51,9 +50,6 @@ public: 
     | 
|
| 
       51 
50 
     | 
    
         
             
                 *  Can this generator be used to produce images that will be drawable to the specified context
         
     | 
| 
       52 
51 
     | 
    
         
             
                 *  (or to CPU, if context is nullptr)?
         
     | 
| 
       53 
52 
     | 
    
         
             
                 */
         
     | 
| 
       54 
     | 
    
         
            -
                bool isValid(GrRecordingContext* context) const {
         
     | 
| 
       55 
     | 
    
         
            -
                    return this->onIsValid(context);
         
     | 
| 
       56 
     | 
    
         
            -
                }
         
     | 
| 
       57 
53 
     | 
    
         
             
                bool isValid(SkRecorder* recorder) const { return this->onIsValid(recorder); }
         
     | 
| 
       58 
54 
     | 
    
         | 
| 
       59 
55 
     | 
    
         
             
                /**
         
     | 
| 
         @@ -125,7 +121,6 @@ protected: 
     | 
|
| 
       125 
121 
     | 
    
         
             
                virtual sk_sp<SkData> onRefEncodedData() { return nullptr; }
         
     | 
| 
       126 
122 
     | 
    
         
             
                struct Options {};
         
     | 
| 
       127 
123 
     | 
    
         
             
                virtual bool onGetPixels(const SkImageInfo&, void*, size_t, const Options&) { return false; }
         
     | 
| 
       128 
     | 
    
         
            -
                virtual bool onIsValid(GrRecordingContext*) const { return true; }
         
     | 
| 
       129 
124 
     | 
    
         
             
                virtual bool onIsValid(SkRecorder*) const { return true; }
         
     | 
| 
       130 
125 
     | 
    
         
             
                virtual bool onIsProtected() const { return false; }
         
     | 
| 
       131 
126 
     | 
    
         
             
                virtual bool onQueryYUVAInfo(const SkYUVAPixmapInfo::SupportedDataTypes&,
         
     | 
| 
         @@ -20,6 +20,7 @@ 
     | 
|
| 
       20 
20 
     | 
    
         | 
| 
       21 
21 
     | 
    
         
             
            #include <cstdint>
         
     | 
| 
       22 
22 
     | 
    
         
             
            #include <cstring>
         
     | 
| 
      
 23 
     | 
    
         
            +
            #include <optional>
         
     | 
| 
       23 
24 
     | 
    
         | 
| 
       24 
25 
     | 
    
         
             
            struct SkRSXform;
         
     | 
| 
       25 
26 
     | 
    
         
             
            struct SkSize;
         
     | 
| 
         @@ -27,16 +28,16 @@ struct SkSize; 
     | 
|
| 
       27 
28 
     | 
    
         
             
            // Remove when clients are updated to live without this
         
     | 
| 
       28 
29 
     | 
    
         
             
            #define SK_SUPPORT_LEGACY_MATRIX_RECTTORECT
         
     | 
| 
       29 
30 
     | 
    
         | 
| 
       30 
     | 
    
         
            -
             
     | 
| 
       31 
     | 
    
         
            -
              
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
              
     | 
| 
       35 
     | 
    
         
            -
             */
         
     | 
| 
      
 31 
     | 
    
         
            +
            #ifndef SK_SUPPORT_LEGACY_APPLYPERSPECTIVECLIP
         
     | 
| 
      
 32 
     | 
    
         
            +
                #define SK_SUPPORT_LEGACY_APPLYPERSPECTIVECLIP
         
     | 
| 
      
 33 
     | 
    
         
            +
            #endif
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
            #ifdef SK_SUPPORT_LEGACY_APPLYPERSPECTIVECLIP
         
     | 
| 
       36 
36 
     | 
    
         
             
            enum class SkApplyPerspectiveClip {
         
     | 
| 
       37 
37 
     | 
    
         
             
                kNo,    //!< Don't pre-clip the geometry before applying the (perspective) matrix
         
     | 
| 
       38 
38 
     | 
    
         
             
                kYes,   //!< Do pre-clip the geometry before applying the (perspective) matrix
         
     | 
| 
       39 
39 
     | 
    
         
             
            };
         
     | 
| 
      
 40 
     | 
    
         
            +
            #endif
         
     | 
| 
       40 
41 
     | 
    
         | 
| 
       41 
42 
     | 
    
         
             
            /** \class SkMatrix
         
     | 
| 
       42 
43 
     | 
    
         
             
                SkMatrix holds a 3x3 matrix for transforming coordinates. This allows mapping
         
     | 
| 
         @@ -97,6 +98,8 @@ public: 
     | 
|
| 
       97 
98 
     | 
    
         
             
                [[nodiscard]] static SkMatrix Translate(SkVector t) { return Translate(t.x(), t.y()); }
         
     | 
| 
       98 
99 
     | 
    
         
             
                [[nodiscard]] static SkMatrix Translate(SkIVector t) { return Translate(t.x(), t.y()); }
         
     | 
| 
       99 
100 
     | 
    
         | 
| 
      
 101 
     | 
    
         
            +
                [[nodiscard]] static SkMatrix ScaleTranslate(float sx, float sy, float tx, float ty);
         
     | 
| 
      
 102 
     | 
    
         
            +
             
     | 
| 
       100 
103 
     | 
    
         
             
                /** Sets SkMatrix to rotate by |deg| about a pivot point at (0, 0).
         
     | 
| 
       101 
104 
     | 
    
         | 
| 
       102 
105 
     | 
    
         
             
                    @param deg  rotation angle in degrees (positive rotates clockwise)
         
     | 
| 
         @@ -141,25 +144,6 @@ public: 
     | 
|
| 
       141 
144 
     | 
    
         
             
                    kEnd_ScaleToFit,    //!< scales and aligns to right and bottom
         
     | 
| 
       142 
145 
     | 
    
         
             
                };
         
     | 
| 
       143 
146 
     | 
    
         | 
| 
       144 
     | 
    
         
            -
                /** Returns SkMatrix set to scale and translate src to dst. ScaleToFit selects
         
     | 
| 
       145 
     | 
    
         
            -
                    whether mapping completely fills dst or preserves the aspect ratio, and how to
         
     | 
| 
       146 
     | 
    
         
            -
                    align src within dst. Returns the identity SkMatrix if src is empty. If dst is
         
     | 
| 
       147 
     | 
    
         
            -
                    empty, returns SkMatrix set to:
         
     | 
| 
       148 
     | 
    
         
            -
             
     | 
| 
       149 
     | 
    
         
            -
                        | 0 0 0 |
         
     | 
| 
       150 
     | 
    
         
            -
                        | 0 0 0 |
         
     | 
| 
       151 
     | 
    
         
            -
                        | 0 0 1 |
         
     | 
| 
       152 
     | 
    
         
            -
             
     | 
| 
       153 
     | 
    
         
            -
                    @param src  SkRect to map from
         
     | 
| 
       154 
     | 
    
         
            -
                    @param dst  SkRect to map to
         
     | 
| 
       155 
     | 
    
         
            -
                    @param mode How to handle the mapping
         
     | 
| 
       156 
     | 
    
         
            -
                    @return     SkMatrix mapping src to dst
         
     | 
| 
       157 
     | 
    
         
            -
                */
         
     | 
| 
       158 
     | 
    
         
            -
                [[nodiscard]] static SkMatrix RectToRect(const SkRect& src, const SkRect& dst,
         
     | 
| 
       159 
     | 
    
         
            -
                                                         ScaleToFit mode = kFill_ScaleToFit) {
         
     | 
| 
       160 
     | 
    
         
            -
                    return MakeRectToRect(src, dst, mode);
         
     | 
| 
       161 
     | 
    
         
            -
                }
         
     | 
| 
       162 
     | 
    
         
            -
             
     | 
| 
       163 
147 
     | 
    
         
             
                /** Sets SkMatrix to:
         
     | 
| 
       164 
148 
     | 
    
         | 
| 
       165 
149 
     | 
    
         
             
                        | scaleX  skewX transX |
         
     | 
| 
         @@ -1137,82 +1121,73 @@ public: 
     | 
|
| 
       1137 
1121 
     | 
    
         
             
                */
         
     | 
| 
       1138 
1122 
     | 
    
         
             
                SkMatrix& postConcat(const SkMatrix& other);
         
     | 
| 
       1139 
1123 
     | 
    
         | 
| 
       1140 
     | 
    
         
            -
             
     | 
| 
       1141 
     | 
    
         
            -
             
     | 
| 
       1142 
     | 
    
         
            -
             
     | 
| 
       1143 
     | 
    
         
            -
             
     | 
| 
       1144 
     | 
    
         
            -
             
     | 
| 
       1145 
     | 
    
         
            -
             
     | 
| 
       1146 
     | 
    
         
            -
                    Returns true if dst is empty, and sets SkMatrix to:
         
     | 
| 
       1147 
     | 
    
         
            -
             
     | 
| 
       1148 
     | 
    
         
            -
                        | 0 0 0 |
         
     | 
| 
       1149 
     | 
    
         
            -
                        | 0 0 0 |
         
     | 
| 
       1150 
     | 
    
         
            -
                        | 0 0 1 |
         
     | 
| 
       1151 
     | 
    
         
            -
             
     | 
| 
       1152 
     | 
    
         
            -
                    @param src  SkRect to map from
         
     | 
| 
       1153 
     | 
    
         
            -
                    @param dst  SkRect to map to
         
     | 
| 
       1154 
     | 
    
         
            -
                    @return     true if SkMatrix can represent SkRect mapping
         
     | 
| 
       1155 
     | 
    
         
            -
             
     | 
| 
       1156 
     | 
    
         
            -
                    example: https://fiddle.skia.org/c/@Matrix_setRectToRect
         
     | 
| 
       1157 
     | 
    
         
            -
                */
         
     | 
| 
       1158 
     | 
    
         
            -
                bool setRectToRect(const SkRect& src, const SkRect& dst, ScaleToFit stf);
         
     | 
| 
      
 1124 
     | 
    
         
            +
                /** If possible, return a matrix that will transform the src rect to the dst rect.
         
     | 
| 
      
 1125 
     | 
    
         
            +
                 *  If the src is empty, this will return {}.
         
     | 
| 
      
 1126 
     | 
    
         
            +
                 *  If the dst is empty, this will return the zero matrix (degenerate).
         
     | 
| 
      
 1127 
     | 
    
         
            +
                 */
         
     | 
| 
      
 1128 
     | 
    
         
            +
                static std::optional<SkMatrix> Rect2Rect(const SkRect& src, const SkRect& dst,
         
     | 
| 
      
 1129 
     | 
    
         
            +
                                                         ScaleToFit = kFill_ScaleToFit);
         
     | 
| 
       1159 
1130 
     | 
    
         | 
| 
       1160 
     | 
    
         
            -
                 
     | 
| 
       1161 
     | 
    
         
            -
             
     | 
| 
       1162 
     | 
    
         
            -
                     
     | 
| 
       1163 
     | 
    
         
            -
             
     | 
| 
      
 1131 
     | 
    
         
            +
                static SkMatrix RectToRectOrIdentity(const SkRect& src, const SkRect& dst,
         
     | 
| 
      
 1132 
     | 
    
         
            +
                                                     ScaleToFit stf = kFill_ScaleToFit) {
         
     | 
| 
      
 1133 
     | 
    
         
            +
                    return Rect2Rect(src, dst, stf).value_or(SkMatrix::I());
         
     | 
| 
      
 1134 
     | 
    
         
            +
                }
         
     | 
| 
       1164 
1135 
     | 
    
         | 
| 
       1165 
     | 
    
         
            -
             
     | 
| 
       1166 
     | 
    
         
            -
             
     | 
| 
       1167 
     | 
    
         
            -
             
     | 
| 
      
 1136 
     | 
    
         
            +
            #ifdef SK_SUPPORT_LEGACY_MATRIX_RECTTORECT
         
     | 
| 
      
 1137 
     | 
    
         
            +
                bool setRectToRect(const SkRect& src, const SkRect& dst, ScaleToFit stf) {
         
     | 
| 
      
 1138 
     | 
    
         
            +
                    if (auto mx = Rect2Rect(src, dst, stf)) {
         
     | 
| 
      
 1139 
     | 
    
         
            +
                        *this = *mx;
         
     | 
| 
      
 1140 
     | 
    
         
            +
                        return true;
         
     | 
| 
      
 1141 
     | 
    
         
            +
                    }
         
     | 
| 
      
 1142 
     | 
    
         
            +
                    this->reset();
         
     | 
| 
      
 1143 
     | 
    
         
            +
                    return false;
         
     | 
| 
      
 1144 
     | 
    
         
            +
                }
         
     | 
| 
       1168 
1145 
     | 
    
         | 
| 
       1169 
     | 
    
         
            -
                    @param src  SkRect to map from
         
     | 
| 
       1170 
     | 
    
         
            -
                    @param dst  SkRect to map to
         
     | 
| 
       1171 
     | 
    
         
            -
                    @return     SkMatrix mapping src to dst
         
     | 
| 
       1172 
     | 
    
         
            -
                */
         
     | 
| 
       1173 
1146 
     | 
    
         
             
                static SkMatrix MakeRectToRect(const SkRect& src, const SkRect& dst, ScaleToFit stf) {
         
     | 
| 
       1174 
     | 
    
         
            -
                     
     | 
| 
       1175 
     | 
    
         
            -
             
     | 
| 
       1176 
     | 
    
         
            -
                     
     | 
| 
      
 1147 
     | 
    
         
            +
                    if (auto mx = Rect2Rect(src, dst, stf)) {
         
     | 
| 
      
 1148 
     | 
    
         
            +
                        return *mx;
         
     | 
| 
      
 1149 
     | 
    
         
            +
                    }
         
     | 
| 
      
 1150 
     | 
    
         
            +
                    return SkMatrix::I();
         
     | 
| 
       1177 
1151 
     | 
    
         
             
                }
         
     | 
| 
       1178 
     | 
    
         
            -
            #ifndef SK_SUPPORT_LEGACY_MATRIX_RECTTORECT
         
     | 
| 
       1179 
     | 
    
         
            -
            public:
         
     | 
| 
       1180 
     | 
    
         
            -
            #endif
         
     | 
| 
       1181 
1152 
     | 
    
         | 
| 
       1182 
     | 
    
         
            -
                 
     | 
| 
      
 1153 
     | 
    
         
            +
                [[nodiscard]] static SkMatrix RectToRect(const SkRect& src, const SkRect& dst,
         
     | 
| 
      
 1154 
     | 
    
         
            +
                                                         ScaleToFit mode = kFill_ScaleToFit) {
         
     | 
| 
      
 1155 
     | 
    
         
            +
                    return MakeRectToRect(src, dst, mode);
         
     | 
| 
      
 1156 
     | 
    
         
            +
                }
         
     | 
| 
      
 1157 
     | 
    
         
            +
            #endif
         
     | 
| 
       1183 
1158 
     | 
    
         | 
| 
       1184 
     | 
    
         
            -
             
     | 
| 
       1185 
     | 
    
         
            -
             
     | 
| 
       1186 
     | 
    
         
            -
             
     | 
| 
       1187 
     | 
    
         
            -
             
     | 
| 
       1188 
     | 
    
         
            -
             
     | 
| 
      
 1159 
     | 
    
         
            +
                /** Compute a matrix from two polygons, such that if the matrix was applied
         
     | 
| 
      
 1160 
     | 
    
         
            +
                 *  to the src polygon, it would produce the dst polygon.
         
     | 
| 
      
 1161 
     | 
    
         
            +
                 *
         
     | 
| 
      
 1162 
     | 
    
         
            +
                 *  If the size of the two spans are not equal, or if they are > 4, return {}.
         
     | 
| 
      
 1163 
     | 
    
         
            +
                 *  If the resulting matrix is non-invertible, return {}.
         
     | 
| 
      
 1164 
     | 
    
         
            +
                 *
         
     | 
| 
      
 1165 
     | 
    
         
            +
                 *  example: https://fiddle.skia.org/c/@Matrix_setPolyToPoly
         
     | 
| 
      
 1166 
     | 
    
         
            +
                 */
         
     | 
| 
      
 1167 
     | 
    
         
            +
                static std::optional<SkMatrix> PolyToPoly(SkSpan<const SkPoint> src, SkSpan<const SkPoint> dst);
         
     | 
| 
       1189 
1168 
     | 
    
         | 
| 
       1190 
     | 
    
         
            -
             
     | 
| 
       1191 
     | 
    
         
            -
                     
     | 
| 
       1192 
     | 
    
         
            -
             
     | 
| 
       1193 
     | 
    
         
            -
             
     | 
| 
      
 1169 
     | 
    
         
            +
                bool setPolyToPoly(SkSpan<const SkPoint> src, SkSpan<const SkPoint> dst) {
         
     | 
| 
      
 1170 
     | 
    
         
            +
                    if (auto mx = PolyToPoly(src, dst)) {
         
     | 
| 
      
 1171 
     | 
    
         
            +
                        *this = *mx;
         
     | 
| 
      
 1172 
     | 
    
         
            +
                        return true;
         
     | 
| 
      
 1173 
     | 
    
         
            +
                    }
         
     | 
| 
      
 1174 
     | 
    
         
            +
                    return false;
         
     | 
| 
      
 1175 
     | 
    
         
            +
                }
         
     | 
| 
       1194 
1176 
     | 
    
         | 
| 
       1195 
     | 
    
         
            -
             
     | 
| 
      
 1177 
     | 
    
         
            +
                /*
         
     | 
| 
      
 1178 
     | 
    
         
            +
                 * If this matrix is invertible, return its inverse, else return {}.
         
     | 
| 
       1196 
1179 
     | 
    
         
             
                */
         
     | 
| 
       1197 
     | 
    
         
            -
                 
     | 
| 
       1198 
     | 
    
         
            -
             
     | 
| 
       1199 
     | 
    
         
            -
                /** Sets inverse to reciprocal matrix, returning true if SkMatrix can be inverted.
         
     | 
| 
       1200 
     | 
    
         
            -
                    Geometrically, if SkMatrix maps from source to destination, inverse SkMatrix
         
     | 
| 
       1201 
     | 
    
         
            -
                    maps from destination to source. If SkMatrix can not be inverted, inverse is
         
     | 
| 
       1202 
     | 
    
         
            -
                    unchanged.
         
     | 
| 
      
 1180 
     | 
    
         
            +
                std::optional<SkMatrix> invert() const;
         
     | 
| 
       1203 
1181 
     | 
    
         | 
| 
       1204 
     | 
    
         
            -
             
     | 
| 
       1205 
     | 
    
         
            -
                    @return         true if SkMatrix can be inverted
         
     | 
| 
       1206 
     | 
    
         
            -
                */
         
     | 
| 
      
 1182 
     | 
    
         
            +
                // deprecated
         
     | 
| 
       1207 
1183 
     | 
    
         
             
                [[nodiscard]] bool invert(SkMatrix* inverse) const {
         
     | 
| 
       1208 
     | 
    
         
            -
                     
     | 
| 
       1209 
     | 
    
         
            -
                    if (this->isIdentity()) {
         
     | 
| 
      
 1184 
     | 
    
         
            +
                    if (auto inv = this->invert()) {
         
     | 
| 
       1210 
1185 
     | 
    
         
             
                        if (inverse) {
         
     | 
| 
       1211 
     | 
    
         
            -
                            inverse 
     | 
| 
      
 1186 
     | 
    
         
            +
                            *inverse = *inv;
         
     | 
| 
       1212 
1187 
     | 
    
         
             
                        }
         
     | 
| 
       1213 
1188 
     | 
    
         
             
                        return true;
         
     | 
| 
       1214 
1189 
     | 
    
         
             
                    }
         
     | 
| 
       1215 
     | 
    
         
            -
                    return  
     | 
| 
      
 1190 
     | 
    
         
            +
                    return false;
         
     | 
| 
       1216 
1191 
     | 
    
         
             
                }
         
     | 
| 
       1217 
1192 
     | 
    
         | 
| 
       1218 
1193 
     | 
    
         
             
                /** Fills affine with identity values in column major order.
         
     | 
| 
         @@ -1427,7 +1402,7 @@ public: 
     | 
|
| 
       1427 
1402 
     | 
    
         
             
                             y = this->getTranslateY();
         
     | 
| 
       1428 
1403 
     | 
    
         
             
                    if (this->hasPerspective()) {
         
     | 
| 
       1429 
1404 
     | 
    
         
             
                        SkScalar w = fMat[kMPersp2];
         
     | 
| 
       1430 
     | 
    
         
            -
                        if (w) { w = 1 / w; }
         
     | 
| 
      
 1405 
     | 
    
         
            +
                        if ((bool)w) { w = 1 / w; }
         
     | 
| 
       1431 
1406 
     | 
    
         
             
                        x *= w;
         
     | 
| 
       1432 
1407 
     | 
    
         
             
                        y *= w;
         
     | 
| 
       1433 
1408 
     | 
    
         
             
                    }
         
     | 
| 
         @@ -1529,8 +1504,19 @@ public: 
     | 
|
| 
       1529 
1504 
     | 
    
         | 
| 
       1530 
1505 
     | 
    
         
             
                    example: https://fiddle.skia.org/c/@Matrix_mapRect
         
     | 
| 
       1531 
1506 
     | 
    
         
             
                */
         
     | 
| 
       1532 
     | 
    
         
            -
                bool mapRect(SkRect* dst, const SkRect& src 
     | 
| 
       1533 
     | 
    
         
            -
             
     | 
| 
      
 1507 
     | 
    
         
            +
                bool mapRect(SkRect* dst, const SkRect& src) const;
         
     | 
| 
      
 1508 
     | 
    
         
            +
             
     | 
| 
      
 1509 
     | 
    
         
            +
            #ifdef SK_SUPPORT_LEGACY_APPLYPERSPECTIVECLIP
         
     | 
| 
      
 1510 
     | 
    
         
            +
                bool mapRect(SkRect* dst, const SkRect& src, SkApplyPerspectiveClip) const {
         
     | 
| 
      
 1511 
     | 
    
         
            +
                    return this->mapRect(dst, src);
         
     | 
| 
      
 1512 
     | 
    
         
            +
                }
         
     | 
| 
      
 1513 
     | 
    
         
            +
                bool mapRect(SkRect* rect, SkApplyPerspectiveClip) const {
         
     | 
| 
      
 1514 
     | 
    
         
            +
                    return this->mapRect(rect, *rect);
         
     | 
| 
      
 1515 
     | 
    
         
            +
                }
         
     | 
| 
      
 1516 
     | 
    
         
            +
                SkRect mapRect(const SkRect& src, SkApplyPerspectiveClip) const {
         
     | 
| 
      
 1517 
     | 
    
         
            +
                    return this->mapRect(src);
         
     | 
| 
      
 1518 
     | 
    
         
            +
                }
         
     | 
| 
      
 1519 
     | 
    
         
            +
            #endif
         
     | 
| 
       1534 
1520 
     | 
    
         | 
| 
       1535 
1521 
     | 
    
         
             
                /** Sets rect to bounds of rect corners mapped by SkMatrix.
         
     | 
| 
       1536 
1522 
     | 
    
         
             
                    Returns true if mapped corners are computed rect corners.
         
     | 
| 
         @@ -1541,8 +1527,8 @@ public: 
     | 
|
| 
       1541 
1527 
     | 
    
         
             
                    @param pc    whether to apply perspective clipping
         
     | 
| 
       1542 
1528 
     | 
    
         
             
                    @return      true if result is equivalent to mapped rect
         
     | 
| 
       1543 
1529 
     | 
    
         
             
                */
         
     | 
| 
       1544 
     | 
    
         
            -
                bool mapRect(SkRect* rect 
     | 
| 
       1545 
     | 
    
         
            -
                    return this->mapRect(rect, *rect 
     | 
| 
      
 1530 
     | 
    
         
            +
                bool mapRect(SkRect* rect) const {
         
     | 
| 
      
 1531 
     | 
    
         
            +
                    return this->mapRect(rect, *rect);
         
     | 
| 
       1546 
1532 
     | 
    
         
             
                }
         
     | 
| 
       1547 
1533 
     | 
    
         | 
| 
       1548 
1534 
     | 
    
         
             
                /** Returns bounds of src corners mapped by SkMatrix.
         
     | 
| 
         @@ -1550,10 +1536,9 @@ public: 
     | 
|
| 
       1550 
1536 
     | 
    
         
             
                    @param src  rectangle to map
         
     | 
| 
       1551 
1537 
     | 
    
         
             
                    @return     mapped bounds
         
     | 
| 
       1552 
1538 
     | 
    
         
             
                */
         
     | 
| 
       1553 
     | 
    
         
            -
                SkRect mapRect(const SkRect& src 
     | 
| 
       1554 
     | 
    
         
            -
                               SkApplyPerspectiveClip pc = SkApplyPerspectiveClip::kYes) const {
         
     | 
| 
      
 1539 
     | 
    
         
            +
                SkRect mapRect(const SkRect& src) const {
         
     | 
| 
       1555 
1540 
     | 
    
         
             
                    SkRect dst;
         
     | 
| 
       1556 
     | 
    
         
            -
                    (void)this->mapRect(&dst, src 
     | 
| 
      
 1541 
     | 
    
         
            +
                    (void)this->mapRect(&dst, src);
         
     | 
| 
       1557 
1542 
     | 
    
         
             
                    return dst;
         
     | 
| 
       1558 
1543 
     | 
    
         
             
                }
         
     | 
| 
       1559 
1544 
     | 
    
         | 
| 
         @@ -1587,8 +1572,7 @@ public: 
     | 
|
| 
       1587 
1572 
     | 
    
         
             
                */
         
     | 
| 
       1588 
1573 
     | 
    
         
             
                void mapRectToQuad(SkPoint dst[4], const SkRect& rect) const {
         
     | 
| 
       1589 
1574 
     | 
    
         
             
                    // This could potentially be faster if we only transformed each x and y of the rect once.
         
     | 
| 
       1590 
     | 
    
         
            -
                    rect.toQuad( 
     | 
| 
       1591 
     | 
    
         
            -
                    this->mapPoints({dst, 4});
         
     | 
| 
      
 1575 
     | 
    
         
            +
                    this->mapPoints({dst, 4}, rect.toQuad());
         
     | 
| 
       1592 
1576 
     | 
    
         
             
                }
         
     | 
| 
       1593 
1577 
     | 
    
         | 
| 
       1594 
1578 
     | 
    
         
             
                /** Sets dst to bounds of src corners mapped by SkMatrix. If matrix contains
         
     | 
| 
         @@ -1769,29 +1753,7 @@ public: 
     | 
|
| 
       1769 
1753 
     | 
    
         
             
                    @param ty  vertical translation to store
         
     | 
| 
       1770 
1754 
     | 
    
         
             
                */
         
     | 
| 
       1771 
1755 
     | 
    
         
             
                void setScaleTranslate(SkScalar sx, SkScalar sy, SkScalar tx, SkScalar ty) {
         
     | 
| 
       1772 
     | 
    
         
            -
                     
     | 
| 
       1773 
     | 
    
         
            -
                    fMat[kMSkewX]  = 0;
         
     | 
| 
       1774 
     | 
    
         
            -
                    fMat[kMTransX] = tx;
         
     | 
| 
       1775 
     | 
    
         
            -
             
     | 
| 
       1776 
     | 
    
         
            -
                    fMat[kMSkewY]  = 0;
         
     | 
| 
       1777 
     | 
    
         
            -
                    fMat[kMScaleY] = sy;
         
     | 
| 
       1778 
     | 
    
         
            -
                    fMat[kMTransY] = ty;
         
     | 
| 
       1779 
     | 
    
         
            -
             
     | 
| 
       1780 
     | 
    
         
            -
                    fMat[kMPersp0] = 0;
         
     | 
| 
       1781 
     | 
    
         
            -
                    fMat[kMPersp1] = 0;
         
     | 
| 
       1782 
     | 
    
         
            -
                    fMat[kMPersp2] = 1;
         
     | 
| 
       1783 
     | 
    
         
            -
             
     | 
| 
       1784 
     | 
    
         
            -
                    int mask = 0;
         
     | 
| 
       1785 
     | 
    
         
            -
                    if (sx != 1 || sy != 1) {
         
     | 
| 
       1786 
     | 
    
         
            -
                        mask |= kScale_Mask;
         
     | 
| 
       1787 
     | 
    
         
            -
                    }
         
     | 
| 
       1788 
     | 
    
         
            -
                    if (tx != 0.0f || ty != 0.0f) {
         
     | 
| 
       1789 
     | 
    
         
            -
                        mask |= kTranslate_Mask;
         
     | 
| 
       1790 
     | 
    
         
            -
                    }
         
     | 
| 
       1791 
     | 
    
         
            -
                    if (sx != 0 && sy != 0) {
         
     | 
| 
       1792 
     | 
    
         
            -
                        mask |= kRectStaysRect_Mask;
         
     | 
| 
       1793 
     | 
    
         
            -
                    }
         
     | 
| 
       1794 
     | 
    
         
            -
                    this->setTypeMask(mask);
         
     | 
| 
      
 1756 
     | 
    
         
            +
                    *this = SkMatrix::ScaleTranslate(sx, sy, tx, ty);
         
     | 
| 
       1795 
1757 
     | 
    
         
             
                }
         
     | 
| 
       1796 
1758 
     | 
    
         | 
| 
       1797 
1759 
     | 
    
         
             
                /** Returns true if all elements of the matrix are finite. Returns false if any
         
     | 
| 
         @@ -1802,6 +1764,10 @@ public: 
     | 
|
| 
       1802 
1764 
     | 
    
         
             
                bool isFinite() const { return SkIsFinite(fMat, 9); }
         
     | 
| 
       1803 
1765 
     | 
    
         | 
| 
       1804 
1766 
     | 
    
         
             
            #ifdef SK_SUPPORT_UNSPANNED_APIS
         
     | 
| 
      
 1767 
     | 
    
         
            +
                bool setPolyToPoly(const SkPoint src[], const SkPoint dst[], int count) {
         
     | 
| 
      
 1768 
     | 
    
         
            +
                    return this->setPolyToPoly({src, count}, {dst, count});
         
     | 
| 
      
 1769 
     | 
    
         
            +
                }
         
     | 
| 
      
 1770 
     | 
    
         
            +
             
     | 
| 
       1805 
1771 
     | 
    
         
             
                void mapPoints(SkPoint dst[], const SkPoint src[], int count) const {
         
     | 
| 
       1806 
1772 
     | 
    
         
             
                    this->mapPoints({dst, count}, {src, count});
         
     | 
| 
       1807 
1773 
     | 
    
         
             
                }
         
     | 
| 
         @@ -1941,8 +1907,6 @@ private: 
     | 
|
| 
       1941 
1907 
     | 
    
         
             
                    return GetMapPtsProc(this->getType());
         
     | 
| 
       1942 
1908 
     | 
    
         
             
                }
         
     | 
| 
       1943 
1909 
     | 
    
         | 
| 
       1944 
     | 
    
         
            -
                [[nodiscard]] bool invertNonIdentity(SkMatrix* inverse) const;
         
     | 
| 
       1945 
     | 
    
         
            -
             
     | 
| 
       1946 
1910 
     | 
    
         
             
                static bool Poly2Proc(const SkPoint[], SkMatrix*);
         
     | 
| 
       1947 
1911 
     | 
    
         
             
                static bool Poly3Proc(const SkPoint[], SkMatrix*);
         
     | 
| 
       1948 
1912 
     | 
    
         
             
                static bool Poly4Proc(const SkPoint[], SkMatrix*);
         
     |