Handles user input events (mouse, touch, keyboard, wheel, gestures) for the Micrio viewer. Translates browser events into camera movements (pan, zoom), dispatches custom Micrio events, and manages interaction states like panning, pinching, and enabled/disabled states. Accessed via micrio.events.

Marcel Duin marcel@micr.io

Properties

enabled: Writable<boolean> = ...

Writable Svelte store indicating if event handling is currently enabled. Set to false during tours or animations.

pinchFactor: number

Current pinch zoom factor relative to the start of the pinch. Undefined when not pinching.

Accessors

  • get $enabled(): boolean
  • Getter for the current value of the enabled store.

    Returns boolean

  • get isNavigating(): boolean
  • Checks if the user is currently interacting with the map via panning, pinching, or wheeling.

    Returns boolean

    True if the user is actively navigating.

Methods

  • Hooks all necessary event listeners based on current settings.

    Returns void

  • Hooks pointer down/move/up listeners for drag panning.

    Returns void

  • Hooks keyboard event listeners.

    Returns void

  • Hooks touch pinch and macOS gesture event listeners.

    Returns void

  • Hooks mouse wheel/scroll event listeners.

    Returns void

  • Hooks zoom-related event listeners (pinch, scroll, double-tap/click).

    Returns void

  • Unhooks all attached event listeners.

    Returns void

  • Unhooks pointer listeners for drag panning.

    Returns void

  • Unhooks keyboard event listeners.

    Returns void

  • Unhooks touch pinch and macOS gesture event listeners.

    Returns void

  • Unhooks mouse wheel/scroll event listeners.

    Returns void

  • Unhooks zoom-related event listeners.

    Returns void