From 9724eaeb42da451305a057969fe4c6a24ea5fb36 Mon Sep 17 00:00:00 2001 From: Emil Sjolander Date: Tue, 10 Jan 2017 02:21:50 -0800 Subject: [PATCH] Fix checks for already set padding Reviewed By: ahmedre Differential Revision: D4393371 fbshipit-source-id: 96672d0ee38b16b6f225c8a6fe0442c9b9eb9ec8 --- .../com/facebook/react/flat/FlatARTSurfaceViewShadowNode.java | 2 +- .../com/facebook/react/flat/FlatReactModalShadowNode.java | 2 +- .../main/java/com/facebook/react/flat/NativeViewWrapper.java | 2 +- .../java/com/facebook/react/uimanager/ReactShadowNode.java | 4 ++++ 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/flat/FlatARTSurfaceViewShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/flat/FlatARTSurfaceViewShadowNode.java index e59eee480..60833dbff 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/flat/FlatARTSurfaceViewShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/flat/FlatARTSurfaceViewShadowNode.java @@ -104,7 +104,7 @@ import com.facebook.react.views.art.ARTVirtualNode; @Override public void setPadding(int spacingType, float padding) { - if (getPadding(spacingType) != padding) { + if (getStylePadding(spacingType) != padding) { super.setPadding(spacingType, padding); mPaddingChanged = true; markUpdated(); diff --git a/ReactAndroid/src/main/java/com/facebook/react/flat/FlatReactModalShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/flat/FlatReactModalShadowNode.java index 043ed1260..d4061bfdb 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/flat/FlatReactModalShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/flat/FlatReactModalShadowNode.java @@ -86,7 +86,7 @@ class FlatReactModalShadowNode extends FlatShadowNode implements AndroidView { @Override public void setPadding(int spacingType, float padding) { - if (getPadding(spacingType) != padding) { + if (getStylePadding(spacingType) != padding) { super.setPadding(spacingType, padding); mPaddingChanged = true; markUpdated(); diff --git a/ReactAndroid/src/main/java/com/facebook/react/flat/NativeViewWrapper.java b/ReactAndroid/src/main/java/com/facebook/react/flat/NativeViewWrapper.java index 73d7163f0..c692025cb 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/flat/NativeViewWrapper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/flat/NativeViewWrapper.java @@ -101,7 +101,7 @@ import com.facebook.react.uimanager.ViewManager; @Override public void setPadding(int spacingType, float padding) { - if (getPadding(spacingType) != padding) { + if (getStylePadding(spacingType) != padding) { super.setPadding(spacingType, padding); mPaddingChanged = true; markUpdated(); diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java index 572e1526f..314b0f263 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java @@ -598,6 +598,10 @@ public class ReactShadowNode { return mYogaNode.getLayoutPadding(YogaEdge.fromInt(spacingType)); } + public final float getStylePadding(int spacingType) { + return mYogaNode.getPadding(YogaEdge.fromInt(spacingType)).value; + } + public void setDefaultPadding(int spacingType, float padding) { mDefaultPadding.set(spacingType, padding); updatePadding();