diff --git a/java/com/facebook/csslayout/CSSNode.java b/java/com/facebook/csslayout/CSSNode.java index 6ae5a472..97a5e937 100644 --- a/java/com/facebook/csslayout/CSSNode.java +++ b/java/com/facebook/csslayout/CSSNode.java @@ -553,16 +553,6 @@ public class CSSNode implements CSSNodeAPI { return layout.direction; } - /** - * Set a default padding (left/top/right/bottom) for this node. - */ - @Override - public void setDefaultPadding(int spacingType, float padding) { - if (style.padding.setDefault(spacingType, padding)) { - dirty(); - } - } - /** * Get this node's overflow property, as defined in the style */ diff --git a/java/com/facebook/csslayout/CSSNodeAPI.java b/java/com/facebook/csslayout/CSSNodeAPI.java index aa2dc030..b7f17687 100644 --- a/java/com/facebook/csslayout/CSSNodeAPI.java +++ b/java/com/facebook/csslayout/CSSNodeAPI.java @@ -79,7 +79,6 @@ public interface CSSNodeAPI { float getLayoutWidth(); float getLayoutHeight(); CSSDirection getLayoutDirection(); - void setDefaultPadding(int spacingType, float padding); CSSOverflow getOverflow(); void setOverflow(CSSOverflow overflow); void setData(Object data); diff --git a/java/com/facebook/csslayout/CSSNodeJNI.java b/java/com/facebook/csslayout/CSSNodeJNI.java index 11205b76..550ac7eb 100644 --- a/java/com/facebook/csslayout/CSSNodeJNI.java +++ b/java/com/facebook/csslayout/CSSNodeJNI.java @@ -335,11 +335,6 @@ public class CSSNodeJNI implements CSSNodeAPI { jni_CSSNodeStyleSetPadding(mNativePointer, spacingType, padding); } - @Override - public void setDefaultPadding(int spacingType, float padding) { - // TODO - } - private native float jni_CSSNodeStyleGetBorder(long nativePointer, int edge); @Override public Spacing getBorder() { diff --git a/java/com/facebook/csslayout/CSSStyle.java b/java/com/facebook/csslayout/CSSStyle.java index b2a8d8b8..d0ffd35c 100644 --- a/java/com/facebook/csslayout/CSSStyle.java +++ b/java/com/facebook/csslayout/CSSStyle.java @@ -30,7 +30,7 @@ public class CSSStyle { public Spacing margin = new Spacing(); public Spacing padding = new Spacing(); public Spacing border = new Spacing(); - public Spacing position = new Spacing(); + public Spacing position = new Spacing(CSSConstants.UNDEFINED); public float[] dimensions = new float[2]; @@ -61,13 +61,6 @@ public class CSSStyle { border.reset(); position.reset(); - position.setDefault(Spacing.LEFT, CSSConstants.UNDEFINED); - position.setDefault(Spacing.RIGHT, CSSConstants.UNDEFINED); - position.setDefault(Spacing.TOP, CSSConstants.UNDEFINED); - position.setDefault(Spacing.BOTTOM, CSSConstants.UNDEFINED); - position.setDefault(Spacing.START, CSSConstants.UNDEFINED); - position.setDefault(Spacing.END, CSSConstants.UNDEFINED); - Arrays.fill(dimensions, CSSConstants.UNDEFINED); minWidth = CSSConstants.UNDEFINED; diff --git a/java/com/facebook/csslayout/Spacing.java b/java/com/facebook/csslayout/Spacing.java index af46cbd4..1d068f6f 100644 --- a/java/com/facebook/csslayout/Spacing.java +++ b/java/com/facebook/csslayout/Spacing.java @@ -9,8 +9,6 @@ package com.facebook.csslayout; -import javax.annotation.Nullable; - import java.util.Arrays; /** @@ -71,10 +69,18 @@ public class Spacing { }; private final float[] mSpacing = newFullSpacingArray(); - @Nullable private float[] mDefaultSpacing = null; private int mValueFlags = 0; + private float mDefaultValue; private boolean mHasAliasesSet; + public Spacing() { + this(0); + } + + public Spacing(float defaultValue) { + mDefaultValue = defaultValue; + } + /** * Set a spacing value. * @@ -101,25 +107,7 @@ public class Spacing { return true; } - return false; - } - /** - * Set a default spacing value. This is used as a fallback when no spacing has been set for a - * particular direction. - * - * @param spacingType one of {@link #LEFT}, {@link #TOP}, {@link #RIGHT}, {@link #BOTTOM} - * @param value the default value for this direction - * @return - */ - public boolean setDefault(int spacingType, float value) { - if (mDefaultSpacing == null) { - mDefaultSpacing = newSpacingResultArray(); - } - if (!FloatUtil.floatsEqual(mDefaultSpacing[spacingType], value)) { - mDefaultSpacing[spacingType] = value; - return true; - } return false; } @@ -129,9 +117,9 @@ public class Spacing { * @param spacingType one of {@link #LEFT}, {@link #TOP}, {@link #RIGHT}, {@link #BOTTOM} */ public float get(int spacingType) { - float defaultValue = (mDefaultSpacing != null) - ? mDefaultSpacing[spacingType] - : (spacingType == START || spacingType == END ? CSSConstants.UNDEFINED : 0); + float defaultValue = (spacingType == START || spacingType == END + ? CSSConstants.UNDEFINED + : mDefaultValue); if (mValueFlags == 0) { return defaultValue; @@ -170,7 +158,6 @@ public class Spacing { */ void reset() { Arrays.fill(mSpacing, CSSConstants.UNDEFINED); - mDefaultSpacing = null; mHasAliasesSet = false; mValueFlags = 0; } @@ -200,22 +187,4 @@ public class Spacing { CSSConstants.UNDEFINED, }; } - - private static float[] newSpacingResultArray() { - return newSpacingResultArray(0); - } - - private static float[] newSpacingResultArray(float defaultValue) { - return new float[] { - defaultValue, - defaultValue, - defaultValue, - defaultValue, - CSSConstants.UNDEFINED, - CSSConstants.UNDEFINED, - defaultValue, - defaultValue, - defaultValue, - }; - } }