diff --git a/litho-core/src/main/java/com/facebook/litho/LithoLayoutData.java b/litho-core/src/main/java/com/facebook/litho/LithoLayoutData.java index b6511f75295..43d447afb03 100644 --- a/litho-core/src/main/java/com/facebook/litho/LithoLayoutData.java +++ b/litho-core/src/main/java/com/facebook/litho/LithoLayoutData.java @@ -20,15 +20,14 @@ import com.facebook.infer.annotation.Nullsafe; import com.facebook.litho.LithoRenderUnit.UpdateState; import com.facebook.rendercore.LayoutContext; -import com.facebook.rendercore.Node; import com.facebook.rendercore.RenderTreeNode; /** * This object will host the data associated with the component which is generated during the * measure pass, for example: the {@link InterStagePropsContainer}, and the {@link UpdateState}. It - * will be created in {@link Node.LayoutResult#calculateLayout(LayoutContext, int, int)}. This - * object will be returned by {@link Node.LayoutResult#getLayoutData()}, then written to the layout - * data in {@link RenderTreeNode} during reduce. + * will be created in {@link LayoutResult#calculateLayout(LayoutContext, int, int)}. This object + * will be returned by {@link LayoutResult#getLayoutData()}, then written to the layout data in + * {@link RenderTreeNode} during reduce. */ @Nullsafe(Nullsafe.Mode.LOCAL) public class LithoLayoutData { diff --git a/litho-core/src/main/java/com/facebook/litho/LithoLayoutResult.java b/litho-core/src/main/java/com/facebook/litho/LithoLayoutResult.java index da77e99043e..921f49a83e4 100644 --- a/litho-core/src/main/java/com/facebook/litho/LithoLayoutResult.java +++ b/litho-core/src/main/java/com/facebook/litho/LithoLayoutResult.java @@ -27,9 +27,9 @@ import androidx.annotation.Nullable; import androidx.annotation.Px; import com.facebook.rendercore.LayoutContext; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.MeasureResult; import com.facebook.rendercore.Mountable; -import com.facebook.rendercore.Node.LayoutResult; import com.facebook.rendercore.RenderUnit; import com.facebook.rendercore.primitives.Primitive; import com.facebook.rendercore.utils.MeasureSpecUtils; diff --git a/litho-rendercore-incremental-mount/src/main/java/com/facebook/rendercore/incrementalmount/IncrementalMountRenderCoreExtension.java b/litho-rendercore-incremental-mount/src/main/java/com/facebook/rendercore/incrementalmount/IncrementalMountRenderCoreExtension.java index 0d1d28d1d75..17ea3554a2c 100644 --- a/litho-rendercore-incremental-mount/src/main/java/com/facebook/rendercore/incrementalmount/IncrementalMountRenderCoreExtension.java +++ b/litho-rendercore-incremental-mount/src/main/java/com/facebook/rendercore/incrementalmount/IncrementalMountRenderCoreExtension.java @@ -18,7 +18,7 @@ import android.graphics.Rect; import androidx.annotation.Nullable; -import com.facebook.rendercore.Node; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.RenderTreeNode; import com.facebook.rendercore.RenderUnit; import com.facebook.rendercore.extensions.LayoutResultVisitor; @@ -187,7 +187,7 @@ public static class Visitor implements LayoutResultVisitor { @Override public void visit( final @Nullable RenderTreeNode parent, - final Node.LayoutResult result, + final LayoutResult result, final Rect bounds, final int x, final int y, diff --git a/litho-rendercore-incremental-mount/src/test/java/com/facebook/rendercore/incrementalmount/IncrementalMountExtensionTest.java b/litho-rendercore-incremental-mount/src/test/java/com/facebook/rendercore/incrementalmount/IncrementalMountExtensionTest.java index ade8925c1b8..428f725863f 100644 --- a/litho-rendercore-incremental-mount/src/test/java/com/facebook/rendercore/incrementalmount/IncrementalMountExtensionTest.java +++ b/litho-rendercore-incremental-mount/src/test/java/com/facebook/rendercore/incrementalmount/IncrementalMountExtensionTest.java @@ -25,8 +25,8 @@ import android.widget.TextView; import androidx.test.core.app.ApplicationProvider; import com.facebook.rendercore.HostView; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.MountState; -import com.facebook.rendercore.Node.LayoutResult; import com.facebook.rendercore.RenderState; import com.facebook.rendercore.RenderTree; import com.facebook.rendercore.RenderTreeNode; diff --git a/litho-rendercore-primitives/src/main/java/com/facebook/rendercore/primitives/LayoutBehavior.kt b/litho-rendercore-primitives/src/main/java/com/facebook/rendercore/primitives/LayoutBehavior.kt index 2575a56b47f..beae42f0930 100644 --- a/litho-rendercore-primitives/src/main/java/com/facebook/rendercore/primitives/LayoutBehavior.kt +++ b/litho-rendercore-primitives/src/main/java/com/facebook/rendercore/primitives/LayoutBehavior.kt @@ -16,8 +16,8 @@ package com.facebook.rendercore.primitives +import com.facebook.rendercore.LayoutResult import com.facebook.rendercore.MeasureResult -import com.facebook.rendercore.Node import com.facebook.rendercore.RenderUnit import com.facebook.rendercore.primitives.utils.hasEquivalentFields @@ -156,12 +156,12 @@ class PrimitiveLayoutResult( widthSpec: Int, heightSpec: Int, renderUnit: RenderUnit<*>? - ): Node.LayoutResult { - return object : Node.LayoutResult { + ): LayoutResult { + return object : LayoutResult { override fun getRenderUnit(): RenderUnit<*>? = renderUnit override fun getLayoutData(): Any? = this@PrimitiveLayoutResult.layoutData override fun getChildrenCount(): Int = 0 - override fun getChildAt(index: Int): Node.LayoutResult { + override fun getChildAt(index: Int): LayoutResult { throw UnsupportedOperationException("A PrimitiveLayoutResult has no children") } diff --git a/litho-rendercore-primitives/src/main/java/com/facebook/rendercore/primitives/Primitive.kt b/litho-rendercore-primitives/src/main/java/com/facebook/rendercore/primitives/Primitive.kt index c6d632fb3bc..ccd3a10f469 100644 --- a/litho-rendercore-primitives/src/main/java/com/facebook/rendercore/primitives/Primitive.kt +++ b/litho-rendercore-primitives/src/main/java/com/facebook/rendercore/primitives/Primitive.kt @@ -19,6 +19,7 @@ package com.facebook.rendercore.primitives import android.graphics.drawable.Drawable import android.view.View import com.facebook.rendercore.LayoutContext +import com.facebook.rendercore.LayoutResult import com.facebook.rendercore.Node /** @@ -47,7 +48,7 @@ class Primitive( context: LayoutContext, widthSpec: Int, heightSpec: Int - ): Node.LayoutResult { + ): LayoutResult { val layoutScope = LayoutScope(context) return with(layoutBehavior) { layoutScope diff --git a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/RendercoreTestDriver.java b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/RendercoreTestDriver.java index 51718b92219..713dde835db 100644 --- a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/RendercoreTestDriver.java +++ b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/RendercoreTestDriver.java @@ -20,6 +20,7 @@ import android.util.Pair; import android.view.View; import androidx.annotation.Nullable; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.Node; import com.facebook.rendercore.RenderResult; import com.facebook.rendercore.RenderState; @@ -59,7 +60,7 @@ public interface NodeBuilderPart { /** Supply the root Node of the tree. */ LayoutBuilderPart withNode(Node rootNode); - LayoutBuilderPart withLayoutResult(Node.LayoutResult result); + LayoutBuilderPart withLayoutResult(LayoutResult result); } public interface LayoutBuilderPart { @@ -104,7 +105,7 @@ public LayoutBuilderPart withNode(Node rootNode) { } @Override - public LayoutBuilderPart withLayoutResult(Node.LayoutResult result) { + public LayoutBuilderPart withLayoutResult(LayoutResult result) { mRootNode = new SimpleWrapperNode(result); return this; } diff --git a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/SimpleLayoutResult.java b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/SimpleLayoutResult.java index 78726322e00..f9e16c60428 100644 --- a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/SimpleLayoutResult.java +++ b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/SimpleLayoutResult.java @@ -18,7 +18,7 @@ import android.view.View; import androidx.annotation.Nullable; -import com.facebook.rendercore.Node.LayoutResult; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.RenderUnit; import java.util.ArrayList; import java.util.List; diff --git a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/SimpleWrapperNode.java b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/SimpleWrapperNode.java index 73a01ecd39e..3e29bb22b9e 100644 --- a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/SimpleWrapperNode.java +++ b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/SimpleWrapperNode.java @@ -17,6 +17,7 @@ package com.facebook.rendercore.testing; import com.facebook.rendercore.LayoutContext; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.Node; public class SimpleWrapperNode implements Node { diff --git a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/TestLayoutResultVisitor.java b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/TestLayoutResultVisitor.java index 01ceca82c33..bc50f1c6e01 100644 --- a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/TestLayoutResultVisitor.java +++ b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/TestLayoutResultVisitor.java @@ -18,7 +18,7 @@ import android.graphics.Rect; import androidx.annotation.Nullable; -import com.facebook.rendercore.Node.LayoutResult; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.RenderTreeNode; import com.facebook.rendercore.extensions.LayoutResultVisitor; import com.facebook.rendercore.testing.TestLayoutResultVisitor.Result; diff --git a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/TestNode.java b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/TestNode.java index a85a2640366..d16c38f0544 100644 --- a/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/TestNode.java +++ b/litho-rendercore-testing/src/main/java/com/facebook/rendercore/testing/TestNode.java @@ -17,6 +17,7 @@ package com.facebook.rendercore.testing; import com.facebook.rendercore.LayoutContext; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.Node; import com.facebook.rendercore.RenderUnit; import java.util.ArrayList; diff --git a/litho-rendercore-visibility/src/main/java/com/facebook/rendercore/visibility/VisibilityExtension.java b/litho-rendercore-visibility/src/main/java/com/facebook/rendercore/visibility/VisibilityExtension.java index 8d9653418ce..6b3aad5ac33 100644 --- a/litho-rendercore-visibility/src/main/java/com/facebook/rendercore/visibility/VisibilityExtension.java +++ b/litho-rendercore-visibility/src/main/java/com/facebook/rendercore/visibility/VisibilityExtension.java @@ -19,7 +19,7 @@ import android.graphics.Rect; import androidx.annotation.Nullable; import androidx.collection.ArraySet; -import com.facebook.rendercore.Node; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.RenderTreeNode; import com.facebook.rendercore.RenderUnit; import com.facebook.rendercore.extensions.LayoutResultVisitor; @@ -104,7 +104,7 @@ public Visitor(VisibilityOutput.Factory factory) { @Override public void visit( final @Nullable RenderTreeNode parent, - final Node.LayoutResult layoutResult, + final LayoutResult layoutResult, final Rect bounds, final int x, final int y, diff --git a/litho-rendercore-visibility/src/main/java/com/facebook/rendercore/visibility/VisibilityOutput.java b/litho-rendercore-visibility/src/main/java/com/facebook/rendercore/visibility/VisibilityOutput.java index b342798e3bb..366f54c735f 100644 --- a/litho-rendercore-visibility/src/main/java/com/facebook/rendercore/visibility/VisibilityOutput.java +++ b/litho-rendercore-visibility/src/main/java/com/facebook/rendercore/visibility/VisibilityOutput.java @@ -19,7 +19,7 @@ import android.graphics.Rect; import androidx.annotation.Nullable; import com.facebook.rendercore.Function; -import com.facebook.rendercore.Node.LayoutResult; +import com.facebook.rendercore.LayoutResult; /** * Stores information about a node which has registered visibility handlers for. The information is diff --git a/litho-rendercore-yoga/src/main/java/com/facebook/rendercore/YogaLayoutFunction.java b/litho-rendercore-yoga/src/main/java/com/facebook/rendercore/YogaLayoutFunction.java index 6ce021c5d91..7a3a2cfb6b3 100644 --- a/litho-rendercore-yoga/src/main/java/com/facebook/rendercore/YogaLayoutFunction.java +++ b/litho-rendercore-yoga/src/main/java/com/facebook/rendercore/YogaLayoutFunction.java @@ -16,7 +16,6 @@ package com.facebook.rendercore; -import static com.facebook.rendercore.Node.LayoutResult; import static com.facebook.yoga.YogaEdge.BOTTOM; import static com.facebook.yoga.YogaEdge.LEFT; import static com.facebook.yoga.YogaEdge.RIGHT; @@ -355,7 +354,7 @@ public int getChildrenCount() { } @Override - public Node.LayoutResult getChildAt(int index) { + public LayoutResult getChildAt(int index) { if (mDelegate != null) { return mDelegate.getChildAt(index); } diff --git a/litho-rendercore/src/main/java/com/facebook/rendercore/LayoutCache.java b/litho-rendercore/src/main/java/com/facebook/rendercore/LayoutCache.java index a7107ecbc70..5eb2e409631 100644 --- a/litho-rendercore/src/main/java/com/facebook/rendercore/LayoutCache.java +++ b/litho-rendercore/src/main/java/com/facebook/rendercore/LayoutCache.java @@ -30,7 +30,7 @@ */ public final class LayoutCache { static final class CachedData { - private final Map, Node.LayoutResult> mCacheByNode = new HashMap<>(); + private final Map, LayoutResult> mCacheByNode = new HashMap<>(); private final LongSparseArray mCacheById = new LongSparseArray<>(); } @@ -46,11 +46,11 @@ public LayoutCache() { } @Nullable - public Node.LayoutResult get(Node node) { + public LayoutResult get(Node node) { return mReadCache == null ? null : mReadCache.mCacheByNode.get(node); } - public void put(Node node, Node.LayoutResult layout) { + public void put(Node node, LayoutResult layout) { mWriteCache.mCacheByNode.put(node, layout); } diff --git a/litho-rendercore/src/main/java/com/facebook/rendercore/LayoutResult.java b/litho-rendercore/src/main/java/com/facebook/rendercore/LayoutResult.java new file mode 100644 index 00000000000..548802b875d --- /dev/null +++ b/litho-rendercore/src/main/java/com/facebook/rendercore/LayoutResult.java @@ -0,0 +1,82 @@ +/* + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.facebook.rendercore; + +import androidx.annotation.Nullable; +import androidx.annotation.Px; + +/** + * Represents the result of a Layout pass. A LayoutResult has a reference to its originating Node + * and all the layout information needed to position the content of such Node. + */ +public interface LayoutResult { + + /** @return the RenderUnit that should be rendered by this layout result. */ + @Nullable + RenderUnit getRenderUnit(); + + /** + * @return layout specific data that was generated during the layout pass that created this + * LayoutResult. + */ + @Nullable + Object getLayoutData(); + + /** @return the number of children of this LayoutResult. */ + int getChildrenCount(); + + /** @return the LayoutResult for the given child index */ + LayoutResult getChildAt(int index); + + /** @return the resolved X position for the Node */ + @Px + int getXForChildAtIndex(int index); + + /** @return the resolved Y position for the Node */ + @Px + int getYForChildAtIndex(int index); + + /** @return the resolved width for the Node */ + @Px + int getWidth(); + + /** @return the resolved height for the Node */ + @Px + int getHeight(); + + /** @return the resolved top padding for the Node */ + @Px + int getPaddingTop(); + + /** @return the resolved right padding for the Node */ + @Px + int getPaddingRight(); + + /** @return the resolved bottom padding for the Node */ + @Px + int getPaddingBottom(); + + /** @return the resolved left padding for the Node */ + @Px + int getPaddingLeft(); + + /** @return the width measurement that generated this LayoutResult */ + int getWidthSpec(); + + /** @return the height measurement that generated this LayoutResult */ + int getHeightSpec(); +} diff --git a/litho-rendercore/src/main/java/com/facebook/rendercore/MountableLayoutResult.java b/litho-rendercore/src/main/java/com/facebook/rendercore/MountableLayoutResult.java index 5057b04a17f..cb56834b8c6 100644 --- a/litho-rendercore/src/main/java/com/facebook/rendercore/MountableLayoutResult.java +++ b/litho-rendercore/src/main/java/com/facebook/rendercore/MountableLayoutResult.java @@ -18,7 +18,7 @@ import androidx.annotation.Nullable; -public class MountableLayoutResult implements Node.LayoutResult { +public class MountableLayoutResult implements LayoutResult { private final @Nullable RenderUnit mRenderUnit; private final int mMeasuredWidth; @@ -69,7 +69,7 @@ public final int getChildrenCount() { } @Override - public final Node.LayoutResult getChildAt(int index) { + public final LayoutResult getChildAt(int index) { throw new IllegalArgumentException("A MountableLayoutResult has no children"); } diff --git a/litho-rendercore/src/main/java/com/facebook/rendercore/Node.java b/litho-rendercore/src/main/java/com/facebook/rendercore/Node.java index 6199f7211be..4f3be762207 100644 --- a/litho-rendercore/src/main/java/com/facebook/rendercore/Node.java +++ b/litho-rendercore/src/main/java/com/facebook/rendercore/Node.java @@ -17,8 +17,6 @@ package com.facebook.rendercore; import android.view.View; -import androidx.annotation.Nullable; -import androidx.annotation.Px; /** * Represents a single node in a RenderCore Tree. A Node has children, base layout information, and @@ -47,66 +45,4 @@ public interface Node { * @param heightSpec a measure spec for the height in the format of {@link View.MeasureSpec} */ LayoutResult calculateLayout(LayoutContext context, int widthSpec, int heightSpec); - - /** - * Represents the result of a Layout pass. A LayoutResult has a reference to its originating Node - * and all the layout information needed to position the content of such Node. - */ - interface LayoutResult { - - /** @return the RenderUnit that should be rendered by this layout result. */ - @Nullable - RenderUnit getRenderUnit(); - - /** - * @return layout specific data that was generated during the layout pass that created this - * LayoutResult. - */ - @Nullable - Object getLayoutData(); - - /** @return the number of children of this LayoutResult. */ - int getChildrenCount(); - - /** @return the LayoutResult for the given child index */ - LayoutResult getChildAt(int index); - - /** @return the resolved X position for the Node */ - @Px - int getXForChildAtIndex(int index); - - /** @return the resolved Y position for the Node */ - @Px - int getYForChildAtIndex(int index); - - /** @return the resolved width for the Node */ - @Px - int getWidth(); - - /** @return the resolved height for the Node */ - @Px - int getHeight(); - - /** @return the resolved top padding for the Node */ - @Px - int getPaddingTop(); - - /** @return the resolved right padding for the Node */ - @Px - int getPaddingRight(); - - /** @return the resolved bottom padding for the Node */ - @Px - int getPaddingBottom(); - - /** @return the resolved left padding for the Node */ - @Px - int getPaddingLeft(); - - /** @return the width measurement that generated this LayoutResult */ - int getWidthSpec(); - - /** @return the height measurement that generated this LayoutResult */ - int getHeightSpec(); - } } diff --git a/litho-rendercore/src/main/java/com/facebook/rendercore/Reducer.java b/litho-rendercore/src/main/java/com/facebook/rendercore/Reducer.java index 40d9f80be34..ed41ce85cbf 100644 --- a/litho-rendercore/src/main/java/com/facebook/rendercore/Reducer.java +++ b/litho-rendercore/src/main/java/com/facebook/rendercore/Reducer.java @@ -20,7 +20,6 @@ import android.graphics.Rect; import android.util.Pair; import androidx.annotation.Nullable; -import com.facebook.rendercore.Node.LayoutResult; import com.facebook.rendercore.extensions.LayoutResultVisitor; import com.facebook.rendercore.extensions.RenderCoreExtension; import java.util.ArrayList; diff --git a/litho-rendercore/src/main/java/com/facebook/rendercore/RenderResult.java b/litho-rendercore/src/main/java/com/facebook/rendercore/RenderResult.java index 50bf95f1bf7..f68f8683181 100644 --- a/litho-rendercore/src/main/java/com/facebook/rendercore/RenderResult.java +++ b/litho-rendercore/src/main/java/com/facebook/rendercore/RenderResult.java @@ -103,8 +103,7 @@ public static RenderResult layout( RenderCoreSystrace.beginSection("RC Layout"); - final Node.LayoutResult layoutResult = - node.calculateLayout(layoutContext, widthSpec, heightSpec); + final LayoutResult layoutResult = node.calculateLayout(layoutContext, widthSpec, heightSpec); RenderCoreSystrace.endSection(); RenderCoreSystrace.beginSection("RC Reduce"); @@ -119,7 +118,7 @@ public static RenderResult layout( public static RenderResult create( final LayoutContext c, final Node node, - final Node.LayoutResult layoutResult, + final LayoutResult layoutResult, final int widthSpec, final int heightSpec, final @Nullable State state) { diff --git a/litho-rendercore/src/main/java/com/facebook/rendercore/extensions/LayoutResultVisitor.java b/litho-rendercore/src/main/java/com/facebook/rendercore/extensions/LayoutResultVisitor.java index e44ab88a999..209f8bcea15 100644 --- a/litho-rendercore/src/main/java/com/facebook/rendercore/extensions/LayoutResultVisitor.java +++ b/litho-rendercore/src/main/java/com/facebook/rendercore/extensions/LayoutResultVisitor.java @@ -18,7 +18,7 @@ import android.graphics.Rect; import androidx.annotation.Nullable; -import com.facebook.rendercore.Node.LayoutResult; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.RenderTreeNode; /** diff --git a/litho-rendercore/src/main/java/com/facebook/rendercore/extensions/RenderCoreExtension.java b/litho-rendercore/src/main/java/com/facebook/rendercore/extensions/RenderCoreExtension.java index b2abdcd6e15..31577b694b6 100644 --- a/litho-rendercore/src/main/java/com/facebook/rendercore/extensions/RenderCoreExtension.java +++ b/litho-rendercore/src/main/java/com/facebook/rendercore/extensions/RenderCoreExtension.java @@ -21,9 +21,9 @@ import android.view.ViewGroup; import androidx.annotation.Nullable; import com.facebook.rendercore.Host; +import com.facebook.rendercore.LayoutResult; import com.facebook.rendercore.MountDelegate; import com.facebook.rendercore.MountDelegateTarget; -import com.facebook.rendercore.Node.LayoutResult; import com.facebook.rendercore.RenderCoreExtensionHost; import com.facebook.rendercore.RenderCoreSystrace; import com.facebook.rendercore.Systracer; diff --git a/website/static/javadoc/allclasses-frame.html b/website/static/javadoc/allclasses-frame.html index 8014ef48807..7c7a3df7d2d 100644 --- a/website/static/javadoc/allclasses-frame.html +++ b/website/static/javadoc/allclasses-frame.html @@ -529,7 +529,7 @@

All Classes

  • NestedTreeHolderResult
  • NestedTreeYogaLayoutProps
  • Node
  • -
  • Node.LayoutResult
  • +
  • LayoutResult
  • NodeCanFinish
  • NodeConfig
  • NodeConfig.InternalYogaNodeFactory
  • diff --git a/website/static/javadoc/allclasses-noframe.html b/website/static/javadoc/allclasses-noframe.html index 0882a496d4f..8ee2c535bc4 100644 --- a/website/static/javadoc/allclasses-noframe.html +++ b/website/static/javadoc/allclasses-noframe.html @@ -529,7 +529,7 @@

    All Classes

  • NestedTreeHolderResult
  • NestedTreeYogaLayoutProps
  • Node
  • -
  • Node.LayoutResult
  • +
  • LayoutResult
  • NodeCanFinish
  • NodeConfig
  • NodeConfig.InternalYogaNodeFactory
  • diff --git a/website/static/javadoc/com/facebook/litho/LithoLayoutData.html b/website/static/javadoc/com/facebook/litho/LithoLayoutData.html index db77d44a87a..b8402932f84 100644 --- a/website/static/javadoc/com/facebook/litho/LithoLayoutData.html +++ b/website/static/javadoc/com/facebook/litho/LithoLayoutData.html @@ -107,8 +107,8 @@

    Class LithoLayoutData

    extends java.lang.Object
    This object will host the data associated with the component which is generated during the measure pass, for example: the InterStagePropsContainer, and the LayoutOutput.UpdateState. It - will be created in Node.LayoutResult#calculateLayout(LayoutContext, int, int). This - object will be returned by Node.LayoutResult#getLayoutData(), then written to the layout + will be created in LayoutResult#calculateLayout(LayoutContext, int, int). This + object will be returned by LayoutResult#getLayoutData(), then written to the layout data in RenderTreeNode during reduce.
    diff --git a/website/static/javadoc/com/facebook/litho/LithoLayoutResult.html b/website/static/javadoc/com/facebook/litho/LithoLayoutResult.html index 64309a16d71..c5f3c11d622 100644 --- a/website/static/javadoc/com/facebook/litho/LithoLayoutResult.html +++ b/website/static/javadoc/com/facebook/litho/LithoLayoutResult.html @@ -109,7 +109,7 @@

    Class LithoLayoutResult

  • All Implemented Interfaces:
    -
    ComponentLayout, Node.LayoutResult
    +
    ComponentLayout, LayoutResult
    Direct Known Subclasses:
    @@ -119,8 +119,8 @@

    Class LithoLayoutResult


    public class LithoLayoutResult
     extends java.lang.Object
    -implements ComponentLayout, Node.LayoutResult
    -
    This is the default implementation of a Node.LayoutResult for Litho. This holds a reference to +implements ComponentLayout, LayoutResult +
    This is the default implementation of a LayoutResult for Litho. This holds a reference to the LithoNode which created it, its YogaNode, and a list of its children.
  • @@ -521,7 +521,7 @@

    getWidth

    Specified by:
    getWidth in interface ComponentLayout
    Specified by:
    -
    getWidth in interface Node.LayoutResult
    +
    getWidth in interface LayoutResult
    Returns:
    the resolved width for the Node
    @@ -538,7 +538,7 @@

    getHeight

    Specified by:
    getHeight in interface ComponentLayout
    Specified by:
    -
    getHeight in interface Node.LayoutResult
    +
    getHeight in interface LayoutResult
    Returns:
    the resolved height for the Node
    @@ -555,7 +555,7 @@

    getPaddingTop

    Specified by:
    getPaddingTop in interface ComponentLayout
    Specified by:
    -
    getPaddingTop in interface Node.LayoutResult
    +
    getPaddingTop in interface LayoutResult
    Returns:
    the resolved top padding for the Node
    @@ -572,7 +572,7 @@

    getPaddingRight

    Specified by:
    getPaddingRight in interface ComponentLayout
    Specified by:
    -
    getPaddingRight in interface Node.LayoutResult
    +
    getPaddingRight in interface LayoutResult
    Returns:
    the resolved right padding for the Node
    @@ -589,7 +589,7 @@

    getPaddingBottom

    Specified by:
    getPaddingBottom in interface ComponentLayout
    Specified by:
    -
    getPaddingBottom in interface Node.LayoutResult
    +
    getPaddingBottom in interface LayoutResult
    Returns:
    the resolved bottom padding for the Node
    @@ -606,7 +606,7 @@

    getPaddingLeft

    Specified by:
    getPaddingLeft in interface ComponentLayout
    Specified by:
    -
    getPaddingLeft in interface Node.LayoutResult
    +
    getPaddingLeft in interface LayoutResult
    Returns:
    the resolved left padding for the Node
    @@ -621,7 +621,7 @@

    getWidthSpec

    public int getWidthSpec()
    Specified by:
    -
    getWidthSpec in interface Node.LayoutResult
    +
    getWidthSpec in interface LayoutResult
    Returns:
    the width measurement that generated this LayoutResult
    @@ -636,7 +636,7 @@

    getHeightSpec

    public int getHeightSpec()
    Specified by:
    -
    getHeightSpec in interface Node.LayoutResult
    +
    getHeightSpec in interface LayoutResult
    Returns:
    the height measurement that generated this LayoutResult
    @@ -880,7 +880,7 @@

    getRenderUnit

    public LithoRenderUnit getRenderUnit()
    Specified by:
    -
    getRenderUnit in interface Node.LayoutResult
    +
    getRenderUnit in interface LayoutResult
    Returns:
    the RenderUnit that should be rendered by this layout result.
    @@ -941,7 +941,7 @@

    getLayoutData

    public java.lang.Object getLayoutData()
    Specified by:
    -
    getLayoutData in interface Node.LayoutResult
    +
    getLayoutData in interface LayoutResult
    Returns:
    layout specific data that was generated during the layout pass that created this LayoutResult.
    @@ -966,7 +966,7 @@

    getChildrenCount

    public int getChildrenCount()
    Specified by:
    -
    getChildrenCount in interface Node.LayoutResult
    +
    getChildrenCount in interface LayoutResult
    Returns:
    the number of children of this LayoutResult.
    @@ -981,7 +981,7 @@

    getChildAt

    public LithoLayoutResult getChildAt(int i)
    Specified by:
    -
    getChildAt in interface Node.LayoutResult
    +
    getChildAt in interface LayoutResult
    Returns:
    the LayoutResult for the given child index
    @@ -996,7 +996,7 @@

    getXForChildAtIndex

    public int getXForChildAtIndex(int index)
    Specified by:
    -
    getXForChildAtIndex in interface Node.LayoutResult
    +
    getXForChildAtIndex in interface LayoutResult
    Returns:
    the resolved X position for the Node
    @@ -1011,7 +1011,7 @@

    getYForChildAtIndex

    public int getYForChildAtIndex(int index)
    Specified by:
    -
    getYForChildAtIndex in interface Node.LayoutResult
    +
    getYForChildAtIndex in interface LayoutResult
    Returns:
    the resolved Y position for the Node
    diff --git a/website/static/javadoc/com/facebook/litho/LithoNode.html b/website/static/javadoc/com/facebook/litho/LithoNode.html index abbd7f7b3b0..aa0ec45b08c 100644 --- a/website/static/javadoc/com/facebook/litho/LithoNode.html +++ b/website/static/javadoc/com/facebook/litho/LithoNode.html @@ -138,7 +138,7 @@

    Nested Class Summary

    Nested classes/interfaces inherited from interface com.facebook.rendercore.Node

    -Node.LayoutResult +LayoutResult diff --git a/website/static/javadoc/com/facebook/litho/NestedTreeHolder.html b/website/static/javadoc/com/facebook/litho/NestedTreeHolder.html index 480ac8386a3..36f03249ce0 100644 --- a/website/static/javadoc/com/facebook/litho/NestedTreeHolder.html +++ b/website/static/javadoc/com/facebook/litho/NestedTreeHolder.html @@ -141,7 +141,7 @@

    Nested Class Summary

    Nested classes/interfaces inherited from interface com.facebook.rendercore.Node

    -Node.LayoutResult +LayoutResult diff --git a/website/static/javadoc/com/facebook/litho/NestedTreeHolderResult.html b/website/static/javadoc/com/facebook/litho/NestedTreeHolderResult.html index f89a9e50306..f6add5f1ae1 100644 --- a/website/static/javadoc/com/facebook/litho/NestedTreeHolderResult.html +++ b/website/static/javadoc/com/facebook/litho/NestedTreeHolderResult.html @@ -114,7 +114,7 @@

    Class NestedTreeHolderRes
  • All Implemented Interfaces:
    -
    ComponentLayout, Node.LayoutResult
    +
    ComponentLayout, LayoutResult


    diff --git a/website/static/javadoc/com/facebook/litho/package-summary.html b/website/static/javadoc/com/facebook/litho/package-summary.html index ae6fe9fe495..abdc8a18f55 100644 --- a/website/static/javadoc/com/facebook/litho/package-summary.html +++ b/website/static/javadoc/com/facebook/litho/package-summary.html @@ -926,7 +926,7 @@

    Package com.facebook.litho

    LithoLayoutResult -
    This is the default implementation of a Node.LayoutResult for Litho.
    +
    This is the default implementation of a LayoutResult for Litho.
    diff --git a/website/static/javadoc/com/facebook/litho/package-tree.html b/website/static/javadoc/com/facebook/litho/package-tree.html index 8e156b9d507..22c8dc67b07 100644 --- a/website/static/javadoc/com/facebook/litho/package-tree.html +++ b/website/static/javadoc/com/facebook/litho/package-tree.html @@ -220,7 +220,7 @@

    Class Hierarchy

  • com.facebook.litho.LithoLayoutContextExtraData (implements com.facebook.rendercore.LayoutContextExtraData<T>)
  • com.facebook.litho.LithoLayoutContextExtraData.LithoLayoutExtraData
  • com.facebook.litho.LithoLayoutData
  • -
  • com.facebook.litho.LithoLayoutResult (implements com.facebook.litho.ComponentLayout, com.facebook.rendercore.Node.LayoutResult) +
  • com.facebook.litho.LithoLayoutResult (implements com.facebook.litho.ComponentLayout, com.facebook.rendercore.LayoutResult) diff --git a/website/static/javadoc/com/facebook/rendercore/LayoutCache.html b/website/static/javadoc/com/facebook/rendercore/LayoutCache.html index a2875930d1e..1b9cf8430bb 100644 --- a/website/static/javadoc/com/facebook/rendercore/LayoutCache.html +++ b/website/static/javadoc/com/facebook/rendercore/LayoutCache.html @@ -155,7 +155,7 @@

    Method Summary

    get(long uniqueId)  -Node.LayoutResult +LayoutResult get(Node<?> node)  @@ -169,8 +169,8 @@

    Method Summary

    void -put(Node<?> node, - Node.LayoutResult layout)  +put(Node<?> node, + LayoutResult layout) 
  • @@ -213,7 +213,7 @@

    Method Summary

    -Node.LayoutResult +LayoutResult calculateLayout(RenderState.LayoutContext context, int widthSpec, int heightSpec) @@ -383,7 +383,7 @@

    getRenderType

    • calculateLayout

      -
      public final Node.LayoutResult calculateLayout(RenderState.LayoutContext context,
      +
      public final LayoutResult calculateLayout(RenderState.LayoutContext context,
                                                      int widthSpec,
                                                      int heightSpec)
      Description copied from interface: Node
      diff --git a/website/static/javadoc/com/facebook/rendercore/MountableLayoutResult.html b/website/static/javadoc/com/facebook/rendercore/MountableLayoutResult.html index a812f75b243..23c814e95da 100644 --- a/website/static/javadoc/com/facebook/rendercore/MountableLayoutResult.html +++ b/website/static/javadoc/com/facebook/rendercore/MountableLayoutResult.html @@ -109,13 +109,13 @@

      Class MountableLayoutResul
    • All Implemented Interfaces:
      -
      Node.LayoutResult
      +
      LayoutResult


      public class MountableLayoutResult
       extends java.lang.Object
      -implements Node.LayoutResult
      +implements LayoutResult
    @@ -164,7 +164,7 @@

    Method Summary

    Method and Description -Node.LayoutResult +LayoutResult getChildAt(int index)  @@ -285,7 +285,7 @@

    getRenderUnit

    public final RenderUnit getRenderUnit()
    Specified by:
    -
    getRenderUnit in interface Node.LayoutResult
    +
    getRenderUnit in interface LayoutResult
    Returns:
    the RenderUnit that should be rendered by this layout result.
    @@ -300,7 +300,7 @@

    getLayoutData

    public final java.lang.Object getLayoutData()
    Specified by:
    -
    getLayoutData in interface Node.LayoutResult
    +
    getLayoutData in interface LayoutResult
    Returns:
    layout specific data that was generated during the layout pass that created this LayoutResult.
    @@ -316,7 +316,7 @@

    getChildrenCount

    public final int getChildrenCount()
    Specified by:
    -
    getChildrenCount in interface Node.LayoutResult
    +
    getChildrenCount in interface LayoutResult
    Returns:
    the number of children of this LayoutResult.
    @@ -328,10 +328,10 @@

    getChildrenCount

    • getChildAt

      -
      public final Node.LayoutResult getChildAt(int index)
      +
      public final LayoutResult getChildAt(int index)
      Specified by:
      -
      getChildAt in interface Node.LayoutResult
      +
      getChildAt in interface LayoutResult
      Returns:
      the LayoutResult for the given child index
      @@ -346,7 +346,7 @@

      getXForChildAtIndex

      public final int getXForChildAtIndex(int index)
      Specified by:
      -
      getXForChildAtIndex in interface Node.LayoutResult
      +
      getXForChildAtIndex in interface LayoutResult
      Returns:
      the resolved X position for the Node
      @@ -361,7 +361,7 @@

      getYForChildAtIndex

      public final int getYForChildAtIndex(int index)
      Specified by:
      -
      getYForChildAtIndex in interface Node.LayoutResult
      +
      getYForChildAtIndex in interface LayoutResult
      Returns:
      the resolved Y position for the Node
      @@ -376,7 +376,7 @@

      getWidth

      public final int getWidth()
      Specified by:
      -
      getWidth in interface Node.LayoutResult
      +
      getWidth in interface LayoutResult
      Returns:
      the resolved width for the Node
      @@ -391,7 +391,7 @@

      getHeight

      public final int getHeight()
      Specified by:
      -
      getHeight in interface Node.LayoutResult
      +
      getHeight in interface LayoutResult
      Returns:
      the resolved height for the Node
      @@ -406,7 +406,7 @@

      getPaddingTop

      public int getPaddingTop()
      Specified by:
      -
      getPaddingTop in interface Node.LayoutResult
      +
      getPaddingTop in interface LayoutResult
      Returns:
      the resolved top padding for the Node
      @@ -421,7 +421,7 @@

      getPaddingRight

      public int getPaddingRight()
      Specified by:
      -
      getPaddingRight in interface Node.LayoutResult
      +
      getPaddingRight in interface LayoutResult
      Returns:
      the resolved right padding for the Node
      @@ -436,7 +436,7 @@

      getPaddingBottom

      public int getPaddingBottom()
      Specified by:
      -
      getPaddingBottom in interface Node.LayoutResult
      +
      getPaddingBottom in interface LayoutResult
      Returns:
      the resolved bottom padding for the Node
      @@ -451,7 +451,7 @@

      getPaddingLeft

      public int getPaddingLeft()
      Specified by:
      -
      getPaddingLeft in interface Node.LayoutResult
      +
      getPaddingLeft in interface LayoutResult
      Returns:
      the resolved left padding for the Node
      @@ -466,7 +466,7 @@

      getWidthSpec

      public int getWidthSpec()
      Specified by:
      -
      getWidthSpec in interface Node.LayoutResult
      +
      getWidthSpec in interface LayoutResult
      Returns:
      the width measurement that generated this LayoutResult
      @@ -481,7 +481,7 @@

      getHeightSpec

      public int getHeightSpec()
      Specified by:
      -
      getHeightSpec in interface Node.LayoutResult
      +
      getHeightSpec in interface LayoutResult
      Returns:
      the height measurement that generated this LayoutResult
      diff --git a/website/static/javadoc/com/facebook/rendercore/Node.LayoutResult.html b/website/static/javadoc/com/facebook/rendercore/Node.LayoutResult.html index 7a2b012eb6a..ebb0c553f91 100644 --- a/website/static/javadoc/com/facebook/rendercore/Node.LayoutResult.html +++ b/website/static/javadoc/com/facebook/rendercore/Node.LayoutResult.html @@ -3,7 +3,7 @@ -Node.LayoutResult +LayoutResult @@ -12,7 +12,7 @@