Home / Function/ startScheduledGesture() — react Function Reference

startScheduledGesture() — react Function Reference

Architecture documentation for the startScheduledGesture() function in ReactFiberGestureScheduler.js from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  015188d9_a904_6486_e141_925e70b4305e["startScheduledGesture()"]
  b7b1ea40_3fb9_14f9_c2f9_3be6c48a021b["ReactFiberGestureScheduler.js"]
  015188d9_a904_6486_e141_925e70b4305e -->|defined in| b7b1ea40_3fb9_14f9_c2f9_3be6c48a021b
  f449eddb_9163_b215_5702_8e487e58b346["G()"]
  f449eddb_9163_b215_5702_8e487e58b346 -->|calls| 015188d9_a904_6486_e141_925e70b4305e
  style 015188d9_a904_6486_e141_925e70b4305e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/react-reconciler/src/ReactFiberGestureScheduler.js lines 83–130

export function startScheduledGesture(
  root: FiberRoot,
  gestureTimeline: GestureTimeline,
  gestureOptions: ?GestureOptions,
  transitionTypes: null | TransitionTypes,
): null | ScheduledGesture {
  const rangeStart =
    gestureOptions && gestureOptions.rangeStart != null
      ? gestureOptions.rangeStart
      : getCurrentGestureOffset(gestureTimeline);
  const rangeEnd =
    gestureOptions && gestureOptions.rangeEnd != null
      ? gestureOptions.rangeEnd
      : rangeStart < 50
        ? 100
        : 0;
  let prev = root.pendingGestures;
  while (prev !== null) {
    if (prev.provider === gestureTimeline) {
      // Existing instance found.
      prev.count++;
      // Update the options.
      prev.rangeStart = rangeStart;
      prev.rangeEnd = rangeEnd;
      if (transitionTypes !== null) {
        let scheduledTypes = prev.types;
        if (scheduledTypes === null) {
          scheduledTypes = prev.types = [];
        }
        for (let i = 0; i < transitionTypes.length; i++) {
          const transitionType = transitionTypes[i];
          if (scheduledTypes.indexOf(transitionType) === -1) {
            scheduledTypes.push(transitionType);
          }
        }
      }
      return prev;
    }
    const next = prev.next;
    if (next === null) {
      break;
    }
    prev = next;
  }
  // No scheduled gestures. It must mean nothing for this renderer updated but
  // some other renderer might have updated.
  return null;
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does startScheduledGesture() do?
startScheduledGesture() is a function in the react codebase, defined in packages/react-reconciler/src/ReactFiberGestureScheduler.js.
Where is startScheduledGesture() defined?
startScheduledGesture() is defined in packages/react-reconciler/src/ReactFiberGestureScheduler.js at line 83.
What calls startScheduledGesture()?
startScheduledGesture() is called by 1 function(s): G.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free