Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

코드 편집창에서 저장시 에러 #327

Closed
vulcan9 opened this issue Mar 9, 2024 · 2 comments
Closed

코드 편집창에서 저장시 에러 #327

vulcan9 opened this issue Mar 9, 2024 · 2 comments

Comments

@vulcan9
Copy link
Owner

vulcan9 commented Mar 9, 2024

image

image

이벤트 창에서 코드 편집을 할때 전체창으로 전환한 후 저장할때 에러 발생함 (ctrl+s)

@vulcan9 vulcan9 added the 버그 label Mar 9, 2024
@vulcan9
Copy link
Owner Author

vulcan9 commented Mar 10, 2024

원인

코드 편집창 (전체화면) 저장시 에러 발생

  • 전체창으로 열릴때 성능 향상을 위해 창 뒤쪽 화면은 감추기 상태로 전환함
  • 이때 $destroy 실행으로 데이터가 초기화 되어버림
  • 이벤트 속성창(jjEventBasic), 이벤트 설정 팝업창(jjCodeEditorDialogBox), 코드 편집기(jjEventEditor)가 $destroy 됨
  • 저장시 config.write 호출되면서 초기화된 데이터가 사용됨

event 속성창이 destroy 되면서 나중에 (저장시) 팝업창 콜백 함수에서 에러남
destroy 발생 이유는 전체창으로 전환시 이전 창 닫기 기능 때문임($import)

  • 다음 화면에서 같은 문제 발생함
    • 이벤트 설정 팝업창
    • 텍스트 박스 편집창에서 수정

해결

$import 창 띄울때 두 가지 옵션을 추가함

  • keepLastPopup : 이전창 닫지 않기
  • keepApplicationPower : backgrund 화면($applications.power) 닫지 않기

추가 이슈

  • 편집창에서 편집/저장 작업 후 창 닫지 않고 다시 원래 값으로(롤백) 저장하는 경우 저장안되는 현상 함께 수정함
    • 텍스트 박스 편집창에서 발생
    • 문서 검색 내용 편집창에서 발생

3.3.19 버전(이상)에서 처리(구현) 되었습니다.

@vulcan9
Copy link
Owner Author

vulcan9 commented Mar 15, 2024

수정

keepApplicationPower 옵션은 삭제되었습니다.
또한 팝업창을 띄울때 뒤쪽 화면을 display: none ($applications.power) 시키는 대신 visiblity: hidden 처리 합니다.

  • ng-if ($applications.power)를 사용할때 여러 전체화면 팝업창을 오가는 경우 자주 오히려 성능 저하될 우려가 있습니다.
  • screen zoom 기능이 display: none에 반응하여 잦은 호출이 발생하고 연쇄 효과로 출판하기 팝업창에서 경로 찾기 다이얼로그창이 뜨지 않습니다.

3.3.22 버전(이상)에서 처리(구현) 되었습니다.

@vulcan9 vulcan9 closed this as completed Jun 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant