UI Headless Runtime API - v1.0.0
    Preparing search index...

    Interface ContextMenuController

    Context Menu controller supporting pointer and keyboard virtual anchors.

    interface ContextMenuController {
        bind(elements: OverlayElements): () => void;
        close(details?: ChangeDetails<OpenChangeReason>): void;
        destroy(): void;
        getSnapshot(): Readonly<TSnapshot>;
        handleContextMenu(event: MouseEvent, content: HTMLElement): () => void;
        handleKeyboardOpen(
            event: KeyboardEvent,
            trigger: HTMLElement,
            content: HTMLElement,
        ): () => void;
        handleKeyDown(event: KeyboardEvent): void;
        off<TKey extends keyof MenuEvents>(
            type: TKey,
            listener: RuntimeEventListener<MenuEvents[TKey]>,
        ): void;
        on<TKey extends keyof MenuEvents>(
            type: TKey,
            listener: RuntimeEventListener<MenuEvents[TKey]>,
        ): Unsubscribe;
        once<TKey extends keyof MenuEvents>(
            type: TKey,
            listener: RuntimeEventListener<MenuEvents[TKey]>,
        ): Unsubscribe;
        open(details?: ChangeDetails<OpenChangeReason>): void;
        registerItem(item: MenuItem, element?: HTMLElement): () => void;
        registerSubmenu(itemId: string, submenu: MenuController): () => void;
        select(id: string, details?: ChangeDetails<MenuSelectReason>): void;
        setActive(id: string | null): void;
        subscribe(listener: SnapshotListener<MenuSnapshot>): Unsubscribe;
        toggle(details?: ChangeDetails<OpenChangeReason>): void;
    }

    Hierarchy (View Summary)

    Index

    Methods

    • Opens at pointer coordinates and prevents the native menu only while active.

      Parameters

      • event: MouseEvent
      • content: HTMLElement

      Returns () => void

    • Opens from Shift+F10 or ContextMenu keyboard activation.

      Parameters

      • event: KeyboardEvent
      • trigger: HTMLElement
      • content: HTMLElement

      Returns () => void