IndirectPointerGestureKt

Added in 1.0.0-alpha01

public final class IndirectPointerGestureKt


Summary

Public methods

static final @NonNull Modifier
onIndirectPointerGesture(
    @NonNull Modifier receiver,
    boolean enabled,
    @NonNull Function0<Unit> onClick,
    @NonNull Function0<Unit> onSwipeForward,
    @NonNull Function0<Unit> onSwipeBackward
)

A Modifier that listens for and detects high-level gestures from an IndirectPointerEvent source.

Public methods

onIndirectPointerGesture

public static final @NonNull Modifier onIndirectPointerGesture(
    @NonNull Modifier receiver,
    boolean enabled,
    @NonNull Function0<Unit> onClick,
    @NonNull Function0<Unit> onSwipeForward,
    @NonNull Function0<Unit> onSwipeBackward
)

A Modifier that listens for and detects high-level gestures from an IndirectPointerEvent source. The component (or one of its descendants) using this modifier must be focused to intercept and process indirect pointer events.

This modifier is designed to be used near the top of the composable hierarchy to handle gestures.

import androidx.compose.foundation.layout.Box
import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.focusTarget
import androidx.xr.glimmer.onIndirectPointerGesture

Box(
    modifier =
        Modifier.onIndirectPointerGesture(
                enabled = true,
                onClick = { /* onClick */ },
                onSwipeForward = { /* onSwipeForward */ },
                onSwipeBackward = { /* onSwipeBackward */ },
            )
            .focusTarget()
) {
    // App()
}
Parameters
boolean enabled

Controls whether gesture detection is active. When false, this modifier has no effect and no callbacks will be invoked.

@NonNull Function0<Unit> onClick

Invoked when a successful click is detected.

@NonNull Function0<Unit> onSwipeForward

Invoked when a successful forward swipe is detected.

@NonNull Function0<Unit> onSwipeBackward

Invoked when a successful backward swipe is detected.