From e1b97d52f808f933d79e3815317ec49e0d267c89 Mon Sep 17 00:00:00 2001 From: Hiren Kangad Date: Fri, 13 Mar 2026 11:41:03 +0530 Subject: [PATCH] refboard: route crop drag events through viewport --- frontend/src/canvas/CropOverlay.ts | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/frontend/src/canvas/CropOverlay.ts b/frontend/src/canvas/CropOverlay.ts index 1d9fca1..7ce3480 100644 --- a/frontend/src/canvas/CropOverlay.ts +++ b/frontend/src/canvas/CropOverlay.ts @@ -234,22 +234,18 @@ export class CropOverlay extends Container { this._removeDragListeners(); this._boundMove = (ev: FederatedPointerEvent) => this._onMove(ev); this._boundUp = () => this._onUp(); - const stage = this._viewport.parent; - if (stage) { - stage.on('globalpointermove', this._boundMove); - stage.on('pointerup', this._boundUp); - stage.on('pointerupoutside', this._boundUp); - } + this._viewport.on('globalpointermove', this._boundMove); + this._viewport.on('pointerup', this._boundUp); + this._viewport.on('pointerupoutside', this._boundUp); } private _removeDragListeners(): void { - const stage = this._viewport.parent; - if (stage) { - if (this._boundMove) stage.off('globalpointermove', this._boundMove); - if (this._boundUp) { - stage.off('pointerup', this._boundUp); - stage.off('pointerupoutside', this._boundUp); - } + if (this._boundMove) { + this._viewport.off('globalpointermove', this._boundMove); + } + if (this._boundUp) { + this._viewport.off('pointerup', this._boundUp); + this._viewport.off('pointerupoutside', this._boundUp); } this._boundMove = null; this._boundUp = null;