From 4fb94eb97d6d41d93f3eefb9caf6be0f08d458a4 Mon Sep 17 00:00:00 2001 From: Yogev Ben David Date: Tue, 20 Dec 2022 17:48:04 +0200 Subject: [PATCH] Fix runOnMainThread to postAtFrontOfQueue when already on the main thread --- .../main/java/com/reactnativenavigation/utils/UiUtils.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/android/app/src/main/java/com/reactnativenavigation/utils/UiUtils.java b/lib/android/app/src/main/java/com/reactnativenavigation/utils/UiUtils.java index 1c5a3edf5e6..5389321c5e7 100644 --- a/lib/android/app/src/main/java/com/reactnativenavigation/utils/UiUtils.java +++ b/lib/android/app/src/main/java/com/reactnativenavigation/utils/UiUtils.java @@ -81,7 +81,11 @@ public void onWindowDetached() { } public static void runOnMainThread(Runnable runnable) { - new Handler(Looper.getMainLooper()).post(runnable); + if (Looper.myLooper() == Looper.getMainLooper()) { + new Handler(Looper.getMainLooper()).postAtFrontOfQueue(runnable); + } else { + new Handler(Looper.getMainLooper()).post(runnable); + } } public static float getWindowHeight(Context context) {