Skip to content

Commit

Permalink
types of course
Browse files Browse the repository at this point in the history
  • Loading branch information
asturur committed Dec 28, 2024
1 parent 1b6afb3 commit 79a95ca
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 31 deletions.
20 changes: 9 additions & 11 deletions dist/index.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -15244,7 +15244,7 @@ class Canvas extends SelectableCanvas {
* @private
*/
_resetTransformEventData() {
this._multiSelectTarget = this._target = this._pointer = this._absolutePointer = undefined;
this._target = this._pointer = this._absolutePointer = undefined;
}

/**
Expand All @@ -15255,17 +15255,9 @@ class Canvas extends SelectableCanvas {
_cacheTransformEventData(e) {
// reset in order to avoid stale caching
this._resetTransformEventData();
const pointer = this.getViewportPoint(e);
this._pointer = pointer;
this._pointer = this.getViewportPoint(e);
this._absolutePointer = sendPointToPlane(this._pointer, undefined, this.viewportTransform);
this._target = this._currentTransform ? this._currentTransform.target : this.findTarget(e);
// in case we have a multi selection as a target, search additional targets
this._multiSelectTarget = isActiveSelection(this._target) ?
// first search active objects for a target to remove
this.searchPossibleTargets(this._target.getObjects(), pointer) ||
// if not found, search under active selection for a target to add
// `prevActiveObjects` will be searched but we already know they will not be found
this.searchPossibleTargets(this._objects, pointer) : undefined;
}

/**
Expand Down Expand Up @@ -15524,7 +15516,13 @@ class Canvas extends SelectableCanvas {
if (isAS) {
const prevActiveObjects = activeObject.getObjects();
if (target === activeObject) {
target = this._multiSelectTarget;
const pointer = this.getViewportPoint(e);
target =
// first search active objects for a target to remove
this.searchPossibleTargets(prevActiveObjects, pointer) ||
// if not found, search under active selection for a target to add
// `prevActiveObjects` will be searched but we already know they will not be found
this.searchPossibleTargets(this._objects, pointer);
// if nothing is found bail out
if (!target || !target.selectable) {
return false;
Expand Down
2 changes: 1 addition & 1 deletion dist/index.mjs.map

Large diffs are not rendered by default.

20 changes: 9 additions & 11 deletions dist/index.node.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -15300,7 +15300,7 @@ let Canvas$1 = class Canvas extends SelectableCanvas {
* @private
*/
_resetTransformEventData() {
this._multiSelectTarget = this._target = this._pointer = this._absolutePointer = undefined;
this._target = this._pointer = this._absolutePointer = undefined;
}

/**
Expand All @@ -15311,17 +15311,9 @@ let Canvas$1 = class Canvas extends SelectableCanvas {
_cacheTransformEventData(e) {
// reset in order to avoid stale caching
this._resetTransformEventData();
const pointer = this.getViewportPoint(e);
this._pointer = pointer;
this._pointer = this.getViewportPoint(e);
this._absolutePointer = sendPointToPlane(this._pointer, undefined, this.viewportTransform);
this._target = this._currentTransform ? this._currentTransform.target : this.findTarget(e);
// in case we have a multi selection as a target, search additional targets
this._multiSelectTarget = isActiveSelection(this._target) ?
// first search active objects for a target to remove
this.searchPossibleTargets(this._target.getObjects(), pointer) ||
// if not found, search under active selection for a target to add
// `prevActiveObjects` will be searched but we already know they will not be found
this.searchPossibleTargets(this._objects, pointer) : undefined;
}

/**
Expand Down Expand Up @@ -15580,7 +15572,13 @@ let Canvas$1 = class Canvas extends SelectableCanvas {
if (isAS) {
const prevActiveObjects = activeObject.getObjects();
if (target === activeObject) {
target = this._multiSelectTarget;
const pointer = this.getViewportPoint(e);
target =
// first search active objects for a target to remove
this.searchPossibleTargets(prevActiveObjects, pointer) ||
// if not found, search under active selection for a target to add
// `prevActiveObjects` will be searched but we already know they will not be found
this.searchPossibleTargets(this._objects, pointer);
// if nothing is found bail out
if (!target || !target.selectable) {
return false;
Expand Down
2 changes: 1 addition & 1 deletion dist/index.node.mjs.map

Large diffs are not rendered by default.

16 changes: 9 additions & 7 deletions src/EventTypeDefs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -152,10 +152,18 @@ type CanvasModificationEvents = {
'object:modified': ModifiedEvent;
};

interface SimpleEventHandler<T extends Event = TPointerEvent>
extends TEvent<T> {
target?: FabricObject;
multiSelectTarget?: FabricObject;
subTargets: FabricObject[];
}

export interface TPointerEventInfo<E extends TPointerEvent = TPointerEvent>
extends TEvent<E> {
target?: FabricObject;
subTargets?: FabricObject[];
multiSelecttarget?: FabricObject;
subTargets: FabricObject[];
transform?: Transform | null;
/**
* @deprecated
Expand All @@ -173,12 +181,6 @@ export interface TPointerEventInfo<E extends TPointerEvent = TPointerEvent>
viewportPoint: Point;
}

interface SimpleEventHandler<T extends Event = TPointerEvent>
extends TEvent<T> {
target?: FabricObject;
subTargets: FabricObject[];
}

interface InEvent {
previousTarget?: FabricObject;
}
Expand Down
1 change: 1 addition & 0 deletions src/canvas/Canvas.ts
Original file line number Diff line number Diff line change
Expand Up @@ -917,6 +917,7 @@ export class Canvas extends SelectableCanvas implements CanvasOptions {
options: CanvasEvents[`mouse:${T}`] = {
e,
target,
multiSelectTarget: this._multiSelectTarget,
subTargets: targets,
...getEventPoints(this, e),
transform: this._currentTransform,
Expand Down

0 comments on commit 79a95ca

Please sign in to comment.