diff --git a/src/composables/states/appCanvas/arrow/arrowSelectedState.ts b/src/composables/states/appCanvas/arrow/arrowSelectedState.ts index 2c0d0bc4..caca35a8 100644 --- a/src/composables/states/appCanvas/arrow/arrowSelectedState.ts +++ b/src/composables/states/appCanvas/arrow/arrowSelectedState.ts @@ -125,8 +125,11 @@ export function newArrowSelectedState(): AppCanvasState { case "pointerhover": { const nextHitResult = shapeHandler.hitTest(event.data.current, ctx.getScale()); if (shapeHandler.saveHitResult(nextHitResult)) { - boundingHitResult = undefined; ctx.redraw(); + } + + if (nextHitResult) { + boundingHitResult = undefined; return; } @@ -136,6 +139,10 @@ export function newArrowSelectedState(): AppCanvasState { ctx.redraw(); } + if (hitBounding) { + return; + } + return handleIntransientEvent(ctx, event); } case "contextmenu": diff --git a/src/composables/states/appCanvas/arrow/arrowTwoSelectedState.ts b/src/composables/states/appCanvas/arrow/arrowTwoSelectedState.ts index 4a054b6e..9945be4e 100644 --- a/src/composables/states/appCanvas/arrow/arrowTwoSelectedState.ts +++ b/src/composables/states/appCanvas/arrow/arrowTwoSelectedState.ts @@ -13,7 +13,6 @@ import { newResizingState } from "../resizingState"; import { newRotatingState } from "../rotatingState"; import { TwoSidedArrowShape } from "../../../../shapes/twoSidedArrow"; import { newArrowTwoHandler } from "../../../shapeHandlers/arrowTwoHandler"; -import { findBetterShapeAt } from "../../../shapeComposite"; import { newMovingArrowHeadState } from "./movingArrowHeadState"; import { getPatchByLayouts } from "../../../shapeLayoutHandler"; import { newMovingArrowToState } from "./movingArrowToState"; @@ -137,18 +136,12 @@ export function newArrowTwoSelectedState(): AppCanvasState { boundingHitResult = hitBounding; ctx.redraw(); } - if (boundingHitResult) { - ctx.setCursor(); + + if (hitBounding) { return; } - const shapeAtPointer = findBetterShapeAt( - ctx.getShapeComposite(), - event.data.current, - ctx.getShapeComposite().getSelectionScope(targetShape), - ); - ctx.setCursor(shapeAtPointer ? "pointer" : undefined); - return; + return handleIntransientEvent(ctx, event); } case "shape-updated": { if (event.data.keys.has(targetShape.id)) {