Revert "refactor(app): reduce tech debt by eliminating wry fork (#4500)"

This reverts commit dbc64afe
This commit is contained in:
Prospector
2025-10-14 19:55:54 -07:00
parent 8972c9a198
commit 2535156dac
4 changed files with 16 additions and 30 deletions

7
Cargo.lock generated
View File

@@ -9349,8 +9349,6 @@ dependencies = [
"url", "url",
"urlencoding", "urlencoding",
"uuid 1.18.1", "uuid 1.18.1",
"webview2-com",
"windows-core 0.61.2",
] ]
[[package]] [[package]]
@@ -11700,3 +11698,8 @@ dependencies = [
"wasm-bindgen", "wasm-bindgen",
"web-sys", "web-sys",
] ]
[[patch.unused]]
name = "wry"
version = "0.52.1"
source = "git+https://github.com/modrinth/wry?rev=f2ce0b0#f2ce0b0105d9d94f482c4f8ecffb4f3c3c325b40"

View File

@@ -240,6 +240,9 @@ wildcard_dependencies = "warn"
[profile.dev.package.sqlx-macros] [profile.dev.package.sqlx-macros]
opt-level = 3 opt-level = 3
[patch.crates-io]
wry = { git = "https://github.com/modrinth/wry", rev = "f2ce0b0" }
# Optimize for speed and reduce size on release builds # Optimize for speed and reduce size on release builds
[profile.release] [profile.release]
opt-level = "s" # Optimize for binary size opt-level = "s" # Optimize for binary size

View File

@@ -49,10 +49,6 @@ tauri-build = { workspace = true, features = ["codegen"] }
[target.'cfg(target_os = "linux")'.dependencies] [target.'cfg(target_os = "linux")'.dependencies]
tauri-plugin-updater = { workspace = true, optional = true } tauri-plugin-updater = { workspace = true, optional = true }
[target.'cfg(windows)'.dependencies]
webview2-com.workspace = true
windows-core.workspace = true
[features] [features]
# by default Tauri runs in production mode # by default Tauri runs in production mode
# when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL # when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL

View File

@@ -79,6 +79,7 @@ pub async fn init_ads_window<R: Runtime>(
override_shown: bool, override_shown: bool,
) -> crate::api::Result<()> { ) -> crate::api::Result<()> {
use tauri::WebviewUrl; use tauri::WebviewUrl;
const LINK_SCRIPT: &str = include_str!("ads-init.js");
let state = app.state::<RwLock<AdsState>>(); let state = app.state::<RwLock<AdsState>>();
let mut state = state.write().await; let mut state = state.write().await;
@@ -101,42 +102,25 @@ pub async fn init_ads_window<R: Runtime>(
webview.set_position(PhysicalPosition::new(-1000, -1000)); webview.set_position(PhysicalPosition::new(-1000, -1000));
} }
} else if let Some(window) = app.get_window("main") { } else if let Some(window) = app.get_window("main") {
let webview = window.add_child( let _ = window.add_child(
tauri::webview::WebviewBuilder::new( tauri::webview::WebviewBuilder::new(
"ads-window", "ads-window",
WebviewUrl::External( WebviewUrl::External(
AD_LINK.parse().unwrap(), AD_LINK.parse().unwrap(),
), ),
) )
.initialization_script_for_all_frames(include_str!("ads-init.js")) .initialization_script(LINK_SCRIPT)
.user_agent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36") // .initialization_script_for_main_only(LINK_SCRIPT, false)
.zoom_hotkeys_enabled(false) .user_agent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36")
.transparent(true) .zoom_hotkeys_enabled(false)
.on_new_window(|_, _| tauri::webview::NewWindowResponse::Deny), .transparent(true),
if state.shown { if state.shown {
position position
} else { } else {
PhysicalPosition::new(-1000.0, -1000.0) PhysicalPosition::new(-1000.0, -1000.0)
}, },
size, size,
)?; );
webview.with_webview(#[allow(unused_variables)] |webview2| {
#[cfg(windows)]
{
use webview2_com::Microsoft::Web::WebView2::Win32::ICoreWebView2_8;
use windows_core::Interface;
let webview2_controller = webview2.controller();
let Ok(webview2_8) = unsafe { webview2_controller.CoreWebView2() }
.and_then(|core_webview2| core_webview2.cast::<ICoreWebView2_8>())
else {
return;
};
unsafe { webview2_8.SetIsMuted(true) }.ok();
}
})?;
} }
} }