Skip to content

Commit

Permalink
Back out "Remove useOverflowInset flag as we rolled out 100% to publi…
Browse files Browse the repository at this point in the history
…c for over three months"

Summary:
Original commit changeset: 77da78a29270

Original Phabricator Diff: D36990986 (df80ed4)

Reviewed By: mdvacca

Differential Revision: D37074879

fbshipit-source-id: 82668c90d50b4cc6c53986aa9450eea7934402b3
  • Loading branch information
ryancat authored and facebook-github-bot committed Jun 10, 2022
1 parent 114d31f commit 59476d0
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,9 @@ public class ReactFeatureFlags {
/** Enables or disables MapBuffer Serialization */
public static boolean mapBufferSerializationEnabled = false;

/** Feature Flag to use overflowInset values provided by Yoga */
public static boolean useOverflowInset = false;

public static boolean enableLockFreeEventDispatcher = false;

public static boolean enableAggressiveEventEmitterCleanup = false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ FabricMountingManager::FabricMountingManager(
config->getBool("react_fabric:disabled_view_preallocation_android")),
disableRevisionCheckForPreallocation_(config->getBool(
"react_fabric:disable_revision_check_for_preallocation")),
useOverflowInset_(getFeatureFlagValue("useOverflowInset")),
shouldRememberAllocatedViews_(
getFeatureFlagValue("shouldRememberAllocatedViews")),
useMapBufferForViewProps_(config->getBool(
Expand Down Expand Up @@ -375,8 +376,9 @@ void FabricMountingManager::executeMount(
// children of the current view. The layout of current view may not
// change, and we separate this part from layout mount items to not
// pack too much data there.
if (oldChildShadowView.layoutMetrics.overflowInset !=
newChildShadowView.layoutMetrics.overflowInset) {
if (useOverflowInset_ &&
(oldChildShadowView.layoutMetrics.overflowInset !=
newChildShadowView.layoutMetrics.overflowInset)) {
cppUpdateOverflowInsetMountItems.push_back(
CppMountItem::UpdateOverflowInsetMountItem(
newChildShadowView));
Expand Down Expand Up @@ -433,8 +435,9 @@ void FabricMountingManager::executeMount(
// children of the current view. The layout of current view may not
// change, and we separate this part from layout mount items to not
// pack too much data there.
if (newChildShadowView.layoutMetrics.overflowInset !=
EdgeInsets::ZERO) {
if (useOverflowInset_ &&
newChildShadowView.layoutMetrics.overflowInset !=
EdgeInsets::ZERO) {
cppUpdateOverflowInsetMountItems.push_back(
CppMountItem::UpdateOverflowInsetMountItem(
newChildShadowView));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ class FabricMountingManager final {
bool const enableEarlyEventEmitterUpdate_{false};
bool const disablePreallocateViews_{false};
bool const disableRevisionCheckForPreallocation_{false};
bool const useOverflowInset_{false};
bool const shouldRememberAllocatedViews_{false};
bool const useMapBufferForViewProps_{false};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import androidx.annotation.Nullable;
import com.facebook.react.bridge.JSApplicationIllegalArgumentException;
import com.facebook.react.bridge.UiThreadUtil;
import com.facebook.react.config.ReactFeatureFlags;
import com.facebook.react.touch.ReactHitSlopView;
import com.facebook.react.uimanager.common.ViewUtil;
import java.util.ArrayList;
Expand Down Expand Up @@ -191,6 +192,7 @@ private static View findTouchTargetView(
// If the touch point is outside of the overflowinset for the view, we can safely ignore
// it.
if (ViewUtil.getUIManagerType(view.getId()) == FABRIC
&& ReactFeatureFlags.useOverflowInset
&& !isTouchPointInViewWithOverflowInset(eventCoords[0], eventCoords[1], view)) {
return null;
}
Expand Down

0 comments on commit 59476d0

Please sign in to comment.