Package-level declarations

Types

Link copied to clipboard

BackgroundStyleApplicator is responsible for applying backgrounds, borders, and related effects, to an Android view

Link copied to clipboard
Base class that should be suitable for the majority of subclasses of ViewManager.
Link copied to clipboard
abstract class BaseViewManagerDelegate<T : View, U : BaseViewManager<T, out LayoutShadowNode>>(mViewManager: U) : ViewManagerDelegate<T>

This is a base implementation of ViewManagerDelegate which supports setting properties that every view should support, such as rotation, background color, etc.

Link copied to clipboard

Holds an instance of the current DisplayMetrics so we don't have to thread it through all the classes that need it.

Link copied to clipboard
object FloatUtil
Link copied to clipboard

Abstract base for a Choreographer FrameCallback that should have any RuntimeExceptions it throws handled by the JSExceptionHandler registered if the app is in dev mode.

Link copied to clipboard

An exception caused by JS requesting the UI manager to perform an illegal view operation.

Link copied to clipboard

Interface providing children management API for view managers of classes extending ViewGroup.

Link copied to clipboard
Link copied to clipboard
JSPointerDispatcher handles dispatching pointer events to JS from RootViews.
Link copied to clipboard
JSTouchDispatcher handles dispatching touches to JS from RootViews.
Link copied to clipboard
Supply setters for base view layout properties such as width, height, flex properties, borders, etc.
Link copied to clipboard
data class LengthPercentage(value: Float, val type: LengthPercentageType)
Link copied to clipboard

Provides helper methods for converting transform operations into a matrix and then into a list of translate, scale and rotate commands.

Link copied to clipboard

Shared utility for asserting on MeasureSpecs.

Link copied to clipboard
@NotThreadSafe
open class NativeViewHierarchyManager
Delegate of UIManagerModule that owns the native view hierarchy and mapping between native view names used in JS and corresponding instances of ViewManager.
Link copied to clipboard
Class responsible for optimizing the native view hierarchy while still respecting the final UI product specified by JS.
Link copied to clipboard

Event used to notify JS component about changes of its position or dimensions.

Link copied to clipboard
object PixelUtil

Android dp to pixel manipulation

Link copied to clipboard

Possible values for pointer events that a view and its descendants should receive. See https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events for more info.

Link copied to clipboard
Utility class that handles the addition of a "role" for accessibility to either a View or AccessibilityNodeInfo.
Link copied to clipboard

Some Views may not function if added directly to a ViewGroup that clips them. For example, TTRC markers may rely on onDraw functionality to work properly, and will break if they're clipped out of the View hierarchy for any resaon.

Link copied to clipboard

Interface that should be implemented by View subclasses that support removeClippedSubviews property. When this property is set for the ViewGroup subclass it's responsible for detaching it's child views that are clipped by the view boundaries. Those view boundaries should be determined based on it's parent clipping area and current view's offset in parent and doesn't necessarily reflect the view visible area (in a sense of a value that View.getGlobalVisibleRect may return). In order to determine the clipping rect for current view helper method ReactClippingViewGroupHelper.calculateClippingRect can be used that takes into account parent view settings.

Link copied to clipboard
@NotThreadSafe
open class ReactClippingViewGroupHelper
Provides implementation of common tasks for view and it's view manager supporting property removeClippedSubviews.
Link copied to clipboard

This interface should be implemented by native View subclasses that can represent more than a single react node (e.g. TextView). It is use by touch event emitter for determining the react tag of the inner-view element that was touched.

Link copied to clipboard

This interface should be implemented by native ViewGroup subclasses that can represent more than a single react node. In that case, virtual and non-virtual (mapping to a View) elements can overlap, and TouchTargetHelper may incorrectly dispatch touch event to a wrong element because it prioritizes children over parents.

Link copied to clipboard
class ReactInvalidPropertyException(property: String, value: String, expectedValues: String) : RuntimeException
Link copied to clipboard

Interface that should be implemented by View subclasses that support overflow style. This allows the overflow information to be used by TouchTargetHelper to determine if a View is touchable.

Link copied to clipboard

This interface should be implemented by native View subclasses that support pointer events handling. It is used to find the target View of a touch event.

Link copied to clipboard
interface ReactRoot
Interface for the root native view of a React native application
Link copied to clipboard

Incremental counter for React Root View tag.

Link copied to clipboard
Base node class for representing virtual tree of React nodes.
Link copied to clipboard
Base node class for representing virtual tree of React nodes.
Link copied to clipboard
annotation class ReactStage

The stage of the Surface

Link copied to clipboard
Wrapper for ReadableMap which should be used for styles property map.
Link copied to clipboard

ViewGroup that supports z-index.

Link copied to clipboard
interface RootView

Interface for the root native view of a React native application.

Link copied to clipboard
Link copied to clipboard

Common base class for most of the ViewManagers. It provides support for most common properties through extending BaseViewManager. It also reduces boilerplate by specifying the type of shadow node to be ReactShadowNode and providing default, empty implementation for some of the methods of ViewManager interface.

Link copied to clipboard
class Spacing(defaultValue: Float, spacing: FloatArray)

Class representing CSS spacing (padding, margin, and borders). This is mostly necessary to properly implement interactions and updates for properties like margin, marginLeft, and marginHorizontal.

Link copied to clipboard
interface StateWrapper

This is a wrapper that can be used for passing State objects from Fabric C++ core to platform-specific components in Java. State allows you to break out of uni-directional dataflow by calling updateState, which communicates state back to the C++ layer.

Link copied to clipboard
Wraps ReactContext with the base Context passed into the constructor.
Link copied to clipboard
Class responsible for identifying which react view should handle a given MotionEvent.
Link copied to clipboard
open class TransformHelper
Class providing helper methods for converting transformation list (as accepted by 'transform' view property) into a transformation matrix.
Link copied to clipboard
fun interface UIBlock

A task to execute on the UI View for third party libraries.

Link copied to clipboard
open class UIImplementation
A class that is used to receive React commands from JS and translate them into a shadow node hierarchy that is then mapped to a native view hierarchy.
Link copied to clipboard
open class UIManagerHelper
Helper class for UIManager.
Link copied to clipboard
Native module to allow JS to create and update native Views.
Link copied to clipboard
Helps generate constants map for UIManagerModule by collecting and merging constants from registered view managers.
Link copied to clipboard

Listener used to hook into the UIManager update process.

Link copied to clipboard
This class acts as a buffer for command executed on NativeViewHierarchyManager.
Link copied to clipboard
class ViewAtIndex(val mTag: Int, val mIndex: Int)

Data structure that couples view tag to it's index in parent view. Used for managing children operation.

Link copied to clipboard

Default property values for Views to be shared between Views and ShadowViews.

Link copied to clipboard
Helper to handle implementing ViewGroups with custom drawing order based on z-index.
Link copied to clipboard
Class providing children management API for view managers of classes extending ViewGroup.
Link copied to clipboard
Class responsible for knowing how to create and update catalyst Views of a given type.
Link copied to clipboard

This is an interface that must be implemented by classes that wish to take over the responsibility of setting properties of all views managed by the view manager and executing view commands.

Link copied to clipboard
Link copied to clipboard
Class that stores the mapping between native view name used in JS and the corresponding instance of ViewManager.
Link copied to clipboard

Enables lazy discovery of a specific ViewManager by its name.

Link copied to clipboard

Marker interface to be extended by all code-generated ViewManagerInterface.

Link copied to clipboard
object ViewProps

Keys for props that need to be shared across multiple classes.