dev #930
@ -1,5 +1,5 @@
|
||||
import { useEffect, useState } from 'react'
|
||||
import { useRecoilState, useRecoilValue, useSetRecoilState } from 'recoil'
|
||||
import { useRecoilState, useRecoilValue, useResetRecoilState, useSetRecoilState } from 'recoil'
|
||||
|
||||
import {
|
||||
canvasSettingState,
|
||||
@ -40,12 +40,14 @@ export function useModuleBasicSetting(tabNum) {
|
||||
const { getMessage } = useMessage()
|
||||
const roofDisplay = useRecoilValue(roofDisplaySelector)
|
||||
const [moduleSetupSurface, setModuleSetupSurface] = useRecoilState(moduleSetupSurfaceState)
|
||||
const resetModuleSetupSurface = useResetRecoilState(moduleSetupSurfaceState)
|
||||
const { addCanvasMouseEventListener, initEvent, removeMouseEvent, addTargetMouseEventListener } = useEvent()
|
||||
const { swalFire } = useSwal()
|
||||
const compasDeg = useRecoilValue(compasDegAtom)
|
||||
const { setSurfaceShapePattern } = useRoofFn()
|
||||
const checkedModule = useRecoilValue(checkedModuleState)
|
||||
const [isManualModuleSetup, setIsManualModuleSetup] = useRecoilState(isManualModuleSetupState)
|
||||
|
||||
const [isManualModuleLayoutSetup, setIsManualModuleLayoutSetup] = useRecoilState(isManualModuleLayoutSetupState)
|
||||
const canvasSetting = useRecoilValue(canvasSettingState)
|
||||
const moduleSelectionData = useRecoilValue(moduleSelectionDataState)
|
||||
@ -67,6 +69,7 @@ export function useModuleBasicSetting(tabNum) {
|
||||
|
||||
useEffect(() => {
|
||||
initEvent()
|
||||
resetModuleSetupSurface()
|
||||
return () => {
|
||||
//수동 설치시 초기화
|
||||
removeMouseEvent('mouse:up')
|
||||
|
||||
@ -69,6 +69,15 @@ function _restoreFromJSON(canvas, snapshot, restoreAtomSnapshot, rebuildCanvasAt
|
||||
|
||||
canvas.loadFromJSON(snapshot.canvasJSON, () => {
|
||||
rebuildCanvasAtoms()
|
||||
|
||||
// undo/redo 후 모듈 설치영역이 active 인 채로 남으면
|
||||
// 사용자가 다시 클릭하지 않아도 선택된 것처럼 보여 자동 배치 등 부작용 발생.
|
||||
// 활성 객체가 MODULE_SETUP_SURFACE 이면 선택 해제한다.
|
||||
const active = canvas.getActiveObject()
|
||||
if (active && active.name === POLYGON_TYPE.MODULE_SETUP_SURFACE) {
|
||||
canvas.discardActiveObject()
|
||||
}
|
||||
|
||||
canvas.renderAll()
|
||||
restoreAtomSnapshot(snapshot.atomSnapshot)
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user