실행 취소 다시 실행 기능을 사용하는 Electron 기반 응용 프로그램을 만들고 싶습니다. 이제 메뉴에 실행 취소/다시 실행 항목을 넣을 수 있으며 역할에 따라 이미 전자에 있습니다. role: undo
+ role: redo
. 보이는 바와 같이 herewebContents.undo()의 전자는 무엇입니까?
그래서 내가 이미 알게 된 것은 아마 '실행 취소'-MenuItem을 클릭하면 webContents.undo()이 호출된다는 것입니다.
지금 내 질문에이 실행 취소가 호출 될 때 정확히 무엇이 발생합니까? 어떻게 든 리스너를 등록하고 직접 실행 취소 할 수 있습니까? 아니면 '실행 취소'역할을 사용하지 않고 사용자 정의 메뉴 항목을 정의하고 모든 것을 직접 처리하는 것이 가장 좋습니다.
아마도 전자 크롬 브라우저가 이러한 실행 취소 이벤트를 처리하는 방법과이를 catch하고 실행 취소/다시 실행에서 발생해야하는 내 자신의 동작을 정의 할 수있는 방법에 대한 사양이있을 수 있습니다.
내가 실행 취소 이벤트를 처리하는 텍스트 영역 /의 contentEditable에 전달되는 방식에 여전히 관심이 :
메뉴 항목은 다음과 같이 될 것이다. 아니면 전혀? 나는 왜 그런 역할이 있는지 혼란 스럽지만 아무 쓸모가 없다. – patsimm
나는 textarea/contenteditable에 어떻게 전달되었는지 모르겠지만 어떤 종류의 코드를 실행 취소해야 하는가? – Mike
그래서 나는 진짜 문제입니다, 나는 자신이 구현 한 실행 취소/다시 실행을 사용해야하는 하나의 contenteditable을 가지고 있습니다. 다른 요소는 표준 브라우저 구현을 사용할 수 있습니다. 그러나 contenteditable을 포함한 모든 요소는 키보드 단축키를 청취해야합니다 (이것은 문제가되지 않습니다). 또한 MenuItem을 클릭하는 것입니다. 문제가 시작됩니다. 어디에서나 표준 구현을 사용할 수도 있고 모든 것을 직접 실행 취소/다시 실행 할 수도 있습니다. Theres 믹스를 할 수있는 방법은 없습니다 ... – patsimm