"켤 때마다 창을 어디 뒀는지 까먹는 데스크톱 앱은 고장 난 것처럼 느껴져 — 아무 문제 없는데도."
제일 작은데 제일 크게 느껴지는 마감
사용자는 앱이 두고 간 그 자리에 다시 열리길 기대해. 같은 위치, 같은 크기로. 이걸 손으로 짜려면(이동이랑 리사이즈를 듣고, 너무 자주 안 쓰게 묶고, 디스크에 쓰고, 시작할 때 읽고, 창이 보이기 전에 적용하고) 은근히 까다롭고 미묘하게 틀리기 쉬워. Tauri엔 딱 이 일만 하는 공식 플러그인 tauri-plugin-window-state가 있어. 창마다 위치랑 크기를 종료할 때 저장하고 다음 실행에 되돌려놔. 알아서.
등록하고 잊어버려
이 플러그인의 아름다움은 등록 말고는 앱 코드가 사실상 0줄이라는 거야. Builder 체인에 한 줄 얹으면 창 생애주기에 알아서 붙어. 짤 command도, 엮을 이벤트도 없어 — 열 때 되돌리고 나갈 때 저장하는 게 그냥 벌어져. 한 가지 일을 잘해서 네가 그걸 다시 만들 필요를 없애주는, 플러그인의 정석이야.
세 표면 규칙 맛보기
이 플러그인을 넣으면 세 군데를 건드리게 되는데, 지금 그 패턴을 알아채두면 plugins 트랙에서 값을 톡톡히 해. Cargo.toml 의존성, lib.rs의 빌더 등록, 그리고 (프론트엔드에 command를 열어주는 플러그인이라면) capabilities 권한. window-state는 대부분 알아서 되는 편인데도 capabilities에 window-state:default로 얼굴을 내밀어. Cinder가 이 플러그인을 딱 그렇게 등록해둬서 창이 제자리에 다시 열려 — 세 표면, 한 가지 동작.