public class LayoutState extends Object implements IncrementalMountExtensionInput, VisibilityExtensionInput, TransitionsExtensionInput, EndToEndTestingExtension.EndToEndTestingExtensionInput
LayoutState
is to hold the output of layout calculation. This includes
mountable outputs and visibility outputs. A centerpiece of the class is collectResults(RenderTreeNode, ComponentContext, DebugHierarchy.Node, InternalNode, LayoutState,
DiffNode)
which prepares the before-mentioned outputs based on the provided InternalNode
for later use in MountState
.Modifier and Type | Class and Description |
---|---|
static interface |
LayoutState.CalculateLayoutSource |
public boolean isIncrementalVisibilityEnabled()
VisibilityExtensionInput
isIncrementalVisibilityEnabled
in interface VisibilityExtensionInput
true
only if visibility events should be processed incrementally.protected void clearCachedLayout(Component component)
public int getMountableOutputCount()
getMountableOutputCount
in interface EndToEndTestingExtension.EndToEndTestingExtensionInput
getMountableOutputCount
in interface TransitionsExtensionInput
getMountableOutputCount
in interface IncrementalMountExtensionInput
public RenderTreeNode getMountableOutputAt(int index)
MountDelegateInput
RenderTreeNode
given its absolute position.getMountableOutputAt
in interface EndToEndTestingExtension.EndToEndTestingExtensionInput
getMountableOutputAt
in interface TransitionsExtensionInput
getMountableOutputAt
in interface MountDelegateInput
public AnimatableItem getAnimatableRootItem()
getAnimatableRootItem
in interface TransitionsExtensionInput
public AnimatableItem getAnimatableItem(long id)
getAnimatableItem
in interface TransitionsExtensionInput
public ArrayList<RenderTreeNode> getMountableOutputTops()
getMountableOutputTops
in interface IncrementalMountExtensionInput
public ArrayList<RenderTreeNode> getMountableOutputBottoms()
getMountableOutputBottoms
in interface IncrementalMountExtensionInput
public List<VisibilityOutput> getVisibilityOutputs()
VisibilityExtensionInput
getVisibilityOutputs
in interface VisibilityExtensionInput
public VisibilityModuleInput getVisibilityModuleInput()
VisibilityExtensionInput
getVisibilityModuleInput
in interface VisibilityExtensionInput
public int getTestOutputCount()
getTestOutputCount
in interface EndToEndTestingExtension.EndToEndTestingExtensionInput
public com.facebook.litho.TestOutput getTestOutputAt(int index)
getTestOutputAt
in interface EndToEndTestingExtension.EndToEndTestingExtensionInput
public DiffNode getDiffTree()
public int getComponentTreeId()
getComponentTreeId
in interface TransitionsExtensionInput
ComponentTree
that generated this LayoutState
public InternalNode getLayoutRoot()
public int getPositionForId(long layoutOutputId)
MountDelegateInput
RenderUnit
given its id.getPositionForId
in interface EndToEndTestingExtension.EndToEndTestingExtensionInput
getPositionForId
in interface MountDelegateInput
LayoutOutput
with id layoutOutputId in the LayoutState
list of outputs or -1 if no LayoutOutput
with that id exists in the
LayoutState
public boolean renderUnitWithIdHostsRenderTrees(long id)
renderUnitWithIdHostsRenderTrees
in interface IncrementalMountExtensionInput
public List<Transition> getTransitions()
getTransitions
in interface TransitionsExtensionInput
public Map<TransitionId,OutputUnitsAffinityGroup<AnimatableItem>> getTransitionIdMapping()
getTransitionIdMapping
in interface TransitionsExtensionInput
public OutputUnitsAffinityGroup<AnimatableItem> getAnimatableItemForTransitionId(TransitionId transitionId)
getAnimatableItemForTransitionId
in interface TransitionsExtensionInput
public List<Component> getComponentsNeedingPreviousRenderData()
getComponentsNeedingPreviousRenderData
in interface TransitionsExtensionInput
public List<String> getComponentKeysNeedingPreviousRenderData()
getComponentKeysNeedingPreviousRenderData
in interface TransitionsExtensionInput
public TransitionId getRootTransitionId()
getRootTransitionId
in interface TransitionsExtensionInput
public boolean needsToRerunTransitions()
needsToRerunTransitions
in interface TransitionsExtensionInput
public void setNeedsToRerunTransitions(boolean needsToRerunTransitions)
setNeedsToRerunTransitions
in interface TransitionsExtensionInput
public String getRootComponentName()
getRootComponentName
in interface TransitionsExtensionInput