| 1176 | } |
| 1177 | |
| 1178 | void ValdiAndroid::NativeBridge::callOnJsThread( // NOLINT |
| 1179 | fbjni::alias_ref<fbjni::JClass> /* clazz */, // NOLINT |
| 1180 | jlong runtimeHandle, |
| 1181 | jboolean sync, |
| 1182 | jobject runnable) { |
| 1183 | auto* runtimeWrapper = getRuntimeWrapper(runtimeHandle); |
| 1184 | |
| 1185 | if (runtimeWrapper == nullptr) { |
| 1186 | return; |
| 1187 | } |
| 1188 | |
| 1189 | auto runnableRef = Valdi::makeShared<ValdiAndroid::JavaRunnable>(ValdiAndroid::JavaEnv(), runnable); |
| 1190 | |
| 1191 | runtimeWrapper->getRuntime().getJavaScriptRuntime()->dispatchOnJsThread( |
| 1192 | nullptr, |
| 1193 | (sync != 0u) ? Valdi::JavaScriptTaskScheduleTypeAlwaysSync : Valdi::JavaScriptTaskScheduleTypeDefault, |
| 1194 | 0, |
| 1195 | [runnableRef = std::move(runnableRef)](auto& /*jsEntry*/) { (*runnableRef)(); }); |
| 1196 | } |
| 1197 | |
| 1198 | void ValdiAndroid::NativeBridge::enqueueLoadOperation( // NOLINT |
| 1199 | fbjni::alias_ref<fbjni::JClass> /* clazz */, // NOLINT |
nothing calls this directly
no test coverage detected