mirror of
https://gitlab.com/ArkHost/HelixNotes.git
synced 2026-09-19 09:27:29 +02:00
Fix macOS traffic light alignment
This commit is contained in:
Generated
-1
@@ -1860,7 +1860,6 @@ dependencies = [
|
|||||||
"image",
|
"image",
|
||||||
"log",
|
"log",
|
||||||
"notify",
|
"notify",
|
||||||
"objc2-app-kit",
|
|
||||||
"png 0.17.16",
|
"png 0.17.16",
|
||||||
"quick-xml 0.36.2",
|
"quick-xml 0.36.2",
|
||||||
"rayon",
|
"rayon",
|
||||||
|
|||||||
@@ -42,9 +42,6 @@ quick-xml = "0.36"
|
|||||||
urlencoding = "2"
|
urlencoding = "2"
|
||||||
sha2 = "0.10"
|
sha2 = "0.10"
|
||||||
rustls = { version = "0.23", default-features = false, features = ["ring", "logging", "std", "tls12"] }
|
rustls = { version = "0.23", default-features = false, features = ["ring", "logging", "std", "tls12"] }
|
||||||
[target.'cfg(target_os = "macos")'.dependencies]
|
|
||||||
objc2-app-kit = "0.3.2"
|
|
||||||
|
|
||||||
[target.'cfg(target_os = "ios")'.dependencies]
|
[target.'cfg(target_os = "ios")'.dependencies]
|
||||||
tauri-plugin-ios-vault-access = { path = "plugins/ios-vault-access" }
|
tauri-plugin-ios-vault-access = { path = "plugins/ios-vault-access" }
|
||||||
|
|
||||||
|
|||||||
@@ -88,13 +88,6 @@ pub fn run() {
|
|||||||
setup_tray(app)?;
|
setup_tray(app)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(target_os = "macos")]
|
|
||||||
{
|
|
||||||
if let Some(window) = app.get_webview_window("main") {
|
|
||||||
fix_macos_traffic_lights(&window);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check CLI args for a .md file path on initial launch
|
// Check CLI args for a .md file path on initial launch
|
||||||
#[cfg(desktop)]
|
#[cfg(desktop)]
|
||||||
{
|
{
|
||||||
@@ -399,46 +392,3 @@ fn percent_decode(input: &str) -> String {
|
|||||||
}
|
}
|
||||||
String::from_utf8_lossy(&output).to_string()
|
String::from_utf8_lossy(&output).to_string()
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(target_os = "macos")]
|
|
||||||
fn fix_macos_traffic_lights(window: &tauri::WebviewWindow) {
|
|
||||||
use objc2_app_kit::{NSView, NSWindow, NSWindowButton};
|
|
||||||
|
|
||||||
let ns_window_ptr = match window.ns_window() {
|
|
||||||
Ok(ptr) => ptr,
|
|
||||||
Err(_) => return,
|
|
||||||
};
|
|
||||||
|
|
||||||
let ns_window: &NSWindow = unsafe { &*(ns_window_ptr as *const NSWindow) };
|
|
||||||
|
|
||||||
let close = match ns_window.standardWindowButton(NSWindowButton::CloseButton) {
|
|
||||||
Some(btn) => btn,
|
|
||||||
None => return,
|
|
||||||
};
|
|
||||||
let miniaturize = match ns_window.standardWindowButton(NSWindowButton::MiniaturizeButton) {
|
|
||||||
Some(btn) => btn,
|
|
||||||
None => return,
|
|
||||||
};
|
|
||||||
let zoom = match ns_window.standardWindowButton(NSWindowButton::ZoomButton) {
|
|
||||||
Some(btn) => btn,
|
|
||||||
None => return,
|
|
||||||
};
|
|
||||||
|
|
||||||
let superview = match unsafe { close.superview() } {
|
|
||||||
Some(sv) => sv,
|
|
||||||
None => return,
|
|
||||||
};
|
|
||||||
|
|
||||||
let sv_height = NSView::frame(&superview).size.height;
|
|
||||||
let btn_height = NSView::frame(&close).size.height;
|
|
||||||
if sv_height <= 0.0 || btn_height <= 0.0 {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
let centered_y = (sv_height - btn_height) / 2.0;
|
|
||||||
|
|
||||||
for btn in [&close, &miniaturize, &zoom] {
|
|
||||||
let mut frame = NSView::frame(btn);
|
|
||||||
frame.origin.y = centered_y;
|
|
||||||
btn.setFrameOrigin(frame.origin);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user