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) {