From 9ce6660f2a455e9f3604a20f243e0ee3e1aba191 Mon Sep 17 00:00:00 2001 From: William Candillon Date: Sun, 15 Dec 2024 18:29:13 +0100 Subject: [PATCH] =?UTF-8?q?fix(=F0=9F=A4=96):=20Regression=20with=20java?= =?UTF-8?q?=20exceptions=20on=20Android=20(#2808)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reactnative/skia/PlatformContext.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/skia/android/src/main/java/com/shopify/reactnative/skia/PlatformContext.java b/packages/skia/android/src/main/java/com/shopify/reactnative/skia/PlatformContext.java index 62fa75d6c5..6e675ff9f3 100644 --- a/packages/skia/android/src/main/java/com/shopify/reactnative/skia/PlatformContext.java +++ b/packages/skia/android/src/main/java/com/shopify/reactnative/skia/PlatformContext.java @@ -2,8 +2,6 @@ import android.os.Handler; import android.os.Looper; -import android.util.Log; -import android.view.Choreographer; import com.facebook.jni.HybridData; import com.facebook.proguard.annotations.DoNotStrip; @@ -27,6 +25,8 @@ public class PlatformContext { private final String TAG = "PlatformContext"; + private final Handler mainHandler = new Handler(Looper.getMainLooper()); + public PlatformContext(ReactContext reactContext) { mContext = reactContext; mHybridData = initHybrid(reactContext.getResources().getDisplayMetrics().density); @@ -105,6 +105,16 @@ protected void finalize() throws Throwable { super.finalize(); } + @DoNotStrip + public void raise(final String message) { + mainHandler.post(new Runnable() { + @Override + public void run() { + mContext.handleException(new Exception(message)); + } + }); + } + // Private c++ native methods private native HybridData initHybrid(float pixelDensity); -} \ No newline at end of file +}