Fix some pointer behavior.
This commit is contained in:
parent
9ddbacb4de
commit
292ca0798c
1 changed files with 7 additions and 0 deletions
|
|
@ -575,7 +575,10 @@ gridEl.addEventListener('pointerleave', (e) => {
|
||||||
gridEl.addEventListener('pointerdown', (e) => {
|
gridEl.addEventListener('pointerdown', (e) => {
|
||||||
if (e.button !== 0) return;
|
if (e.button !== 0) return;
|
||||||
|
|
||||||
|
if (e.target.closest('#toolBar')) return;
|
||||||
|
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
gridEl.setPointerCapture(e.pointerId);
|
||||||
|
|
||||||
if (e.target.closest('#toolBar')) return;
|
if (e.target.closest('#toolBar')) return;
|
||||||
|
|
||||||
|
|
@ -608,6 +611,10 @@ gridEl.addEventListener('pointerdown', (e) => {
|
||||||
window.addEventListener('pointerup', (e) => {
|
window.addEventListener('pointerup', (e) => {
|
||||||
if (!currentShape) return;
|
if (!currentShape) return;
|
||||||
|
|
||||||
|
if (gridEl.hasPointerCapture?.(e.pointerId)) {
|
||||||
|
gridEl.releasePointerCapture(e.pointerId);
|
||||||
|
}
|
||||||
|
|
||||||
const { x: snapX, y: snapY } = snapToGrid(e.clientX, e.clientY);
|
const { x: snapX, y: snapY } = snapToGrid(e.clientX, e.clientY);
|
||||||
|
|
||||||
currentShape.x2 = snapX;
|
currentShape.x2 = snapX;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue