From 7be53ca330ed8fa016d6ce199b8312a3003061b8 Mon Sep 17 00:00:00 2001 From: Gregory Schier Date: Wed, 11 Mar 2026 15:35:54 -0700 Subject: [PATCH] WIP: Add yaak-mac-window to proxy app Co-Authored-By: Claude Opus 4.6 --- Cargo.lock | 1 + crates-tauri/yaak-app-proxy/Cargo.toml | 1 + crates-tauri/yaak-app-proxy/capabilities/default.json | 3 ++- crates-tauri/yaak-app-proxy/src/lib.rs | 3 ++- scripts/vendor-node.cjs | 2 +- scripts/vendor-plugins.cjs | 6 +----- scripts/vendor-protoc.cjs | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a85ee184..d571d9d6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -10310,6 +10310,7 @@ dependencies = [ "tauri", "tauri-build", "tauri-plugin-os", + "yaak-mac-window", "yaak-proxy-lib", "yaak-rpc", "yaak-window", diff --git a/crates-tauri/yaak-app-proxy/Cargo.toml b/crates-tauri/yaak-app-proxy/Cargo.toml index 71ee2751..53aa066b 100644 --- a/crates-tauri/yaak-app-proxy/Cargo.toml +++ b/crates-tauri/yaak-app-proxy/Cargo.toml @@ -17,6 +17,7 @@ log = { workspace = true } serde_json = { workspace = true } tauri = { workspace = true } tauri-plugin-os = "2.3.2" +yaak-mac-window = { workspace = true } yaak-proxy-lib = { workspace = true } yaak-rpc = { workspace = true } yaak-window = { workspace = true } diff --git a/crates-tauri/yaak-app-proxy/capabilities/default.json b/crates-tauri/yaak-app-proxy/capabilities/default.json index 44b13715..dc9bee7e 100644 --- a/crates-tauri/yaak-app-proxy/capabilities/default.json +++ b/crates-tauri/yaak-app-proxy/capabilities/default.json @@ -13,6 +13,7 @@ "core:window:allow-maximize", "core:window:allow-minimize", "core:window:allow-start-dragging", - "core:window:allow-unmaximize" + "core:window:allow-unmaximize", + "yaak-mac-window:default" ] } diff --git a/crates-tauri/yaak-app-proxy/src/lib.rs b/crates-tauri/yaak-app-proxy/src/lib.rs index 1000d4e6..5dcdad9b 100644 --- a/crates-tauri/yaak-app-proxy/src/lib.rs +++ b/crates-tauri/yaak-app-proxy/src/lib.rs @@ -17,6 +17,7 @@ fn rpc( pub fn run() { tauri::Builder::default() .plugin(tauri_plugin_os::init()) + .plugin(yaak_mac_window::init()) .setup(|app| { let data_dir = app.path().app_data_dir().expect("no app data dir"); std::fs::create_dir_all(&data_dir).expect("failed to create app data dir"); @@ -44,7 +45,7 @@ pub fn run() { if let RunEvent::Ready = event { let config = CreateWindowConfig { url: "/", - label: "main", + label: "main_0", title: "Yaak Proxy", inner_size: Some((1000.0, 700.0)), visible: true, diff --git a/scripts/vendor-node.cjs b/scripts/vendor-node.cjs index 92160b3a..ea1960b9 100644 --- a/scripts/vendor-node.cjs +++ b/scripts/vendor-node.cjs @@ -54,7 +54,7 @@ const SHA256_MAP = { const key = `${process.platform}_${process.env.YAAK_TARGET_ARCH ?? process.arch}`; -const destDir = path.join(__dirname, `..`, 'crates-tauri', 'yaak-app', 'vendored', 'node'); +const destDir = path.join(__dirname, `..`, 'crates-tauri', 'yaak-app-client', 'vendored', 'node'); const binDest = path.join(destDir, DST_BIN_MAP[key]); console.log(`Vendoring NodeJS ${NODE_VERSION} for ${key}`); diff --git a/scripts/vendor-plugins.cjs b/scripts/vendor-plugins.cjs index 7527750b..d61307f2 100644 --- a/scripts/vendor-plugins.cjs +++ b/scripts/vendor-plugins.cjs @@ -23,11 +23,7 @@ for (const name of readdirSync(pluginsDir)) { console.log(`Skipping ${name} (external plugin)`); continue; } - const destDir = path.join( - __dirname, - "../crates-tauri/yaak-app-client/vendored/plugins/", - name, - ); + const destDir = path.join( __dirname, "..", 'crates-tauri','yaak-app-client','vendored','plugins', name); mkdirSync(destDir, { recursive: true }); console.log(`Copying ${name} to ${destDir}`); cpSync(path.join(dir, "package.json"), path.join(destDir, "package.json")); diff --git a/scripts/vendor-protoc.cjs b/scripts/vendor-protoc.cjs index 439bb10c..b062cf89 100644 --- a/scripts/vendor-protoc.cjs +++ b/scripts/vendor-protoc.cjs @@ -52,7 +52,7 @@ const SHA256_MAP = { [WIN_ARM]: 'd7a207fb6eec0e4b1b6613be3b7d11905375b6fd1147a071116eb8e9f24ac53b', }; -const dstDir = path.join(__dirname, `..`, 'crates-tauri', 'yaak-app', 'vendored', 'protoc'); +const dstDir = path.join(__dirname, `..`, 'crates-tauri', 'yaak-app-client', 'vendored', 'protoc'); const key = `${process.platform}_${process.env.YAAK_TARGET_ARCH ?? process.arch}`; console.log(`Vendoring protoc ${VERSION} for ${key}`);