Create a ReactFeatureFlag to enabled logging in Fabric

Summary: Easy diff to create a ReactFeatureFlag to enabled logging in Fabric

Reviewed By: JoshuaGross

Differential Revision: D15803582

fbshipit-source-id: d735f24850bddf43c27b97d006100cbb8f0cc6e3
This commit is contained in:
David Vacca
2019-06-14 02:52:55 -07:00
committed by Facebook Github Bot
parent 488a91bdc4
commit f95a21539a
3 changed files with 11 additions and 2 deletions
@@ -49,4 +49,9 @@ public class ReactFeatureFlags {
* Default value is false.
*/
public static boolean enableExtraWebViewLogs = false;
/*
* This feature flag enables logs for Fabric
*/
public static boolean enableFabricLogs = false;
}
@@ -29,6 +29,7 @@ rn_android_library(
react_native_target("java/com/facebook/debug/tags:tags"),
react_native_target("java/com/facebook/debug/holder:holder"),
react_native_target("java/com/facebook/react/bridge:bridge"),
react_native_target("java/com/facebook/react/config:config"),
react_native_target("java/com/facebook/react/fabric/jni:jni"),
react_native_target("java/com/facebook/react:react"),
react_native_target("java/com/facebook/react/module/annotations:annotations"),
@@ -21,6 +21,8 @@ import androidx.annotation.GuardedBy;
import androidx.annotation.Nullable;
import androidx.annotation.UiThread;
import com.facebook.common.logging.FLog;
import com.facebook.debug.holder.PrinterHolder;
import com.facebook.debug.tags.ReactDebugOverlayTags;
import com.facebook.infer.annotation.ThreadConfined;
import com.facebook.proguard.annotations.DoNotStrip;
import com.facebook.react.bridge.LifecycleEventListener;
@@ -33,6 +35,7 @@ import com.facebook.react.bridge.UIManager;
import com.facebook.react.bridge.UiThreadUtil;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.common.ReactConstants;
import com.facebook.react.config.ReactFeatureFlags;
import com.facebook.react.fabric.events.EventBeatManager;
import com.facebook.react.fabric.events.EventEmitterWrapper;
import com.facebook.react.fabric.events.FabricEventEmitter;
@@ -70,8 +73,8 @@ import java.util.concurrent.ConcurrentHashMap;
public class FabricUIManager implements UIManager, LifecycleEventListener {
public static final String TAG = FabricUIManager.class.getSimpleName();
public static final boolean DEBUG = true;
// PrinterHolder.getPrinter().shouldDisplayLogMessage(ReactDebugOverlayTags.FABRIC_UI_MANAGER);
public static final boolean DEBUG = ReactFeatureFlags.enableFabricLogs ||
PrinterHolder.getPrinter().shouldDisplayLogMessage(ReactDebugOverlayTags.FABRIC_UI_MANAGER);
private static final int FRAME_TIME_MS = 16;
private static final int MAX_TIME_IN_FRAME_FOR_NON_BATCHED_OPERATIONS_MS = 8;
private static final int PRE_MOUNT_ITEMS_INITIAL_SIZE_ARRAY = 250;