Skip to content

Commit f814bbb

Browse files
authored
Merge pull request #1534 from ChangeSuger/master
fix: 修复选区插件无法触发鼠标事件的问题,同时兼容 Ctrl + 滚轮事件
2 parents cb6759b + 129f101 commit f814bbb

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

packages/core/src/style/index.css

-1
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,6 @@
189189
border: 2px dashed rgba(24, 125, 255, 0.8);
190190
box-shadow: 0px 0px 3px 0px rgba(24, 125, 255, 0.5);
191191
cursor: move;
192-
pointer-events: none;
193192
}
194193
.lf-edge-adjust-point {
195194
cursor: move;

packages/extension/src/components/selection-select/index.ts

+12
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ class SelectionSelect {
5858
this.wrapper = wrapper;
5959
document.addEventListener('mousemove', this.__draw);
6060
document.addEventListener('mouseup', this.__drawOff);
61+
document.addEventListener('wheel', this.__zoom, { passive: false });
6162
});
6263
}
6364
/**
@@ -142,6 +143,17 @@ class SelectionSelect {
142143
});
143144
this.lf.emit('selection:selected', elements);
144145
};
146+
__zoom = (ev: WheelEvent) => {
147+
ev.preventDefault();
148+
const newEvent = new WheelEvent('wheel', {
149+
deltaX: ev.deltaX,
150+
deltaY: ev.deltaY,
151+
clientX: ev.clientX,
152+
clientY: ev.clientY,
153+
ctrlKey: ev.ctrlKey,
154+
});
155+
this.lf.container?.querySelector('.lf-canvas-overlay[name="canvas-overlay"]')?.dispatchEvent(newEvent);
156+
};
145157
open() {
146158
this.__disabled = false;
147159
}

0 commit comments

Comments
 (0)