v0.1.89
v0.1.89 — macOS Tahoe (26.4+) "더블클릭 후 창 무반응" 핫픽스
그러나 ready-to-show / did-finish-load / dom-ready 이벤트 발화 흔적 0
- screencapture 도
could not create image from display— SSH 세션이 GUI 디스플레이 접근 불가 (이건 SSH 한계, ViewWork 문제 아님)
원인 (확정)
- *macOS 26.4 (Tahoe) + Electron 30 (Chromium 124, 2024-04 출시) 호환 이슈**.
- main process / 네트워크 / electron-updater 는 정상 동작
- 그러나 renderer 의 index.html 로드가 완료되지 않아
ready-to-show이벤트가 영원히 안 옴 BrowserWindow({ show: false })+window.once('ready-to-show', () => window.show())만 의존하는 기존 코드는 hidden 상태에 영원히 갇힘
해결 (v0.1.89 핫픽스 — electron/main.ts)
- 5 초 fallback show timer —
ready-to-show가 안 와도 강제로window.show()
setTimeout(() => {
if (!window.isDestroyed() && !window.isVisible()) {
console.warn('[viewwork] fallback show after 5000ms — ready-to-show did not fire');
window.show();
window.focus();
}
}, 5_000);did-fail-load핸들러 — renderer load 실패 시에도 강제 show + 에러 로깅preload-error핸들러 — preload 실패 시 윈도우 표시 (사용자에게 무반응보다 에러 페이지가 나음)did-finish-load/dom-ready정상 흐름 로그 — Tahoe 같은 신 OS 에서 어디서 멈추는지 진단용 마커
파일 변경
- 수정:
electron/main.ts— fallback show timer + did-fail-load / did-finish-load / dom-ready 핸들러, log 추가 - 수정:
package.json0.1.88 → 0.1.89
검증
npx tsc --noEmitexit=0npm run build성공
후속 (v0.1.90+ 또는 v0.2.0)
Electron 30 → Electron 33+ 업그레이드
- — macOS Tahoe 와의 근본적 호환. 큰 작업 (breaking API 검증 필요).
- 현재 v0.1.89 hotfix 는 임시 방편 — 윈도우는 보이지만 renderer 가 못 로드된 상태로 빈 BrowserWindow 일 수 있음. 그 자체가 사용자가 무엇이 잘못됐는지 보는 단서 ("로딩 중" / 흰색 페이지 등).
- --
📦 GitHub 릴리스 노트: v0.1.89