Table of Contents
Techlabs Discovery의 숨김 시작 변경
이 문서는 Techlabs Discovery에서 적용한 WebView2 변경을 설명합니다.
원본은 github.com/jchv/go-webview2의 v0.0.0-20260205173254-56598839c808이며, 기준 커밋은 56598839c808입니다. 원본 소스, MIT 라이선스와 WebView2Loader SDK 라이선스를 보존합니다.
창을 숨긴 상태로 시작하기
원본 생성자는 창을 즉시 표시하고 활성화합니다. 창을 만든 뒤 숨기면 잠깐 화면에 나타나는 문제가 있었습니다.
webview.go의 WindowOptions.Hidden 값에 따라 최초 ShowWindow, UpdateWindow, SetFocus 호출을 생략하도록 변경했습니다. 기본값인 false는 원래 동작을 유지합니다.
직원 창은 true로 생성합니다. 트레이에서 열기 전까지 표시하지 않습니다.
Go 모듈의 로컬 replace로 빌드에 고정합니다. 의존성을 갱신할 때 원본 버전과 이 차이를 함께 검토해야 합니다. 실행·설치 아이콘은 프로젝트의 기존 필수 검사로 검증합니다.
창과 WebView의 표시 상태 맞추기
2026-09-29에는 실제 창의 표시·최소화 상태를 WebView controller의 IsVisible과 동기화했습니다. 네이티브 창 생성이 끝나거나 WM_SIZE, WM_SHOWWINDOW를 처리한 뒤 상태를 반영합니다.
창을 표시할 때는 현재 크기와 부모 위치도 전달합니다. WM_SHOWWINDOW는 기본 창 처리 이후 UI 스레드 큐에서 반영합니다. controller 생성 전의 Show와 Hide는 안전하게 반환합니다.
Microsoft ICoreWebView2Controller 안내의 표시·최소화 시 동기화 요구를 따릅니다. Windows 11 / WebView2 153.0.4234.48 PC에서 수정 전 내부 DOM·캡처는 정상이지만 실제 창은 흰색인 현상을 확인했고, 동일 서비스·프로필을 사용한 수정 후 사용자가 정상 표시를 확인했습니다. 프로필 초기화·GPU 비활성화·백신 예외 처리는 하지 않았습니다.
원문: 공개 소스 cedbd06. 문서 갱신일 2026-10-12.