Browse Source

refactor: remove lockedAxis handling from Dragger class for simplified drag logic

pull/6497/head
Carlos 1 year ago
parent
commit
c77ab85a6b
  1. 17
      packages/core/src/utils/Dragger.ts

17
packages/core/src/utils/Dragger.ts

@ -117,7 +117,6 @@ export default class Dragger {
el?: HTMLElement; el?: HTMLElement;
guidesStatic: Guide[]; guidesStatic: Guide[];
guidesTarget: Guide[]; guidesTarget: Guide[];
lockedAxis?: any;
docs: Document[]; docs: Document[];
trgX?: Guide; trgX?: Guide;
trgY?: Guide; trgY?: Guide;
@ -219,20 +218,6 @@ export default class Dragger {
y: currentPos.y - startPointer.y + glDiff.y, y: currentPos.y - startPointer.y + glDiff.y,
}; };
this.lastScrollDiff = resetPos(); this.lastScrollDiff = resetPos();
let { lockedAxis } = this;
// @ts-ignore Lock one axis
if (ev.shiftKey) {
lockedAxis = !lockedAxis && this.detectAxisLock(delta.x, delta.y);
} else {
lockedAxis = null;
}
if (lockedAxis === 'x') {
delta.x = startPointer.x;
} else if (lockedAxis === 'y') {
delta.y = startPointer.y;
}
const moveDelta = (delta: DraggerPosition) => { const moveDelta = (delta: DraggerPosition) => {
xyArr.forEach((co) => (delta[co] = delta[co] * result(opts, 'scale'))); xyArr.forEach((co) => (delta[co] = delta[co] * result(opts, 'scale')));
@ -242,7 +227,6 @@ export default class Dragger {
}; };
const deltaPre = { ...delta }; const deltaPre = { ...delta };
this.currentPointer = currentPos; this.currentPointer = currentPos;
this.lockedAxis = lockedAxis;
this.lastScroll = this.getScrollInfo(); this.lastScroll = this.getScrollInfo();
moveDelta(delta); moveDelta(delta);
@ -351,7 +335,6 @@ export default class Dragger {
const x = cancelled ? 0 : delta.x; const x = cancelled ? 0 : delta.x;
const y = cancelled ? 0 : delta.y; const y = cancelled ? 0 : delta.y;
this.toggleDrag(); this.toggleDrag();
this.lockedAxis = null;
this.move(x, y, true); this.move(x, y, true);
const { onEnd } = this.opts; const { onEnd } = this.opts;
isFunction(onEnd) && onEnd(ev, this, { cancelled }); isFunction(onEnd) && onEnd(ev, this, { cancelled });

Loading…
Cancel
Save