@shopify/react-native-skia 0.1.213 → 0.1.215

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 (327) hide show
  1. package/android/cpp/rnskia-android/SkiaOpenGLHelper.h +3 -2
  2. package/android/cpp/rnskia-android/SkiaOpenGLSurfaceFactory.cpp +9 -2
  3. package/cpp/api/JsiSkMatrix.h +31 -0
  4. package/cpp/api/JsiSkPath.h +15 -7
  5. package/cpp/api/JsiSkSurface.h +4 -1
  6. package/cpp/skia/include/android/GrAHardwareBufferUtils.h +99 -0
  7. package/cpp/skia/include/android/SkHeifDecoder.h +10 -3
  8. package/cpp/skia/include/codec/SkAvifDecoder.h +1 -0
  9. package/cpp/skia/include/codec/SkBmpDecoder.h +1 -0
  10. package/cpp/skia/include/codec/SkCodec.h +4 -3
  11. package/cpp/skia/include/codec/SkEncodedImageFormat.h +0 -3
  12. package/cpp/skia/include/codec/SkGifDecoder.h +1 -0
  13. package/cpp/skia/include/codec/SkIcoDecoder.h +1 -0
  14. package/cpp/skia/include/codec/SkJpegDecoder.h +1 -0
  15. package/cpp/skia/include/codec/SkJpegxlDecoder.h +1 -0
  16. package/cpp/skia/include/codec/SkPngDecoder.h +1 -0
  17. package/cpp/skia/include/codec/SkRawDecoder.h +1 -0
  18. package/cpp/skia/include/codec/SkWbmpDecoder.h +1 -0
  19. package/cpp/skia/include/codec/SkWebpDecoder.h +1 -0
  20. package/cpp/skia/include/config/SkUserConfig.h +0 -2
  21. package/cpp/skia/include/core/SkBitmap.h +8 -8
  22. package/cpp/skia/include/core/SkCanvas.h +37 -50
  23. package/cpp/skia/include/core/SkCapabilities.h +2 -7
  24. package/cpp/skia/include/core/SkColor.h +1 -1
  25. package/cpp/skia/include/core/SkColorFilter.h +6 -0
  26. package/cpp/skia/include/core/SkColorTable.h +3 -0
  27. package/cpp/skia/include/core/SkColorType.h +2 -0
  28. package/cpp/skia/include/core/SkContourMeasure.h +12 -8
  29. package/cpp/skia/include/core/SkDocument.h +1 -0
  30. package/cpp/skia/include/core/SkFont.h +11 -2
  31. package/cpp/skia/include/core/SkFontMgr.h +2 -3
  32. package/cpp/skia/include/core/SkGraphics.h +3 -13
  33. package/cpp/skia/include/core/SkImage.h +57 -111
  34. package/cpp/skia/include/core/SkImageFilter.h +6 -1
  35. package/cpp/skia/include/core/SkImageGenerator.h +8 -0
  36. package/cpp/skia/include/core/SkImageInfo.h +0 -2
  37. package/cpp/skia/include/core/SkM44.h +7 -3
  38. package/cpp/skia/include/core/SkMallocPixelRef.h +4 -1
  39. package/cpp/skia/include/core/SkMatrix.h +17 -17
  40. package/cpp/skia/include/core/SkMesh.h +71 -61
  41. package/cpp/skia/include/core/SkMilestone.h +1 -1
  42. package/cpp/skia/include/core/SkOverdrawCanvas.h +25 -0
  43. package/cpp/skia/include/core/SkPaint.h +1 -1
  44. package/cpp/skia/include/core/SkPath.h +12 -4
  45. package/cpp/skia/include/core/SkPathMeasure.h +3 -4
  46. package/cpp/skia/include/core/SkPicture.h +19 -6
  47. package/cpp/skia/include/core/SkPictureRecorder.h +6 -6
  48. package/cpp/skia/include/core/SkPixmap.h +2 -3
  49. package/cpp/skia/include/core/SkRRect.h +1 -1
  50. package/cpp/skia/include/core/SkRect.h +107 -110
  51. package/cpp/skia/include/core/SkRefCnt.h +1 -1
  52. package/cpp/skia/include/core/SkRegion.h +7 -1
  53. package/cpp/skia/include/core/SkSerialProcs.h +14 -0
  54. package/cpp/skia/include/core/SkShader.h +9 -0
  55. package/cpp/skia/include/core/SkStream.h +9 -9
  56. package/cpp/skia/include/core/SkString.h +1 -1
  57. package/cpp/skia/include/core/SkSurface.h +14 -25
  58. package/cpp/skia/include/core/SkTextBlob.h +17 -4
  59. package/cpp/skia/include/core/SkTiledImageUtils.h +28 -0
  60. package/cpp/skia/include/core/SkTypeface.h +7 -2
  61. package/cpp/skia/include/core/SkTypes.h +4 -12
  62. package/cpp/skia/include/docs/SkPDFDocument.h +17 -3
  63. package/cpp/skia/include/effects/SkImageFilters.h +73 -24
  64. package/cpp/skia/include/effects/SkRuntimeEffect.h +20 -51
  65. package/cpp/skia/include/gpu/GpuTypes.h +13 -0
  66. package/cpp/skia/include/gpu/GrBackendSurface.h +95 -262
  67. package/cpp/skia/include/gpu/GrContextOptions.h +7 -1
  68. package/cpp/skia/include/gpu/GrDirectContext.h +138 -128
  69. package/cpp/skia/include/gpu/GrRecordingContext.h +9 -4
  70. package/cpp/skia/include/gpu/GrSurfaceInfo.h +0 -24
  71. package/cpp/skia/include/gpu/GrTypes.h +16 -1
  72. package/cpp/skia/include/gpu/GrYUVABackendTextures.h +4 -4
  73. package/cpp/skia/include/gpu/d3d/GrD3DTypes.h +2 -2
  74. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +44 -12
  75. package/cpp/skia/include/gpu/ganesh/SkMeshGanesh.h +57 -0
  76. package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +2 -1
  77. package/cpp/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h +58 -0
  78. package/cpp/skia/include/gpu/ganesh/gl/GrGLDirectContext.h +29 -0
  79. package/cpp/skia/include/gpu/ganesh/mtl/SkSurfaceMetal.h +1 -1
  80. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSurface.h +67 -0
  81. package/cpp/skia/include/gpu/gl/GrGLInterface.h +2 -2
  82. package/cpp/skia/include/gpu/graphite/BackendTexture.h +14 -3
  83. package/cpp/skia/include/gpu/graphite/Context.h +93 -13
  84. package/cpp/skia/include/gpu/graphite/ContextOptions.h +19 -8
  85. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +23 -0
  86. package/cpp/skia/include/gpu/graphite/Image.h +56 -0
  87. package/cpp/skia/include/gpu/graphite/ImageProvider.h +5 -0
  88. package/cpp/skia/include/gpu/graphite/Recorder.h +26 -9
  89. package/cpp/skia/include/gpu/graphite/Recording.h +7 -5
  90. package/cpp/skia/include/gpu/graphite/TextureInfo.h +8 -0
  91. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +2 -2
  92. package/cpp/skia/include/gpu/mtl/GrMtlTypes.h +2 -2
  93. package/cpp/skia/include/gpu/vk/GrVkTypes.h +4 -3
  94. package/cpp/skia/include/ports/SkCFObject.h +1 -1
  95. package/cpp/skia/include/private/SkGainmapInfo.h +4 -13
  96. package/cpp/skia/include/private/SkJpegGainmapEncoder.h +1 -24
  97. package/cpp/skia/include/private/SkWeakRefCnt.h +1 -1
  98. package/cpp/skia/include/private/base/SkAnySubclass.h +73 -0
  99. package/cpp/skia/include/private/base/SkAssert.h +106 -12
  100. package/cpp/skia/include/private/base/SkAttributes.h +0 -12
  101. package/cpp/skia/include/private/base/SkFeatures.h +0 -3
  102. package/cpp/skia/include/private/base/SkFloatingPoint.h +58 -105
  103. package/cpp/skia/include/private/base/SkSpan_impl.h +18 -12
  104. package/cpp/skia/include/private/base/SkTArray.h +22 -17
  105. package/cpp/skia/include/private/base/SkTDArray.h +5 -6
  106. package/cpp/skia/include/private/base/SkTemplates.h +50 -30
  107. package/cpp/skia/include/private/chromium/GrDeferredDisplayListRecorder.h +5 -2
  108. package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +2 -2
  109. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +13 -8
  110. package/cpp/skia/include/private/chromium/SkDiscardableMemory.h +1 -1
  111. package/cpp/skia/include/private/chromium/SkImageChromium.h +16 -3
  112. package/cpp/skia/include/private/chromium/Slug.h +11 -4
  113. package/cpp/skia/include/private/gpu/ganesh/GrD3DTypesMinimal.h +1 -1
  114. package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +6 -9
  115. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +29 -13
  116. package/cpp/skia/include/private/gpu/ganesh/GrVkTypesPriv.h +2 -28
  117. package/cpp/skia/include/private/gpu/graphite/ContextOptionsPriv.h +34 -0
  118. package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +6 -0
  119. package/cpp/skia/include/private/gpu/graphite/MtlGraphiteTypesPriv.h +8 -0
  120. package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +10 -0
  121. package/cpp/skia/include/utils/SkBase64.h +2 -2
  122. package/cpp/skia/include/utils/SkNWayCanvas.h +1 -11
  123. package/cpp/skia/include/utils/SkNoDrawCanvas.h +0 -2
  124. package/cpp/skia/include/utils/SkPaintFilterCanvas.h +1 -2
  125. package/cpp/skia/include/utils/SkShadowUtils.h +15 -1
  126. package/cpp/skia/include/utils/SkTextUtils.h +1 -1
  127. package/cpp/skia/modules/skparagraph/include/Paragraph.h +107 -1
  128. package/cpp/skia/modules/skparagraph/include/ParagraphBuilder.h +3 -2
  129. package/cpp/skia/modules/skparagraph/include/ParagraphStyle.h +4 -0
  130. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +5 -3
  131. package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +4 -0
  132. package/cpp/skia/src/core/SkChecksum.h +2 -1
  133. package/cpp/skia/src/core/SkPathPriv.h +1 -1
  134. package/cpp/skia/src/core/SkTHash.h +19 -9
  135. package/ios/RNSkia-iOS/RNSkMetalCanvasProvider.mm +3 -1
  136. package/ios/RNSkia-iOS/SkiaMetalSurfaceFactory.mm +1 -1
  137. package/lib/commonjs/animation/functions/interpolatePaths.d.ts +1 -1
  138. package/lib/commonjs/animation/functions/interpolatePaths.js +4 -4
  139. package/lib/commonjs/animation/functions/interpolatePaths.js.map +1 -1
  140. package/lib/commonjs/dom/nodes/datatypes/Rect.js +5 -1
  141. package/lib/commonjs/dom/nodes/datatypes/Rect.js.map +1 -1
  142. package/lib/commonjs/external/reanimated/index.d.ts +3 -1
  143. package/lib/commonjs/external/reanimated/index.js +30 -4
  144. package/lib/commonjs/external/reanimated/index.js.map +1 -1
  145. package/lib/commonjs/external/reanimated/interpolators.d.ts +9 -0
  146. package/lib/commonjs/external/reanimated/interpolators.js +56 -0
  147. package/lib/commonjs/external/reanimated/interpolators.js.map +1 -0
  148. package/lib/commonjs/external/reanimated/moduleWrapper.d.ts +8 -6
  149. package/lib/commonjs/external/reanimated/moduleWrapper.js +8 -18
  150. package/lib/commonjs/external/reanimated/moduleWrapper.js.map +1 -1
  151. package/lib/commonjs/external/reanimated/renderHelpers.js +46 -1
  152. package/lib/commonjs/external/reanimated/renderHelpers.js.map +1 -1
  153. package/lib/commonjs/external/reanimated/useAnimatedImageValue.d.ts +2 -0
  154. package/lib/commonjs/external/reanimated/useAnimatedImageValue.js +53 -0
  155. package/lib/commonjs/external/reanimated/useAnimatedImageValue.js.map +1 -0
  156. package/lib/commonjs/external/reanimated/useDerivedValueOnJS.d.ts +1 -0
  157. package/lib/commonjs/external/reanimated/useDerivedValueOnJS.js +27 -0
  158. package/lib/commonjs/external/reanimated/useDerivedValueOnJS.js.map +1 -0
  159. package/lib/commonjs/mock/index.js +8 -0
  160. package/lib/commonjs/mock/index.js.map +1 -1
  161. package/lib/commonjs/renderer/HostConfig.js +5 -5
  162. package/lib/commonjs/renderer/HostConfig.js.map +1 -1
  163. package/lib/commonjs/skia/core/AnimatedImage.d.ts +0 -1
  164. package/lib/commonjs/skia/core/AnimatedImage.js +1 -45
  165. package/lib/commonjs/skia/core/AnimatedImage.js.map +1 -1
  166. package/lib/commonjs/skia/types/MaskFilter.js +4 -0
  167. package/lib/commonjs/skia/types/MaskFilter.js.map +1 -1
  168. package/lib/commonjs/skia/types/Matrix.d.ts +4 -0
  169. package/lib/commonjs/skia/types/Matrix.js.map +1 -1
  170. package/lib/commonjs/skia/types/Path/Path.d.ts +10 -9
  171. package/lib/commonjs/skia/types/Path/Path.js.map +1 -1
  172. package/lib/commonjs/skia/web/JsiSkMatrix.d.ts +6 -0
  173. package/lib/commonjs/skia/web/JsiSkMatrix.js +33 -5
  174. package/lib/commonjs/skia/web/JsiSkMatrix.js.map +1 -1
  175. package/lib/commonjs/skia/web/JsiSkPath.d.ts +9 -9
  176. package/lib/commonjs/skia/web/JsiSkPath.js +15 -2
  177. package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
  178. package/lib/commonjs/skia/web/JsiSkPicture.js +2 -1
  179. package/lib/commonjs/skia/web/JsiSkPicture.js.map +1 -1
  180. package/lib/commonjs/views/SkiaBaseWebView.js +1 -1
  181. package/lib/commonjs/views/SkiaBaseWebView.js.map +1 -1
  182. package/lib/commonjs/views/types.js +3 -0
  183. package/lib/commonjs/views/types.js.map +1 -1
  184. package/lib/module/animation/functions/interpolatePaths.d.ts +1 -1
  185. package/lib/module/animation/functions/interpolatePaths.js +4 -4
  186. package/lib/module/animation/functions/interpolatePaths.js.map +1 -1
  187. package/lib/module/dom/nodes/datatypes/Rect.js +5 -1
  188. package/lib/module/dom/nodes/datatypes/Rect.js.map +1 -1
  189. package/lib/module/external/reanimated/index.d.ts +3 -1
  190. package/lib/module/external/reanimated/index.js +3 -1
  191. package/lib/module/external/reanimated/index.js.map +1 -1
  192. package/lib/module/external/reanimated/interpolators.d.ts +9 -0
  193. package/lib/module/external/reanimated/interpolators.js +34 -0
  194. package/lib/module/external/reanimated/interpolators.js.map +1 -0
  195. package/lib/module/external/reanimated/moduleWrapper.d.ts +8 -6
  196. package/lib/module/external/reanimated/moduleWrapper.js +5 -16
  197. package/lib/module/external/reanimated/moduleWrapper.js.map +1 -1
  198. package/lib/module/external/reanimated/renderHelpers.js +48 -2
  199. package/lib/module/external/reanimated/renderHelpers.js.map +1 -1
  200. package/lib/module/external/reanimated/useAnimatedImageValue.d.ts +2 -0
  201. package/lib/module/external/reanimated/useAnimatedImageValue.js +41 -0
  202. package/lib/module/external/reanimated/useAnimatedImageValue.js.map +1 -0
  203. package/lib/module/external/reanimated/useDerivedValueOnJS.d.ts +1 -0
  204. package/lib/module/external/reanimated/useDerivedValueOnJS.js +16 -0
  205. package/lib/module/external/reanimated/useDerivedValueOnJS.js.map +1 -0
  206. package/lib/module/mock/index.js +8 -0
  207. package/lib/module/mock/index.js.map +1 -1
  208. package/lib/module/renderer/HostConfig.js +1 -1
  209. package/lib/module/renderer/HostConfig.js.map +1 -1
  210. package/lib/module/skia/core/AnimatedImage.d.ts +0 -1
  211. package/lib/module/skia/core/AnimatedImage.js +0 -40
  212. package/lib/module/skia/core/AnimatedImage.js.map +1 -1
  213. package/lib/module/skia/types/MaskFilter.js +3 -0
  214. package/lib/module/skia/types/MaskFilter.js.map +1 -1
  215. package/lib/module/skia/types/Matrix.d.ts +4 -0
  216. package/lib/module/skia/types/Matrix.js.map +1 -1
  217. package/lib/module/skia/types/Path/Path.d.ts +10 -9
  218. package/lib/module/skia/types/Path/Path.js.map +1 -1
  219. package/lib/module/skia/web/JsiSkMatrix.d.ts +6 -0
  220. package/lib/module/skia/web/JsiSkMatrix.js +33 -5
  221. package/lib/module/skia/web/JsiSkMatrix.js.map +1 -1
  222. package/lib/module/skia/web/JsiSkPath.d.ts +9 -9
  223. package/lib/module/skia/web/JsiSkPath.js +15 -2
  224. package/lib/module/skia/web/JsiSkPath.js.map +1 -1
  225. package/lib/module/views/types.js +3 -0
  226. package/lib/module/views/types.js.map +1 -1
  227. package/lib/typescript/jestEnv.d.mts +5 -0
  228. package/lib/typescript/jestSetup.d.mts +1 -0
  229. package/lib/typescript/src/animation/functions/interpolatePaths.d.ts +1 -1
  230. package/lib/typescript/src/external/reanimated/index.d.ts +3 -1
  231. package/lib/typescript/src/external/reanimated/interpolators.d.ts +9 -0
  232. package/lib/typescript/src/external/reanimated/moduleWrapper.d.ts +8 -6
  233. package/lib/typescript/src/external/reanimated/useAnimatedImageValue.d.ts +2 -0
  234. package/lib/typescript/src/external/reanimated/useDerivedValueOnJS.d.ts +1 -0
  235. package/lib/typescript/src/skia/core/AnimatedImage.d.ts +0 -1
  236. package/lib/typescript/src/skia/types/Matrix.d.ts +4 -0
  237. package/lib/typescript/src/skia/types/Path/Path.d.ts +10 -9
  238. package/lib/typescript/src/skia/web/JsiSkMatrix.d.ts +6 -0
  239. package/lib/typescript/src/skia/web/JsiSkPath.d.ts +9 -9
  240. package/libs/android/arm64-v8a/libskia.a +0 -0
  241. package/libs/android/arm64-v8a/libskottie.a +0 -0
  242. package/libs/android/arm64-v8a/libskparagraph.a +0 -0
  243. package/libs/android/arm64-v8a/libsksg.a +0 -0
  244. package/libs/android/arm64-v8a/libskshaper.a +0 -0
  245. package/libs/android/arm64-v8a/libskunicode.a +0 -0
  246. package/libs/android/arm64-v8a/libsvg.a +0 -0
  247. package/libs/android/armeabi-v7a/libskia.a +0 -0
  248. package/libs/android/armeabi-v7a/libskottie.a +0 -0
  249. package/libs/android/armeabi-v7a/libskparagraph.a +0 -0
  250. package/libs/android/armeabi-v7a/libsksg.a +0 -0
  251. package/libs/android/armeabi-v7a/libskshaper.a +0 -0
  252. package/libs/android/armeabi-v7a/libskunicode.a +0 -0
  253. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  254. package/libs/android/x86/libskia.a +0 -0
  255. package/libs/android/x86/libskottie.a +0 -0
  256. package/libs/android/x86/libskparagraph.a +0 -0
  257. package/libs/android/x86/libsksg.a +0 -0
  258. package/libs/android/x86/libskshaper.a +0 -0
  259. package/libs/android/x86/libskunicode.a +0 -0
  260. package/libs/android/x86/libsvg.a +0 -0
  261. package/libs/android/x86_64/libskia.a +0 -0
  262. package/libs/android/x86_64/libskottie.a +0 -0
  263. package/libs/android/x86_64/libskparagraph.a +0 -0
  264. package/libs/android/x86_64/libsksg.a +0 -0
  265. package/libs/android/x86_64/libskshaper.a +0 -0
  266. package/libs/android/x86_64/libskunicode.a +0 -0
  267. package/libs/android/x86_64/libsvg.a +0 -0
  268. package/libs/ios/libskia.xcframework/Info.plist +5 -5
  269. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  270. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  271. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
  272. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
  273. package/libs/ios/libskparagraph.xcframework/Info.plist +5 -5
  274. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
  275. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
  276. package/libs/ios/libsksg.xcframework/Info.plist +5 -5
  277. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
  278. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
  279. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  280. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  281. package/libs/ios/libskunicode.xcframework/Info.plist +5 -5
  282. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e/libskunicode.a +0 -0
  283. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode.a +0 -0
  284. package/libs/ios/libsvg.xcframework/Info.plist +5 -5
  285. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  286. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  287. package/package.json +4 -3
  288. package/react-native-skia.podspec +1 -1
  289. package/src/animation/functions/interpolatePaths.ts +7 -4
  290. package/src/dom/nodes/datatypes/Rect.ts +6 -2
  291. package/src/external/reanimated/index.ts +3 -1
  292. package/src/external/reanimated/interpolators.ts +89 -0
  293. package/src/external/reanimated/moduleWrapper.ts +38 -25
  294. package/src/external/reanimated/renderHelpers.ts +42 -2
  295. package/src/external/reanimated/useAnimatedImageValue.ts +51 -0
  296. package/src/external/reanimated/useDerivedValueOnJS.ts +25 -0
  297. package/src/mock/index.ts +5 -0
  298. package/src/renderer/HostConfig.ts +1 -1
  299. package/src/skia/core/AnimatedImage.ts +0 -47
  300. package/src/skia/types/Matrix.ts +4 -0
  301. package/src/skia/types/Path/Path.ts +10 -9
  302. package/src/skia/web/JsiSkMatrix.ts +33 -27
  303. package/src/skia/web/JsiSkPath.ts +15 -2
  304. package/cpp/skia/include/core/SkDeferredDisplayList.h +0 -15
  305. package/cpp/skia/include/core/SkDeferredDisplayListRecorder.h +0 -15
  306. package/cpp/skia/include/core/SkPromiseImageTexture.h +0 -20
  307. package/cpp/skia/include/core/SkSurfaceCharacterization.h +0 -15
  308. package/cpp/skia/include/core/SkTime.h +0 -63
  309. package/cpp/skia/include/effects/SkOpPathEffect.h +0 -43
  310. package/cpp/skia/include/effects/SkStrokeAndFillPathEffect.h +0 -28
  311. package/cpp/skia/include/gpu/GrBackendSurfaceMutableState.h +0 -32
  312. package/cpp/skia/include/gpu/dawn/GrDawnTypes.h +0 -95
  313. package/cpp/skia/include/private/SkBitmaskEnum.h +0 -59
  314. package/cpp/skia/include/private/SkSLDefines.h +0 -64
  315. package/cpp/skia/include/private/SkShadowFlags.h +0 -27
  316. package/cpp/skia/include/private/gpu/ganesh/GrDawnTypesPriv.h +0 -26
  317. package/globalJestSetup.js +0 -6
  318. package/lib/commonjs/external/reanimated/useSharedValueEffect.d.ts +0 -8
  319. package/lib/commonjs/external/reanimated/useSharedValueEffect.js +0 -52
  320. package/lib/commonjs/external/reanimated/useSharedValueEffect.js.map +0 -1
  321. package/lib/module/external/reanimated/useSharedValueEffect.d.ts +0 -8
  322. package/lib/module/external/reanimated/useSharedValueEffect.js +0 -42
  323. package/lib/module/external/reanimated/useSharedValueEffect.js.map +0 -1
  324. package/lib/typescript/globalJestSetup.d.ts +0 -2
  325. package/lib/typescript/src/external/reanimated/useSharedValueEffect.d.ts +0 -8
  326. package/src/external/reanimated/useSharedValueEffect.ts +0 -58
  327. /package/cpp/skia/{include/private/base → src/core}/SkPathEnums.h +0 -0
@@ -16,6 +16,7 @@
16
16
  #include "SkColorSpace.h"
17
17
  #include "SkSurface.h"
18
18
  #include "include/gpu/GrDirectContext.h"
19
+ #include "include/gpu/ganesh/gl/GrGLDirectContext.h"
19
20
  #include "include/gpu/gl/GrGLInterface.h"
20
21
 
21
22
  #pragma clang diagnostic pop
@@ -270,10 +271,10 @@ public:
270
271
 
271
272
  // Create the Skia context
272
273
  auto backendInterface = GrGLMakeNativeInterface();
273
- context->directContext = GrDirectContext::MakeGL(backendInterface);
274
+ context->directContext = GrDirectContexts::MakeGL(backendInterface);
274
275
 
275
276
  if (context->directContext == nullptr) {
276
- RNSkLogger::logToConsole("GrDirectContext::MakeGL failed");
277
+ RNSkLogger::logToConsole("GrDirectContexts::MakeGL failed");
277
278
  return false;
278
279
  }
279
280
  }
@@ -1,6 +1,13 @@
1
1
  #include "SkiaOpenGLHelper.h"
2
2
  #include <SkiaOpenGLSurfaceFactory.h>
3
3
 
4
+ #pragma clang diagnostic push
5
+ #pragma clang diagnostic ignored "-Wdocumentation"
6
+
7
+ #include "include/gpu/ganesh/gl/GrGLBackendSurface.h"
8
+
9
+ #pragma clang diagnostic pop
10
+
4
11
  namespace RNSkia {
5
12
 
6
13
  thread_local SkiaOpenGLContext ThreadContextHolder::ThreadSkiaOpenGLContext;
@@ -103,8 +110,8 @@ sk_sp<SkSurface> WindowSurfaceHolder::getSurface() {
103
110
  samples = maxSamples;
104
111
  }
105
112
 
106
- GrBackendRenderTarget renderTarget(_width, _height, samples, stencil,
107
- fboInfo);
113
+ auto renderTarget = GrBackendRenderTargets::MakeGL(_width, _height, samples,
114
+ stencil, fboInfo);
108
115
 
109
116
  SkSurfaceProps props(0, kUnknown_SkPixelGeometry);
110
117
 
@@ -53,6 +53,13 @@ public:
53
53
  return thisValue.asObject(runtime);
54
54
  }
55
55
 
56
+ JSI_HOST_FUNCTION(postTranslate) {
57
+ auto x = arguments[0].asNumber();
58
+ auto y = arguments[1].asNumber();
59
+ getObject()->postTranslate(x, y);
60
+ return thisValue.asObject(runtime);
61
+ }
62
+
56
63
  JSI_HOST_FUNCTION(scale) {
57
64
  auto x = arguments[0].asNumber();
58
65
  auto y = count > 1 ? arguments[1].asNumber() : 1;
@@ -60,6 +67,13 @@ public:
60
67
  return thisValue.asObject(runtime);
61
68
  }
62
69
 
70
+ JSI_HOST_FUNCTION(postScale) {
71
+ auto x = arguments[0].asNumber();
72
+ auto y = count > 1 ? arguments[1].asNumber() : 1;
73
+ getObject()->postScale(x, y);
74
+ return thisValue.asObject(runtime);
75
+ }
76
+
63
77
  JSI_HOST_FUNCTION(skew) {
64
78
  auto x = arguments[0].asNumber();
65
79
  auto y = arguments[1].asNumber();
@@ -67,12 +81,25 @@ public:
67
81
  return thisValue.asObject(runtime);
68
82
  }
69
83
 
84
+ JSI_HOST_FUNCTION(postSkew) {
85
+ auto x = arguments[0].asNumber();
86
+ auto y = arguments[1].asNumber();
87
+ getObject()->postSkew(x, y);
88
+ return thisValue.asObject(runtime);
89
+ }
90
+
70
91
  JSI_HOST_FUNCTION(rotate) {
71
92
  auto a = arguments[0].asNumber();
72
93
  getObject()->preRotate(SkRadiansToDegrees(a));
73
94
  return thisValue.asObject(runtime);
74
95
  }
75
96
 
97
+ JSI_HOST_FUNCTION(postRotate) {
98
+ auto a = arguments[0].asNumber();
99
+ getObject()->postRotate(SkRadiansToDegrees(a));
100
+ return thisValue.asObject(runtime);
101
+ }
102
+
76
103
  JSI_HOST_FUNCTION(identity) {
77
104
  getObject()->setIdentity();
78
105
  return thisValue.asObject(runtime);
@@ -90,9 +117,13 @@ public:
90
117
 
91
118
  JSI_EXPORT_FUNCTIONS(JSI_EXPORT_FUNC(JsiSkMatrix, concat),
92
119
  JSI_EXPORT_FUNC(JsiSkMatrix, translate),
120
+ JSI_EXPORT_FUNC(JsiSkMatrix, postTranslate),
93
121
  JSI_EXPORT_FUNC(JsiSkMatrix, scale),
122
+ JSI_EXPORT_FUNC(JsiSkMatrix, postScale),
94
123
  JSI_EXPORT_FUNC(JsiSkMatrix, skew),
124
+ JSI_EXPORT_FUNC(JsiSkMatrix, postSkew),
95
125
  JSI_EXPORT_FUNC(JsiSkMatrix, rotate),
126
+ JSI_EXPORT_FUNC(JsiSkMatrix, postRotate),
96
127
  JSI_EXPORT_FUNC(JsiSkMatrix, identity),
97
128
  JSI_EXPORT_FUNC(JsiSkMatrix, get),
98
129
  JSI_EXPORT_FUNC(JsiSkMatrix, dispose))
@@ -108,7 +108,7 @@ public:
108
108
  direction = SkPathDirection::kCCW;
109
109
  }
110
110
  getObject()->addRect(*rect, direction);
111
- return jsi::Value::undefined();
111
+ return thisValue.getObject(runtime);
112
112
  }
113
113
 
114
114
  JSI_HOST_FUNCTION(addRRect) {
@@ -246,14 +246,14 @@ public:
246
246
  JSI_HOST_FUNCTION(setFillType) {
247
247
  auto ft = (SkPathFillType)arguments[0].asNumber();
248
248
  getObject()->setFillType(ft);
249
- return jsi::Value::undefined();
249
+ return thisValue.getObject(runtime);
250
250
  }
251
251
 
252
252
  // TODO-API: Property?
253
253
  JSI_HOST_FUNCTION(setIsVolatile) {
254
254
  auto v = arguments[0].getBool();
255
255
  getObject()->setIsVolatile(v);
256
- return jsi::Value::undefined();
256
+ return thisValue.getObject(runtime);
257
257
  }
258
258
 
259
259
  JSI_HOST_FUNCTION(isVolatile) {
@@ -263,7 +263,7 @@ public:
263
263
  JSI_HOST_FUNCTION(transform) {
264
264
  auto m3 = *JsiSkMatrix::fromValue(runtime, arguments[0]);
265
265
  getObject()->transform(m3);
266
- return jsi::Value::undefined();
266
+ return thisValue.getObject(runtime);
267
267
  }
268
268
 
269
269
  JSI_HOST_FUNCTION(stroke) {
@@ -407,12 +407,12 @@ public:
407
407
 
408
408
  JSI_HOST_FUNCTION(reset) {
409
409
  getObject()->reset();
410
- return jsi::Value::undefined();
410
+ return thisValue.getObject(runtime);
411
411
  }
412
412
 
413
413
  JSI_HOST_FUNCTION(rewind) {
414
414
  getObject()->rewind();
415
- return jsi::Value::undefined();
415
+ return thisValue.getObject(runtime);
416
416
  }
417
417
 
418
418
  JSI_HOST_FUNCTION(quadTo) {
@@ -452,7 +452,7 @@ public:
452
452
 
453
453
  JSI_HOST_FUNCTION(close) {
454
454
  getObject()->close();
455
- return jsi::Value::undefined();
455
+ return thisValue.getObject(runtime);
456
456
  }
457
457
 
458
458
  JSI_HOST_FUNCTION(simplify) {
@@ -494,6 +494,14 @@ public:
494
494
  JSI_HOST_FUNCTION(interpolate) {
495
495
  auto path2 = JsiSkPath::fromValue(runtime, arguments[0]);
496
496
  auto weight = arguments[1].asNumber();
497
+ if (count > 2) {
498
+ auto path3 = JsiSkPath::fromValue(runtime, arguments[2]);
499
+ auto succeed = getObject()->interpolate(*path2, weight, path3.get());
500
+ if (!succeed) {
501
+ return nullptr;
502
+ }
503
+ return arguments[2].asObject(runtime);
504
+ }
497
505
  SkPath result;
498
506
  auto succeed = getObject()->interpolate(*path2, weight, &result);
499
507
  if (!succeed) {
@@ -14,6 +14,7 @@
14
14
  #pragma clang diagnostic ignored "-Wdocumentation"
15
15
 
16
16
  #include "SkSurface.h"
17
+ #include "include/gpu/GrDirectContext.h"
17
18
 
18
19
  #pragma clang diagnostic pop
19
20
 
@@ -37,7 +38,9 @@ public:
37
38
  }
38
39
 
39
40
  JSI_HOST_FUNCTION(flush) {
40
- getObject()->flush();
41
+ if (auto dContext = GrAsDirectContext(getObject()->recordingContext())) {
42
+ dContext->flushAndSubmit();
43
+ }
41
44
  return jsi::Value::undefined();
42
45
  }
43
46
 
@@ -0,0 +1,99 @@
1
+ /*
2
+ * Copyright 2019 Google Inc.
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 GrAHardwareBufferUtils_DEFINED
8
+ #define GrAHardwareBufferUtils_DEFINED
9
+
10
+ #include "include/core/SkTypes.h"
11
+
12
+ #if defined(SK_BUILD_FOR_ANDROID) && __ANDROID_API__ >= 26
13
+
14
+ #include "include/gpu/GrBackendSurface.h"
15
+ #include "include/gpu/GrTypes.h"
16
+
17
+ class GrDirectContext;
18
+
19
+ extern "C" {
20
+ typedef struct AHardwareBuffer AHardwareBuffer;
21
+ }
22
+
23
+ namespace GrAHardwareBufferUtils {
24
+
25
+ SkColorType GetSkColorTypeFromBufferFormat(uint32_t bufferFormat);
26
+
27
+ #if !defined(SK_DISABLE_LEGACY_ANDROID_HW_UTILS)
28
+ GrBackendFormat GetBackendFormat(GrDirectContext* dContext, AHardwareBuffer* hardwareBuffer,
29
+ uint32_t bufferFormat, bool requireKnownFormat);
30
+ #endif
31
+
32
+ GrBackendFormat GetGLBackendFormat(GrDirectContext* dContext, uint32_t bufferFormat,
33
+ bool requireKnownFormat);
34
+ GrBackendFormat GetVulkanBackendFormat(GrDirectContext* dContext, AHardwareBuffer* hardwareBuffer,
35
+ uint32_t bufferFormat, bool requireKnownFormat);
36
+
37
+ typedef void* TexImageCtx;
38
+ typedef void (*DeleteImageProc)(TexImageCtx);
39
+ typedef void (*UpdateImageProc)(TexImageCtx, GrDirectContext*);
40
+
41
+ /**
42
+ * Create a GrBackendTexture from AHardwareBuffer
43
+ *
44
+ * @param context GPU context
45
+ * @param hardwareBuffer AHB
46
+ * @param width texture width
47
+ * @param height texture height
48
+ * @param deleteProc returns a function that deletes the texture and
49
+ * other GPU resources. Must be invoked on the same
50
+ * thread as MakeBackendTexture
51
+ * @param updateProc returns a function, that needs to be invoked, when
52
+ * AHB buffer content has changed. Must be invoked on
53
+ * the same thread as MakeBackendTexture
54
+ * @param imageCtx returns an opaque image context, that is passed as
55
+ * first argument to deleteProc and updateProc
56
+ * @param isProtectedContent if true, GL backend uses EXT_protected_content
57
+ * @param backendFormat backend format, usually created with helper
58
+ * function GetBackendFormat
59
+ * @param isRenderable true if GrBackendTexture can be used as a color
60
+ * attachment
61
+ * @return valid GrBackendTexture object on success
62
+ */
63
+ #if !defined(SK_DISABLE_LEGACY_ANDROID_HW_UTILS)
64
+ GrBackendTexture MakeBackendTexture(GrDirectContext* dContext, AHardwareBuffer* hardwareBuffer,
65
+ int width, int height,
66
+ DeleteImageProc* deleteProc,
67
+ UpdateImageProc* updateProc,
68
+ TexImageCtx* imageCtx,
69
+ bool isProtectedContent,
70
+ const GrBackendFormat& backendFormat,
71
+ bool isRenderable,
72
+ bool fromAndroidWindow = false);
73
+ #endif
74
+
75
+ GrBackendTexture MakeGLBackendTexture(GrDirectContext* dContext,
76
+ AHardwareBuffer* hardwareBuffer,
77
+ int width, int height,
78
+ DeleteImageProc* deleteProc,
79
+ UpdateImageProc* updateProc,
80
+ TexImageCtx* imageCtx,
81
+ bool isProtectedContent,
82
+ const GrBackendFormat& backendFormat,
83
+ bool isRenderable);
84
+
85
+ GrBackendTexture MakeVulkanBackendTexture(GrDirectContext* dContext,
86
+ AHardwareBuffer* hardwareBuffer,
87
+ int width, int height,
88
+ DeleteImageProc* deleteProc,
89
+ UpdateImageProc* updateProc,
90
+ TexImageCtx* imageCtx,
91
+ bool isProtectedContent,
92
+ const GrBackendFormat& backendFormat,
93
+ bool isRenderable,
94
+ bool fromAndroidWindow = false);
95
+
96
+ } // namespace GrAHardwareBufferUtils
97
+
98
+ #endif
99
+ #endif
@@ -15,15 +15,20 @@ class SkStream;
15
15
 
16
16
  #include <memory>
17
17
 
18
+ // This codec depends on heif libraries that are only part of the Android framework.
19
+ // It will not work on other platforms currently.
20
+ //
21
+ // For historical reasons, this codec also decodes AVIF images.
22
+ // There is a newer, dedicated SkAvifDecoder which could be used instead.
18
23
  namespace SkHeifDecoder {
19
24
 
20
- /** Returns true if this data claims to be a HEIF image. */
25
+ /** Returns true if this data claims to be a HEIF (or AVIF) image. */
21
26
  SK_API bool IsHeif(const void*, size_t);
22
27
 
23
28
  /**
24
- * Attempts to decode the given bytes as a HEIF.
29
+ * Attempts to decode the given bytes as a HEIF (or AVIF).
25
30
  *
26
- * If the bytes are not a HEIF, returns nullptr.
31
+ * If the bytes are not a HEIF (or AVIF), returns nullptr.
27
32
  *
28
33
  * DecodeContext is treated as a SkCodec::SelectionPolicy*
29
34
  */
@@ -34,6 +39,8 @@ SK_API std::unique_ptr<SkCodec> Decode(sk_sp<SkData>,
34
39
  SkCodec::Result*,
35
40
  SkCodecs::DecodeContext = nullptr);
36
41
 
42
+ // Do not register this codec using "avif" as the key (even though it can handle that type).
43
+ // Doing so would cause internal codec sniffing to choose the wrong sampler.
37
44
  inline SkCodecs::Decoder Decoder() {
38
45
  return { "heif", IsHeif, Decode };
39
46
  }
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -821,7 +821,7 @@ protected:
821
821
  * This is called by getPixels(), getYUV8Planes(), startIncrementalDecode() and
822
822
  * startScanlineDecode(). Subclasses may call if they need to rewind at another time.
823
823
  */
824
- bool SK_WARN_UNUSED_RESULT rewindIfNeeded();
824
+ [[nodiscard]] bool rewindIfNeeded();
825
825
 
826
826
  /**
827
827
  * Called by rewindIfNeeded, if the stream needed to be rewound.
@@ -1008,6 +1008,7 @@ private:
1008
1008
  virtual SkSampler* getSampler(bool /*createIfNecessary*/) { return nullptr; }
1009
1009
 
1010
1010
  friend class DM::CodecSrc; // for fillIncompleteImage
1011
+ friend class PNGCodecGM; // for fillIncompleteImage
1011
1012
  friend class SkSampledCodec;
1012
1013
  friend class SkIcoCodec;
1013
1014
  friend class SkAndroidCodec; // for fEncodedInfo
@@ -1021,7 +1022,7 @@ using MakeFromStreamCallback = std::unique_ptr<SkCodec> (*)(std::unique_ptr<SkSt
1021
1022
  SkCodec::Result*,
1022
1023
  DecodeContext);
1023
1024
 
1024
- struct Decoder {
1025
+ struct SK_API Decoder {
1025
1026
  // By convention, we use all lowercase letters and go with the primary filename extension.
1026
1027
  // For example "png", "jpg", "ico", "webp", etc
1027
1028
  std::string id;
@@ -1033,7 +1034,7 @@ struct Decoder {
1033
1034
  // SkCodec::MakeFromStream. If a decoder with the same id already exists, this new decoder
1034
1035
  // will replace the existing one (in the same position). This is not thread-safe, so make sure all
1035
1036
  // initialization is done before the first call.
1036
- void Register(Decoder d);
1037
+ void SK_API Register(Decoder d);
1037
1038
  }
1038
1039
 
1039
1040
  #endif // SkCodec_DEFINED
@@ -14,9 +14,6 @@
14
14
  * Enum describing format of encoded data.
15
15
  */
16
16
  enum class SkEncodedImageFormat {
17
- #ifdef SK_BUILD_FOR_GOOGLE3
18
- kUnknown,
19
- #endif
20
17
  kBMP,
21
18
  kGIF,
22
19
  kICO,
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -9,6 +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
13
 
13
14
  class SkData;
14
15
  class SkStream;
@@ -99,8 +99,6 @@
99
99
  Skia consumers can provide their own definitions of these macros to
100
100
  integrate with their own compilers and build system.
101
101
  */
102
- //#define SK_UNUSED [[maybe_unused]]
103
- //#define SK_WARN_UNUSED_RESULT [[nodiscard]]
104
102
  //#define SK_ALWAYS_INLINE inline __attribute__((always_inline))
105
103
  //#define SK_NEVER_INLINE __attribute__((noinline))
106
104
  //#define SK_PRINTF_LIKE(A, B) __attribute__((format(printf, (A), (B))))
@@ -33,7 +33,7 @@ class SkPixelRef;
33
33
  class SkShader;
34
34
  enum SkColorType : int;
35
35
  enum class SkTileMode;
36
- struct SkMask;
36
+ struct SkMaskBuilder;
37
37
 
38
38
  /** \class SkBitmap
39
39
  SkBitmap describes a two-dimensional raster pixel array. SkBitmap is built on
@@ -440,7 +440,7 @@ public:
440
440
  @param flags kZeroPixels_AllocFlag, or zero
441
441
  @return true if pixels allocation is successful
442
442
  */
443
- bool SK_WARN_UNUSED_RESULT tryAllocPixelsFlags(const SkImageInfo& info, uint32_t flags);
443
+ [[nodiscard]] bool tryAllocPixelsFlags(const SkImageInfo& info, uint32_t flags);
444
444
 
445
445
  /** Sets SkImageInfo to info following the rules in setInfo() and allocates pixel
446
446
  memory. Memory is zeroed.
@@ -478,7 +478,7 @@ public:
478
478
  @param rowBytes size of pixel row or larger; may be zero
479
479
  @return true if pixel storage is allocated
480
480
  */
481
- bool SK_WARN_UNUSED_RESULT tryAllocPixels(const SkImageInfo& info, size_t rowBytes);
481
+ [[nodiscard]] bool tryAllocPixels(const SkImageInfo& info, size_t rowBytes);
482
482
 
483
483
  /** Sets SkImageInfo to info following the rules in setInfo() and allocates pixel
484
484
  memory. rowBytes must equal or exceed info.width() times info.bytesPerPixel(),
@@ -514,7 +514,7 @@ public:
514
514
  @param info contains width, height, SkAlphaType, SkColorType, SkColorSpace
515
515
  @return true if pixel storage is allocated
516
516
  */
517
- bool SK_WARN_UNUSED_RESULT tryAllocPixels(const SkImageInfo& info) {
517
+ [[nodiscard]] bool tryAllocPixels(const SkImageInfo& info) {
518
518
  return this->tryAllocPixels(info, info.minRowBytes());
519
519
  }
520
520
 
@@ -553,7 +553,7 @@ public:
553
553
  @param isOpaque true if pixels do not have transparency
554
554
  @return true if pixel storage is allocated
555
555
  */
556
- bool SK_WARN_UNUSED_RESULT tryAllocN32Pixels(int width, int height, bool isOpaque = false);
556
+ [[nodiscard]] bool tryAllocN32Pixels(int width, int height, bool isOpaque = false);
557
557
 
558
558
  /** Sets SkImageInfo to width, height, and the native color type; and allocates
559
559
  pixel memory. If isOpaque is true, sets SkImageInfo to kOpaque_SkAlphaType;
@@ -637,7 +637,7 @@ public:
637
637
 
638
638
  /** Deprecated.
639
639
  */
640
- bool installMaskPixels(const SkMask& mask);
640
+ bool installMaskPixels(SkMaskBuilder& mask);
641
641
 
642
642
  /** Replaces SkPixelRef with pixels, preserving SkImageInfo and rowBytes().
643
643
  Sets SkPixelRef origin to (0, 0).
@@ -661,7 +661,7 @@ public:
661
661
 
662
662
  @return true if the allocation succeeds
663
663
  */
664
- bool SK_WARN_UNUSED_RESULT tryAllocPixels() {
664
+ [[nodiscard]] bool tryAllocPixels() {
665
665
  return this->tryAllocPixels((Allocator*)nullptr);
666
666
  }
667
667
 
@@ -685,7 +685,7 @@ public:
685
685
  @param allocator instance of SkBitmap::Allocator instantiation
686
686
  @return true if custom allocator reports success
687
687
  */
688
- bool SK_WARN_UNUSED_RESULT tryAllocPixels(Allocator* allocator);
688
+ [[nodiscard]] bool tryAllocPixels(Allocator* allocator);
689
689
 
690
690
  /** Allocates pixel memory with allocator, and replaces existing SkPixelRef.
691
691
  The allocation size is determined by SkImageInfo width, height, and SkColorType.