IndirectPointerEvent
fun IndirectPointerEvent(
changes: List<IndirectPointerInputChange>,
type: IndirectPointerEventType,
primaryDirectionalMotionAxis: IndirectPointerEventPrimaryDirectionalMotionAxis,
motionEvent: MotionEvent,
): IndirectPointerEvent
Create a IndirectPointerEvent for test use cases. In most cases, you should receive an IndirectPointerEvent from the system through IndirectPointerInputModifierNode.
If you need to test indirect pointer events, use SemanticsNodeInteractionsProvider.performIndirectPointerInput().
Parameters
| changes | A list of IndirectPointerInputChange associated with the event |
| type | Indicates the reason that the IndirectPointerEvent was sent. |
| primaryDirectionalMotionAxis | Primary directional motion axis for testing. |
| motionEvent | The MotionEvent to convert to an IndirectPointerEvent. |
IndirectPointerEvent
@ExperimentalIndirectPointerApi
fun IndirectPointerEvent(
motionEvent: MotionEvent,
primaryDirectionalMotionAxis: IndirectPointerEventPrimaryDirectionalMotionAxis =
IndirectPointerEventPrimaryDirectionalMotionAxis.None,
previousMotionEvent: MotionEvent? = null,
): IndirectPointerEvent
Allows creation of a IndirectPointerEvent from a MotionEvent for cross module testing. IMPORTANT NOTE 1: Primary axis is determined by properties of the InputDevice contained within the MotionEvent. However, when manually creating a MotionEvent, there is no way to set the InputDevice. Therefore, this function allows you to manually set the primary axis for testing. IMPORTANT NOTE 2: Since this is just a test function that doesn't maintain state for previous MotionEvents (like the Android Compose system does), you will need to pass a separate MotionEvent to populate IndirectPointerInputChange's "previous" parameters (time, position, and pressed).
Parameters
| motionEvent | The MotionEvent to convert to an IndirectPointerEvent. |
| primaryDirectionalMotionAxis | Primary directional motion axis for testing. |
| previousMotionEvent | The MotionEvent for previous values (time, position, and pressed). |