@shopify/react-native-skia 0.1.213 → 0.1.214
Sign up to get free protection for your applications and to get access to all the features.
- package/android/cpp/rnskia-android/SkiaOpenGLHelper.h +3 -2
- package/android/cpp/rnskia-android/SkiaOpenGLSurfaceFactory.cpp +9 -2
- package/cpp/api/JsiSkSurface.h +4 -1
- package/cpp/skia/include/android/GrAHardwareBufferUtils.h +99 -0
- package/cpp/skia/include/android/SkHeifDecoder.h +10 -3
- package/cpp/skia/include/codec/SkAvifDecoder.h +1 -0
- package/cpp/skia/include/codec/SkBmpDecoder.h +1 -0
- package/cpp/skia/include/codec/SkCodec.h +4 -3
- package/cpp/skia/include/codec/SkEncodedImageFormat.h +0 -3
- package/cpp/skia/include/codec/SkGifDecoder.h +1 -0
- package/cpp/skia/include/codec/SkIcoDecoder.h +1 -0
- package/cpp/skia/include/codec/SkJpegDecoder.h +1 -0
- package/cpp/skia/include/codec/SkJpegxlDecoder.h +1 -0
- package/cpp/skia/include/codec/SkPngDecoder.h +1 -0
- package/cpp/skia/include/codec/SkRawDecoder.h +1 -0
- package/cpp/skia/include/codec/SkWbmpDecoder.h +1 -0
- package/cpp/skia/include/codec/SkWebpDecoder.h +1 -0
- package/cpp/skia/include/config/SkUserConfig.h +0 -2
- package/cpp/skia/include/core/SkBitmap.h +8 -8
- package/cpp/skia/include/core/SkCanvas.h +37 -50
- package/cpp/skia/include/core/SkCapabilities.h +2 -7
- package/cpp/skia/include/core/SkColor.h +1 -1
- package/cpp/skia/include/core/SkColorFilter.h +6 -0
- package/cpp/skia/include/core/SkColorTable.h +3 -0
- package/cpp/skia/include/core/SkColorType.h +2 -0
- package/cpp/skia/include/core/SkContourMeasure.h +12 -8
- package/cpp/skia/include/core/SkDocument.h +1 -0
- package/cpp/skia/include/core/SkFont.h +11 -2
- package/cpp/skia/include/core/SkFontMgr.h +2 -3
- package/cpp/skia/include/core/SkGraphics.h +3 -13
- package/cpp/skia/include/core/SkImage.h +57 -111
- package/cpp/skia/include/core/SkImageFilter.h +6 -1
- package/cpp/skia/include/core/SkImageGenerator.h +8 -0
- package/cpp/skia/include/core/SkImageInfo.h +0 -2
- package/cpp/skia/include/core/SkM44.h +7 -3
- package/cpp/skia/include/core/SkMallocPixelRef.h +4 -1
- package/cpp/skia/include/core/SkMatrix.h +17 -17
- package/cpp/skia/include/core/SkMesh.h +71 -61
- package/cpp/skia/include/core/SkMilestone.h +1 -1
- package/cpp/skia/include/core/SkOverdrawCanvas.h +25 -0
- package/cpp/skia/include/core/SkPaint.h +1 -1
- package/cpp/skia/include/core/SkPath.h +12 -4
- package/cpp/skia/include/core/SkPathMeasure.h +3 -4
- package/cpp/skia/include/core/SkPicture.h +19 -6
- package/cpp/skia/include/core/SkPictureRecorder.h +6 -6
- package/cpp/skia/include/core/SkPixmap.h +2 -3
- package/cpp/skia/include/core/SkRRect.h +1 -1
- package/cpp/skia/include/core/SkRect.h +107 -110
- package/cpp/skia/include/core/SkRefCnt.h +1 -1
- package/cpp/skia/include/core/SkRegion.h +7 -1
- package/cpp/skia/include/core/SkSerialProcs.h +14 -0
- package/cpp/skia/include/core/SkShader.h +9 -0
- package/cpp/skia/include/core/SkStream.h +9 -9
- package/cpp/skia/include/core/SkString.h +1 -1
- package/cpp/skia/include/core/SkSurface.h +14 -25
- package/cpp/skia/include/core/SkTextBlob.h +17 -4
- package/cpp/skia/include/core/SkTiledImageUtils.h +28 -0
- package/cpp/skia/include/core/SkTypeface.h +7 -2
- package/cpp/skia/include/core/SkTypes.h +4 -12
- package/cpp/skia/include/docs/SkPDFDocument.h +17 -3
- package/cpp/skia/include/effects/SkImageFilters.h +73 -24
- package/cpp/skia/include/effects/SkRuntimeEffect.h +20 -51
- package/cpp/skia/include/gpu/GpuTypes.h +13 -0
- package/cpp/skia/include/gpu/GrBackendSurface.h +95 -262
- package/cpp/skia/include/gpu/GrContextOptions.h +7 -1
- package/cpp/skia/include/gpu/GrDirectContext.h +138 -128
- package/cpp/skia/include/gpu/GrRecordingContext.h +9 -4
- package/cpp/skia/include/gpu/GrSurfaceInfo.h +0 -24
- package/cpp/skia/include/gpu/GrTypes.h +16 -1
- package/cpp/skia/include/gpu/GrYUVABackendTextures.h +4 -4
- package/cpp/skia/include/gpu/d3d/GrD3DTypes.h +2 -2
- package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +44 -12
- package/cpp/skia/include/gpu/ganesh/SkMeshGanesh.h +57 -0
- package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +2 -1
- package/cpp/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h +58 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLDirectContext.h +29 -0
- package/cpp/skia/include/gpu/ganesh/mtl/SkSurfaceMetal.h +1 -1
- package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSurface.h +67 -0
- package/cpp/skia/include/gpu/gl/GrGLInterface.h +2 -2
- package/cpp/skia/include/gpu/graphite/BackendTexture.h +14 -3
- package/cpp/skia/include/gpu/graphite/Context.h +93 -13
- package/cpp/skia/include/gpu/graphite/ContextOptions.h +19 -8
- package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +23 -0
- package/cpp/skia/include/gpu/graphite/Image.h +56 -0
- package/cpp/skia/include/gpu/graphite/ImageProvider.h +5 -0
- package/cpp/skia/include/gpu/graphite/Recorder.h +26 -9
- package/cpp/skia/include/gpu/graphite/Recording.h +7 -5
- package/cpp/skia/include/gpu/graphite/TextureInfo.h +8 -0
- package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +2 -2
- package/cpp/skia/include/gpu/mtl/GrMtlTypes.h +2 -2
- package/cpp/skia/include/gpu/vk/GrVkTypes.h +4 -3
- package/cpp/skia/include/ports/SkCFObject.h +1 -1
- package/cpp/skia/include/private/SkGainmapInfo.h +4 -13
- package/cpp/skia/include/private/SkJpegGainmapEncoder.h +1 -24
- package/cpp/skia/include/private/SkWeakRefCnt.h +1 -1
- package/cpp/skia/include/private/base/SkAnySubclass.h +73 -0
- package/cpp/skia/include/private/base/SkAssert.h +106 -12
- package/cpp/skia/include/private/base/SkAttributes.h +0 -12
- package/cpp/skia/include/private/base/SkFeatures.h +0 -3
- package/cpp/skia/include/private/base/SkFloatingPoint.h +58 -105
- package/cpp/skia/include/private/base/SkSpan_impl.h +18 -12
- package/cpp/skia/include/private/base/SkTArray.h +22 -17
- package/cpp/skia/include/private/base/SkTDArray.h +5 -6
- package/cpp/skia/include/private/base/SkTemplates.h +50 -30
- package/cpp/skia/include/private/chromium/GrDeferredDisplayListRecorder.h +5 -2
- package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +2 -2
- package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +13 -8
- package/cpp/skia/include/private/chromium/SkDiscardableMemory.h +1 -1
- package/cpp/skia/include/private/chromium/SkImageChromium.h +16 -3
- package/cpp/skia/include/private/chromium/Slug.h +11 -4
- package/cpp/skia/include/private/gpu/ganesh/GrD3DTypesMinimal.h +1 -1
- package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +6 -9
- package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +29 -13
- package/cpp/skia/include/private/gpu/ganesh/GrVkTypesPriv.h +2 -28
- package/cpp/skia/include/private/gpu/graphite/ContextOptionsPriv.h +34 -0
- package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +6 -0
- package/cpp/skia/include/private/gpu/graphite/MtlGraphiteTypesPriv.h +8 -0
- package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +10 -0
- package/cpp/skia/include/utils/SkBase64.h +2 -2
- package/cpp/skia/include/utils/SkNWayCanvas.h +1 -11
- package/cpp/skia/include/utils/SkNoDrawCanvas.h +0 -2
- package/cpp/skia/include/utils/SkPaintFilterCanvas.h +1 -2
- package/cpp/skia/include/utils/SkShadowUtils.h +15 -1
- package/cpp/skia/include/utils/SkTextUtils.h +1 -1
- package/cpp/skia/modules/skparagraph/include/Paragraph.h +107 -1
- package/cpp/skia/modules/skparagraph/include/ParagraphBuilder.h +3 -2
- package/cpp/skia/modules/skparagraph/include/ParagraphStyle.h +4 -0
- package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +5 -3
- package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +4 -0
- package/cpp/skia/src/core/SkChecksum.h +2 -1
- package/cpp/skia/src/core/SkPathPriv.h +1 -1
- package/cpp/skia/src/core/SkTHash.h +19 -9
- package/ios/RNSkia-iOS/RNSkMetalCanvasProvider.mm +3 -1
- package/ios/RNSkia-iOS/SkiaMetalSurfaceFactory.mm +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Rect.js +5 -1
- package/lib/commonjs/dom/nodes/datatypes/Rect.js.map +1 -1
- package/lib/commonjs/external/reanimated/index.d.ts +1 -0
- package/lib/commonjs/external/reanimated/index.js +13 -0
- package/lib/commonjs/external/reanimated/index.js.map +1 -1
- package/lib/commonjs/external/reanimated/moduleWrapper.js +3 -8
- package/lib/commonjs/external/reanimated/moduleWrapper.js.map +1 -1
- package/lib/commonjs/external/reanimated/renderHelpers.js +46 -1
- package/lib/commonjs/external/reanimated/renderHelpers.js.map +1 -1
- package/lib/commonjs/external/reanimated/useDerivedValueOnJS.d.ts +2 -0
- package/lib/commonjs/external/reanimated/useDerivedValueOnJS.js +26 -0
- package/lib/commonjs/external/reanimated/useDerivedValueOnJS.js.map +1 -0
- package/lib/commonjs/external/reanimated/useSharedValueEffect.js +2 -5
- package/lib/commonjs/external/reanimated/useSharedValueEffect.js.map +1 -1
- package/lib/commonjs/skia/types/MaskFilter.js +4 -0
- package/lib/commonjs/skia/types/MaskFilter.js.map +1 -1
- package/lib/commonjs/skia/web/JsiSkPicture.js +2 -1
- package/lib/commonjs/skia/web/JsiSkPicture.js.map +1 -1
- package/lib/commonjs/views/SkiaBaseWebView.js +1 -1
- package/lib/commonjs/views/SkiaBaseWebView.js.map +1 -1
- package/lib/commonjs/views/types.js +3 -0
- package/lib/commonjs/views/types.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Rect.js +5 -1
- package/lib/module/dom/nodes/datatypes/Rect.js.map +1 -1
- package/lib/module/external/reanimated/index.d.ts +1 -0
- package/lib/module/external/reanimated/index.js +1 -0
- package/lib/module/external/reanimated/index.js.map +1 -1
- package/lib/module/external/reanimated/moduleWrapper.js +1 -9
- package/lib/module/external/reanimated/moduleWrapper.js.map +1 -1
- package/lib/module/external/reanimated/renderHelpers.js +48 -2
- package/lib/module/external/reanimated/renderHelpers.js.map +1 -1
- package/lib/module/external/reanimated/useDerivedValueOnJS.d.ts +2 -0
- package/lib/module/external/reanimated/useDerivedValueOnJS.js +15 -0
- package/lib/module/external/reanimated/useDerivedValueOnJS.js.map +1 -0
- package/lib/module/external/reanimated/useSharedValueEffect.js +3 -6
- package/lib/module/external/reanimated/useSharedValueEffect.js.map +1 -1
- package/lib/module/skia/types/MaskFilter.js +3 -0
- package/lib/module/skia/types/MaskFilter.js.map +1 -1
- package/lib/module/views/types.js +3 -0
- package/lib/module/views/types.js.map +1 -1
- package/lib/typescript/src/external/reanimated/index.d.ts +1 -0
- package/lib/typescript/src/external/reanimated/useDerivedValueOnJS.d.ts +2 -0
- package/libs/android/arm64-v8a/libskia.a +0 -0
- package/libs/android/arm64-v8a/libskottie.a +0 -0
- package/libs/android/arm64-v8a/libskparagraph.a +0 -0
- package/libs/android/arm64-v8a/libsksg.a +0 -0
- package/libs/android/arm64-v8a/libskshaper.a +0 -0
- package/libs/android/arm64-v8a/libskunicode.a +0 -0
- package/libs/android/arm64-v8a/libsvg.a +0 -0
- package/libs/android/armeabi-v7a/libskia.a +0 -0
- package/libs/android/armeabi-v7a/libskottie.a +0 -0
- package/libs/android/armeabi-v7a/libskparagraph.a +0 -0
- package/libs/android/armeabi-v7a/libsksg.a +0 -0
- package/libs/android/armeabi-v7a/libskshaper.a +0 -0
- package/libs/android/armeabi-v7a/libskunicode.a +0 -0
- package/libs/android/armeabi-v7a/libsvg.a +0 -0
- package/libs/android/x86/libskia.a +0 -0
- package/libs/android/x86/libskottie.a +0 -0
- package/libs/android/x86/libskparagraph.a +0 -0
- package/libs/android/x86/libsksg.a +0 -0
- package/libs/android/x86/libskshaper.a +0 -0
- package/libs/android/x86/libskunicode.a +0 -0
- package/libs/android/x86/libsvg.a +0 -0
- package/libs/android/x86_64/libskia.a +0 -0
- package/libs/android/x86_64/libskottie.a +0 -0
- package/libs/android/x86_64/libskparagraph.a +0 -0
- package/libs/android/x86_64/libsksg.a +0 -0
- package/libs/android/x86_64/libskshaper.a +0 -0
- package/libs/android/x86_64/libskunicode.a +0 -0
- package/libs/android/x86_64/libsvg.a +0 -0
- package/libs/ios/libskia.xcframework/Info.plist +5 -5
- package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
- package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
- package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
- package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
- package/libs/ios/libskparagraph.xcframework/Info.plist +5 -5
- package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
- package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
- package/libs/ios/libsksg.xcframework/Info.plist +5 -5
- package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
- package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
- package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
- package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
- package/libs/ios/libskunicode.xcframework/Info.plist +5 -5
- package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e/libskunicode.a +0 -0
- package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode.a +0 -0
- package/libs/ios/libsvg.xcframework/Info.plist +5 -5
- package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
- package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
- package/package.json +1 -1
- package/react-native-skia.podspec +1 -1
- package/src/dom/nodes/datatypes/Rect.ts +6 -2
- package/src/external/reanimated/index.ts +1 -0
- package/src/external/reanimated/moduleWrapper.ts +6 -10
- package/src/external/reanimated/renderHelpers.ts +41 -1
- package/src/external/reanimated/useDerivedValueOnJS.ts +24 -0
- package/src/external/reanimated/useSharedValueEffect.ts +4 -7
- package/cpp/skia/include/core/SkDeferredDisplayList.h +0 -15
- package/cpp/skia/include/core/SkDeferredDisplayListRecorder.h +0 -15
- package/cpp/skia/include/core/SkPromiseImageTexture.h +0 -20
- package/cpp/skia/include/core/SkSurfaceCharacterization.h +0 -15
- package/cpp/skia/include/core/SkTime.h +0 -63
- package/cpp/skia/include/effects/SkOpPathEffect.h +0 -43
- package/cpp/skia/include/effects/SkStrokeAndFillPathEffect.h +0 -28
- package/cpp/skia/include/gpu/GrBackendSurfaceMutableState.h +0 -32
- package/cpp/skia/include/gpu/dawn/GrDawnTypes.h +0 -95
- package/cpp/skia/include/private/SkBitmaskEnum.h +0 -59
- package/cpp/skia/include/private/SkSLDefines.h +0 -64
- package/cpp/skia/include/private/SkShadowFlags.h +0 -27
- package/cpp/skia/include/private/gpu/ganesh/GrDawnTypesPriv.h +0 -26
- /package/cpp/skia/{include/private/base → src/core}/SkPathEnums.h +0 -0
@@ -17,7 +17,7 @@ Pod::Spec.new do |s|
|
|
17
17
|
# optional - use expanded license entry instead:
|
18
18
|
# s.license = { :type => "MIT", :file => "LICENSE" }
|
19
19
|
s.authors = { "Your Name" => "yourname@email.com" }
|
20
|
-
s.platforms = { :ios => "
|
20
|
+
s.platforms = { :ios => "12.0" }
|
21
21
|
s.source = { :git => "https://github.com/shopify/react-native-skia/react-native-skia.git", :tag => "#{s.version}" }
|
22
22
|
|
23
23
|
s.requires_arc = true
|
@@ -4,8 +4,12 @@ import type { RectCtor, RectDef, RRectCtor, RRectDef } from "../../types";
|
|
4
4
|
|
5
5
|
import { processRadius } from "./Radius";
|
6
6
|
|
7
|
-
export const isEdge = (pos: Vector, b: SkRect) =>
|
8
|
-
|
7
|
+
export const isEdge = (pos: Vector, b: SkRect) => {
|
8
|
+
"worklet";
|
9
|
+
return (
|
10
|
+
pos.x === b.x || pos.y === b.y || pos.x === b.width || pos.y === b.height
|
11
|
+
);
|
12
|
+
};
|
9
13
|
|
10
14
|
// We have an issue to check property existence on JSI backed instances
|
11
15
|
const isRRectCtor = (def: RRectDef): def is RRectCtor =>
|
@@ -36,14 +36,6 @@ export function throwOnMissingReanimated() {
|
|
36
36
|
}
|
37
37
|
}
|
38
38
|
|
39
|
-
function throwOnMissingReanimated3() {
|
40
|
-
if (!HAS_REANIMATED3) {
|
41
|
-
throw new Error(
|
42
|
-
`Reanimated version ${reanimatedVersion} is not supported, please upgrade to 3.0.0 or newer.`
|
43
|
-
);
|
44
|
-
}
|
45
|
-
}
|
46
|
-
|
47
39
|
export const useSharedValue =
|
48
40
|
Reanimated2?.useSharedValue ||
|
49
41
|
((value: number) => useMemo(() => ({ value }), [value]));
|
@@ -56,6 +48,10 @@ export const runOnJS = Reanimated2?.runOnJS || throwOnMissingReanimated;
|
|
56
48
|
export const isSharedValue = <T>(
|
57
49
|
value: unknown
|
58
50
|
): value is SharedValueType<T> => {
|
59
|
-
|
60
|
-
|
51
|
+
return (
|
52
|
+
!!value &&
|
53
|
+
(Reanimated3
|
54
|
+
? Reanimated3.isSharedValue(value)
|
55
|
+
: (value as any).value !== undefined)
|
56
|
+
);
|
61
57
|
};
|
@@ -9,12 +9,14 @@ import {
|
|
9
9
|
stopMapper,
|
10
10
|
isSharedValue,
|
11
11
|
HAS_REANIMATED3,
|
12
|
+
HAS_REANIMATED2,
|
13
|
+
runOnJS,
|
12
14
|
} from "./moduleWrapper";
|
13
15
|
|
14
16
|
const _bindings = new WeakMap<Node<unknown>, unknown>();
|
15
17
|
|
16
18
|
export function extractReanimatedProps(props: AnimatedProps<any>) {
|
17
|
-
if (!HAS_REANIMATED3) {
|
19
|
+
if (!HAS_REANIMATED3 && !HAS_REANIMATED2) {
|
18
20
|
return [props, {}];
|
19
21
|
}
|
20
22
|
const reanimatedProps = {} as AnimatedProps<any>;
|
@@ -34,11 +36,49 @@ export function extractReanimatedProps(props: AnimatedProps<any>) {
|
|
34
36
|
return [otherProps, reanimatedProps];
|
35
37
|
}
|
36
38
|
|
39
|
+
function bindReanimatedProps2(
|
40
|
+
container: Container,
|
41
|
+
node: Node<any>,
|
42
|
+
reanimatedProps: AnimatedProps<any>
|
43
|
+
) {
|
44
|
+
const sharedValues = Object.values(reanimatedProps);
|
45
|
+
const previousMapperId = _bindings.get(node);
|
46
|
+
if (previousMapperId !== undefined) {
|
47
|
+
stopMapper(previousMapperId);
|
48
|
+
}
|
49
|
+
if (sharedValues.length > 0) {
|
50
|
+
const viewId = container.getNativeId();
|
51
|
+
const { SkiaViewApi } = global;
|
52
|
+
const updateProps = () => {
|
53
|
+
for (const propName in reanimatedProps) {
|
54
|
+
node && node.setProp(propName, reanimatedProps[propName].value);
|
55
|
+
}
|
56
|
+
// On React Native we use the SkiaViewApi to redraw because it can
|
57
|
+
// run on the worklet thread (container.redraw can't)
|
58
|
+
// if SkiaViewApi is undefined, we are on web and container.redraw()
|
59
|
+
// can safely be invoked
|
60
|
+
if (SkiaViewApi) {
|
61
|
+
SkiaViewApi.requestRedraw(viewId);
|
62
|
+
} else {
|
63
|
+
container.redraw();
|
64
|
+
}
|
65
|
+
};
|
66
|
+
const mapperId = startMapper(() => {
|
67
|
+
"worklet";
|
68
|
+
runOnJS(updateProps)();
|
69
|
+
}, sharedValues);
|
70
|
+
_bindings.set(node, mapperId);
|
71
|
+
}
|
72
|
+
}
|
73
|
+
|
37
74
|
export function bindReanimatedProps(
|
38
75
|
container: Container,
|
39
76
|
node: Node<any>,
|
40
77
|
reanimatedProps: AnimatedProps<any>
|
41
78
|
) {
|
79
|
+
if (HAS_REANIMATED2) {
|
80
|
+
return bindReanimatedProps2(container, node, reanimatedProps);
|
81
|
+
}
|
42
82
|
if (!HAS_REANIMATED3) {
|
43
83
|
return;
|
44
84
|
}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { useEffect, type DependencyList } from "react";
|
2
|
+
|
3
|
+
import {
|
4
|
+
useSharedValue,
|
5
|
+
runOnJS,
|
6
|
+
startMapper,
|
7
|
+
stopMapper,
|
8
|
+
} from "./moduleWrapper";
|
9
|
+
|
10
|
+
export const useDerivedValueOnJS = (
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
12
|
+
fn: () => any,
|
13
|
+
deps?: DependencyList
|
14
|
+
) => {
|
15
|
+
const value = useSharedValue(fn());
|
16
|
+
useEffect(() => {
|
17
|
+
const mapperId = startMapper(() => {
|
18
|
+
"worklet";
|
19
|
+
runOnJS(fn)();
|
20
|
+
}, deps);
|
21
|
+
return () => stopMapper(mapperId);
|
22
|
+
}, [deps, fn]);
|
23
|
+
return value;
|
24
|
+
};
|
@@ -8,7 +8,6 @@ import {
|
|
8
8
|
runOnJS,
|
9
9
|
startMapper,
|
10
10
|
stopMapper,
|
11
|
-
HAS_REANIMATED3,
|
12
11
|
} from "./moduleWrapper";
|
13
12
|
|
14
13
|
/**
|
@@ -22,12 +21,10 @@ export const useSharedValueEffect = <T = number>(
|
|
22
21
|
value: SharedValueType<T>,
|
23
22
|
...values: SharedValueType<T>[]
|
24
23
|
) => {
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
);
|
30
|
-
}
|
24
|
+
console.warn(
|
25
|
+
`useSharedValueEffect() is deprecated and will be removed in the next release
|
26
|
+
Learn more at https://shopify.github.io/react-native-skia/docs/animations/animations.`
|
27
|
+
);
|
31
28
|
const input = useSharedValue(0);
|
32
29
|
|
33
30
|
useEffect(() => {
|
@@ -1,15 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2017 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
|
-
|
8
|
-
// TODO(kjlubick, robertphillips) migrate Chromium to use the new location and name
|
9
|
-
#include "include/private/chromium/GrDeferredDisplayList.h" // IWYU pragma: export
|
10
|
-
|
11
|
-
class GrDeferredDisplayListRecorder;
|
12
|
-
class GrSurfaceCharacterization;
|
13
|
-
using SkDeferredDisplayList = GrDeferredDisplayList;
|
14
|
-
using SkDeferredDisplayListRecorder = GrDeferredDisplayListRecorder;
|
15
|
-
using SkSurfaceCharacterization = GrSurfaceCharacterization;
|
@@ -1,15 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2017 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
|
-
|
8
|
-
// TODO(kjlubick, robertphillips) migrate Chromium to use the new location
|
9
|
-
#include "include/private/chromium/GrDeferredDisplayListRecorder.h" // IWYU pragma: export
|
10
|
-
|
11
|
-
class GrDeferredDisplayList;
|
12
|
-
class GrSurfaceCharacterization;
|
13
|
-
using SkDeferredDisplayList = GrDeferredDisplayList;
|
14
|
-
using SkDeferredDisplayListRecorder = GrDeferredDisplayListRecorder;
|
15
|
-
using SkSurfaceCharacterization = GrSurfaceCharacterization;
|
@@ -1,20 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2017 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
|
-
|
8
|
-
#ifndef SkPromiseImageTexture_DEFINED
|
9
|
-
#define SkPromiseImageTexture_DEFINED
|
10
|
-
|
11
|
-
#include "include/core/SkTypes.h"
|
12
|
-
|
13
|
-
// TODO(kjlubick) remove this shim header after clients are migrated
|
14
|
-
#if defined(SK_GANESH)
|
15
|
-
#include "include/private/chromium/GrPromiseImageTexture.h"
|
16
|
-
|
17
|
-
typedef GrPromiseImageTexture SkPromiseImageTexture;
|
18
|
-
#endif
|
19
|
-
|
20
|
-
#endif // SkPromiseImageTexture_DEFINED
|
@@ -1,15 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2017 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
|
-
|
8
|
-
// TODO(kjlubick, robertphillips) migrate Chromium to use the new location and name
|
9
|
-
#include "include/private/chromium/GrSurfaceCharacterization.h" // IWYU pragma: export
|
10
|
-
|
11
|
-
class GrDeferredDisplayList;
|
12
|
-
class GrDeferredDisplayListRecorder;
|
13
|
-
using SkDeferredDisplayList = GrDeferredDisplayList;
|
14
|
-
using SkDeferredDisplayListRecorder = GrDeferredDisplayListRecorder;
|
15
|
-
using SkSurfaceCharacterization = GrSurfaceCharacterization;
|
@@ -1,63 +0,0 @@
|
|
1
|
-
|
2
|
-
/*
|
3
|
-
* Copyright 2006 The Android Open Source Project
|
4
|
-
*
|
5
|
-
* Use of this source code is governed by a BSD-style license that can be
|
6
|
-
* found in the LICENSE file.
|
7
|
-
*/
|
8
|
-
|
9
|
-
|
10
|
-
#ifndef SkTime_DEFINED
|
11
|
-
#define SkTime_DEFINED
|
12
|
-
|
13
|
-
#include "include/core/SkTypes.h"
|
14
|
-
#include "include/private/base/SkMacros.h"
|
15
|
-
|
16
|
-
#include <cinttypes>
|
17
|
-
|
18
|
-
class SkString;
|
19
|
-
|
20
|
-
/** \class SkTime
|
21
|
-
Platform-implemented utilities to return time of day, and millisecond counter.
|
22
|
-
*/
|
23
|
-
class SK_API SkTime {
|
24
|
-
public:
|
25
|
-
struct DateTime {
|
26
|
-
int16_t fTimeZoneMinutes; // The number of minutes that GetDateTime()
|
27
|
-
// is ahead of or behind UTC.
|
28
|
-
uint16_t fYear; //!< e.g. 2005
|
29
|
-
uint8_t fMonth; //!< 1..12
|
30
|
-
uint8_t fDayOfWeek; //!< 0..6, 0==Sunday
|
31
|
-
uint8_t fDay; //!< 1..31
|
32
|
-
uint8_t fHour; //!< 0..23
|
33
|
-
uint8_t fMinute; //!< 0..59
|
34
|
-
uint8_t fSecond; //!< 0..59
|
35
|
-
|
36
|
-
void toISO8601(SkString* dst) const;
|
37
|
-
};
|
38
|
-
static void GetDateTime(DateTime*);
|
39
|
-
|
40
|
-
static double GetSecs() { return GetNSecs() * 1e-9; }
|
41
|
-
static double GetMSecs() { return GetNSecs() * 1e-6; }
|
42
|
-
static double GetNSecs();
|
43
|
-
};
|
44
|
-
|
45
|
-
///////////////////////////////////////////////////////////////////////////////
|
46
|
-
|
47
|
-
class SkAutoTime {
|
48
|
-
public:
|
49
|
-
// The label is not deep-copied, so its address must remain valid for the
|
50
|
-
// lifetime of this object
|
51
|
-
SkAutoTime(const char* label = nullptr)
|
52
|
-
: fLabel(label)
|
53
|
-
, fNow(SkTime::GetMSecs()) {}
|
54
|
-
~SkAutoTime() {
|
55
|
-
uint64_t dur = static_cast<uint64_t>(SkTime::GetMSecs() - fNow);
|
56
|
-
SkDebugf("%s %" PRIu64 "\n", fLabel ? fLabel : "", dur);
|
57
|
-
}
|
58
|
-
private:
|
59
|
-
const char* fLabel;
|
60
|
-
double fNow;
|
61
|
-
};
|
62
|
-
|
63
|
-
#endif
|
@@ -1,43 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2018 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
|
-
|
8
|
-
#ifndef SkOpPathEffect_DEFINED
|
9
|
-
#define SkOpPathEffect_DEFINED
|
10
|
-
|
11
|
-
#include "include/core/SkPaint.h"
|
12
|
-
#include "include/core/SkRefCnt.h"
|
13
|
-
#include "include/core/SkScalar.h"
|
14
|
-
#include "include/core/SkTypes.h"
|
15
|
-
#include "include/pathops/SkPathOps.h"
|
16
|
-
|
17
|
-
class SkMatrix;
|
18
|
-
class SkPathEffect;
|
19
|
-
|
20
|
-
class SK_API SkMergePathEffect {
|
21
|
-
public:
|
22
|
-
/* Defers to two other patheffects, and then combines their outputs using the specified op.
|
23
|
-
* e.g.
|
24
|
-
* result = output_one op output_two
|
25
|
-
*
|
26
|
-
* If either one or two is nullptr, then the original path is passed through to the op.
|
27
|
-
*/
|
28
|
-
static sk_sp<SkPathEffect> Make(sk_sp<SkPathEffect> one, sk_sp<SkPathEffect> two, SkPathOp op);
|
29
|
-
};
|
30
|
-
|
31
|
-
class SK_API SkMatrixPathEffect {
|
32
|
-
public:
|
33
|
-
static sk_sp<SkPathEffect> MakeTranslate(SkScalar dx, SkScalar dy);
|
34
|
-
static sk_sp<SkPathEffect> Make(const SkMatrix&);
|
35
|
-
};
|
36
|
-
|
37
|
-
class SK_API SkStrokePathEffect {
|
38
|
-
public:
|
39
|
-
static sk_sp<SkPathEffect> Make(SkScalar width, SkPaint::Join, SkPaint::Cap,
|
40
|
-
SkScalar miter = 4);
|
41
|
-
};
|
42
|
-
|
43
|
-
#endif
|
@@ -1,28 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2020 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
|
-
|
8
|
-
#ifndef SkStrokeAndFillPathEffect_DEFINED
|
9
|
-
#define SkStrokeAndFillPathEffect_DEFINED
|
10
|
-
|
11
|
-
#include "include/core/SkPaint.h"
|
12
|
-
#include "include/core/SkPathEffect.h"
|
13
|
-
#include "include/pathops/SkPathOps.h"
|
14
|
-
|
15
|
-
class SK_API SkStrokeAndFillPathEffect {
|
16
|
-
public:
|
17
|
-
/* If the paint is set to stroke, this will add the stroke and fill geometries
|
18
|
-
* together (hoping that the winding-direction works out).
|
19
|
-
*
|
20
|
-
* If the paint is set to fill, this effect is ignored.
|
21
|
-
*
|
22
|
-
* Note that if the paint is set to stroke and the stroke-width is 0, then
|
23
|
-
* this will turn the geometry into just a fill.
|
24
|
-
*/
|
25
|
-
static sk_sp<SkPathEffect> Make();
|
26
|
-
};
|
27
|
-
|
28
|
-
#endif
|
@@ -1,32 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2020 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 GrBackendSurfaceMutableState_DEFINED
|
9
|
-
#define GrBackendSurfaceMutableState_DEFINED
|
10
|
-
|
11
|
-
#include "include/gpu/MutableTextureState.h"
|
12
|
-
|
13
|
-
#ifdef SK_VULKAN
|
14
|
-
#include "include/private/gpu/vk/SkiaVulkan.h"
|
15
|
-
|
16
|
-
#include <cstdint>
|
17
|
-
#endif
|
18
|
-
|
19
|
-
class GrBackendSurfaceMutableState : public skgpu::MutableTextureState {
|
20
|
-
public:
|
21
|
-
GrBackendSurfaceMutableState() = default;
|
22
|
-
|
23
|
-
#ifdef SK_VULKAN
|
24
|
-
GrBackendSurfaceMutableState(VkImageLayout layout, uint32_t queueFamilyIndex)
|
25
|
-
: skgpu::MutableTextureState(layout, queueFamilyIndex) {}
|
26
|
-
#endif
|
27
|
-
|
28
|
-
GrBackendSurfaceMutableState(const GrBackendSurfaceMutableState& that)
|
29
|
-
: skgpu::MutableTextureState(that) {}
|
30
|
-
};
|
31
|
-
|
32
|
-
#endif
|
@@ -1,95 +0,0 @@
|
|
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
|
-
|
8
|
-
#ifndef GrDawnTypes_DEFINED
|
9
|
-
#define GrDawnTypes_DEFINED
|
10
|
-
|
11
|
-
#include "include/gpu/GpuTypes.h"
|
12
|
-
|
13
|
-
#ifdef Always
|
14
|
-
#undef Always
|
15
|
-
static constexpr int Always = 2;
|
16
|
-
#endif
|
17
|
-
#ifdef Success
|
18
|
-
#undef Success
|
19
|
-
static constexpr int Success = 0;
|
20
|
-
#endif
|
21
|
-
#ifdef None
|
22
|
-
#undef None
|
23
|
-
static constexpr int None = 0L;
|
24
|
-
#endif
|
25
|
-
#include "webgpu/webgpu_cpp.h" // IWYU pragma: export
|
26
|
-
|
27
|
-
struct GrDawnTextureInfo {
|
28
|
-
wgpu::Texture fTexture;
|
29
|
-
wgpu::TextureFormat fFormat;
|
30
|
-
uint32_t fLevelCount;
|
31
|
-
GrDawnTextureInfo() : fTexture(nullptr), fFormat(), fLevelCount(0) {
|
32
|
-
}
|
33
|
-
GrDawnTextureInfo(const GrDawnTextureInfo& other)
|
34
|
-
: fTexture(other.fTexture)
|
35
|
-
, fFormat(other.fFormat)
|
36
|
-
, fLevelCount(other.fLevelCount) {
|
37
|
-
}
|
38
|
-
GrDawnTextureInfo& operator=(const GrDawnTextureInfo& other) {
|
39
|
-
fTexture = other.fTexture;
|
40
|
-
fFormat = other.fFormat;
|
41
|
-
fLevelCount = other.fLevelCount;
|
42
|
-
return *this;
|
43
|
-
}
|
44
|
-
bool operator==(const GrDawnTextureInfo& other) const {
|
45
|
-
return fTexture.Get() == other.fTexture.Get() &&
|
46
|
-
fFormat == other.fFormat &&
|
47
|
-
fLevelCount == other.fLevelCount;
|
48
|
-
}
|
49
|
-
};
|
50
|
-
|
51
|
-
// GrDawnRenderTargetInfo holds a reference to a (1-mip) TextureView. This means that, for now,
|
52
|
-
// GrDawnRenderTarget is suitable for rendering, but not readPixels() or writePixels(). Also,
|
53
|
-
// backdrop filters and certain blend modes requiring copying the destination framebuffer
|
54
|
-
// will not work.
|
55
|
-
struct GrDawnRenderTargetInfo {
|
56
|
-
wgpu::TextureView fTextureView;
|
57
|
-
wgpu::TextureFormat fFormat;
|
58
|
-
uint32_t fLevelCount;
|
59
|
-
GrDawnRenderTargetInfo() : fTextureView(nullptr), fFormat(), fLevelCount(0) {
|
60
|
-
}
|
61
|
-
GrDawnRenderTargetInfo(const GrDawnRenderTargetInfo& other)
|
62
|
-
: fTextureView(other.fTextureView)
|
63
|
-
, fFormat(other.fFormat)
|
64
|
-
, fLevelCount(other.fLevelCount) {
|
65
|
-
}
|
66
|
-
explicit GrDawnRenderTargetInfo(const GrDawnTextureInfo& texInfo)
|
67
|
-
: fFormat(texInfo.fFormat)
|
68
|
-
, fLevelCount(1) {
|
69
|
-
wgpu::TextureViewDescriptor desc;
|
70
|
-
desc.format = texInfo.fFormat;
|
71
|
-
desc.mipLevelCount = 1;
|
72
|
-
fTextureView = texInfo.fTexture.CreateView(&desc);
|
73
|
-
}
|
74
|
-
GrDawnRenderTargetInfo& operator=(const GrDawnRenderTargetInfo& other) {
|
75
|
-
fTextureView = other.fTextureView;
|
76
|
-
fFormat = other.fFormat;
|
77
|
-
fLevelCount = other.fLevelCount;
|
78
|
-
return *this;
|
79
|
-
}
|
80
|
-
bool operator==(const GrDawnRenderTargetInfo& other) const {
|
81
|
-
return fTextureView.Get() == other.fTextureView.Get() &&
|
82
|
-
fFormat == other.fFormat &&
|
83
|
-
fLevelCount == other.fLevelCount;
|
84
|
-
}
|
85
|
-
};
|
86
|
-
|
87
|
-
struct GrDawnSurfaceInfo {
|
88
|
-
uint32_t fSampleCount = 1;
|
89
|
-
uint32_t fLevelCount = 0;
|
90
|
-
skgpu::Protected fProtected = skgpu::Protected::kNo;
|
91
|
-
|
92
|
-
wgpu::TextureFormat fFormat;
|
93
|
-
};
|
94
|
-
|
95
|
-
#endif
|
@@ -1,59 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2016 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 SkEnumOperators_DEFINED
|
8
|
-
#define SkEnumOperators_DEFINED
|
9
|
-
|
10
|
-
#include <type_traits>
|
11
|
-
|
12
|
-
namespace sknonstd {
|
13
|
-
template <typename T> struct is_bitmask_enum : std::false_type {};
|
14
|
-
|
15
|
-
template <typename E>
|
16
|
-
std::enable_if_t<sknonstd::is_bitmask_enum<E>::value, bool> constexpr Any(E e) {
|
17
|
-
return static_cast<std::underlying_type_t<E>>(e) != 0;
|
18
|
-
}
|
19
|
-
} // namespace sknonstd
|
20
|
-
|
21
|
-
template <typename E>
|
22
|
-
std::enable_if_t<sknonstd::is_bitmask_enum<E>::value, E> constexpr operator|(E l, E r) {
|
23
|
-
using U = std::underlying_type_t<E>;
|
24
|
-
return static_cast<E>(static_cast<U>(l) | static_cast<U>(r));
|
25
|
-
}
|
26
|
-
|
27
|
-
template <typename E>
|
28
|
-
std::enable_if_t<sknonstd::is_bitmask_enum<E>::value, E&> constexpr operator|=(E& l, E r) {
|
29
|
-
return l = l | r;
|
30
|
-
}
|
31
|
-
|
32
|
-
template <typename E>
|
33
|
-
std::enable_if_t<sknonstd::is_bitmask_enum<E>::value, E> constexpr operator&(E l, E r) {
|
34
|
-
using U = std::underlying_type_t<E>;
|
35
|
-
return static_cast<E>(static_cast<U>(l) & static_cast<U>(r));
|
36
|
-
}
|
37
|
-
|
38
|
-
template <typename E>
|
39
|
-
std::enable_if_t<sknonstd::is_bitmask_enum<E>::value, E&> constexpr operator&=(E& l, E r) {
|
40
|
-
return l = l & r;
|
41
|
-
}
|
42
|
-
|
43
|
-
template <typename E>
|
44
|
-
std::enable_if_t<sknonstd::is_bitmask_enum<E>::value, E> constexpr operator^(E l, E r) {
|
45
|
-
using U = std::underlying_type_t<E>;
|
46
|
-
return static_cast<E>(static_cast<U>(l) ^ static_cast<U>(r));
|
47
|
-
}
|
48
|
-
|
49
|
-
template <typename E>
|
50
|
-
std::enable_if_t<sknonstd::is_bitmask_enum<E>::value, E&> constexpr operator^=(E& l, E r) {
|
51
|
-
return l = l ^ r;
|
52
|
-
}
|
53
|
-
|
54
|
-
template <typename E>
|
55
|
-
std::enable_if_t<sknonstd::is_bitmask_enum<E>::value, E> constexpr operator~(E e) {
|
56
|
-
return static_cast<E>(~static_cast<std::underlying_type_t<E>>(e));
|
57
|
-
}
|
58
|
-
|
59
|
-
#endif // SkEnumOperators_DEFINED
|
@@ -1,64 +0,0 @@
|
|
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
|
-
|
8
|
-
#ifndef SKSL_DEFINES
|
9
|
-
#define SKSL_DEFINES
|
10
|
-
|
11
|
-
#include <cstdint>
|
12
|
-
|
13
|
-
#include "include/core/SkTypes.h"
|
14
|
-
#include "include/private/base/SkTArray.h"
|
15
|
-
|
16
|
-
using SKSL_INT = int64_t;
|
17
|
-
using SKSL_FLOAT = float;
|
18
|
-
|
19
|
-
namespace SkSL {
|
20
|
-
|
21
|
-
class Expression;
|
22
|
-
class Statement;
|
23
|
-
|
24
|
-
using ComponentArray = skia_private::STArray<4, int8_t>; // for Swizzles
|
25
|
-
|
26
|
-
class ExpressionArray : public skia_private::STArray<2, std::unique_ptr<Expression>> {
|
27
|
-
public:
|
28
|
-
using STArray::STArray;
|
29
|
-
|
30
|
-
/** Returns a new ExpressionArray containing a clone of every element. */
|
31
|
-
ExpressionArray clone() const;
|
32
|
-
};
|
33
|
-
|
34
|
-
using StatementArray = skia_private::STArray<2, std::unique_ptr<Statement>>;
|
35
|
-
|
36
|
-
// Functions larger than this (measured in IR nodes) will not be inlined. This growth factor
|
37
|
-
// accounts for the number of calls being inlined--i.e., a function called five times (that is, with
|
38
|
-
// five inlining opportunities) would be considered 5x larger than if it were called once. This
|
39
|
-
// default threshold value is arbitrary, but tends to work well in practice.
|
40
|
-
static constexpr int kDefaultInlineThreshold = 50;
|
41
|
-
|
42
|
-
// A hard upper limit on the number of variable slots allowed in a function/global scope.
|
43
|
-
// This is an arbitrary limit, but is needed to prevent code generation from taking unbounded
|
44
|
-
// amounts of time or space.
|
45
|
-
static constexpr int kVariableSlotLimit = 100000;
|
46
|
-
|
47
|
-
// The SwizzleComponent namespace is used both by the SkSL::Swizzle expression, and the DSL swizzle.
|
48
|
-
// This namespace is injected into SkSL::dsl so that `using namespace SkSL::dsl` enables DSL code
|
49
|
-
// like `Swizzle(var, X, Y, ONE)` to compile without any extra qualifications.
|
50
|
-
namespace SwizzleComponent {
|
51
|
-
|
52
|
-
enum Type : int8_t {
|
53
|
-
X = 0, Y = 1, Z = 2, W = 3,
|
54
|
-
R = 4, G = 5, B = 6, A = 7,
|
55
|
-
S = 8, T = 9, P = 10, Q = 11,
|
56
|
-
UL = 12, UT = 13, UR = 14, UB = 15,
|
57
|
-
ZERO,
|
58
|
-
ONE
|
59
|
-
};
|
60
|
-
|
61
|
-
} // namespace SwizzleComponent
|
62
|
-
} // namespace SkSL
|
63
|
-
|
64
|
-
#endif
|
@@ -1,27 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2017 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
|
-
|
8
|
-
#ifndef SkShadowFlags_DEFINED
|
9
|
-
#define SkShadowFlags_DEFINED
|
10
|
-
|
11
|
-
// A set of flags shared between the SkAmbientShadowMaskFilter and the SkSpotShadowMaskFilter
|
12
|
-
enum SkShadowFlags {
|
13
|
-
kNone_ShadowFlag = 0x00,
|
14
|
-
/** The occluding object is not opaque. Knowing that the occluder is opaque allows
|
15
|
-
* us to cull shadow geometry behind it and improve performance. */
|
16
|
-
kTransparentOccluder_ShadowFlag = 0x01,
|
17
|
-
/** Don't try to use analytic shadows. */
|
18
|
-
kGeometricOnly_ShadowFlag = 0x02,
|
19
|
-
/** Light position represents a direction, light radius is blur radius at elevation 1 */
|
20
|
-
kDirectionalLight_ShadowFlag = 0x04,
|
21
|
-
/** Concave paths will only use blur to generate the shadow */
|
22
|
-
kConcaveBlurOnly_ShadowFlag = 0x08,
|
23
|
-
/** mask for all shadow flags */
|
24
|
-
kAll_ShadowFlag = 0x0F
|
25
|
-
};
|
26
|
-
|
27
|
-
#endif
|