@rive-app/react-native 0.2.8 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ios/DataSource.swift +1 -1
- package/ios/HybridRiveFileFactory.swift +1 -1
- package/ios/HybridRiveImageFactory.swift +1 -1
- package/lib/typescript/scripts/nitrogen-postprocess.d.ts +2 -0
- package/lib/typescript/scripts/nitrogen-postprocess.d.ts.map +1 -0
- package/nitrogen/generated/android/c++/JHybridBindableArtboardSpec.cpp +19 -25
- package/nitrogen/generated/android/c++/JHybridBindableArtboardSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridFallbackFontSpec.cpp +18 -24
- package/nitrogen/generated/android/c++/JHybridFallbackFontSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridRiveFileFactorySpec.cpp +30 -36
- package/nitrogen/generated/android/c++/JHybridRiveFileFactorySpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridRiveFileSpec.cpp +30 -36
- package/nitrogen/generated/android/c++/JHybridRiveFileSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridRiveFontConfigSpec.cpp +34 -40
- package/nitrogen/generated/android/c++/JHybridRiveFontConfigSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridRiveImageFactorySpec.cpp +27 -33
- package/nitrogen/generated/android/c++/JHybridRiveImageFactorySpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridRiveImageSpec.cpp +19 -25
- package/nitrogen/generated/android/c++/JHybridRiveImageSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridRiveRuntimeSpec.cpp +21 -27
- package/nitrogen/generated/android/c++/JHybridRiveRuntimeSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridRiveViewSpec.cpp +54 -60
- package/nitrogen/generated/android/c++/JHybridRiveViewSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridViewModelArtboardPropertySpec.cpp +19 -25
- package/nitrogen/generated/android/c++/JHybridViewModelArtboardPropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JHybridViewModelBooleanPropertySpec.cpp +22 -28
- package/nitrogen/generated/android/c++/JHybridViewModelBooleanPropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JHybridViewModelColorPropertySpec.cpp +22 -28
- package/nitrogen/generated/android/c++/JHybridViewModelColorPropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JHybridViewModelEnumPropertySpec.cpp +22 -28
- package/nitrogen/generated/android/c++/JHybridViewModelEnumPropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JHybridViewModelImagePropertySpec.cpp +21 -27
- package/nitrogen/generated/android/c++/JHybridViewModelImagePropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JHybridViewModelInstanceSpec.cpp +40 -46
- package/nitrogen/generated/android/c++/JHybridViewModelInstanceSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridViewModelListPropertySpec.cpp +28 -34
- package/nitrogen/generated/android/c++/JHybridViewModelListPropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JHybridViewModelNumberPropertySpec.cpp +22 -28
- package/nitrogen/generated/android/c++/JHybridViewModelNumberPropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JHybridViewModelPropertySpec.cpp +18 -24
- package/nitrogen/generated/android/c++/JHybridViewModelPropertySpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridViewModelSpec.cpp +29 -35
- package/nitrogen/generated/android/c++/JHybridViewModelSpec.hpp +19 -22
- package/nitrogen/generated/android/c++/JHybridViewModelStringPropertySpec.cpp +22 -28
- package/nitrogen/generated/android/c++/JHybridViewModelStringPropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JHybridViewModelTriggerPropertySpec.cpp +21 -27
- package/nitrogen/generated/android/c++/JHybridViewModelTriggerPropertySpec.hpp +20 -22
- package/nitrogen/generated/android/c++/JResolvedReferencedAsset.hpp +4 -4
- package/nitrogen/generated/android/c++/JVariant_HybridViewModelInstanceSpec_DataBindMode_DataBindByName.cpp +1 -1
- package/nitrogen/generated/android/c++/JVariant_HybridViewModelInstanceSpec_DataBindMode_DataBindByName.hpp +4 -4
- package/nitrogen/generated/android/c++/views/JHybridRiveViewStateUpdater.cpp +40 -40
- package/nitrogen/generated/android/c++/views/JHybridRiveViewStateUpdater.hpp +3 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/EventPropertiesOutput.kt +0 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridBindableArtboardSpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridFallbackFontSpec.kt +14 -17
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveFileFactorySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveFileSpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveFontConfigSpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveImageFactorySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveImageSpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveRuntimeSpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveViewSpec.kt +16 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelArtboardPropertySpec.kt +14 -17
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelBooleanPropertySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelColorPropertySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelEnumPropertySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelImagePropertySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelInstanceSpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelListPropertySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelNumberPropertySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelPropertySpec.kt +14 -17
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelSpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelStringPropertySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelTriggerPropertySpec.kt +15 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Variant_HybridViewModelInstanceSpec_DataBindMode_DataBindByName.kt +0 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/views/HybridRiveViewManager.kt +1 -1
- package/nitrogen/generated/android/riveOnLoad.cpp +121 -81
- package/nitrogen/generated/android/riveOnLoad.hpp +13 -4
- package/nitrogen/generated/ios/RNRive-Swift-Cxx-Bridge.hpp +23 -23
- package/nitrogen/generated/ios/swift/ArtboardBy.swift +8 -2
- package/nitrogen/generated/ios/swift/DataBindByName.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_RiveError.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_UnifiedRiveEvent.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_double.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_HybridFallbackFontSpec_.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_HybridRiveFileSpec_.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_HybridRiveImageSpec_.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridBindableArtboardSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridBindableArtboardSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridFallbackFontSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridFallbackFontSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveFileFactorySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveFileFactorySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveFileSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveFileSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveFontConfigSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveFontConfigSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveImageFactorySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveImageFactorySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveImageSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveImageSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveRuntimeSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveRuntimeSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveViewSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRiveViewSpec_cxx.swift +9 -3
- package/nitrogen/generated/ios/swift/HybridViewModelArtboardPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelArtboardPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelBooleanPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelBooleanPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelColorPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelColorPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelEnumPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelEnumPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelImagePropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelImagePropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelInstanceSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelInstanceSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelListPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelListPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelNumberPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelNumberPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelStringPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelStringPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelTriggerPropertySpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridViewModelTriggerPropertySpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/ReferencedAssetsType.swift +0 -1
- package/nitrogen/generated/ios/swift/ResolvedReferencedAsset.swift +0 -1
- package/nitrogen/generated/ios/swift/RiveError.swift +0 -1
- package/nitrogen/generated/ios/swift/UnifiedRiveEvent.swift +8 -2
- package/nitrogen/generated/shared/c++/views/HybridRiveViewComponent.cpp +4 -17
- package/nitrogen/generated/shared/c++/views/HybridRiveViewComponent.hpp +8 -5
- package/package.json +7 -7
|
@@ -16,53 +16,47 @@
|
|
|
16
16
|
|
|
17
17
|
namespace margelo::nitro::rive {
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
});
|
|
19
|
+
std::shared_ptr<JHybridViewModelBooleanPropertySpec> JHybridViewModelBooleanPropertySpec::JavaPart::getJHybridViewModelBooleanPropertySpec() {
|
|
20
|
+
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
21
|
+
auto castHybridObject = std::dynamic_pointer_cast<JHybridViewModelBooleanPropertySpec>(hybridObject);
|
|
22
|
+
if (castHybridObject == nullptr) [[unlikely]] {
|
|
23
|
+
throw std::runtime_error("Failed to downcast JHybridObject to JHybridViewModelBooleanPropertySpec!");
|
|
24
|
+
}
|
|
25
|
+
return castHybridObject;
|
|
27
26
|
}
|
|
28
27
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
return method(_javaPart);
|
|
28
|
+
jni::local_ref<JHybridViewModelBooleanPropertySpec::CxxPart::jhybriddata> JHybridViewModelBooleanPropertySpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
29
|
+
return makeCxxInstance(jThis);
|
|
32
30
|
}
|
|
33
31
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
std::shared_ptr<JHybridObject> JHybridViewModelBooleanPropertySpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
33
|
+
auto castJavaPart = jni::dynamic_ref_cast<JHybridViewModelBooleanPropertySpec::JavaPart>(javaPart);
|
|
34
|
+
if (castJavaPart == nullptr) [[unlikely]] {
|
|
35
|
+
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridViewModelBooleanPropertySpec::JavaPart!");
|
|
37
36
|
}
|
|
38
|
-
return
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
void JHybridViewModelBooleanPropertySpec::dispose() noexcept {
|
|
42
|
-
static const auto method = javaClassStatic()->getMethod<void()>("dispose");
|
|
43
|
-
method(_javaPart);
|
|
37
|
+
return std::make_shared<JHybridViewModelBooleanPropertySpec>(castJavaPart);
|
|
44
38
|
}
|
|
45
39
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
40
|
+
void JHybridViewModelBooleanPropertySpec::CxxPart::registerNatives() {
|
|
41
|
+
registerHybrid({
|
|
42
|
+
makeNativeMethod("initHybrid", JHybridViewModelBooleanPropertySpec::CxxPart::initHybrid),
|
|
43
|
+
});
|
|
50
44
|
}
|
|
51
45
|
|
|
52
46
|
// Properties
|
|
53
47
|
bool JHybridViewModelBooleanPropertySpec::getValue() {
|
|
54
|
-
static const auto method = javaClassStatic()->getMethod<jboolean()>("getValue");
|
|
48
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("getValue");
|
|
55
49
|
auto __result = method(_javaPart);
|
|
56
50
|
return static_cast<bool>(__result);
|
|
57
51
|
}
|
|
58
52
|
void JHybridViewModelBooleanPropertySpec::setValue(bool value) {
|
|
59
|
-
static const auto method = javaClassStatic()->getMethod<void(jboolean /* value */)>("setValue");
|
|
53
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* value */)>("setValue");
|
|
60
54
|
method(_javaPart, value);
|
|
61
55
|
}
|
|
62
56
|
|
|
63
57
|
// Methods
|
|
64
58
|
std::function<void()> JHybridViewModelBooleanPropertySpec::addListener(const std::function<void(bool /* value */)>& onChanged) {
|
|
65
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>(jni::alias_ref<JFunc_void_bool::javaobject> /* onChanged */)>("addListener_cxx");
|
|
59
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>(jni::alias_ref<JFunc_void_bool::javaobject> /* onChanged */)>("addListener_cxx");
|
|
66
60
|
auto __result = method(_javaPart, JFunc_void_bool_cxx::fromCpp(onChanged));
|
|
67
61
|
return [&]() -> std::function<void()> {
|
|
68
62
|
if (__result->isInstanceOf(JFunc_void_cxx::javaClassStatic())) [[likely]] {
|
|
@@ -75,7 +69,7 @@ namespace margelo::nitro::rive {
|
|
|
75
69
|
}();
|
|
76
70
|
}
|
|
77
71
|
void JHybridViewModelBooleanPropertySpec::removeListeners() {
|
|
78
|
-
static const auto method = javaClassStatic()->getMethod<void()>("removeListeners");
|
|
72
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("removeListeners");
|
|
79
73
|
method(_javaPart);
|
|
80
74
|
}
|
|
81
75
|
|
|
@@ -19,34 +19,34 @@ namespace margelo::nitro::rive {
|
|
|
19
19
|
|
|
20
20
|
using namespace facebook;
|
|
21
21
|
|
|
22
|
-
class JHybridViewModelBooleanPropertySpec: public
|
|
23
|
-
public virtual HybridViewModelBooleanPropertySpec {
|
|
22
|
+
class JHybridViewModelBooleanPropertySpec: public virtual HybridViewModelBooleanPropertySpec, public virtual JHybridViewModelPropertySpec {
|
|
24
23
|
public:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
HybridBase
|
|
34
|
-
|
|
24
|
+
struct JavaPart: public jni::JavaClass<JavaPart, JHybridViewModelPropertySpec::JavaPart> {
|
|
25
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridViewModelBooleanPropertySpec;";
|
|
26
|
+
std::shared_ptr<JHybridViewModelBooleanPropertySpec> getJHybridViewModelBooleanPropertySpec();
|
|
27
|
+
};
|
|
28
|
+
struct CxxPart: public jni::HybridClass<CxxPart, JHybridViewModelPropertySpec::CxxPart> {
|
|
29
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridViewModelBooleanPropertySpec$CxxPart;";
|
|
30
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
31
|
+
static void registerNatives();
|
|
32
|
+
using HybridBase::HybridBase;
|
|
33
|
+
protected:
|
|
34
|
+
std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
|
|
35
|
+
};
|
|
35
36
|
|
|
36
37
|
public:
|
|
38
|
+
explicit JHybridViewModelBooleanPropertySpec(const jni::local_ref<JHybridViewModelBooleanPropertySpec::JavaPart>& javaPart):
|
|
39
|
+
HybridObject(HybridViewModelBooleanPropertySpec::TAG),
|
|
40
|
+
JHybridObject(javaPart),
|
|
41
|
+
JHybridViewModelPropertySpec(javaPart),
|
|
42
|
+
_javaPart(jni::make_global(javaPart)) {}
|
|
37
43
|
~JHybridViewModelBooleanPropertySpec() override {
|
|
38
44
|
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
39
45
|
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
public:
|
|
43
|
-
|
|
44
|
-
bool equals(const std::shared_ptr<HybridObject>& other) override;
|
|
45
|
-
void dispose() noexcept override;
|
|
46
|
-
std::string toString() override;
|
|
47
|
-
|
|
48
|
-
public:
|
|
49
|
-
inline const jni::global_ref<JHybridViewModelBooleanPropertySpec::javaobject>& getJavaPart() const noexcept {
|
|
49
|
+
inline const jni::global_ref<JHybridViewModelBooleanPropertySpec::JavaPart>& getJavaPart() const noexcept {
|
|
50
50
|
return _javaPart;
|
|
51
51
|
}
|
|
52
52
|
|
|
@@ -61,9 +61,7 @@ namespace margelo::nitro::rive {
|
|
|
61
61
|
void removeListeners() override;
|
|
62
62
|
|
|
63
63
|
private:
|
|
64
|
-
|
|
65
|
-
using HybridBase::HybridBase;
|
|
66
|
-
jni::global_ref<JHybridViewModelBooleanPropertySpec::javaobject> _javaPart;
|
|
64
|
+
jni::global_ref<JHybridViewModelBooleanPropertySpec::JavaPart> _javaPart;
|
|
67
65
|
};
|
|
68
66
|
|
|
69
67
|
} // namespace margelo::nitro::rive
|
|
@@ -16,53 +16,47 @@
|
|
|
16
16
|
|
|
17
17
|
namespace margelo::nitro::rive {
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
});
|
|
19
|
+
std::shared_ptr<JHybridViewModelColorPropertySpec> JHybridViewModelColorPropertySpec::JavaPart::getJHybridViewModelColorPropertySpec() {
|
|
20
|
+
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
21
|
+
auto castHybridObject = std::dynamic_pointer_cast<JHybridViewModelColorPropertySpec>(hybridObject);
|
|
22
|
+
if (castHybridObject == nullptr) [[unlikely]] {
|
|
23
|
+
throw std::runtime_error("Failed to downcast JHybridObject to JHybridViewModelColorPropertySpec!");
|
|
24
|
+
}
|
|
25
|
+
return castHybridObject;
|
|
27
26
|
}
|
|
28
27
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
return method(_javaPart);
|
|
28
|
+
jni::local_ref<JHybridViewModelColorPropertySpec::CxxPart::jhybriddata> JHybridViewModelColorPropertySpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
29
|
+
return makeCxxInstance(jThis);
|
|
32
30
|
}
|
|
33
31
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
std::shared_ptr<JHybridObject> JHybridViewModelColorPropertySpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
33
|
+
auto castJavaPart = jni::dynamic_ref_cast<JHybridViewModelColorPropertySpec::JavaPart>(javaPart);
|
|
34
|
+
if (castJavaPart == nullptr) [[unlikely]] {
|
|
35
|
+
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridViewModelColorPropertySpec::JavaPart!");
|
|
37
36
|
}
|
|
38
|
-
return
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
void JHybridViewModelColorPropertySpec::dispose() noexcept {
|
|
42
|
-
static const auto method = javaClassStatic()->getMethod<void()>("dispose");
|
|
43
|
-
method(_javaPart);
|
|
37
|
+
return std::make_shared<JHybridViewModelColorPropertySpec>(castJavaPart);
|
|
44
38
|
}
|
|
45
39
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
40
|
+
void JHybridViewModelColorPropertySpec::CxxPart::registerNatives() {
|
|
41
|
+
registerHybrid({
|
|
42
|
+
makeNativeMethod("initHybrid", JHybridViewModelColorPropertySpec::CxxPart::initHybrid),
|
|
43
|
+
});
|
|
50
44
|
}
|
|
51
45
|
|
|
52
46
|
// Properties
|
|
53
47
|
double JHybridViewModelColorPropertySpec::getValue() {
|
|
54
|
-
static const auto method = javaClassStatic()->getMethod<double()>("getValue");
|
|
48
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getValue");
|
|
55
49
|
auto __result = method(_javaPart);
|
|
56
50
|
return __result;
|
|
57
51
|
}
|
|
58
52
|
void JHybridViewModelColorPropertySpec::setValue(double value) {
|
|
59
|
-
static const auto method = javaClassStatic()->getMethod<void(double /* value */)>("setValue");
|
|
53
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* value */)>("setValue");
|
|
60
54
|
method(_javaPart, value);
|
|
61
55
|
}
|
|
62
56
|
|
|
63
57
|
// Methods
|
|
64
58
|
std::function<void()> JHybridViewModelColorPropertySpec::addListener(const std::function<void(double /* value */)>& onChanged) {
|
|
65
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>(jni::alias_ref<JFunc_void_double::javaobject> /* onChanged */)>("addListener_cxx");
|
|
59
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>(jni::alias_ref<JFunc_void_double::javaobject> /* onChanged */)>("addListener_cxx");
|
|
66
60
|
auto __result = method(_javaPart, JFunc_void_double_cxx::fromCpp(onChanged));
|
|
67
61
|
return [&]() -> std::function<void()> {
|
|
68
62
|
if (__result->isInstanceOf(JFunc_void_cxx::javaClassStatic())) [[likely]] {
|
|
@@ -75,7 +69,7 @@ namespace margelo::nitro::rive {
|
|
|
75
69
|
}();
|
|
76
70
|
}
|
|
77
71
|
void JHybridViewModelColorPropertySpec::removeListeners() {
|
|
78
|
-
static const auto method = javaClassStatic()->getMethod<void()>("removeListeners");
|
|
72
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("removeListeners");
|
|
79
73
|
method(_javaPart);
|
|
80
74
|
}
|
|
81
75
|
|
|
@@ -19,34 +19,34 @@ namespace margelo::nitro::rive {
|
|
|
19
19
|
|
|
20
20
|
using namespace facebook;
|
|
21
21
|
|
|
22
|
-
class JHybridViewModelColorPropertySpec: public
|
|
23
|
-
public virtual HybridViewModelColorPropertySpec {
|
|
22
|
+
class JHybridViewModelColorPropertySpec: public virtual HybridViewModelColorPropertySpec, public virtual JHybridViewModelPropertySpec {
|
|
24
23
|
public:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
HybridBase
|
|
34
|
-
|
|
24
|
+
struct JavaPart: public jni::JavaClass<JavaPart, JHybridViewModelPropertySpec::JavaPart> {
|
|
25
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridViewModelColorPropertySpec;";
|
|
26
|
+
std::shared_ptr<JHybridViewModelColorPropertySpec> getJHybridViewModelColorPropertySpec();
|
|
27
|
+
};
|
|
28
|
+
struct CxxPart: public jni::HybridClass<CxxPart, JHybridViewModelPropertySpec::CxxPart> {
|
|
29
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridViewModelColorPropertySpec$CxxPart;";
|
|
30
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
31
|
+
static void registerNatives();
|
|
32
|
+
using HybridBase::HybridBase;
|
|
33
|
+
protected:
|
|
34
|
+
std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
|
|
35
|
+
};
|
|
35
36
|
|
|
36
37
|
public:
|
|
38
|
+
explicit JHybridViewModelColorPropertySpec(const jni::local_ref<JHybridViewModelColorPropertySpec::JavaPart>& javaPart):
|
|
39
|
+
HybridObject(HybridViewModelColorPropertySpec::TAG),
|
|
40
|
+
JHybridObject(javaPart),
|
|
41
|
+
JHybridViewModelPropertySpec(javaPart),
|
|
42
|
+
_javaPart(jni::make_global(javaPart)) {}
|
|
37
43
|
~JHybridViewModelColorPropertySpec() override {
|
|
38
44
|
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
39
45
|
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
public:
|
|
43
|
-
|
|
44
|
-
bool equals(const std::shared_ptr<HybridObject>& other) override;
|
|
45
|
-
void dispose() noexcept override;
|
|
46
|
-
std::string toString() override;
|
|
47
|
-
|
|
48
|
-
public:
|
|
49
|
-
inline const jni::global_ref<JHybridViewModelColorPropertySpec::javaobject>& getJavaPart() const noexcept {
|
|
49
|
+
inline const jni::global_ref<JHybridViewModelColorPropertySpec::JavaPart>& getJavaPart() const noexcept {
|
|
50
50
|
return _javaPart;
|
|
51
51
|
}
|
|
52
52
|
|
|
@@ -61,9 +61,7 @@ namespace margelo::nitro::rive {
|
|
|
61
61
|
void removeListeners() override;
|
|
62
62
|
|
|
63
63
|
private:
|
|
64
|
-
|
|
65
|
-
using HybridBase::HybridBase;
|
|
66
|
-
jni::global_ref<JHybridViewModelColorPropertySpec::javaobject> _javaPart;
|
|
64
|
+
jni::global_ref<JHybridViewModelColorPropertySpec::JavaPart> _javaPart;
|
|
67
65
|
};
|
|
68
66
|
|
|
69
67
|
} // namespace margelo::nitro::rive
|
|
@@ -17,53 +17,47 @@
|
|
|
17
17
|
|
|
18
18
|
namespace margelo::nitro::rive {
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
});
|
|
20
|
+
std::shared_ptr<JHybridViewModelEnumPropertySpec> JHybridViewModelEnumPropertySpec::JavaPart::getJHybridViewModelEnumPropertySpec() {
|
|
21
|
+
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
22
|
+
auto castHybridObject = std::dynamic_pointer_cast<JHybridViewModelEnumPropertySpec>(hybridObject);
|
|
23
|
+
if (castHybridObject == nullptr) [[unlikely]] {
|
|
24
|
+
throw std::runtime_error("Failed to downcast JHybridObject to JHybridViewModelEnumPropertySpec!");
|
|
25
|
+
}
|
|
26
|
+
return castHybridObject;
|
|
28
27
|
}
|
|
29
28
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return method(_javaPart);
|
|
29
|
+
jni::local_ref<JHybridViewModelEnumPropertySpec::CxxPart::jhybriddata> JHybridViewModelEnumPropertySpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
30
|
+
return makeCxxInstance(jThis);
|
|
33
31
|
}
|
|
34
32
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
std::shared_ptr<JHybridObject> JHybridViewModelEnumPropertySpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
34
|
+
auto castJavaPart = jni::dynamic_ref_cast<JHybridViewModelEnumPropertySpec::JavaPart>(javaPart);
|
|
35
|
+
if (castJavaPart == nullptr) [[unlikely]] {
|
|
36
|
+
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridViewModelEnumPropertySpec::JavaPart!");
|
|
38
37
|
}
|
|
39
|
-
return
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
void JHybridViewModelEnumPropertySpec::dispose() noexcept {
|
|
43
|
-
static const auto method = javaClassStatic()->getMethod<void()>("dispose");
|
|
44
|
-
method(_javaPart);
|
|
38
|
+
return std::make_shared<JHybridViewModelEnumPropertySpec>(castJavaPart);
|
|
45
39
|
}
|
|
46
40
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
41
|
+
void JHybridViewModelEnumPropertySpec::CxxPart::registerNatives() {
|
|
42
|
+
registerHybrid({
|
|
43
|
+
makeNativeMethod("initHybrid", JHybridViewModelEnumPropertySpec::CxxPart::initHybrid),
|
|
44
|
+
});
|
|
51
45
|
}
|
|
52
46
|
|
|
53
47
|
// Properties
|
|
54
48
|
std::string JHybridViewModelEnumPropertySpec::getValue() {
|
|
55
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getValue");
|
|
49
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getValue");
|
|
56
50
|
auto __result = method(_javaPart);
|
|
57
51
|
return __result->toStdString();
|
|
58
52
|
}
|
|
59
53
|
void JHybridViewModelEnumPropertySpec::setValue(const std::string& value) {
|
|
60
|
-
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* value */)>("setValue");
|
|
54
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* value */)>("setValue");
|
|
61
55
|
method(_javaPart, jni::make_jstring(value));
|
|
62
56
|
}
|
|
63
57
|
|
|
64
58
|
// Methods
|
|
65
59
|
std::function<void()> JHybridViewModelEnumPropertySpec::addListener(const std::function<void(const std::string& /* value */)>& onChanged) {
|
|
66
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>(jni::alias_ref<JFunc_void_std__string::javaobject> /* onChanged */)>("addListener_cxx");
|
|
60
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>(jni::alias_ref<JFunc_void_std__string::javaobject> /* onChanged */)>("addListener_cxx");
|
|
67
61
|
auto __result = method(_javaPart, JFunc_void_std__string_cxx::fromCpp(onChanged));
|
|
68
62
|
return [&]() -> std::function<void()> {
|
|
69
63
|
if (__result->isInstanceOf(JFunc_void_cxx::javaClassStatic())) [[likely]] {
|
|
@@ -76,7 +70,7 @@ namespace margelo::nitro::rive {
|
|
|
76
70
|
}();
|
|
77
71
|
}
|
|
78
72
|
void JHybridViewModelEnumPropertySpec::removeListeners() {
|
|
79
|
-
static const auto method = javaClassStatic()->getMethod<void()>("removeListeners");
|
|
73
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("removeListeners");
|
|
80
74
|
method(_javaPart);
|
|
81
75
|
}
|
|
82
76
|
|
|
@@ -19,34 +19,34 @@ namespace margelo::nitro::rive {
|
|
|
19
19
|
|
|
20
20
|
using namespace facebook;
|
|
21
21
|
|
|
22
|
-
class JHybridViewModelEnumPropertySpec: public
|
|
23
|
-
public virtual HybridViewModelEnumPropertySpec {
|
|
22
|
+
class JHybridViewModelEnumPropertySpec: public virtual HybridViewModelEnumPropertySpec, public virtual JHybridViewModelPropertySpec {
|
|
24
23
|
public:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
HybridBase
|
|
34
|
-
|
|
24
|
+
struct JavaPart: public jni::JavaClass<JavaPart, JHybridViewModelPropertySpec::JavaPart> {
|
|
25
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridViewModelEnumPropertySpec;";
|
|
26
|
+
std::shared_ptr<JHybridViewModelEnumPropertySpec> getJHybridViewModelEnumPropertySpec();
|
|
27
|
+
};
|
|
28
|
+
struct CxxPart: public jni::HybridClass<CxxPart, JHybridViewModelPropertySpec::CxxPart> {
|
|
29
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridViewModelEnumPropertySpec$CxxPart;";
|
|
30
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
31
|
+
static void registerNatives();
|
|
32
|
+
using HybridBase::HybridBase;
|
|
33
|
+
protected:
|
|
34
|
+
std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
|
|
35
|
+
};
|
|
35
36
|
|
|
36
37
|
public:
|
|
38
|
+
explicit JHybridViewModelEnumPropertySpec(const jni::local_ref<JHybridViewModelEnumPropertySpec::JavaPart>& javaPart):
|
|
39
|
+
HybridObject(HybridViewModelEnumPropertySpec::TAG),
|
|
40
|
+
JHybridObject(javaPart),
|
|
41
|
+
JHybridViewModelPropertySpec(javaPart),
|
|
42
|
+
_javaPart(jni::make_global(javaPart)) {}
|
|
37
43
|
~JHybridViewModelEnumPropertySpec() override {
|
|
38
44
|
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
39
45
|
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
public:
|
|
43
|
-
|
|
44
|
-
bool equals(const std::shared_ptr<HybridObject>& other) override;
|
|
45
|
-
void dispose() noexcept override;
|
|
46
|
-
std::string toString() override;
|
|
47
|
-
|
|
48
|
-
public:
|
|
49
|
-
inline const jni::global_ref<JHybridViewModelEnumPropertySpec::javaobject>& getJavaPart() const noexcept {
|
|
49
|
+
inline const jni::global_ref<JHybridViewModelEnumPropertySpec::JavaPart>& getJavaPart() const noexcept {
|
|
50
50
|
return _javaPart;
|
|
51
51
|
}
|
|
52
52
|
|
|
@@ -61,9 +61,7 @@ namespace margelo::nitro::rive {
|
|
|
61
61
|
void removeListeners() override;
|
|
62
62
|
|
|
63
63
|
private:
|
|
64
|
-
|
|
65
|
-
using HybridBase::HybridBase;
|
|
66
|
-
jni::global_ref<JHybridViewModelEnumPropertySpec::javaobject> _javaPart;
|
|
64
|
+
jni::global_ref<JHybridViewModelEnumPropertySpec::JavaPart> _javaPart;
|
|
67
65
|
};
|
|
68
66
|
|
|
69
67
|
} // namespace margelo::nitro::rive
|
|
@@ -20,37 +20,31 @@ namespace margelo::nitro::rive { class HybridRiveImageSpec; }
|
|
|
20
20
|
|
|
21
21
|
namespace margelo::nitro::rive {
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
});
|
|
23
|
+
std::shared_ptr<JHybridViewModelImagePropertySpec> JHybridViewModelImagePropertySpec::JavaPart::getJHybridViewModelImagePropertySpec() {
|
|
24
|
+
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
25
|
+
auto castHybridObject = std::dynamic_pointer_cast<JHybridViewModelImagePropertySpec>(hybridObject);
|
|
26
|
+
if (castHybridObject == nullptr) [[unlikely]] {
|
|
27
|
+
throw std::runtime_error("Failed to downcast JHybridObject to JHybridViewModelImagePropertySpec!");
|
|
28
|
+
}
|
|
29
|
+
return castHybridObject;
|
|
31
30
|
}
|
|
32
31
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
return method(_javaPart);
|
|
32
|
+
jni::local_ref<JHybridViewModelImagePropertySpec::CxxPart::jhybriddata> JHybridViewModelImagePropertySpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
33
|
+
return makeCxxInstance(jThis);
|
|
36
34
|
}
|
|
37
35
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
std::shared_ptr<JHybridObject> JHybridViewModelImagePropertySpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
37
|
+
auto castJavaPart = jni::dynamic_ref_cast<JHybridViewModelImagePropertySpec::JavaPart>(javaPart);
|
|
38
|
+
if (castJavaPart == nullptr) [[unlikely]] {
|
|
39
|
+
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridViewModelImagePropertySpec::JavaPart!");
|
|
41
40
|
}
|
|
42
|
-
return
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
void JHybridViewModelImagePropertySpec::dispose() noexcept {
|
|
46
|
-
static const auto method = javaClassStatic()->getMethod<void()>("dispose");
|
|
47
|
-
method(_javaPart);
|
|
41
|
+
return std::make_shared<JHybridViewModelImagePropertySpec>(castJavaPart);
|
|
48
42
|
}
|
|
49
43
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
44
|
+
void JHybridViewModelImagePropertySpec::CxxPart::registerNatives() {
|
|
45
|
+
registerHybrid({
|
|
46
|
+
makeNativeMethod("initHybrid", JHybridViewModelImagePropertySpec::CxxPart::initHybrid),
|
|
47
|
+
});
|
|
54
48
|
}
|
|
55
49
|
|
|
56
50
|
// Properties
|
|
@@ -58,11 +52,11 @@ namespace margelo::nitro::rive {
|
|
|
58
52
|
|
|
59
53
|
// Methods
|
|
60
54
|
void JHybridViewModelImagePropertySpec::set(const std::optional<std::shared_ptr<HybridRiveImageSpec>>& image) {
|
|
61
|
-
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JHybridRiveImageSpec::
|
|
55
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JHybridRiveImageSpec::JavaPart> /* image */)>("set");
|
|
62
56
|
method(_javaPart, image.has_value() ? std::dynamic_pointer_cast<JHybridRiveImageSpec>(image.value())->getJavaPart() : nullptr);
|
|
63
57
|
}
|
|
64
58
|
std::function<void()> JHybridViewModelImagePropertySpec::addListener(const std::function<void()>& onChanged) {
|
|
65
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>(jni::alias_ref<JFunc_void::javaobject> /* onChanged */)>("addListener_cxx");
|
|
59
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>(jni::alias_ref<JFunc_void::javaobject> /* onChanged */)>("addListener_cxx");
|
|
66
60
|
auto __result = method(_javaPart, JFunc_void_cxx::fromCpp(onChanged));
|
|
67
61
|
return [&]() -> std::function<void()> {
|
|
68
62
|
if (__result->isInstanceOf(JFunc_void_cxx::javaClassStatic())) [[likely]] {
|
|
@@ -75,7 +69,7 @@ namespace margelo::nitro::rive {
|
|
|
75
69
|
}();
|
|
76
70
|
}
|
|
77
71
|
void JHybridViewModelImagePropertySpec::removeListeners() {
|
|
78
|
-
static const auto method = javaClassStatic()->getMethod<void()>("removeListeners");
|
|
72
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("removeListeners");
|
|
79
73
|
method(_javaPart);
|
|
80
74
|
}
|
|
81
75
|
|
|
@@ -19,34 +19,34 @@ namespace margelo::nitro::rive {
|
|
|
19
19
|
|
|
20
20
|
using namespace facebook;
|
|
21
21
|
|
|
22
|
-
class JHybridViewModelImagePropertySpec: public
|
|
23
|
-
public virtual HybridViewModelImagePropertySpec {
|
|
22
|
+
class JHybridViewModelImagePropertySpec: public virtual HybridViewModelImagePropertySpec, public virtual JHybridViewModelPropertySpec {
|
|
24
23
|
public:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
HybridBase
|
|
34
|
-
|
|
24
|
+
struct JavaPart: public jni::JavaClass<JavaPart, JHybridViewModelPropertySpec::JavaPart> {
|
|
25
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridViewModelImagePropertySpec;";
|
|
26
|
+
std::shared_ptr<JHybridViewModelImagePropertySpec> getJHybridViewModelImagePropertySpec();
|
|
27
|
+
};
|
|
28
|
+
struct CxxPart: public jni::HybridClass<CxxPart, JHybridViewModelPropertySpec::CxxPart> {
|
|
29
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridViewModelImagePropertySpec$CxxPart;";
|
|
30
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
31
|
+
static void registerNatives();
|
|
32
|
+
using HybridBase::HybridBase;
|
|
33
|
+
protected:
|
|
34
|
+
std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
|
|
35
|
+
};
|
|
35
36
|
|
|
36
37
|
public:
|
|
38
|
+
explicit JHybridViewModelImagePropertySpec(const jni::local_ref<JHybridViewModelImagePropertySpec::JavaPart>& javaPart):
|
|
39
|
+
HybridObject(HybridViewModelImagePropertySpec::TAG),
|
|
40
|
+
JHybridObject(javaPart),
|
|
41
|
+
JHybridViewModelPropertySpec(javaPart),
|
|
42
|
+
_javaPart(jni::make_global(javaPart)) {}
|
|
37
43
|
~JHybridViewModelImagePropertySpec() override {
|
|
38
44
|
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
39
45
|
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
public:
|
|
43
|
-
|
|
44
|
-
bool equals(const std::shared_ptr<HybridObject>& other) override;
|
|
45
|
-
void dispose() noexcept override;
|
|
46
|
-
std::string toString() override;
|
|
47
|
-
|
|
48
|
-
public:
|
|
49
|
-
inline const jni::global_ref<JHybridViewModelImagePropertySpec::javaobject>& getJavaPart() const noexcept {
|
|
49
|
+
inline const jni::global_ref<JHybridViewModelImagePropertySpec::JavaPart>& getJavaPart() const noexcept {
|
|
50
50
|
return _javaPart;
|
|
51
51
|
}
|
|
52
52
|
|
|
@@ -61,9 +61,7 @@ namespace margelo::nitro::rive {
|
|
|
61
61
|
void removeListeners() override;
|
|
62
62
|
|
|
63
63
|
private:
|
|
64
|
-
|
|
65
|
-
using HybridBase::HybridBase;
|
|
66
|
-
jni::global_ref<JHybridViewModelImagePropertySpec::javaobject> _javaPart;
|
|
64
|
+
jni::global_ref<JHybridViewModelImagePropertySpec::JavaPart> _javaPart;
|
|
67
65
|
};
|
|
68
66
|
|
|
69
67
|
} // namespace margelo::nitro::rive
|