private registerInputListeners()

in src/screencast/screencast.ts [103:124]


    private registerInputListeners(): void {
        // Disable context menu on screencast image
        this.screencastImage.addEventListener('contextmenu', event => event.preventDefault());

        for (const eventName of Object.keys(MouseEventMap)) {
            this.screencastImage.addEventListener(eventName, event => {
                const scale = this.screencastImage.offsetWidth / this.screencastImage.naturalWidth * window.devicePixelRatio;
                const mouseEvent = event as MouseEvent;
                if (this.isDeviceTouch() && !this.inspectMode) {
                    this.inputHandler.emitTouchFromMouseEvent(mouseEvent, scale);
                } else if (mouseEvent.button !== 2 /* right click */) {
                    this.inputHandler.emitMouseEvent(mouseEvent, scale);
                }
            });
        }

        for (const eventName of ['keydown', 'keypress']) {
            this.screencastImage.addEventListener(eventName, event => {
                this.inputHandler.emitKeyEvent(event as KeyboardEvent);
            });
        }
    }