LithoRenderTreeView
An implementation of BaseMountingView that can mount a LayoutState without the need for a ComponentTree
Functions
Litho handles adding/removing views automatically using mount/unmount calls. Manually adding/ removing views will mess up Litho's bookkeeping of added views and cause weird crashes down the line.
Manually adds a View as a child of this ComponentHost for the purposes of testing. **This should only be used for tests as this is not safe and will likely cause weird crashes if used in a production environment**.
Dispatch a visibility events to all the components hosted in this BaseMountingView.
Returns the Drawables associated with this ComponentHost for animations, for example the background Drawable and/or the drawable that otherwise has a transitionKey on it that has caused it to be hosted in this ComponentHost.
This is a helper method to get all the text (as CharSequence) that is contained inside this ComponentHost.
Moves the MountItem associated to oldIndex in the newIndex position. This happens when a LithoView needs to re-arrange the internal order of its items. If an item is already present in newIndex the item is guaranteed to be either unmounted or moved to a different index by subsequent calls to either unmount or moveItem.
Litho handles adding/removing views automatically using mount/unmount calls. Manually adding/ removing views will mess up Litho's bookkeeping of added views and cause weird crashes down the line.
Litho handles adding/removing views automatically using mount/unmount calls. Manually adding/ removing views will mess up Litho's bookkeeping of added views and cause weird crashes down the line.
Litho handles adding/removing views automatically using mount/unmount calls. Manually adding/ removing views will mess up Litho's bookkeeping of added views and cause weird crashes down the line.
Litho handles adding/removing views automatically using mount/unmount calls. Manually adding/ removing views will mess up Litho's bookkeeping of added views and cause weird crashes down the line.
Litho handles adding/removing views automatically using mount/unmount calls. Manually adding/ removing views will mess up Litho's bookkeeping of added views and cause weird crashes down the line.
Litho handles adding/removing views automatically using mount/unmount calls. Manually adding/ removing views will mess up Litho's bookkeeping of added views and cause weird crashes down the line.
Resets the transform pivot of a View to its default state.
Host views implement their own content description handling instead of just delegating to the underlying view framework for performance reasons as the framework sets/resets content description very frequently on host views and the underlying accessibility notifications might cause performance issues. This is safe to do because the framework owns the accessibility state and knows how to update it efficiently.
The usage of this method is not encouraged and it is only being used in the scope of a temporary experiment.
If true, calling setVisibilityHint will delegate to setVisibilityHint and skip mounting if the visibility hint was set to false. You should not need this unless you don't have control over calling setVisibilityHint on the BaseMountingView you own.
Sets the transform pivot of a View - used for scale and rotation transforms - to be centered at the given point, expressed as a percentage of the View's width and height. The default pivot point is (50f, 50f).
Sets view tags on this host.
Deprecated: Consider subscribing the LithoView to a LithoLifecycleOwner instead.
Marked as @Deprecated. setVisibilityHint should be used instead, which by default does not process new mount events while the visibility hint is set to false (skipMountingIfNotVisible should be set to true). This method should only be used to maintain the contract with the usages of setVisibilityHint before `skipMountingIfNotVisible` was made to default to true. All usages should be audited and migrated to setVisibilityHint.
Deprecated: Consider subscribing the BaseMountingView to a LithoLifecycleOwner instead.