fix: [planning-design] 올가미 선택 동작 안 되는 문제 수정

This commit is contained in:
김보곤
2026-03-08 00:29:01 +09:00
parent 7785dfed98
commit ff373c719c

View File

@@ -1530,7 +1530,7 @@
@mousedown="sbCanvasMouseDown($event)" @mousedown="sbCanvasMouseDown($event)"
@mousemove="sbCanvasMouseMove($event)" @mousemove="sbCanvasMouseMove($event)"
@mouseup="sbCanvasMouseUp($event)" @mouseup="sbCanvasMouseUp($event)"
@click.self="sbSelectedBlock = null; sbMultiSelected = []" @click.self="if(!_sbLassoDone){ sbSelectedBlock = null; sbMultiSelected = []; } _sbLassoDone = false;"
style="min-height: 600px;"> style="min-height: 600px;">
{{-- Lasso rectangle --}} {{-- Lasso rectangle --}}
<div class="sb-lasso-rect" x-show="_sbLasso" x-cloak <div class="sb-lasso-rect" x-show="_sbLasso" x-cloak
@@ -2000,6 +2000,7 @@ function planningCanvas() {
_sbMenuResize: null, _sbMenuResize: null,
sbMultiSelected: [], // 다중 선택 블록 id 배열 sbMultiSelected: [], // 다중 선택 블록 id 배열
_sbLasso: null, // { startX, startY, rx, ry, rw, rh } _sbLasso: null, // { startX, startY, rx, ry, rw, rh }
_sbLassoDone: false, // 올가미 완료 직후 click.self 방지 플래그
_sbMultiDrag: null, // { startX, startY, origins: [{id, x, y}] } _sbMultiDrag: null, // { startX, startY, origins: [{id, x, y}] }
_sbHistory: [], _sbHistory: [],
_sbHistoryIdx: -1, _sbHistoryIdx: -1,
@@ -3066,8 +3067,9 @@ function planningCanvas() {
}, },
sbCanvasMouseDown(e) { sbCanvasMouseDown(e) {
// 빈 캔버스 클릭 시 올가미 시작 // 블록이나 리사이즈 핸들 위가 아니면 올가미 시작
if (e.target === this.$refs.sbCanvas || e.target.classList.contains('sb-blk-empty-area')) { const onBlock = e.target.closest('.sb-block');
if (!onBlock) {
this.sbEditingBlock = null; this.sbEditingBlock = null;
const rect = this.$refs.sbCanvas.getBoundingClientRect(); const rect = this.$refs.sbCanvas.getBoundingClientRect();
const scrollL = this.$refs.sbCanvas.scrollLeft; const scrollL = this.$refs.sbCanvas.scrollLeft;
@@ -3156,6 +3158,7 @@ function planningCanvas() {
} }
} }
this._sbLasso = null; this._sbLasso = null;
this._sbLassoDone = true;
return; return;
} }
// 다중 드래그 완료 // 다중 드래그 완료