From 1e704cf6171dc0038da659fd43ff122026195dca Mon Sep 17 00:00:00 2001 From: Tw93 Date: Fri, 22 Aug 2025 16:29:30 +0800 Subject: [PATCH] :bug: Solve the problem of window remembering position --- dist/cli.js | 2 +- package-lock.json | 4 ++-- package.json | 2 +- src-tauri/src/lib.rs | 10 ++++++++-- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/dist/cli.js b/dist/cli.js index b7a0e57..0540136 100755 --- a/dist/cli.js +++ b/dist/cli.js @@ -22,7 +22,7 @@ import sharp from 'sharp'; import * as psl from 'psl'; var name = "pake-cli"; -var version = "3.2.12"; +var version = "3.2.13"; var description = "🤱🏻 Turn any webpage into a desktop app with Rust. 🤱🏻 利用 Rust 轻松构建轻量级多端桌面应用。"; var engines = { node: ">=16.0.0" diff --git a/package-lock.json b/package-lock.json index d2ca146..ca8f7ad 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "pake-cli", - "version": "3.2.11", + "version": "3.2.12", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "pake-cli", - "version": "3.2.11", + "version": "3.2.12", "license": "MIT", "dependencies": { "@tauri-apps/api": "^2.8.0", diff --git a/package.json b/package.json index fc5789a..73384eb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "pake-cli", - "version": "3.2.12", + "version": "3.2.13", "description": "🤱🏻 Turn any webpage into a desktop app with Rust. 🤱🏻 利用 Rust 轻松构建轻量级多端桌面应用。", "engines": { "node": ">=16.0.0" diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 0866670..16726a4 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -51,8 +51,14 @@ pub fn run_app() { let window = set_window(app, &pake_config, &tauri_config); set_system_tray(app.app_handle(), show_system_tray).unwrap(); set_global_shortcut(app.app_handle(), activation_shortcut).unwrap(); - // Prevent flickering on the first open. - window.show().unwrap(); + + // Show window after state restoration to prevent position flashing + let window_clone = window.clone(); + tauri::async_runtime::spawn(async move { + tokio::time::sleep(tokio::time::Duration::from_millis(50)).await; + window_clone.show().unwrap(); + }); + Ok(()) }) .on_window_event(move |_window, _event| {