"설정 속 창은 실행할 때 얻는 창이야. 코드 속 창은 네가 정하는 언제든 얻는 창이고."
창 만드는 두 가지 길
창을 tauri.conf.json에 정적으로 선언하거나(시작할 때 열림), Rust에서 WebviewWindowBuilder로 런타임에 만들 수 있어. 정적 경로는 메인 창에 완벽하고, 런타임 경로는 필요할 때 여는 창용이야 — 사용자가 Preferences 클릭하면 뜨는 설정 창, 두 번째 문서 창, 팝업. 둘 다 같은 WebviewWindow 타입을 만들어.
어떤 URL을 보여줘?
창은 뭘 그릴지 알아야 하고, 그게 WebviewUrl이야. WebviewUrl::App("index.html".into())(또는 라우트 경로)는 번들된 프론트엔드를 로드해 — 일반적인 경우. WebviewUrl::External(url)은 창을 원격 사이트로 가리키는데, 조심히 다뤄야 해(원격 콘텐츠 신뢰는 security 트랙에서). WebviewUrl::default()는 앱 진입점을 로드해. 네가 만드는 창은 대부분 라우트랑 App을 써서, 새 창이 네 UI의 특정 화면을 보여줘.
빌더 패턴
WebviewWindowBuilder는 설정을 체이닝해 — title, 크기, resizable — 그리고 .build()로 끝나, 살아있는 창(또는 에러)을 반환해. 빌더를 시작하려면 AppHandle이나 &App이 필요해서, 창 생성은 보통 그걸 손에 쥔 setup, command, 이벤트 핸들러에서 일어나.