"label은 절대 안 바뀌는 창의 이름이야. title은 언제든 갈아입는 옷이고."
설정에 미리 적어두는 창
tauri.conf.json의 app.windows 배열은 실행하는 순간부터 존재할 창을 적어두는 자리야. 항목마다 처음 title이랑 크기랑 동작을 정하고 — 무엇보다 label을 정해. 기본 스캐폴드는 label이 main인 창 하나를 줘. 여기 창을 더 적어도 되고(스플래시나 늘 떠 있는 툴바 같은 거) Rust는 한 줄도 안 써도 돼. 걔들은 앱이랑 같이 열려.
label은 신원, title은 보이는 이름
둘을 헷갈리지 마. label은 안정적이고 겹치지 않는 문자열 id야 — main, settings, splash — 절대 안 바뀌고, 모든 API가 창을 찾을 때 쓰는 게 이거야. get_webview_window("settings"), emit_to("settings", …) 전부. title은 타이틀바에 뜨는, 사람이 읽는 글자야. 돌아가는 중에 바뀔 수도 있고 겹칠 수도 있어. 창은 언제나 label로 찾아. title로 찾는 코드는 언젠가 터질 버그야.
설정이냐 코드냐
항상 있는 창(메인 창)은 설정에 적어. 사용자 동작이나 데이터에 따라 생기는 창(파일을 열 때마다 뜨는 문서 창, 부를 때만 나오는 설정 창)은 돌아가는 중에 만들어. 흔한 방식은 main만 설정에 적고 나머지는 Rust에서 만드는 거야. 설정에 창을 적어두되 숨긴 채로 시작했다가 준비되면 show()하는 것도 돼 — 스플래시 띄웠다가 메인으로 넘어가는 흐름에 편해.