RN: Workaround for ReactNativeART on Android

Summary:
Brings back the fix for `overflow: hidden` on Android by implementing a workaround for a bug with `ReactNativeART`.

The ReactNativeART bug is that changes in the canvas due to a resize of the `Surface` are not properly reflected on Android. I have verified that the correct props are being computed and passed to the shadow nodes and that the `ARTSurfaceView`'s canvas is indeed updated. But for some reason, the paint is not updated.

This workaround is to simply unmount and remount `Surface` on Android. It sucks and we should eventually fix it.

Reviewed By: achen1

Differential Revision: D8818010

fbshipit-source-id: 71d1927580b6bde7263fd241797d4655140b5f34
This commit is contained in:
Tim Yung
2018-07-12 07:58:40 -07:00
committed by Facebook Github Bot
parent b5f027dd77
commit d756d94b3a
2 changed files with 9 additions and 6 deletions

View File

@@ -51,9 +51,8 @@ public class ReactViewGroup extends ViewGroup implements
/**
* Kill switch to make overflow hidden by default. This flag will eventually be removed.
* TODO (T31096050): Sets this back to `false` until ReactNativeARTSurface issue is resolved.
*/
public static boolean sDefaultOverflowHidden = true;
public static boolean sDefaultOverflowHidden;
private static final int ARRAY_CAPACITY_INCREMENT = 12;
private static final int DEFAULT_BACKGROUND_COLOR = Color.TRANSPARENT;