From 383934a06e22e8e1a5ee50d121722240259f95d0 Mon Sep 17 00:00:00 2001 From: Emily Janzer Date: Wed, 22 Jan 2020 10:14:18 -0800 Subject: [PATCH] Don't emit dimensions update event on initial load Summary: On iOS we don't emit the didUpdateDimensions event in JS when the first React Native screen is rendered, so let's keep the behavior the same on Android. Reviewed By: mdvacca Differential Revision: D19506829 fbshipit-source-id: d0122d18be79177318c3f059ed396f990eeabcb7 --- .../facebook/react/modules/deviceinfo/DeviceInfoModule.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java index f8deb0e2e4e073..828f209cd76d16 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java @@ -89,7 +89,9 @@ public void emitUpdateDimensionsEvent() { // Don't emit an event to JS if the dimensions haven't changed WritableNativeMap displayMetrics = DisplayMetricsHolder.getDisplayMetricsNativeMap(mFontScale); - if (!displayMetrics.equals(mPreviousDisplayMetrics)) { + if (mPreviousDisplayMetrics == null) { + mPreviousDisplayMetrics = displayMetrics.copy(); + } else if (!displayMetrics.equals(mPreviousDisplayMetrics)) { mPreviousDisplayMetrics = displayMetrics.copy(); mReactApplicationContext .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)