修复 macOS 窗口圆角显示异常

This commit is contained in:
JSR
2026-03-19 18:06:42 +08:00
parent e4a0eb1ad8
commit 6675b6d978
5 changed files with 23 additions and 2 deletions
+1 -1
View File
@@ -14,7 +14,7 @@ crate-type = ["staticlib", "cdylib", "lib"]
tauri-build = { version = "2", features = [] } tauri-build = { version = "2", features = [] }
[dependencies] [dependencies]
tauri = { version = "2", features = ["tray-icon", "image-png", "protocol-asset"] } tauri = { version = "2", features = ["macos-private-api", "tray-icon", "image-png", "protocol-asset"] }
tauri-plugin-shell = "2" tauri-plugin-shell = "2"
serde = { version = "1", features = ["derive"] } serde = { version = "1", features = ["derive"] }
serde_json = "1" serde_json = "1"
+5
View File
@@ -298,6 +298,11 @@ fn setup_tray(_app: &mut App) -> Result<(), Box<dyn std::error::Error>> {
#[cfg(desktop)] #[cfg(desktop)]
fn setup_window_events(app: &mut App) -> Result<(), Box<dyn std::error::Error>> { fn setup_window_events(app: &mut App) -> Result<(), Box<dyn std::error::Error>> {
if let Some(window) = app.get_webview_window("main") { if let Some(window) = app.get_webview_window("main") {
#[cfg(target_os = "macos")]
{
let _ = window.set_shadow(true);
}
let window_clone = window.clone(); let window_clone = window.clone();
window.on_window_event(move |event| { window.on_window_event(move |event| {
if let WindowEvent::CloseRequested { api, .. } = event { if let WindowEvent::CloseRequested { api, .. } = event {
+2 -1
View File
@@ -11,6 +11,7 @@
}, },
"app": { "app": {
"withGlobalTauri": true, "withGlobalTauri": true,
"macOSPrivateApi": true,
"windows": [ "windows": [
{ {
"title": "SecScore", "title": "SecScore",
@@ -19,7 +20,7 @@
"resizable": true, "resizable": true,
"fullscreen": false, "fullscreen": false,
"decorations": false, "decorations": false,
"transparent": false, "transparent": true,
"center": true, "center": true,
"minWidth": 800, "minWidth": 800,
"minHeight": 600 "minHeight": 600
+10
View File
@@ -102,3 +102,13 @@ select {
.ss-operation-drawer .ant-drawer-header button { .ss-operation-drawer .ant-drawer-header button {
-webkit-app-region: no-drag; -webkit-app-region: no-drag;
} }
html.platform-macos,
html.platform-macos body {
background: transparent;
}
html.platform-macos #root {
border-radius: 12px;
overflow: hidden;
}
+5
View File
@@ -126,6 +126,11 @@ const disableTouchZoom = () => {
} }
disableTouchZoom() disableTouchZoom()
const platform = navigator.userAgent.toLowerCase()
if (platform.includes("mac")) {
document.documentElement.classList.add("platform-macos")
}
window.addEventListener("error", (e: any) => { window.addEventListener("error", (e: any) => {
const error = e?.error const error = e?.error
safeWriteLog({ safeWriteLog({