fix(gui): hide the window until elevation is resolved, not after
The window used to be visible from launch, so the unprivileged instance's normal window would show, flash while pkexec/osascript asked for the admin password, and only then get replaced by the elevated relaunch's window once it killed this one ~1.2s later — the same mechanism Sabiá already uses under the hood, but with Sabiá's window visible throughout too; Guará's heavier initial UI made the unprivileged flash far more noticeable. tauri.conf.json now starts the window with "visible": false. main.rs shows it explicitly in exactly one of three cases: already elevated (or non-unix, where the OS-level UAC manifest already elevated the process before it started), the relaunch failed and the user needs to see the warning, or this is the already-elevated relaunched instance itself. Only one window is ever shown to the user now. Also fixes a latent bug this surfaced: do_relaunch_elevated only emitted "elevate-failed" from the child-process-exited-nonzero path. If it fails earlier (pkexec/osascript missing, exe path unresolved, log file unwritable) it returns Err directly without emitting anything — with the window now starting hidden, that would have left it hidden forever with no feedback. The setup() closure now emits the same event on that early-Err path too. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VAyr8d7HuAdUGB6aA5xmDD
This commit is contained in:
1 parent
803346469b
commit
5ecf40056f
2 files changed
+38
-9
No files matched your search
@@ -15,7 +15,8 @@
|
||||
"height": 780,
|
||||
"minWidth": 420,
|
||||
"minHeight": 560,
|
||||
"resizable": true
|
||||
"resizable": true,
|
||||
"visible": false
|
||||
}
|
||||
],
|
||||
"security": {
|
||||
|
||||
Reference in new issue
Block a user