SheetXL - v0.8.0-beta.9+sites.210.e2d420901
    Preparing search index...

    Interface ActivationTracker

    Produces "the current anchor" (resolution leaf) for a CommandResolver and notifies when it changes. The activation strategy, pluggable per container: focus-driven (FocusActivation, region-scoped) or code-driven (ManualActivation).

    interface ActivationTracker {
        attach?(rootElement: Element): RemoveListener;
        getAnchor(): CommandScope | null;
        getElement?(): Element | null;
        subscribe(listener: () => void): RemoveListener;
    }

    Implemented by

    Index
    • Region trackers (e.g. FocusActivation) implement this: start watching rootElement as the region of interest, returning the detach. A CommandAnchorProvider in 'synthetic' key-delivery mode bounds its tracker to the seam element through this — the anchor follows focus within exactly the subtree whose unconsumed keys the seam delivers. Absent on code-driven trackers (ManualActivation).

      Parameters

      • rootElement: Element

      Returns RemoveListener

    • The DOM region this tracker watches, if any (e.g. a FocusActivation's attached root), or null/absent for code-driven trackers (ManualActivation). A CommandResolver uses it to attach keystroke handling on the same element the anchor follows — keybinds in lockstep with focus, no separate provider. subscribe fires when this changes.

      Returns Element | null

    • Fires when the anchor changes — and, for region trackers, when the region attaches/detaches.

      Parameters

      • listener: () => void

      Returns RemoveListener