aboutsummaryrefslogtreecommitdiff
path: root/src/client/util/DragManager.ts
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2023-11-02 19:30:19 -0400
committerbobzel <zzzman@gmail.com>2023-11-02 19:30:19 -0400
commiteec81f7e0b53395e3e2ea25663a9ea06ec83085d (patch)
treebb10e997cf9d5d0719049723de5728279bf67b0d /src/client/util/DragManager.ts
parent1bba63b1d15cfe76393424a768d2dbc0f0b8cffb (diff)
performance fixes - don't invalidate as much by using reactions in place of computd values; don't make things active when things are dragged unless CanEmbed; fix for linkBox to use reaction.
Diffstat (limited to 'src/client/util/DragManager.ts')
-rw-r--r--src/client/util/DragManager.ts7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/client/util/DragManager.ts b/src/client/util/DragManager.ts
index ea13eaa5b..9d6bd4f60 100644
--- a/src/client/util/DragManager.ts
+++ b/src/client/util/DragManager.ts
@@ -329,7 +329,7 @@ export namespace DragManager {
DocDragData = dragData as DocumentDragData;
const batch = UndoManager.StartBatch(dragUndoName ?? 'document drag');
eles = eles.filter(e => e);
- CanEmbed = dragData.canEmbed || false;
+ SnappingManager.SetCanEmbed(dragData.canEmbed || false);
if (!dragDiv) {
dragDiv = document.createElement('div');
dragDiv.className = 'dragManager-dragDiv';
@@ -455,7 +455,7 @@ export namespace DragManager {
runInAction(() => docsBeingDragged.push(...docsToDrag));
const hideDragShowOriginalElements = (hide: boolean) => {
- dragLabel.style.display = hide && !CanEmbed ? '' : 'none';
+ dragLabel.style.display = hide && !SnappingManager.GetCanEmbed() ? '' : 'none';
!hide && dragElements.map(dragElement => dragElement.parentNode === dragDiv && dragDiv.removeChild(dragElement));
setTimeout(() => eles.forEach(ele => (ele.hidden = hide)));
};
@@ -482,6 +482,7 @@ export namespace DragManager {
SnappingManager.SetIsDragging(false);
if (batch.end() && undo) UndoManager.Undo();
docsBeingDragged.length = 0;
+ SnappingManager.SetCanEmbed(false);
});
var startWindowDragTimer: any;
const moveHandler = (e: PointerEvent) => {
@@ -588,7 +589,7 @@ export namespace DragManager {
altKey: e.altKey,
metaKey: e.metaKey,
ctrlKey: e.ctrlKey,
- embedKey: CanEmbed,
+ embedKey: SnappingManager.GetCanEmbed(),
},
};
target.dispatchEvent(new CustomEvent<DropEvent>('dashPreDrop', dropArgs));