@shopify/react-native-skia 2.6.2 → 2.6.3-next.2
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 +8 -4
- package/android/build.gradle +22 -3
- package/android/cpp/rnskia-android/RNSkAndroidPlatformContext.h +62 -0
- package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaWebGPUViewManagerDelegate.java +35 -0
- package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaWebGPUViewManagerInterface.java +17 -0
- package/apple/RNSkApplePlatformContext.h +2 -0
- package/apple/RNSkApplePlatformContext.mm +71 -0
- package/apple/RNWebGPUAppleNativeBuffer.mm +33 -0
- package/cpp/api/JsiNativeBuffer.h +9 -1
- package/cpp/api/JsiSkAnimatedImage.h +1 -1
- package/cpp/api/JsiSkAnimatedImageFactory.h +1 -1
- package/cpp/api/JsiSkApi.h +3 -3
- package/cpp/api/JsiSkCanvas.h +34 -1
- package/cpp/api/JsiSkColor.h +1 -1
- package/cpp/api/JsiSkDataFactory.h +2 -2
- package/cpp/api/JsiSkFont.h +1 -1
- package/cpp/api/JsiSkFontMgr.h +1 -1
- package/cpp/api/JsiSkHostObjects.h +3 -3
- package/cpp/api/JsiSkImage.h +15 -7
- package/cpp/api/JsiSkImageFactory.h +2 -2
- package/cpp/api/JsiSkPath.h +1 -1
- package/cpp/api/JsiSkPathFactory.h +1 -1
- package/cpp/api/JsiSkSkottie.h +1 -1
- package/cpp/api/JsiSkSurface.h +18 -6
- package/cpp/api/JsiSkTypeface.h +1 -1
- package/cpp/api/JsiSkTypefaceFontProvider.h +1 -1
- package/cpp/api/JsiSkiaContext.h +2 -2
- package/cpp/api/JsiTextureInfo.h +1 -1
- package/cpp/api/JsiVideo.h +2 -2
- package/cpp/api/recorder/Convertor.h +1 -1
- package/cpp/api/recorder/Drawings.h +1 -1
- package/cpp/api/recorder/JsiRecorder.h +4 -4
- package/cpp/api/recorder/RNRecorder.h +1 -1
- package/cpp/api/third_party/SkottieUtils.cpp +1 -1
- package/cpp/api/third_party/base64.cpp +1 -1
- package/cpp/jsi/JsiHostObject.cpp +5 -7
- package/cpp/jsi/JsiPromises.h +1 -1
- package/cpp/jsi/ViewProperty.h +1 -1
- package/cpp/rnskia/RNDawnContext.h +13 -0
- package/cpp/rnskia/RNDawnUtils.h +11 -1
- package/cpp/rnskia/RNSkJsiViewApi.h +2 -2
- package/cpp/rnskia/RNSkManager.cpp +88 -2
- package/cpp/rnskia/RNSkPictureView.h +4 -4
- package/cpp/rnskia/RNSkPlatformContext.h +7 -0
- package/cpp/rnskia/RNSkView.h +9 -6
- package/cpp/rnwgpu/ArrayBuffer.h +51 -7
- package/cpp/rnwgpu/api/AppleNativeBuffer.h +22 -0
- package/cpp/rnwgpu/api/Convertors.h +33 -11
- package/cpp/rnwgpu/api/GPU.cpp +0 -3
- package/cpp/rnwgpu/api/GPUAdapter.cpp +37 -7
- package/cpp/rnwgpu/api/GPUBuffer.h +1 -1
- package/cpp/rnwgpu/api/GPUDevice.cpp +84 -6
- package/cpp/rnwgpu/api/GPUDevice.h +12 -0
- package/cpp/rnwgpu/api/GPUExternalTexture.cpp +139 -0
- package/cpp/rnwgpu/api/GPUExternalTexture.h +52 -2
- package/cpp/rnwgpu/api/GPUQueue.cpp +50 -45
- package/cpp/rnwgpu/api/GPUShaderModule.cpp +1 -1
- package/cpp/rnwgpu/api/GPUSharedFence.cpp +80 -0
- package/cpp/rnwgpu/api/GPUSharedFence.h +53 -0
- package/cpp/rnwgpu/api/GPUSharedTextureMemory.cpp +135 -0
- package/cpp/rnwgpu/api/GPUSharedTextureMemory.h +75 -0
- package/cpp/rnwgpu/api/ImageBitmap.h +62 -0
- package/cpp/rnwgpu/api/NativeBufferUtils.h +87 -0
- package/cpp/rnwgpu/api/descriptors/GPUBindGroupEntry.h +4 -1
- package/cpp/rnwgpu/api/descriptors/GPUCanvasConfiguration.h +1 -1
- package/cpp/rnwgpu/api/descriptors/GPUDawnTogglesDescriptor.h +56 -0
- package/cpp/rnwgpu/api/descriptors/GPUDeviceDescriptor.h +10 -0
- package/cpp/rnwgpu/api/descriptors/GPUExternalTextureDescriptor.h +43 -24
- package/cpp/rnwgpu/api/descriptors/GPUImageCopyExternalImage.h +9 -9
- package/cpp/rnwgpu/api/descriptors/GPUImageCopyTexture.h +1 -1
- package/cpp/rnwgpu/api/descriptors/GPUImageCopyTextureTagged.h +2 -2
- package/cpp/rnwgpu/api/descriptors/GPUSharedFenceDescriptor.h +58 -0
- package/cpp/rnwgpu/api/descriptors/GPUSharedFenceState.h +51 -0
- package/cpp/rnwgpu/api/descriptors/GPUSharedTextureMemoryDescriptor.h +73 -0
- package/cpp/rnwgpu/api/descriptors/GPUTextureDescriptor.h +1 -1
- package/cpp/rnwgpu/api/descriptors/GPUUncapturedErrorEventInit.h +1 -1
- package/cpp/skia/include/android/GrAHardwareBufferUtils.h +1 -1
- package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +1 -1
- package/cpp/skia/include/android/SkAnimatedImage.h +1 -1
- package/cpp/skia/include/codec/SkCodec.h +0 -8
- package/cpp/skia/include/codec/SkEncodedOrigin.h +1 -1
- package/cpp/skia/include/codec/SkPngRustDecoder.h +1 -1
- package/cpp/skia/include/core/SkBitmap.h +2 -8
- package/cpp/skia/include/core/SkCPURecorder.h +3 -1
- package/cpp/skia/include/core/SkCanvasVirtualEnforcer.h +1 -1
- package/cpp/skia/include/core/SkColorType.h +5 -3
- package/cpp/skia/include/core/SkContourMeasure.h +1 -1
- package/cpp/skia/include/core/SkCoverageMode.h +1 -1
- package/cpp/skia/include/core/SkCubicMap.h +1 -1
- package/cpp/skia/include/core/SkExecutor.h +1 -1
- package/cpp/skia/include/core/SkFont.h +15 -0
- package/cpp/skia/include/core/SkFontArguments.h +6 -1
- package/cpp/skia/include/core/SkFontMetrics.h +1 -1
- package/cpp/skia/include/core/SkFontMgr.h +36 -1
- package/cpp/skia/include/core/SkFontParameters.h +1 -1
- package/cpp/skia/include/core/SkFontScanner.h +1 -1
- package/cpp/skia/include/core/SkFontTypes.h +1 -1
- package/cpp/skia/include/core/SkM44.h +1 -1
- package/cpp/skia/include/core/SkMilestone.h +1 -1
- package/cpp/skia/include/core/SkOpenTypeSVGDecoder.h +1 -1
- package/cpp/skia/include/core/SkPathBuilder.h +10 -4
- package/cpp/skia/include/core/SkPathIter.h +1 -1
- package/cpp/skia/include/core/SkPathTypes.h +1 -1
- package/cpp/skia/include/core/SkPixelRef.h +4 -1
- package/cpp/skia/include/core/SkRecorder.h +2 -1
- package/cpp/skia/include/core/SkRegion.h +17 -6
- package/cpp/skia/include/core/SkSamplingOptions.h +1 -1
- package/cpp/skia/include/core/SkSerialProcs.h +8 -1
- package/cpp/skia/include/core/SkShader.h +3 -5
- package/cpp/skia/include/core/SkSpan.h +1 -1
- package/cpp/skia/include/core/SkStream.h +1 -1
- package/cpp/skia/include/core/SkStrikeRef.h +80 -0
- package/cpp/skia/include/core/SkTileMode.h +1 -1
- package/cpp/skia/include/core/SkVertices.h +1 -1
- package/cpp/skia/include/core/SkYUVAPixmaps.h +3 -5
- package/cpp/skia/include/docs/SkPDFDocument.h +1 -1
- package/cpp/skia/include/docs/SkXPSDocument.h +1 -1
- package/cpp/skia/include/effects/SkGradient.h +1 -1
- package/cpp/skia/include/effects/SkHighContrastFilter.h +1 -1
- package/cpp/skia/include/effects/SkRuntimeEffect.h +2 -2
- package/cpp/skia/include/effects/SkShaderMaskFilter.h +1 -1
- package/cpp/skia/include/effects/SkTrimPathEffect.h +1 -1
- package/cpp/skia/include/encode/SkEncoder.h +1 -1
- package/cpp/skia/include/encode/SkJpegEncoder.h +1 -1
- package/cpp/skia/include/encode/SkPngEncoder.h +1 -1
- package/cpp/skia/include/encode/SkPngRustEncoder.h +1 -1
- package/cpp/skia/include/encode/SkWebpEncoder.h +1 -1
- package/cpp/skia/include/gpu/GpuTypes.h +2 -0
- package/cpp/skia/include/gpu/MutableTextureState.h +1 -1
- package/cpp/skia/include/gpu/ganesh/GrBackendSemaphore.h +1 -1
- package/cpp/skia/include/gpu/ganesh/GrBackendSurface.h +6 -62
- package/cpp/skia/include/gpu/ganesh/GrContextThreadSafeProxy.h +1 -1
- package/cpp/skia/include/gpu/ganesh/GrDirectContext.h +1 -1
- package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkarounds.h +1 -1
- package/cpp/skia/include/gpu/ganesh/GrRecordingContext.h +2 -1
- package/cpp/skia/include/gpu/ganesh/mock/GrMockBackendSurface.h +59 -0
- package/cpp/skia/include/gpu/ganesh/mock/GrMockTypes.h +1 -1
- package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendContext.h +1 -1
- package/cpp/skia/include/gpu/ganesh/mtl/GrMtlTypes.h +1 -1
- package/cpp/skia/include/gpu/ganesh/vk/GrBackendDrawableInfo.h +1 -1
- package/cpp/skia/include/gpu/graphite/Context.h +12 -5
- package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +6 -0
- package/cpp/skia/include/gpu/graphite/Image.h +82 -9
- package/cpp/skia/include/gpu/graphite/PrecompileContext.h +7 -2
- package/cpp/skia/include/gpu/graphite/Recorder.h +6 -4
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileColorFilter.h +11 -1
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileShader.h +1 -0
- package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +1 -1
- package/cpp/skia/include/gpu/mtl/MtlMemoryAllocator.h +1 -1
- package/cpp/skia/include/gpu/vk/VulkanExtensions.h +1 -1
- package/cpp/skia/include/gpu/vk/VulkanMemoryAllocator.h +1 -1
- package/cpp/skia/include/gpu/vk/VulkanTypes.h +1 -1
- package/cpp/skia/include/ports/SkCFObject.h +1 -1
- package/cpp/skia/include/ports/SkFontMgr_Fontations.h +1 -1
- package/cpp/skia/include/ports/SkFontMgr_android_ndk.h +1 -1
- package/cpp/skia/include/ports/SkFontMgr_data.h +1 -1
- package/cpp/skia/include/ports/SkFontMgr_fuchsia.h +1 -1
- package/cpp/skia/include/ports/SkFontMgr_mac_ct.h +1 -1
- package/cpp/skia/include/ports/SkFontScanner_Fontations.h +1 -1
- package/cpp/skia/include/ports/SkFontScanner_FreeType.h +1 -1
- package/cpp/skia/include/ports/SkTypeface_fontations.h +1 -1
- package/cpp/skia/include/private/SkExif.h +1 -1
- package/cpp/skia/include/private/SkGainmapInfo.h +1 -1
- package/cpp/skia/include/private/SkGainmapShader.h +1 -1
- package/cpp/skia/include/private/SkHdrMetadata.h +21 -0
- package/cpp/skia/include/private/SkJpegGainmapEncoder.h +1 -1
- package/cpp/skia/include/private/SkPixelStorage.h +37 -0
- package/cpp/skia/include/private/SkXmp.h +1 -1
- package/cpp/skia/include/private/base/SkAssert.h +6 -5
- package/cpp/skia/include/private/base/SkContainers.h +1 -1
- package/cpp/skia/include/private/base/SkFeatures.h +30 -30
- package/cpp/skia/include/private/base/SkLog.h +1 -7
- package/cpp/skia/include/private/base/SkLogPriority.h +4 -5
- package/cpp/skia/include/private/base/SkMacros.h +1 -1
- package/cpp/skia/include/private/base/SkMalloc.h +1 -1
- package/cpp/skia/include/private/base/SkSafe32.h +1 -1
- package/cpp/skia/include/private/base/SkSpan_impl.h +1 -1
- package/cpp/skia/include/private/base/SkTDArray.h +13 -1
- package/cpp/skia/include/private/base/SkTPin.h +1 -1
- package/cpp/skia/include/private/base/SkTo.h +1 -1
- package/cpp/skia/include/private/chromium/GrVkSecondaryCBDrawContext.h +1 -1
- package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +1 -1
- package/cpp/skia/include/private/chromium/SkCodecsICCProfileChromium.h +52 -0
- package/cpp/skia/include/private/chromium/SkExifChromium.h +26 -0
- package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +1 -1
- package/cpp/skia/include/private/gpu/ganesh/GrImageContext.h +1 -1
- package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +2 -1
- package/cpp/skia/include/private/gpu/vk/SkiaVulkan.h +1 -1
- package/cpp/skia/include/sksl/SkSLDebugTrace.h +1 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_icd.h +41 -51
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_layer.h +42 -53
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_platform.h +2 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std.h +158 -154
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std_decode.h +68 -65
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std_encode.h +90 -87
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std.h +9 -9
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_decode.h +2 -2
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_encode.h +82 -79
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std.h +24 -24
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_decode.h +2 -2
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_encode.h +95 -96
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_vp9std.h +151 -0
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_vp9std_decode.h +68 -0
- package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codecs_common.h +1 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan.h +5 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_android.h +7 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_beta.h +291 -158
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_core.h +13174 -10113
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_directfb.h +23 -19
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_fuchsia.h +159 -165
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ggp.h +22 -19
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ios.h +3 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_macos.h +3 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_metal.h +94 -88
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ohos.h +120 -0
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_screen.h +55 -51
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_vi.h +18 -15
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_wayland.h +23 -19
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_win32.h +31 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xcb.h +5 -1
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xlib.h +27 -27
- package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xlib_xrandr.h +20 -16
- package/cpp/skia/include/utils/SkEventTracer.h +6 -1
- package/cpp/skia/include/utils/SkOrderedFontMgr.h +1 -1
- package/cpp/skia/include/utils/SkShadowUtils.h +1 -1
- package/cpp/skia/include/utils/SkTextUtils.h +1 -1
- package/cpp/skia/modules/jsonreader/SkJSONReader.cpp +20 -4
- package/cpp/skia/modules/skcms/src/Transform_inl.h +11 -15
- package/cpp/skia/modules/skcms/src/skcms_public.h +2 -0
- package/cpp/skia/modules/skottie/include/ExternalLayer.h +1 -1
- package/cpp/skia/modules/skottie/include/Skottie.h +1 -1
- package/cpp/skia/modules/skottie/include/SkottieProperty.h +1 -1
- package/cpp/skia/modules/skottie/include/SlotManager.h +1 -1
- package/cpp/skia/modules/skottie/include/TextShaper.h +1 -1
- package/cpp/skia/modules/skottie/src/SkottieValue.h +1 -1
- package/cpp/skia/modules/skottie/src/animator/Animator.h +1 -1
- package/cpp/skia/modules/skottie/src/text/Font.h +1 -1
- package/cpp/skia/modules/skottie/src/text/TextAdapter.h +1 -1
- package/cpp/skia/modules/skottie/src/text/TextAnimator.h +3 -2
- package/cpp/skia/modules/skottie/src/text/TextValue.h +1 -1
- package/cpp/skia/modules/skparagraph/include/DartTypes.h +1 -1
- package/cpp/skia/modules/skparagraph/include/FontArguments.h +1 -1
- package/cpp/skia/modules/skparagraph/include/FontCollection.h +5 -1
- package/cpp/skia/modules/skparagraph/include/Metrics.h +1 -1
- package/cpp/skia/modules/skparagraph/include/Paragraph.h +1 -1
- package/cpp/skia/modules/skparagraph/include/ParagraphBuilder.h +1 -1
- package/cpp/skia/modules/skparagraph/include/ParagraphCache.h +1 -1
- package/cpp/skia/modules/skparagraph/include/ParagraphPainter.h +1 -1
- package/cpp/skia/modules/skparagraph/include/ParagraphStyle.h +12 -5
- package/cpp/skia/modules/skparagraph/include/TextShadow.h +1 -1
- package/cpp/skia/modules/skparagraph/include/TextStyle.h +1 -1
- package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGClipEffect.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGColorFilter.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGDraw.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGEffectNode.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGGeometryEffect.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGGeometryNode.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGGradient.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGGroup.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGImage.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGInvalidationController.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGMaskEffect.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGMerge.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGNode.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGOpacityEffect.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGPaint.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGPath.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGPlane.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGRect.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGRenderEffect.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGRenderNode.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGScene.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGText.h +1 -1
- package/cpp/skia/modules/sksg/include/SkSGTransform.h +1 -1
- package/cpp/skia/modules/skshaper/include/SkShaper_coretext.h +8 -1
- package/cpp/skia/modules/svg/include/SkSVGFe.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeBlend.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeColorMatrix.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeComponentTransfer.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeComposite.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeDisplacementMap.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeFlood.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeGaussianBlur.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeImage.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeLightSource.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeLighting.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeMerge.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeMorphology.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeOffset.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFeTurbulence.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFilter.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGFilterContext.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGGradient.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGImage.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGMask.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGOpenTypeSVGDecoder.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGPattern.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGRadialGradient.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGText.h +1 -1
- package/cpp/skia/modules/svg/include/SkSVGUse.h +1 -1
- package/cpp/skia/src/base/SkAutoLocaleSetter.h +94 -0
- package/cpp/skia/src/base/SkUTF.h +1 -1
- package/lib/commonjs/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
- package/lib/commonjs/skia/types/NativeBuffer/NativeBufferFactory.js.map +1 -1
- package/lib/commonjs/skia/types/WebGPU.d.ts +153 -0
- package/lib/commonjs/skia/types/WebGPU.js +6 -0
- package/lib/commonjs/skia/types/WebGPU.js.map +1 -0
- package/lib/commonjs/skia/types/index.d.ts +1 -0
- package/lib/commonjs/skia/types/index.js +11 -0
- package/lib/commonjs/skia/types/index.js.map +1 -1
- package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.js +19 -0
- package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.js.map +1 -1
- package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
- package/lib/module/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
- package/lib/module/skia/types/NativeBuffer/NativeBufferFactory.js.map +1 -1
- package/lib/module/skia/types/WebGPU.d.ts +153 -0
- package/lib/module/skia/types/WebGPU.js +2 -0
- package/lib/module/skia/types/WebGPU.js.map +1 -0
- package/lib/module/skia/types/index.d.ts +1 -0
- package/lib/module/skia/types/index.js +1 -0
- package/lib/module/skia/types/index.js.map +1 -1
- package/lib/module/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/lib/module/skia/web/JsiSkNativeBufferFactory.js +19 -0
- package/lib/module/skia/web/JsiSkNativeBufferFactory.js.map +1 -1
- package/lib/module/skia/web/JsiSkPath.js.map +1 -1
- package/lib/module/web/LoadSkiaWeb.js +1 -2
- package/lib/module/web/LoadSkiaWeb.js.map +1 -1
- package/lib/typescript/lib/commonjs/skia/types/WebGPU.d.ts +1 -0
- package/lib/typescript/lib/commonjs/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/lib/typescript/lib/module/skia/types/WebGPU.d.ts +1 -0
- package/lib/typescript/lib/module/skia/types/index.d.ts +1 -0
- package/lib/typescript/lib/module/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/lib/typescript/src/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
- package/lib/typescript/src/skia/types/WebGPU.d.ts +153 -0
- package/lib/typescript/src/skia/types/index.d.ts +1 -0
- package/lib/typescript/src/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/package.json +18 -15
- package/react-native-skia.podspec +59 -7
- package/src/skia/types/NativeBuffer/NativeBufferFactory.ts +10 -1
- package/src/skia/types/WebGPU.ts +186 -0
- package/src/skia/types/index.ts +1 -0
- package/src/skia/web/JsiSkNativeBufferFactory.ts +20 -0
- package/src/skia/web/JsiSkPath.ts +8 -2
- package/scripts/install-libs.js +0 -133
|
@@ -12,6 +12,8 @@
|
|
|
12
12
|
#include "include/core/SkData.h"
|
|
13
13
|
#include "include/private/base/SkAPI.h"
|
|
14
14
|
|
|
15
|
+
#include <algorithm>
|
|
16
|
+
#include <cmath>
|
|
15
17
|
#include <memory>
|
|
16
18
|
#include <optional>
|
|
17
19
|
#include <vector>
|
|
@@ -54,6 +56,20 @@ struct SK_API ContentLightLevelInformation {
|
|
|
54
56
|
*/
|
|
55
57
|
sk_sp<SkData> serialize() const;
|
|
56
58
|
|
|
59
|
+
/**
|
|
60
|
+
* Helper functions for accessing members as uint16_t, which is often needed when interacting
|
|
61
|
+
* with libraries using the CTA semantics.
|
|
62
|
+
*/
|
|
63
|
+
static ContentLightLevelInformation MakeUint16(uint16_t maxCLL, uint16_t maxFALL) {
|
|
64
|
+
return { .fMaxCLL = static_cast<float>(maxCLL), .fMaxFALL = static_cast<float>(maxFALL) };
|
|
65
|
+
}
|
|
66
|
+
uint16_t getUint16MaxCLL() const {
|
|
67
|
+
return static_cast<uint16_t>(std::clamp(std::round(fMaxCLL), 0.f, 65535.f));
|
|
68
|
+
}
|
|
69
|
+
uint16_t getUint16MaxFALL() const {
|
|
70
|
+
return static_cast<uint16_t>(std::clamp(std::round(fMaxFALL), 0.f, 65535.f));
|
|
71
|
+
}
|
|
72
|
+
|
|
57
73
|
/**
|
|
58
74
|
* Decode from the binary encoding listed at:
|
|
59
75
|
* Portable Network Graphics (PNG) Specification (Third Edition)
|
|
@@ -242,6 +258,11 @@ struct SK_API AdaptiveGlobalToneMap {
|
|
|
242
258
|
*/
|
|
243
259
|
SkString toString() const;
|
|
244
260
|
|
|
261
|
+
/**
|
|
262
|
+
* Return true if this metadata satisfies all normative constraints.
|
|
263
|
+
*/
|
|
264
|
+
bool isValid() const;
|
|
265
|
+
|
|
245
266
|
bool operator==(const AdaptiveGlobalToneMap& other) const {
|
|
246
267
|
return fHdrReferenceWhite == other.fHdrReferenceWhite &&
|
|
247
268
|
fHeadroomAdaptiveToneMap == other.fHeadroomAdaptiveToneMap;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Use of this source code is governed by a BSD-style license that can be
|
|
5
|
+
* found in the LICENSE file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef SkPixelStorage_DEFINED
|
|
9
|
+
#define SkPixelStorage_DEFINED
|
|
10
|
+
|
|
11
|
+
#include <cstdint>
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* SkPixelStorage is the class representing the storage block for pixel data. It serves as the
|
|
15
|
+
* abstract source of pixel memory—the 2D array of data—that is read from and written to by
|
|
16
|
+
* higher-level Skia objects like SkImage and SkSurface.
|
|
17
|
+
*/
|
|
18
|
+
class SkPixelStorage {
|
|
19
|
+
public:
|
|
20
|
+
SkPixelStorage();
|
|
21
|
+
virtual ~SkPixelStorage() = default;
|
|
22
|
+
|
|
23
|
+
enum Type {
|
|
24
|
+
kTextureProxy,
|
|
25
|
+
kPixelRef,
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
uint32_t getPixelStorageId() const { return fID; }
|
|
29
|
+
virtual Type type() const = 0;
|
|
30
|
+
|
|
31
|
+
private:
|
|
32
|
+
uint32_t fID;
|
|
33
|
+
|
|
34
|
+
static uint32_t NextId();
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
#endif
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
#include "include/private/base/SkAPI.h"
|
|
12
12
|
#include "include/private/base/SkAttributes.h"
|
|
13
13
|
#include "include/private/base/SkDebug.h" // IWYU pragma: keep
|
|
14
|
+
#include "include/private/base/SkLog.h"
|
|
14
15
|
|
|
15
16
|
#include <cstddef>
|
|
16
17
|
#include <limits>
|
|
@@ -69,7 +70,7 @@
|
|
|
69
70
|
# endif
|
|
70
71
|
# define SK_ABORT(message, ...) \
|
|
71
72
|
do { \
|
|
72
|
-
|
|
73
|
+
SKIA_LOG_E(SK_DUMP_LINE_FORMAT ": fatal error: \"" message "\"", \
|
|
73
74
|
__FILE__, __LINE__, ##__VA_ARGS__); \
|
|
74
75
|
SK_DUMP_GOOGLE3_STACK(); \
|
|
75
76
|
sk_abort_no_print(); \
|
|
@@ -137,7 +138,7 @@
|
|
|
137
138
|
#endif
|
|
138
139
|
|
|
139
140
|
[[noreturn]] SK_API inline void sk_print_index_out_of_bounds(size_t i, size_t size) {
|
|
140
|
-
SK_ABORT("Index (%zu) out of bounds for size %zu
|
|
141
|
+
SK_ABORT("Index (%zu) out of bounds for size %zu.", i, size);
|
|
141
142
|
}
|
|
142
143
|
|
|
143
144
|
template <typename T> SK_API inline T sk_collection_check_bounds(T i, T size) {
|
|
@@ -155,7 +156,7 @@ template <typename T> SK_API inline T sk_collection_check_bounds(T i, T size) {
|
|
|
155
156
|
}
|
|
156
157
|
|
|
157
158
|
[[noreturn]] SK_API inline void sk_print_length_too_big(size_t i, size_t size) {
|
|
158
|
-
SK_ABORT("Length (%zu) is too big for size %zu
|
|
159
|
+
SK_ABORT("Length (%zu) is too big for size %zu.", i, size);
|
|
159
160
|
}
|
|
160
161
|
|
|
161
162
|
template <typename T> SK_API inline T sk_collection_check_length(T i, T size) {
|
|
@@ -175,7 +176,7 @@ template <typename T> SK_API inline T sk_collection_check_length(T i, T size) {
|
|
|
175
176
|
SK_API inline void sk_collection_not_empty(bool empty) {
|
|
176
177
|
if (empty) SK_UNLIKELY {
|
|
177
178
|
#if defined(SK_DEBUG)
|
|
178
|
-
SK_ABORT("Collection is empty
|
|
179
|
+
SK_ABORT("Collection is empty.");
|
|
179
180
|
#else
|
|
180
181
|
SkUNREACHABLE;
|
|
181
182
|
#endif
|
|
@@ -183,7 +184,7 @@ SK_API inline void sk_collection_not_empty(bool empty) {
|
|
|
183
184
|
}
|
|
184
185
|
|
|
185
186
|
[[noreturn]] SK_API inline void sk_print_size_too_big(size_t size, size_t maxSize) {
|
|
186
|
-
SK_ABORT("Size (%zu) can't be represented in bytes. Max size is %zu
|
|
187
|
+
SK_ABORT("Size (%zu) can't be represented in bytes. Max size is %zu.", size, maxSize);
|
|
187
188
|
}
|
|
188
189
|
|
|
189
190
|
template <typename T>
|
|
@@ -78,20 +78,20 @@
|
|
|
78
78
|
#endif
|
|
79
79
|
|
|
80
80
|
/**
|
|
81
|
-
*
|
|
81
|
+
* SK_CPU_X64_LEVEL
|
|
82
82
|
*
|
|
83
|
-
* If defined,
|
|
84
|
-
* On non-
|
|
83
|
+
* If defined, SK_CPU_X64_LEVEL should be set to the highest supported level.
|
|
84
|
+
* On non-Intel, non-AMD CPUs this should be undefined.
|
|
85
85
|
*/
|
|
86
|
-
#define
|
|
87
|
-
#define
|
|
88
|
-
#define
|
|
89
|
-
#define
|
|
90
|
-
#define
|
|
91
|
-
#define
|
|
92
|
-
#define
|
|
93
|
-
#define
|
|
94
|
-
#define
|
|
86
|
+
#define SK_CPU_X64_LEVEL_SSE1 10
|
|
87
|
+
#define SK_CPU_X64_LEVEL_SSE2 20
|
|
88
|
+
#define SK_CPU_X64_LEVEL_SSE3 30
|
|
89
|
+
#define SK_CPU_X64_LEVEL_SSSE3 31
|
|
90
|
+
#define SK_CPU_X64_LEVEL_SSE41 41
|
|
91
|
+
#define SK_CPU_X64_LEVEL_SSE42 42
|
|
92
|
+
#define SK_CPU_X64_LEVEL_AVX 51
|
|
93
|
+
#define SK_CPU_X64_LEVEL_AVX2 52
|
|
94
|
+
#define SK_CPU_X64_LEVEL_ML4 60
|
|
95
95
|
|
|
96
96
|
/**
|
|
97
97
|
* SK_CPU_LSX_LEVEL
|
|
@@ -99,32 +99,32 @@
|
|
|
99
99
|
* If defined, SK_CPU_LSX_LEVEL should be set to the highest supported level.
|
|
100
100
|
* On non-loongarch CPU this should be undefined.
|
|
101
101
|
*/
|
|
102
|
-
#define SK_CPU_LSX_LEVEL_LSX
|
|
103
|
-
#define SK_CPU_LSX_LEVEL_LASX
|
|
102
|
+
#define SK_CPU_LSX_LEVEL_LSX 10
|
|
103
|
+
#define SK_CPU_LSX_LEVEL_LASX 20
|
|
104
104
|
|
|
105
105
|
// TODO(kjlubick) clean up these checks
|
|
106
106
|
|
|
107
107
|
// Are we in GCC/Clang?
|
|
108
|
-
#ifndef
|
|
108
|
+
#ifndef SK_CPU_X64_LEVEL
|
|
109
109
|
// These checks must be done in descending order to ensure we set the highest
|
|
110
110
|
// available SSE level.
|
|
111
111
|
#if defined(__AVX512F__) && defined(__AVX512DQ__) && defined(__AVX512CD__) && \
|
|
112
112
|
defined(__AVX512BW__) && defined(__AVX512VL__)
|
|
113
|
-
#define
|
|
113
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_ML4
|
|
114
114
|
#elif defined(__AVX2__)
|
|
115
|
-
#define
|
|
115
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_AVX2
|
|
116
116
|
#elif defined(__AVX__)
|
|
117
|
-
#define
|
|
117
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_AVX
|
|
118
118
|
#elif defined(__SSE4_2__)
|
|
119
|
-
#define
|
|
119
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_SSE42
|
|
120
120
|
#elif defined(__SSE4_1__)
|
|
121
|
-
#define
|
|
121
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_SSE41
|
|
122
122
|
#elif defined(__SSSE3__)
|
|
123
|
-
#define
|
|
123
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_SSSE3
|
|
124
124
|
#elif defined(__SSE3__)
|
|
125
|
-
#define
|
|
125
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_SSE3
|
|
126
126
|
#elif defined(__SSE2__)
|
|
127
|
-
#define
|
|
127
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_SSE2
|
|
128
128
|
#endif
|
|
129
129
|
#endif
|
|
130
130
|
|
|
@@ -137,23 +137,23 @@
|
|
|
137
137
|
#endif
|
|
138
138
|
|
|
139
139
|
// Are we in VisualStudio?
|
|
140
|
-
#ifndef
|
|
140
|
+
#ifndef SK_CPU_X64_LEVEL
|
|
141
141
|
// These checks must be done in descending order to ensure we set the highest
|
|
142
142
|
// available SSE level. 64-bit intel guarantees at least SSE2 support.
|
|
143
143
|
#if defined(__AVX512F__) && defined(__AVX512DQ__) && defined(__AVX512CD__) && \
|
|
144
144
|
defined(__AVX512BW__) && defined(__AVX512VL__)
|
|
145
|
-
#define
|
|
145
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_ML4
|
|
146
146
|
#elif defined(__AVX2__)
|
|
147
|
-
#define
|
|
147
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_AVX2
|
|
148
148
|
#elif defined(__AVX__)
|
|
149
|
-
#define
|
|
149
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_AVX
|
|
150
150
|
#elif defined(_M_X64) || defined(_M_AMD64)
|
|
151
|
-
#define
|
|
151
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_SSE2
|
|
152
152
|
#elif defined(_M_IX86_FP)
|
|
153
153
|
#if _M_IX86_FP >= 2
|
|
154
|
-
#define
|
|
154
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_SSE2
|
|
155
155
|
#elif _M_IX86_FP == 1
|
|
156
|
-
#define
|
|
156
|
+
#define SK_CPU_X64_LEVEL SK_CPU_X64_LEVEL_SSE1
|
|
157
157
|
#endif
|
|
158
158
|
#endif
|
|
159
159
|
#endif
|
|
@@ -50,16 +50,10 @@ void SK_SPI SkLog(SkLogPriority priority, const char format[], ...) SK_PRINTF_LI
|
|
|
50
50
|
#define SKIA_LOG(priority, fmt, ...) \
|
|
51
51
|
do { \
|
|
52
52
|
if constexpr (priority <= SKIA_LOWEST_ACTIVE_LOG_PRIORITY) { \
|
|
53
|
-
|
|
54
|
-
SK_ABORT("[skia] " fmt, ##__VA_ARGS__); \
|
|
55
|
-
} \
|
|
56
|
-
else { \
|
|
57
|
-
SkLog(priority, "[skia] " fmt "\n", ##__VA_ARGS__); \
|
|
58
|
-
} \
|
|
53
|
+
SkLog(priority, "[skia] " fmt "\n", ##__VA_ARGS__); \
|
|
59
54
|
} \
|
|
60
55
|
} while (0)
|
|
61
56
|
|
|
62
|
-
#define SKIA_LOG_F(fmt, ...) SKIA_LOG(SkLogPriority::kFatal, "** ERROR ** " fmt, ##__VA_ARGS__)
|
|
63
57
|
#define SKIA_LOG_E(fmt, ...) SKIA_LOG(SkLogPriority::kError, "** ERROR ** " fmt, ##__VA_ARGS__)
|
|
64
58
|
#define SKIA_LOG_W(fmt, ...) SKIA_LOG(SkLogPriority::kWarning, "WARNING - " fmt, ##__VA_ARGS__)
|
|
65
59
|
#define SKIA_LOG_I(fmt, ...) SKIA_LOG(SkLogPriority::kInfo, fmt, ##__VA_ARGS__)
|
|
@@ -25,11 +25,10 @@
|
|
|
25
25
|
* However, debug logs would be omitted.
|
|
26
26
|
*/
|
|
27
27
|
enum class SkLogPriority : int {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
kDebug = 4,
|
|
28
|
+
kError = 0,
|
|
29
|
+
kWarning = 1,
|
|
30
|
+
kInfo = 2,
|
|
31
|
+
kDebug = 3,
|
|
33
32
|
};
|
|
34
33
|
|
|
35
34
|
#endif // SkLogPriority_DEFINED
|
|
@@ -17,6 +17,8 @@
|
|
|
17
17
|
#include <initializer_list>
|
|
18
18
|
#include <utility>
|
|
19
19
|
|
|
20
|
+
// We'd prefer not to use these types anymore. SkTDArray can be replaced skia_private::TArray
|
|
21
|
+
|
|
20
22
|
class SK_SPI SkTDStorage {
|
|
21
23
|
public:
|
|
22
24
|
explicit SkTDStorage(int sizeOfT);
|
|
@@ -76,7 +78,17 @@ public:
|
|
|
76
78
|
}
|
|
77
79
|
|
|
78
80
|
private:
|
|
79
|
-
|
|
81
|
+
// Fast path for pointer arithmetic. Assumes 'n' has already been bounds-checked.
|
|
82
|
+
size_t bytes(int n) const { return SkToSizeT(n) * SkToSizeT(fSizeOfT); }
|
|
83
|
+
|
|
84
|
+
// Safe path for memory allocations; protects against 32-bit overflow.
|
|
85
|
+
size_t safe_bytes(int n) const {
|
|
86
|
+
size_t size = SkToSizeT(n);
|
|
87
|
+
size_t sizeOfT = SkToSizeT(fSizeOfT);
|
|
88
|
+
SkASSERT_RELEASE(size <= SIZE_MAX / sizeOfT);
|
|
89
|
+
return size * sizeOfT;
|
|
90
|
+
}
|
|
91
|
+
|
|
80
92
|
void* address(int n) { return fStorage + this->bytes(n); }
|
|
81
93
|
|
|
82
94
|
// Adds delta to fSize. Crash if outside [0, INT_MAX]
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Use of this source code is governed by a BSD-style license that can be
|
|
5
|
+
* found in the LICENSE file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef SkCodecsICCProfileChromium_DEFINED
|
|
9
|
+
#define SkCodecsICCProfileChromium_DEFINED
|
|
10
|
+
|
|
11
|
+
#include <memory>
|
|
12
|
+
|
|
13
|
+
#include "include/core/SkData.h"
|
|
14
|
+
#include "include/core/SkRefCnt.h"
|
|
15
|
+
#include "include/private/base/SkAPI.h"
|
|
16
|
+
#include "modules/skcms/skcms.h"
|
|
17
|
+
|
|
18
|
+
namespace SkCodecs {
|
|
19
|
+
|
|
20
|
+
// Allows Chromium code that does not use SkCodec to parse ICC profiles
|
|
21
|
+
// using the same parser that SkCodec uses (skcms or moxcms).
|
|
22
|
+
class SK_API ICCProfileChromium {
|
|
23
|
+
public:
|
|
24
|
+
virtual ~ICCProfileChromium() = default;
|
|
25
|
+
|
|
26
|
+
// Force all ICC profile parsing to use skcms instead of the build-default
|
|
27
|
+
// parser. This is intended for Chromium to have a kill-switch to fall back
|
|
28
|
+
// to skcms if moxcms causes issues in the field.
|
|
29
|
+
//
|
|
30
|
+
// This is a global setting and is NOT thread-safe with respect to concurrent
|
|
31
|
+
// codec operations. It should be called once early during process startup.
|
|
32
|
+
static void ForceSkcms(bool forceSkcms);
|
|
33
|
+
|
|
34
|
+
// Returns nullptr if parsing fails. May retain `data`. Uses the parser
|
|
35
|
+
// selected by ForceSkcms (defaults to the build-default parser).
|
|
36
|
+
static std::unique_ptr<ICCProfileChromium> Make(sk_sp<SkData> data);
|
|
37
|
+
|
|
38
|
+
// Return the parsed profile. The pointers in the structure are guaranteed
|
|
39
|
+
// to be valid until `this` is destroyed.
|
|
40
|
+
virtual const skcms_ICCProfile& GetProfile() const = 0;
|
|
41
|
+
|
|
42
|
+
protected:
|
|
43
|
+
ICCProfileChromium() = default;
|
|
44
|
+
|
|
45
|
+
private:
|
|
46
|
+
ICCProfileChromium(const ICCProfileChromium&) = delete;
|
|
47
|
+
ICCProfileChromium& operator=(const ICCProfileChromium&) = delete;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
} // namespace SkCodecs
|
|
51
|
+
|
|
52
|
+
#endif // SkCodecsICCProfileChromium_DEFINED
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Use of this source code is governed by a BSD-style license that can be
|
|
5
|
+
* found in the LICENSE file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef SkExifChromium_DEFINED
|
|
9
|
+
#define SkExifChromium_DEFINED
|
|
10
|
+
|
|
11
|
+
#include "include/private/base/SkAPI.h"
|
|
12
|
+
|
|
13
|
+
namespace SkExif {
|
|
14
|
+
|
|
15
|
+
// Force all EXIF parsing to use the C++ SkExif parser instead of the
|
|
16
|
+
// build-default parser. This is intended for Chromium to have a kill-switch
|
|
17
|
+
// to fall back to the C++ implementation if rust_exif causes issues in the
|
|
18
|
+
// field.
|
|
19
|
+
//
|
|
20
|
+
// This is a global setting and is NOT thread-safe with respect to concurrent
|
|
21
|
+
// codec operations. It should be called once early during process startup.
|
|
22
|
+
SK_API void ForceSkExif(bool forceSkExif);
|
|
23
|
+
|
|
24
|
+
} // namespace SkExif
|
|
25
|
+
|
|
26
|
+
#endif // SkExifChromium_DEFINED
|
|
@@ -621,7 +621,7 @@ static constexpr SkColorType GrColorTypeToSkColorType(GrColorType ct) {
|
|
|
621
621
|
case GrColorType::kRGB_888: return kUnknown_SkColorType;
|
|
622
622
|
case GrColorType::kR_8: return kR8_unorm_SkColorType;
|
|
623
623
|
case GrColorType::kR_16: return kR16_unorm_SkColorType;
|
|
624
|
-
case GrColorType::kR_F16: return
|
|
624
|
+
case GrColorType::kR_F16: return kR16_float_SkColorType;
|
|
625
625
|
case GrColorType::kGray_F16: return kUnknown_SkColorType;
|
|
626
626
|
case GrColorType::kARGB_4444: return kUnknown_SkColorType;
|
|
627
627
|
case GrColorType::kBGRA_4444: return kUnknown_SkColorType;
|
|
@@ -656,6 +656,7 @@ static constexpr GrColorType SkColorTypeToGrColorType(SkColorType ct) {
|
|
|
656
656
|
case kR16_unorm_SkColorType: return GrColorType::kR_16;
|
|
657
657
|
case kR16G16_unorm_SkColorType: return GrColorType::kRG_1616;
|
|
658
658
|
case kA16_float_SkColorType: return GrColorType::kAlpha_F16;
|
|
659
|
+
case kR16_float_SkColorType: return GrColorType::kR_F16;
|
|
659
660
|
case kR16G16_float_SkColorType: return GrColorType::kRG_F16;
|
|
660
661
|
case kR16G16B16A16_unorm_SkColorType: return GrColorType::kRGBA_16161616;
|
|
661
662
|
case kR8_unorm_SkColorType: return GrColorType::kR_8;
|