@shopify/react-native-skia 2.11.0-next.1 → 2.11.0

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.
Files changed (351) hide show
  1. package/cpp/api/JsiSkConverters.h +2 -2
  2. package/cpp/api/JsiSkNativeObjects.h +9 -9
  3. package/cpp/api/JsiSkRuntimeEffect.h +2 -2
  4. package/cpp/api/recorder/Convertor.h +57 -9
  5. package/cpp/api/third_party/SkottieUtils.cpp +1 -1
  6. package/cpp/jsi/EnumMapper.h +2 -2
  7. package/cpp/jsi/JSIConverter.h +2 -2
  8. package/cpp/jsi/NativeObject.h +13 -13
  9. package/cpp/jsi/Promise.cpp +2 -2
  10. package/cpp/jsi/Promise.h +2 -2
  11. package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +0 -2
  12. package/cpp/skia/include/android/vk/AndroidVulkanMemoryAllocator.h +1 -1
  13. package/cpp/skia/include/codec/SkAndroidCodec.h +1 -1
  14. package/cpp/skia/include/codec/SkAvifDecoder.h +1 -1
  15. package/cpp/skia/include/codec/SkBmpDecoder.h +1 -1
  16. package/cpp/skia/include/codec/SkBmpRustDecoder.h +42 -0
  17. package/cpp/skia/include/codec/SkCodec.h +3 -2
  18. package/cpp/skia/include/codec/SkGifDecoder.h +1 -1
  19. package/cpp/skia/include/codec/SkIcoDecoder.h +1 -1
  20. package/cpp/skia/include/codec/SkJpegDecoder.h +1 -1
  21. package/cpp/skia/include/codec/SkJpegxlDecoder.h +1 -1
  22. package/cpp/skia/include/codec/SkPixmapUtils.h +1 -1
  23. package/cpp/skia/include/codec/SkPngDecoder.h +1 -1
  24. package/cpp/skia/include/codec/SkPngRustDecoder.h +1 -1
  25. package/cpp/skia/include/codec/SkRawDecoder.h +1 -1
  26. package/cpp/skia/include/codec/SkWbmpDecoder.h +1 -1
  27. package/cpp/skia/include/codec/SkWebpDecoder.h +1 -1
  28. package/cpp/skia/include/core/SkBitmap.h +3 -3
  29. package/cpp/skia/include/core/SkCPUContext.h +1 -1
  30. package/cpp/skia/include/core/SkCPURecorder.h +2 -3
  31. package/cpp/skia/include/core/SkCanvas.h +23 -15
  32. package/cpp/skia/include/core/SkColor.h +2 -2
  33. package/cpp/skia/include/core/SkColorFilter.h +1 -1
  34. package/cpp/skia/include/core/SkColorSpace.h +2 -2
  35. package/cpp/skia/include/core/SkColorTable.h +1 -1
  36. package/cpp/skia/include/core/SkContourMeasure.h +1 -1
  37. package/cpp/skia/include/core/SkData.h +1 -1
  38. package/cpp/skia/include/core/SkDataTable.h +2 -2
  39. package/cpp/skia/include/core/SkDocument.h +1 -1
  40. package/cpp/skia/include/core/SkDrawable.h +1 -1
  41. package/cpp/skia/include/core/SkFont.h +2 -2
  42. package/cpp/skia/include/core/SkFontMetrics.h +1 -1
  43. package/cpp/skia/include/core/SkFontMgr.h +1 -1
  44. package/cpp/skia/include/core/SkFontScanner.h +3 -3
  45. package/cpp/skia/include/core/SkFontStyle.h +1 -1
  46. package/cpp/skia/include/core/SkGraphics.h +1 -1
  47. package/cpp/skia/include/core/SkImage.h +1 -1
  48. package/cpp/skia/include/core/SkImageFilter.h +1 -1
  49. package/cpp/skia/include/core/SkImageGenerator.h +1 -1
  50. package/cpp/skia/include/core/SkImageInfo.h +4 -4
  51. package/cpp/skia/include/core/SkMatrix.h +3 -3
  52. package/cpp/skia/include/core/SkMesh.h +2 -2
  53. package/cpp/skia/include/core/SkMilestone.h +1 -1
  54. package/cpp/skia/include/core/SkOverdrawCanvas.h +1 -1
  55. package/cpp/skia/include/core/SkPaint.h +4 -4
  56. package/cpp/skia/include/core/SkPath.h +5 -23
  57. package/cpp/skia/include/core/SkPathBuilder.h +4 -2
  58. package/cpp/skia/include/core/SkPathMeasure.h +1 -1
  59. package/cpp/skia/include/core/SkPictureRecorder.h +1 -1
  60. package/cpp/skia/include/core/SkPixelRef.h +3 -5
  61. package/cpp/skia/include/core/SkPixmap.h +7 -2
  62. package/cpp/skia/include/core/SkPoint.h +555 -5
  63. package/cpp/skia/include/core/SkPoint3.h +2 -2
  64. package/cpp/skia/include/core/SkRRect.h +9 -1
  65. package/cpp/skia/include/core/SkRSXform.h +1 -1
  66. package/cpp/skia/include/core/SkRecorder.h +2 -3
  67. package/cpp/skia/include/core/SkRect.h +3 -3
  68. package/cpp/skia/include/core/SkRefCnt.h +1 -1
  69. package/cpp/skia/include/core/SkRegion.h +4 -4
  70. package/cpp/skia/include/core/SkScalar.h +2 -3
  71. package/cpp/skia/include/core/SkSerialProcs.h +1 -1
  72. package/cpp/skia/include/core/SkShader.h +1 -1
  73. package/cpp/skia/include/core/SkSize.h +1 -1
  74. package/cpp/skia/include/core/SkSpan.h +165 -4
  75. package/cpp/skia/include/core/SkStream.h +2 -2
  76. package/cpp/skia/include/core/SkStrikeRef.h +16 -0
  77. package/cpp/skia/include/core/SkString.h +2 -2
  78. package/cpp/skia/include/core/SkStrokeRec.h +1 -1
  79. package/cpp/skia/include/core/SkSurfaceProps.h +1 -1
  80. package/cpp/skia/include/core/SkSwizzle.h +1 -1
  81. package/cpp/skia/include/core/SkTextBlob.h +2 -2
  82. package/cpp/skia/include/core/SkTiledImageUtils.h +1 -1
  83. package/cpp/skia/include/core/SkTypeface.h +8 -2
  84. package/cpp/skia/include/core/SkTypes.h +6 -6
  85. package/cpp/skia/include/core/SkUnPreMultiply.h +1 -1
  86. package/cpp/skia/include/core/SkVertices.h +1 -1
  87. package/cpp/skia/include/core/SkYUVAPixmaps.h +1 -1
  88. package/cpp/skia/include/docs/SkPDFDocument.h +9 -3
  89. package/cpp/skia/include/effects/SkGradient.h +1 -1
  90. package/cpp/skia/include/effects/SkPerlinNoiseShader.h +1 -1
  91. package/cpp/skia/include/effects/SkRuntimeEffect.h +4 -4
  92. package/cpp/skia/include/encode/SkEncoder.h +3 -3
  93. package/cpp/skia/include/encode/SkICC.h +1 -1
  94. package/cpp/skia/include/encode/SkJpegEncoder.h +1 -1
  95. package/cpp/skia/include/encode/SkPngEncoder.h +1 -1
  96. package/cpp/skia/include/encode/SkPngRustEncoder.h +16 -1
  97. package/cpp/skia/include/encode/SkWebpEncoder.h +1 -1
  98. package/cpp/skia/include/gpu/GpuTypes.h +1 -1
  99. package/cpp/skia/include/gpu/MutableTextureState.h +1 -1
  100. package/cpp/skia/include/gpu/ganesh/GrBackendSemaphore.h +2 -2
  101. package/cpp/skia/include/gpu/ganesh/GrBackendSurface.h +3 -3
  102. package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkaroundsAutogen.h +39 -37
  103. package/cpp/skia/include/gpu/ganesh/GrExternalTextureGenerator.h +1 -1
  104. package/cpp/skia/include/gpu/ganesh/GrRecordingContext.h +3 -2
  105. package/cpp/skia/include/gpu/ganesh/GrTypes.h +1 -1
  106. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +1 -1
  107. package/cpp/skia/include/gpu/ganesh/SkMeshGanesh.h +1 -1
  108. package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +1 -1
  109. package/cpp/skia/include/gpu/ganesh/d3d/GrD3DBackendSemaphore.h +1 -1
  110. package/cpp/skia/include/gpu/ganesh/d3d/GrD3DBackendSurface.h +1 -1
  111. package/cpp/skia/include/gpu/ganesh/d3d/GrD3DDirectContext.h +1 -1
  112. package/cpp/skia/include/gpu/ganesh/gl/GrGLAssembleInterface.h +1 -1
  113. package/cpp/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h +1 -1
  114. package/cpp/skia/include/gpu/ganesh/gl/GrGLConfig.h +1 -1
  115. package/cpp/skia/include/gpu/ganesh/gl/GrGLDirectContext.h +1 -1
  116. package/cpp/skia/include/gpu/ganesh/gl/GrGLExtensions.h +2 -2
  117. package/cpp/skia/include/gpu/ganesh/gl/GrGLFunctions.h +1 -1
  118. package/cpp/skia/include/gpu/ganesh/gl/GrGLMakeWebGLInterface.h +1 -1
  119. package/cpp/skia/include/gpu/ganesh/gl/epoxy/GrGLMakeEpoxyEGLInterface.h +1 -1
  120. package/cpp/skia/include/gpu/ganesh/gl/glx/GrGLMakeGLXInterface.h +1 -1
  121. package/cpp/skia/include/gpu/ganesh/gl/ios/GrGLMakeIOSInterface.h +1 -1
  122. package/cpp/skia/include/gpu/ganesh/gl/mac/GrGLMakeMacInterface.h +1 -1
  123. package/cpp/skia/include/gpu/ganesh/gl/win/GrGLMakeWinInterface.h +1 -1
  124. package/cpp/skia/include/gpu/ganesh/mock/GrMockBackendSurface.h +1 -1
  125. package/cpp/skia/include/gpu/ganesh/mock/GrMockTypes.h +1 -1
  126. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendSemaphore.h +1 -1
  127. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendSurface.h +1 -1
  128. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlDirectContext.h +1 -1
  129. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSemaphore.h +1 -1
  130. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSurface.h +1 -1
  131. package/cpp/skia/include/gpu/ganesh/vk/GrVkDirectContext.h +1 -1
  132. package/cpp/skia/include/gpu/graphite/BackendSemaphore.h +2 -2
  133. package/cpp/skia/include/gpu/graphite/BackendTexture.h +2 -2
  134. package/cpp/skia/include/gpu/graphite/Context.h +3 -3
  135. package/cpp/skia/include/gpu/graphite/ContextOptions.h +8 -2
  136. package/cpp/skia/include/gpu/graphite/PersistentPipelineStorage.h +1 -1
  137. package/cpp/skia/include/gpu/graphite/PrecompileContext.h +16 -2
  138. package/cpp/skia/include/gpu/graphite/Recorder.h +8 -7
  139. package/cpp/skia/include/gpu/graphite/Recording.h +6 -4
  140. package/cpp/skia/include/gpu/graphite/TextureInfo.h +2 -2
  141. package/cpp/skia/include/gpu/graphite/dawn/DawnGraphiteTypes.h +1 -1
  142. package/cpp/skia/include/gpu/graphite/mtl/MtlBackendContext.h +1 -1
  143. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +1 -1
  144. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes_cpp.h +1 -1
  145. package/cpp/skia/include/gpu/graphite/precompile/PaintOptions.h +2 -2
  146. package/cpp/skia/include/gpu/graphite/precompile/PrecompileImageFilter.h +1 -1
  147. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteContext.h +1 -1
  148. package/cpp/skia/include/gpu/vk/VulkanBackendContext.h +1 -1
  149. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +3 -3
  150. package/cpp/skia/include/gpu/vk/VulkanMutableTextureState.h +1 -1
  151. package/cpp/skia/include/gpu/vk/VulkanPreferredFeatures.h +1 -1
  152. package/cpp/skia/include/gpu/vk/VulkanTypes.h +1 -1
  153. package/cpp/skia/include/pathops/SkPathOps.h +2 -2
  154. package/cpp/skia/include/ports/SkImageGeneratorCG.h +2 -2
  155. package/cpp/skia/include/ports/SkImageGeneratorWIC.h +2 -2
  156. package/cpp/skia/include/private/{base/SingleOwner.h → SingleOwner.h} +5 -5
  157. package/cpp/skia/include/private/{base/SkAPI.h → SkAPI.h} +1 -1
  158. package/cpp/skia/include/private/{base/SkAlign.h → SkAlign.h} +1 -1
  159. package/cpp/skia/include/private/{base/SkAnySubclass.h → SkAnySubclass.h} +1 -1
  160. package/cpp/skia/include/private/{base/SkAssert.h → SkAssert.h} +4 -4
  161. package/cpp/skia/include/private/{base/SkAttributes.h → SkAttributes.h} +2 -2
  162. package/cpp/skia/include/private/{base/SkContainers.h → SkContainers.h} +3 -3
  163. package/cpp/skia/include/private/{base/SkDebug.h → SkDebug.h} +3 -3
  164. package/cpp/skia/include/private/{base/SkDeque.h → SkDeque.h} +1 -1
  165. package/cpp/skia/include/private/SkEncodedInfo.h +2 -2
  166. package/cpp/skia/include/private/SkEnumBitMask.h +92 -0
  167. package/cpp/skia/include/private/SkExif.h +1 -1
  168. package/cpp/skia/include/private/{base/SkFixed.h → SkFixed.h} +4 -4
  169. package/cpp/skia/include/private/{base/SkFloatingPoint.h → SkFloatingPoint.h} +2 -2
  170. package/cpp/skia/include/private/SkGainmapShader.h +1 -1
  171. package/cpp/skia/include/private/SkHdrMetadata.h +1 -1
  172. package/cpp/skia/include/private/SkIDChangeListener.h +3 -3
  173. package/cpp/skia/include/private/{base/SkLoadUserConfig.h → SkLoadUserConfig.h} +2 -2
  174. package/cpp/skia/include/private/{base/SkLog.h → SkLog.h} +4 -4
  175. package/cpp/skia/include/private/{base/SkMacros.h → SkMacros.h} +1 -1
  176. package/cpp/skia/include/private/{base/SkMalloc.h → SkMalloc.h} +1 -1
  177. package/cpp/skia/include/private/{base/SkMath.h → SkMath.h} +2 -2
  178. package/cpp/skia/include/private/{base/SkMutex.h → SkMutex.h} +5 -5
  179. package/cpp/skia/include/private/{base/SkNoncopyable.h → SkNoncopyable.h} +1 -1
  180. package/cpp/skia/include/private/{base/SkOnce.h → SkOnce.h} +1 -1
  181. package/cpp/skia/include/private/SkPathRef.h +4 -4
  182. package/cpp/skia/include/private/SkPixelStorage.h +20 -5
  183. package/cpp/skia/include/private/{base/SkSafe32.h → SkSafe32.h} +2 -2
  184. package/cpp/skia/include/private/{base/SkSemaphore.h → SkSemaphore.h} +3 -3
  185. package/cpp/skia/include/private/{base/SkTArray.h → SkTArray.h} +10 -11
  186. package/cpp/skia/include/private/{base/SkTDArray.h → SkTDArray.h} +4 -4
  187. package/cpp/skia/include/private/{base/SkTFitsIn.h → SkTFitsIn.h} +0 -2
  188. package/cpp/skia/include/private/{base/SkTLogic.h → SkTLogic.h} +1 -1
  189. package/cpp/skia/include/private/{base/SkTemplates.h → SkTemplates.h} +5 -6
  190. package/cpp/skia/include/private/{base/SkThreadAnnotations.h → SkThreadAnnotations.h} +1 -1
  191. package/cpp/skia/include/private/{base/SkThreadID.h → SkThreadID.h} +2 -2
  192. package/cpp/skia/include/private/{base/SkTo.h → SkTo.h} +2 -2
  193. package/cpp/skia/include/private/{base/SkTypeTraits.h → SkTypeTraits.h} +20 -0
  194. package/cpp/skia/include/private/SkXmp.h +1 -1
  195. package/cpp/skia/include/private/chromium/GrDeferredDisplayList.h +1 -1
  196. package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +1 -1
  197. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +1 -1
  198. package/cpp/skia/include/private/chromium/SkCodecsICCProfileChromium.h +1 -1
  199. package/cpp/skia/include/private/chromium/SkExifChromium.h +1 -1
  200. package/cpp/skia/include/private/chromium/SkImageChromium.h +1 -1
  201. package/cpp/skia/include/private/chromium/SkPMColor.h +1 -1
  202. package/cpp/skia/include/private/chromium/Slug.h +1 -1
  203. package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +1 -1
  204. package/cpp/skia/include/private/gpu/ganesh/GrImageContext.h +2 -2
  205. package/cpp/skia/include/private/gpu/ganesh/GrTextureGenerator.h +1 -1
  206. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +4 -4
  207. package/cpp/skia/include/utils/SkCamera.h +1 -1
  208. package/cpp/skia/include/utils/SkNWayCanvas.h +1 -1
  209. package/cpp/skia/include/utils/SkPaintFilterCanvas.h +1 -1
  210. package/cpp/skia/modules/jsonreader/SkJSONReader.cpp +6 -6
  211. package/cpp/skia/modules/jsonreader/SkJSONReader.h +2 -2
  212. package/cpp/skia/modules/skottie/include/SkottieProperty.h +1 -1
  213. package/cpp/skia/modules/skottie/include/SlotManager.h +2 -2
  214. package/cpp/skia/modules/skottie/include/TextShaper.h +1 -1
  215. package/cpp/skia/modules/skottie/src/text/Font.h +1 -1
  216. package/cpp/skia/modules/skparagraph/include/ParagraphCache.h +1 -1
  217. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +1 -1
  218. package/cpp/skia/modules/skresources/include/SkResources.h +1 -1
  219. package/cpp/skia/modules/sksg/include/SkSGNode.h +1 -1
  220. package/cpp/skia/modules/sksg/include/SkSGRect.h +1 -1
  221. package/cpp/skia/modules/sksg/include/SkSGRenderEffect.h +1 -1
  222. package/cpp/skia/modules/skunicode/include/SkUnicode.h +3 -3
  223. package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +1 -1
  224. package/cpp/skia/modules/svg/include/SkSVGCircle.h +1 -1
  225. package/cpp/skia/modules/svg/include/SkSVGClipPath.h +1 -1
  226. package/cpp/skia/modules/svg/include/SkSVGContainer.h +2 -2
  227. package/cpp/skia/modules/svg/include/SkSVGDOM.h +1 -1
  228. package/cpp/skia/modules/svg/include/SkSVGEllipse.h +1 -1
  229. package/cpp/skia/modules/svg/include/SkSVGFe.h +1 -1
  230. package/cpp/skia/modules/svg/include/SkSVGFeBlend.h +1 -1
  231. package/cpp/skia/modules/svg/include/SkSVGFeColorMatrix.h +1 -1
  232. package/cpp/skia/modules/svg/include/SkSVGFeComponentTransfer.h +1 -1
  233. package/cpp/skia/modules/svg/include/SkSVGFeComposite.h +1 -1
  234. package/cpp/skia/modules/svg/include/SkSVGFeDisplacementMap.h +1 -1
  235. package/cpp/skia/modules/svg/include/SkSVGFeFlood.h +1 -1
  236. package/cpp/skia/modules/svg/include/SkSVGFeGaussianBlur.h +1 -1
  237. package/cpp/skia/modules/svg/include/SkSVGFeImage.h +1 -1
  238. package/cpp/skia/modules/svg/include/SkSVGFeLightSource.h +2 -2
  239. package/cpp/skia/modules/svg/include/SkSVGFeLighting.h +1 -1
  240. package/cpp/skia/modules/svg/include/SkSVGFeMerge.h +1 -1
  241. package/cpp/skia/modules/svg/include/SkSVGFeOffset.h +1 -1
  242. package/cpp/skia/modules/svg/include/SkSVGFeTurbulence.h +1 -1
  243. package/cpp/skia/modules/svg/include/SkSVGFilter.h +1 -1
  244. package/cpp/skia/modules/svg/include/SkSVGGradient.h +2 -2
  245. package/cpp/skia/modules/svg/include/SkSVGImage.h +2 -2
  246. package/cpp/skia/modules/svg/include/SkSVGLine.h +1 -1
  247. package/cpp/skia/modules/svg/include/SkSVGLinearGradient.h +1 -1
  248. package/cpp/skia/modules/svg/include/SkSVGMask.h +1 -1
  249. package/cpp/skia/modules/svg/include/SkSVGNode.h +1 -1
  250. package/cpp/skia/modules/svg/include/SkSVGPath.h +1 -1
  251. package/cpp/skia/modules/svg/include/SkSVGPattern.h +1 -1
  252. package/cpp/skia/modules/svg/include/SkSVGPoly.h +1 -1
  253. package/cpp/skia/modules/svg/include/SkSVGRadialGradient.h +1 -1
  254. package/cpp/skia/modules/svg/include/SkSVGRect.h +1 -1
  255. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +1 -1
  256. package/cpp/skia/modules/svg/include/SkSVGSVG.h +1 -1
  257. package/cpp/skia/modules/svg/include/SkSVGShape.h +1 -1
  258. package/cpp/skia/modules/svg/include/SkSVGStop.h +1 -1
  259. package/cpp/skia/modules/svg/include/SkSVGText.h +1 -1
  260. package/cpp/skia/modules/svg/include/SkSVGTransformableNode.h +1 -1
  261. package/cpp/skia/modules/svg/include/SkSVGUse.h +1 -1
  262. package/cpp/skia/modules/svg/include/SkSVGValue.h +1 -1
  263. package/cpp/skia/src/{base → core}/SkArenaAlloc.h +5 -5
  264. package/cpp/skia/src/{base → core}/SkAutoLocaleSetter.h +1 -1
  265. package/cpp/skia/src/core/SkChecksum.h +1 -1
  266. package/cpp/skia/src/core/SkLRUCache.h +1 -1
  267. package/cpp/skia/src/{base → core}/SkMathPriv.h +3 -3
  268. package/cpp/skia/src/core/SkTHash.h +1 -1
  269. package/cpp/skia/src/{base → core}/SkTInternalLList.h +3 -3
  270. package/cpp/skia/src/{base → core}/SkTLazy.h +1 -1
  271. package/cpp/skia/src/{base → core}/SkUTF.h +1 -1
  272. package/lib/commonjs/renderer/processors/Animations/Animations.d.ts +27 -1
  273. package/lib/commonjs/renderer/processors/Animations/Animations.js +28 -0
  274. package/lib/commonjs/renderer/processors/Animations/Animations.js.map +1 -1
  275. package/lib/commonjs/sksg/Recorder/Core.js +8 -1
  276. package/lib/commonjs/sksg/Recorder/Core.js.map +1 -1
  277. package/lib/commonjs/sksg/Recorder/ReanimatedRecorder.js +8 -0
  278. package/lib/commonjs/sksg/Recorder/ReanimatedRecorder.js.map +1 -1
  279. package/lib/commonjs/sksg/Recorder/Recorder.d.ts +1 -1
  280. package/lib/commonjs/sksg/Recorder/Recorder.js +4 -0
  281. package/lib/commonjs/sksg/Recorder/Recorder.js.map +1 -1
  282. package/lib/commonjs/sksg/utils.d.ts +4 -0
  283. package/lib/commonjs/sksg/utils.js +14 -1
  284. package/lib/commonjs/sksg/utils.js.map +1 -1
  285. package/lib/module/renderer/processors/Animations/Animations.d.ts +27 -1
  286. package/lib/module/renderer/processors/Animations/Animations.js +21 -0
  287. package/lib/module/renderer/processors/Animations/Animations.js.map +1 -1
  288. package/lib/module/sksg/Recorder/Core.js +8 -1
  289. package/lib/module/sksg/Recorder/Core.js.map +1 -1
  290. package/lib/module/sksg/Recorder/ReanimatedRecorder.js +9 -1
  291. package/lib/module/sksg/Recorder/ReanimatedRecorder.js.map +1 -1
  292. package/lib/module/sksg/Recorder/Recorder.d.ts +1 -1
  293. package/lib/module/sksg/Recorder/Recorder.js +5 -1
  294. package/lib/module/sksg/Recorder/Recorder.js.map +1 -1
  295. package/lib/module/sksg/utils.d.ts +4 -0
  296. package/lib/module/sksg/utils.js +12 -0
  297. package/lib/module/sksg/utils.js.map +1 -1
  298. package/lib/typescript/lib/commonjs/renderer/processors/Animations/Animations.d.ts +22 -0
  299. package/lib/typescript/lib/commonjs/sksg/utils.d.ts +1 -0
  300. package/lib/typescript/lib/module/mock/index.d.ts +4 -0
  301. package/lib/typescript/lib/module/renderer/processors/Animations/Animations.d.ts +4 -0
  302. package/lib/typescript/lib/module/renderer/processors/Animations/index.d.ts +1 -1
  303. package/lib/typescript/lib/module/sksg/utils.d.ts +1 -0
  304. package/lib/typescript/src/renderer/processors/Animations/Animations.d.ts +27 -1
  305. package/lib/typescript/src/sksg/Recorder/Recorder.d.ts +1 -1
  306. package/lib/typescript/src/sksg/utils.d.ts +4 -0
  307. package/package.json +9 -9
  308. package/src/renderer/processors/Animations/Animations.ts +34 -1
  309. package/src/sksg/Recorder/Core.ts +11 -1
  310. package/src/sksg/Recorder/ReanimatedRecorder.ts +10 -1
  311. package/src/sksg/Recorder/Recorder.ts +7 -3
  312. package/src/sksg/utils.ts +18 -0
  313. package/cpp/dawn/include/dawn/dawn_proc.h +0 -53
  314. package/cpp/dawn/include/dawn/dawn_proc_table.h +0 -330
  315. package/cpp/dawn/include/dawn/dawn_thread_dispatch_proc.h +0 -47
  316. package/cpp/dawn/include/dawn/dawn_version.h +0 -41
  317. package/cpp/dawn/include/dawn/native/D3D11Backend.h +0 -65
  318. package/cpp/dawn/include/dawn/native/D3D12Backend.h +0 -86
  319. package/cpp/dawn/include/dawn/native/D3DBackend.h +0 -56
  320. package/cpp/dawn/include/dawn/native/DawnNative.h +0 -369
  321. package/cpp/dawn/include/dawn/native/MetalBackend.h +0 -56
  322. package/cpp/dawn/include/dawn/native/NullBackend.h +0 -39
  323. package/cpp/dawn/include/dawn/native/OpenGLBackend.h +0 -89
  324. package/cpp/dawn/include/dawn/native/VulkanBackend.h +0 -183
  325. package/cpp/dawn/include/dawn/native/WebGPUBackend.h +0 -49
  326. package/cpp/dawn/include/dawn/native/dawn_native_export.h +0 -49
  327. package/cpp/dawn/include/dawn/platform/DawnPlatform.h +0 -210
  328. package/cpp/dawn/include/dawn/platform/dawn_platform_export.h +0 -49
  329. package/cpp/dawn/include/dawn/replay/Replay.h +0 -99
  330. package/cpp/dawn/include/dawn/replay/dawn_replay_export.h +0 -49
  331. package/cpp/dawn/include/dawn/webgpu_cpp_print.h +0 -2844
  332. package/cpp/dawn/include/tint/tint.h +0 -90
  333. package/cpp/dawn/include/webgpu/webgpu.h +0 -4987
  334. package/cpp/dawn/include/webgpu/webgpu_cpp.h +0 -10080
  335. package/cpp/dawn/include/webgpu/webgpu_cpp_chained_struct.h +0 -57
  336. package/cpp/dawn/include/webgpu/webgpu_enum_class_bitmasks.h +0 -161
  337. package/cpp/dawn/include/webgpu/webgpu_glfw.h +0 -88
  338. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteUtils.h +0 -10
  339. package/cpp/skia/include/private/base/README.md +0 -4
  340. package/cpp/skia/include/private/base/SkPoint_impl.h +0 -560
  341. package/cpp/skia/include/private/base/SkSpan_impl.h +0 -158
  342. package/cpp/skia/src/gpu/graphite/ContextOptionsPriv.h +0 -45
  343. package/cpp/skia/src/gpu/graphite/ResourceTypes.h +0 -360
  344. package/cpp/skia/src/gpu/graphite/TextureProxyView.h +0 -105
  345. package/libs/.graphite +0 -1
  346. /package/cpp/skia/include/private/{base/SkASAN.h → SkASAN.h} +0 -0
  347. /package/cpp/skia/include/private/{base/SkAlignedStorage.h → SkAlignedStorage.h} +0 -0
  348. /package/cpp/skia/include/private/{base/SkCPUTypes.h → SkCPUTypes.h} +0 -0
  349. /package/cpp/skia/include/private/{base/SkFeatures.h → SkFeatures.h} +0 -0
  350. /package/cpp/skia/include/private/{base/SkLogPriority.h → SkLogPriority.h} +0 -0
  351. /package/cpp/skia/include/private/{base/SkTPin.h → SkTPin.h} +0 -0
@@ -214,7 +214,7 @@ template <typename T> struct JsiOptional : std::optional<T> {
214
214
 
215
215
  } // namespace RNSkia
216
216
 
217
- namespace rnwgpu {
217
+ namespace RNJsi {
218
218
 
219
219
  /**
220
220
  * sk_sp<T> arguments (SkImage, SkShader, ...). Delegates to the wrapper
@@ -407,4 +407,4 @@ template <> struct JSIConverter<SkISize> {
407
407
  }
408
408
  };
409
409
 
410
- } // namespace rnwgpu
410
+ } // namespace RNJsi
@@ -24,7 +24,7 @@
24
24
  * be expressed as typed signatures (heterogeneous argument dispatch, typed
25
25
  * array construction, lenient options objects, promises) — everything else
26
26
  * uses installMethod/installGetter/installChainableMethod with typed C++
27
- * signatures converted through rnwgpu::JSIConverter.
27
+ * signatures converted through RNJsi::JSIConverter.
28
28
  */
29
29
  #define JSI_HOST_FUNCTION(NAME) \
30
30
  jsi::Value NAME(jsi::Runtime &runtime, const jsi::Value &thisValue, \
@@ -36,7 +36,7 @@ namespace jsi = facebook::jsi;
36
36
 
37
37
  // Minimum memory pressure reported for any native object — aliased from the
38
38
  // NativeObject infrastructure so dispose() and create() agree on the floor.
39
- static constexpr size_t kMinMemoryPressure = rnwgpu::kMinMemoryPressure;
39
+ static constexpr size_t kMinMemoryPressure = RNJsi::kMinMemoryPressure;
40
40
 
41
41
  /**
42
42
  * Creates the JS object for a wrapper instance (a class based on the
@@ -102,16 +102,16 @@ std::shared_ptr<T> getJsiObject(jsi::Runtime &runtime,
102
102
  *
103
103
  * Most methods use typed C++ signatures installed with installMethod /
104
104
  * installGetter / installChainableMethod (arguments and results converted
105
- * through rnwgpu::JSIConverter, see JsiSkConverters.h). Methods that cannot
105
+ * through RNJsi::JSIConverter, see JsiSkConverters.h). Methods that cannot
106
106
  * be typed keep the classic JSI_HOST_FUNCTION signature and are installed
107
107
  * with installHostMethod, which resolves the C++ instance from `this` via
108
108
  * native state.
109
109
  */
110
110
  template <typename Derived>
111
- class JsiSkNativeObject : public rnwgpu::NativeObject<Derived> {
111
+ class JsiSkNativeObject : public RNJsi::NativeObject<Derived> {
112
112
  public:
113
113
  explicit JsiSkNativeObject(std::shared_ptr<RNSkPlatformContext> context)
114
- : rnwgpu::NativeObject<Derived>(Derived::CLASS_NAME),
114
+ : RNJsi::NativeObject<Derived>(Derived::CLASS_NAME),
115
115
  _context(std::move(context)) {}
116
116
 
117
117
  /**
@@ -120,7 +120,7 @@ public:
120
120
  */
121
121
  static std::shared_ptr<Derived> fromThis(jsi::Runtime &runtime,
122
122
  const jsi::Value &thisValue) {
123
- return rnwgpu::NativeObject<Derived>::fromValue(runtime, thisValue);
123
+ return RNJsi::NativeObject<Derived>::fromValue(runtime, thisValue);
124
124
  }
125
125
 
126
126
  protected:
@@ -222,7 +222,7 @@ protected:
222
222
  /**
223
223
  * Installs a typed mutating method that returns `this` for chaining
224
224
  * (e.g. path.moveTo(...).lineTo(...)). Arguments are converted through
225
- * rnwgpu::JSIConverter like installMethod; the member function's return
225
+ * RNJsi::JSIConverter like installMethod; the member function's return
226
226
  * value (if any) is ignored and the JS function returns thisValue.
227
227
  */
228
228
  template <typename ReturnType, typename... Args>
@@ -270,7 +270,7 @@ private:
270
270
  ReturnType (Derived::*method)(Args...),
271
271
  jsi::Runtime &runtime, const jsi::Value *args,
272
272
  std::index_sequence<Is...>, size_t count) {
273
- (obj->*method)(rnwgpu::JSIConverter<std::decay_t<Args>>::fromJSI(
273
+ (obj->*method)(RNJsi::JSIConverter<std::decay_t<Args>>::fromJSI(
274
274
  runtime, args[Is], Is >= count)...);
275
275
  }
276
276
 
@@ -280,7 +280,7 @@ private:
280
280
  jsi::Runtime &runtime, const jsi::Value *args, std::index_sequence<Is...>,
281
281
  size_t count) {
282
282
  (obj->*method)(runtime,
283
- rnwgpu::JSIConverter<std::decay_t<Args>>::fromJSI(
283
+ RNJsi::JSIConverter<std::decay_t<Args>>::fromJSI(
284
284
  runtime, args[Is], Is >= count)...);
285
285
  }
286
286
 
@@ -39,7 +39,7 @@ struct RuntimeEffectUniform {
39
39
 
40
40
  } // namespace RNSkia
41
41
 
42
- namespace rnwgpu {
42
+ namespace RNJsi {
43
43
 
44
44
  // RuntimeEffectUniform -> {columns, rows, slot, isInteger}
45
45
  template <> struct JSIConverter<RNSkia::RuntimeEffectUniform> {
@@ -54,7 +54,7 @@ template <> struct JSIConverter<RNSkia::RuntimeEffectUniform> {
54
54
  }
55
55
  };
56
56
 
57
- } // namespace rnwgpu
57
+ } // namespace RNJsi
58
58
 
59
59
  namespace RNSkia {
60
60
 
@@ -69,7 +69,51 @@ template <typename T> struct unwrap_optional<std::optional<T>> {
69
69
  template <typename T>
70
70
  T getPropertyValue(jsi::Runtime &runtime, const jsi::Value &value);
71
71
 
72
- // Base template for convertProperty
72
+ template <typename T, typename Target>
73
+ bool convertSelectorProperty(jsi::Runtime &runtime, const jsi::Value &prop,
74
+ Target &target, Variables &variables) {
75
+ if (!prop.isObject()) {
76
+ return false;
77
+ }
78
+ auto wrapper = prop.asObject(runtime);
79
+ if (!wrapper.hasProperty(runtime, "__sv") ||
80
+ !wrapper.hasProperty(runtime, "__key")) {
81
+ return false;
82
+ }
83
+ auto svVal = wrapper.getProperty(runtime, "__sv");
84
+ auto keyVal = wrapper.getProperty(runtime, "__key");
85
+ if (!isSharedValue(runtime, svVal) || !keyVal.isString()) {
86
+ return false;
87
+ }
88
+ auto sharedValue = svVal.asObject(runtime);
89
+ auto key = keyVal.asString(runtime).utf8(runtime);
90
+ auto name =
91
+ sharedValue.getProperty(runtime, "name").asString(runtime).utf8(runtime);
92
+
93
+ auto conv = [target = &target, key](jsi::Runtime &runtime,
94
+ const jsi::Object &val) {
95
+ auto value = val.getProperty(runtime, "value");
96
+ if (!value.isObject()) {
97
+ return;
98
+ }
99
+ auto values = value.asObject(runtime);
100
+ if (!values.hasProperty(runtime, key.c_str())) {
101
+ return;
102
+ }
103
+
104
+ auto selected = values.getProperty(runtime, key.c_str());
105
+ if (selected.isUndefined() || selected.isNull() ||
106
+ (selected.isObject() && selected.asObject(runtime).isFunction(runtime))) {
107
+ return;
108
+ }
109
+ *target = getPropertyValue<T>(runtime, selected);
110
+ };
111
+
112
+ variables[name].push_back(conv);
113
+ conv(runtime, sharedValue);
114
+ return true;
115
+ }
116
+
73
117
  template <typename T, typename Target>
74
118
  void convertPropertyImpl(jsi::Runtime &runtime, const jsi::Object &object,
75
119
  const std::string &propertyName, Target &target,
@@ -78,13 +122,16 @@ void convertPropertyImpl(jsi::Runtime &runtime, const jsi::Object &object,
78
122
  return;
79
123
  }
80
124
 
81
- auto property = object.getProperty(runtime, propertyName.c_str());
125
+ auto prop = object.getProperty(runtime, propertyName.c_str());
126
+
127
+ if (convertSelectorProperty<T>(runtime, prop, target, variables)) {
128
+ return;
129
+ }
82
130
 
83
- if (isSharedValue(runtime, property)) {
84
- auto sharedValue = property.asObject(runtime);
85
- auto name = sharedValue.getProperty(runtime, "name")
86
- .asString(runtime)
87
- .utf8(runtime);
131
+ if (isSharedValue(runtime, prop)) {
132
+ auto sharedValue = prop.asObject(runtime);
133
+ auto name =
134
+ sharedValue.getProperty(runtime, "name").asString(runtime).utf8(runtime);
88
135
  auto conv = [target = &target](jsi::Runtime &runtime,
89
136
  const jsi::Object &val) {
90
137
  auto value = val.getProperty(runtime, "value");
@@ -92,9 +139,10 @@ void convertPropertyImpl(jsi::Runtime &runtime, const jsi::Object &object,
92
139
  };
93
140
  variables[name].push_back(conv);
94
141
  conv(runtime, sharedValue);
95
- } else {
96
- target = getPropertyValue<T>(runtime, property);
142
+ return;
97
143
  }
144
+
145
+ target = getPropertyValue<T>(runtime, prop);
98
146
  }
99
147
 
100
148
  // Main convertProperty template
@@ -10,7 +10,7 @@
10
10
  #include "include/core/SkData.h"
11
11
  #include "include/core/SkRect.h"
12
12
  #include "include/core/SkSize.h"
13
- #include "include/private/base/SkAssert.h"
13
+ #include "include/private/SkAssert.h"
14
14
  #include "modules/skottie/include/Skottie.h"
15
15
  #include "modules/skresources/include/SkResources.h"
16
16
 
@@ -3,7 +3,7 @@
3
3
  #include <stdexcept>
4
4
  #include <string>
5
5
 
6
- namespace rnwgpu {
6
+ namespace RNJsi {
7
7
 
8
8
  namespace EnumMapper {
9
9
  // Add these two methods in namespace "EnumMapper" to allow parsing a custom
@@ -60,4 +60,4 @@ static void convertEnumToJSUnion(TEnum, std::string *) {
60
60
  }
61
61
  } // namespace EnumMapper
62
62
 
63
- } // namespace rnwgpu
63
+ } // namespace RNJsi
@@ -25,7 +25,7 @@
25
25
  #include <cxxabi.h>
26
26
  #endif
27
27
 
28
- namespace rnwgpu {
28
+ namespace RNJsi {
29
29
 
30
30
  namespace jsi = facebook::jsi;
31
31
 
@@ -495,4 +495,4 @@ template <> struct JSIConverter<std::unordered_set<std::string>> {
495
495
  }
496
496
  };
497
497
 
498
- } // namespace rnwgpu
498
+ } // namespace RNJsi
@@ -18,14 +18,14 @@
18
18
  #include "jsi/RuntimeAwareCache.h" // Use Skia's RuntimeAwareCache
19
19
 
20
20
  // Forward declare to avoid circular dependency
21
- namespace rnwgpu {
21
+ namespace RNJsi {
22
22
  template <typename ArgType, typename SFINAE> struct JSIConverter;
23
- } // namespace rnwgpu
23
+ } // namespace RNJsi
24
24
 
25
25
  // Include the converter - must come after forward declaration
26
26
  #include "JSIConverter.h"
27
27
 
28
- namespace rnwgpu {
28
+ namespace RNJsi {
29
29
 
30
30
  namespace jsi = facebook::jsi;
31
31
 
@@ -452,7 +452,7 @@ protected:
452
452
  return jsi::Value::undefined();
453
453
  } else {
454
454
  ReturnType result = (native.get()->*getter)();
455
- return rnwgpu::JSIConverter<std::decay_t<ReturnType>>::toJSI(
455
+ return RNJsi::JSIConverter<std::decay_t<ReturnType>>::toJSI(
456
456
  rt, std::move(result));
457
457
  }
458
458
  });
@@ -487,7 +487,7 @@ protected:
487
487
  throw jsi::JSError(rt, "Setter requires a value argument");
488
488
  }
489
489
  auto native = NativeObject<Derived>::fromValue(rt, thisVal);
490
- auto value = rnwgpu::JSIConverter<std::decay_t<ValueType>>::fromJSI(
490
+ auto value = RNJsi::JSIConverter<std::decay_t<ValueType>>::fromJSI(
491
491
  rt, args[0], false);
492
492
  (native.get()->*setter)(std::move(value));
493
493
  return jsi::Value::undefined();
@@ -535,7 +535,7 @@ protected:
535
535
  const jsi::Value *args, size_t count) -> jsi::Value {
536
536
  auto native = NativeObject<Derived>::fromValue(rt, thisVal);
537
537
  ReturnType result = (native.get()->*getter)();
538
- return rnwgpu::JSIConverter<std::decay_t<ReturnType>>::toJSI(
538
+ return RNJsi::JSIConverter<std::decay_t<ReturnType>>::toJSI(
539
539
  rt, std::move(result));
540
540
  });
541
541
 
@@ -548,7 +548,7 @@ protected:
548
548
  throw jsi::JSError(rt, "Setter requires a value argument");
549
549
  }
550
550
  auto native = NativeObject<Derived>::fromValue(rt, thisVal);
551
- auto value = rnwgpu::JSIConverter<std::decay_t<ValueType>>::fromJSI(
551
+ auto value = RNJsi::JSIConverter<std::decay_t<ValueType>>::fromJSI(
552
552
  rt, args[0], false);
553
553
  (native.get()->*setter)(std::move(value));
554
554
  return jsi::Value::undefined();
@@ -579,9 +579,9 @@ private:
579
579
  jsi::Runtime &runtime, const jsi::Value *args,
580
580
  std::index_sequence<Is...>, size_t count) {
581
581
  ReturnType result = (obj->*method)(
582
- runtime, rnwgpu::JSIConverter<std::decay_t<Args>>::fromJSI(
582
+ runtime, RNJsi::JSIConverter<std::decay_t<Args>>::fromJSI(
583
583
  runtime, args[Is], Is >= count)...);
584
- return rnwgpu::JSIConverter<std::decay_t<ReturnType>>::toJSI(
584
+ return RNJsi::JSIConverter<std::decay_t<ReturnType>>::toJSI(
585
585
  runtime, std::move(result));
586
586
  }
587
587
 
@@ -592,7 +592,7 @@ private:
592
592
  jsi::Runtime &runtime, const jsi::Value *args,
593
593
  std::index_sequence<Is...>, size_t count) {
594
594
  if constexpr (std::is_same_v<ReturnType, void>) {
595
- (obj->*method)(rnwgpu::JSIConverter<std::decay_t<Args>>::fromJSI(
595
+ (obj->*method)(RNJsi::JSIConverter<std::decay_t<Args>>::fromJSI(
596
596
  runtime, args[Is], Is >= count)...);
597
597
  return jsi::Value::undefined();
598
598
  } else if constexpr (std::is_same_v<ReturnType, jsi::Value>) {
@@ -601,9 +601,9 @@ private:
601
601
  return (obj->*method)(runtime, jsi::Value::undefined(), args, count);
602
602
  } else {
603
603
  ReturnType result =
604
- (obj->*method)(rnwgpu::JSIConverter<std::decay_t<Args>>::fromJSI(
604
+ (obj->*method)(RNJsi::JSIConverter<std::decay_t<Args>>::fromJSI(
605
605
  runtime, args[Is], Is >= count)...);
606
- return rnwgpu::JSIConverter<std::decay_t<ReturnType>>::toJSI(
606
+ return RNJsi::JSIConverter<std::decay_t<ReturnType>>::toJSI(
607
607
  runtime, std::move(result));
608
608
  }
609
609
  }
@@ -616,4 +616,4 @@ template <typename T>
616
616
  struct is_native_object<std::shared_ptr<T>>
617
617
  : std::bool_constant<std::is_base_of_v<NativeObject<T>, T>> {};
618
618
 
619
- } // namespace rnwgpu
619
+ } // namespace RNJsi
@@ -6,7 +6,7 @@
6
6
  #include <utility>
7
7
  #include <vector>
8
8
 
9
- namespace rnwgpu {
9
+ namespace RNJsi {
10
10
 
11
11
  namespace jsi = facebook::jsi;
12
12
 
@@ -45,4 +45,4 @@ void Promise::reject(std::string message) {
45
45
  _rejecter.call(runtime, error.value());
46
46
  }
47
47
 
48
- } // namespace rnwgpu
48
+ } // namespace RNJsi
package/cpp/jsi/Promise.h CHANGED
@@ -6,7 +6,7 @@
6
6
  #include <utility>
7
7
  #include <vector>
8
8
 
9
- namespace rnwgpu {
9
+ namespace RNJsi {
10
10
 
11
11
  namespace jsi = facebook::jsi;
12
12
 
@@ -34,4 +34,4 @@ public:
34
34
  static jsi::Value createPromise(jsi::Runtime &runtime, RunPromise run);
35
35
  };
36
36
 
37
- } // namespace rnwgpu
37
+ } // namespace RNJsi
@@ -39,8 +39,6 @@ public:
39
39
 
40
40
  static void SafetyNetLog(const char*);
41
41
 
42
- static sk_sp<SkSurface> getSurfaceFromCanvas(SkCanvas* canvas);
43
-
44
42
  static int SaveBehind(SkCanvas* canvas, const SkRect* subset);
45
43
 
46
44
  // Operating within the canvas' clip stack, this resets the geometry of the clip to be wide
@@ -9,7 +9,7 @@
9
9
  #define AndroidVulkanMemoryAllocator_DEFINED
10
10
 
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  namespace skgpu {
15
15
  struct VulkanBackendContext;
@@ -15,7 +15,7 @@
15
15
  #include "include/core/SkSize.h"
16
16
  #include "include/core/SkTypes.h"
17
17
  #include "include/private/SkEncodedInfo.h"
18
- #include "include/private/base/SkNoncopyable.h"
18
+ #include "include/private/SkNoncopyable.h"
19
19
  #include "modules/skcms/skcms.h"
20
20
 
21
21
  // TODO(kjlubick, bungeman) Replace these includes with forward declares
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Copyright 2025 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
+ #ifndef SkBmpRustDecoder_DEFINED
8
+ #define SkBmpRustDecoder_DEFINED
9
+
10
+ #include "include/codec/SkCodec.h"
11
+ #include "include/core/SkRefCnt.h"
12
+ #include "include/private/SkAPI.h"
13
+
14
+ class SkData;
15
+ class SkStream;
16
+
17
+ #include <memory>
18
+
19
+ namespace SkBmpRustDecoder {
20
+
21
+ /** Returns true if this data claims to be a BMP image. */
22
+ SK_API bool IsBmp(const void*, size_t);
23
+
24
+ /**
25
+ * Attempts to decode the given bytes as a BMP using Rust implementation.
26
+ *
27
+ * If the bytes are not a BMP, returns nullptr.
28
+ */
29
+ SK_API std::unique_ptr<SkCodec> Decode(std::unique_ptr<SkStream>,
30
+ SkCodec::Result*,
31
+ SkCodecs::DecodeContext = nullptr);
32
+ SK_API std::unique_ptr<SkCodec> Decode(sk_sp<const SkData>,
33
+ SkCodec::Result*,
34
+ SkCodecs::DecodeContext = nullptr);
35
+
36
+ inline constexpr SkCodecs::Decoder Decoder() {
37
+ return { "rust_bmp", IsBmp, Decode };
38
+ }
39
+
40
+ } // namespace SkBmpRustDecoder
41
+
42
+ #endif // SkBmpRustDecoder_DEFINED
@@ -19,7 +19,7 @@
19
19
  #include "include/core/SkYUVAPixmaps.h"
20
20
  #include "include/private/SkEncodedInfo.h"
21
21
  #include "include/private/SkHdrMetadata.h"
22
- #include "include/private/base/SkNoncopyable.h"
22
+ #include "include/private/SkNoncopyable.h"
23
23
  #include "modules/skcms/skcms.h"
24
24
 
25
25
  #include <cstddef>
@@ -1129,7 +1129,8 @@ private:
1129
1129
  friend class PNGCodecGM; // for fillIncompleteImage
1130
1130
  friend class SkSampledCodec;
1131
1131
  friend class SkIcoCodec;
1132
- friend class SkPngCodec; // for onGetGainmapCodec
1132
+ friend class SkIcoRustCodec; // for getEncodedInfo and getSampler
1133
+ friend class SkPngCodecBase; // for onGetGainmapCodec
1133
1134
  friend class SkAndroidCodec; // for handleFrameIndex
1134
1135
  friend class SkCodecPriv; // for fEncodedInfo
1135
1136
  };
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -10,7 +10,7 @@
10
10
 
11
11
  #include "include/codec/SkEncodedOrigin.h"
12
12
  #include "include/core/SkImageInfo.h"
13
- #include "include/private/base/SkAPI.h"
13
+ #include "include/private/SkAPI.h"
14
14
 
15
15
  class SkPixmap;
16
16
 
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -10,7 +10,7 @@
10
10
  #include <memory>
11
11
 
12
12
  #include "include/codec/SkCodec.h"
13
- #include "include/private/base/SkAPI.h"
13
+ #include "include/private/SkAPI.h"
14
14
 
15
15
  class SkStream;
16
16
 
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include "include/codec/SkCodec.h"
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkData;
15
15
  class SkStream;
@@ -18,8 +18,8 @@
18
18
  #include "include/core/SkSamplingOptions.h"
19
19
  #include "include/core/SkSize.h"
20
20
  #include "include/core/SkTypes.h"
21
- #include "include/private/base/SkCPUTypes.h"
22
- #include "include/private/base/SkDebug.h"
21
+ #include "include/private/SkCPUTypes.h"
22
+ #include "include/private/SkDebug.h"
23
23
 
24
24
  #include <cstddef>
25
25
  #include <cstdint>
@@ -205,7 +205,7 @@ public:
205
205
 
206
206
  @return true if dimensions do not enclose area
207
207
  */
208
- bool empty() const { return fPixmap.info().isEmpty(); }
208
+ bool empty() const { return fPixmap.isEmpty(); }
209
209
 
210
210
  /** Returns true if SkPixelRef is nullptr.
211
211
 
@@ -7,7 +7,7 @@
7
7
  #ifndef skcpu_Context_DEFINED
8
8
  #define skcpu_Context_DEFINED
9
9
 
10
- #include "include/private/base/SkAPI.h"
10
+ #include "include/private/SkAPI.h"
11
11
 
12
12
  #include <memory>
13
13
 
@@ -11,10 +11,9 @@
11
11
  #include <cstdint>
12
12
  #include "include/core/SkRecorder.h"
13
13
  #include "include/core/SkRefCnt.h"
14
- #include "include/private/base/SkAPI.h"
14
+ #include "include/private/SkAPI.h"
15
15
 
16
16
  class SkCanvas;
17
- class SkContentID;
18
17
  class SkSurface;
19
18
  class SkSurfaceProps;
20
19
  struct SkImageInfo;
@@ -59,7 +58,7 @@ public:
59
58
  private:
60
59
  // TODO (b/412351769): Implement this so we can capture from a CPU Recorder.
61
60
  SkCanvas* makeCaptureCanvas(SkCanvas*) final { return nullptr; }
62
- SkContentID createCaptureBreakpoint(SkSurface*) final;
61
+ void createCaptureBreakpoint(SkSurface*) final;
63
62
  };
64
63
 
65
64
  inline Recorder* AsRecorder(SkRecorder* recorder) {