implemented new image saving

This commit is contained in:
pandadev 2024-07-18 14:57:29 +02:00
parent 720f10bdbe
commit 08f79ece60
No known key found for this signature in database
GPG key ID: C39629DACB8E762F
9 changed files with 198 additions and 128 deletions

View file

@ -12,18 +12,32 @@ use tauri::Manager;
use tauri::PhysicalPosition;
use tauri_plugin_autostart::MacosLauncher;
fn center_window_on_current_monitor(window: &tauri::WebviewWindow) {
if let Some(monitor) = window.current_monitor().unwrap() {
pub fn center_window_on_current_monitor(window: &tauri::WebviewWindow) {
if let Some(monitor) = window.available_monitors().unwrap().iter().find(|m| {
let primary_monitor = window
.primary_monitor()
.unwrap()
.expect("Failed to get primary monitor");
let mouse_position = primary_monitor.position();
let monitor_position = m.position();
let monitor_size = m.size();
mouse_position.x >= monitor_position.x
&& mouse_position.x < monitor_position.x + monitor_size.width as i32
&& mouse_position.y >= monitor_position.y
&& mouse_position.y < monitor_position.y + monitor_size.height as i32
}) {
let monitor_size = monitor.size();
let window_size = window.outer_size().unwrap();
let x = (monitor_size.width as i32 - window_size.width as i32) / 2;
let y = (monitor_size.height as i32 - window_size.height as i32) / 2;
window.set_position(PhysicalPosition::new(
monitor.position().x + x,
monitor.position().y + y,
)).unwrap();
window
.set_position(PhysicalPosition::new(
monitor.position().x + x,
monitor.position().y + y,
))
.unwrap();
}
}
@ -31,7 +45,6 @@ fn main() {
tauri::Builder::default()
.plugin(tauri_plugin_clipboard_manager::init())
.plugin(tauri_plugin_os::init())
.plugin(tauri_plugin_global_shortcut::Builder::new().build())
.plugin(tauri_plugin_sql::Builder::default().build())
.plugin(tauri_plugin_autostart::init(
MacosLauncher::LaunchAgent,
@ -57,6 +70,9 @@ fn main() {
window.close_devtools();
}
let app_data_dir = app.path().app_data_dir().expect("Failed to get app data directory");
clipboard::set_app_data_dir(app_data_dir);
Ok(())
})
.on_window_event(|app, event| match event {
@ -68,7 +84,11 @@ fn main() {
}
_ => {}
})
.invoke_handler(tauri::generate_handler![clipboard::simulate_paste])
.invoke_handler(tauri::generate_handler![
clipboard::simulate_paste,
clipboard::get_image_path,
clipboard::read_image
])
.run(tauri::generate_context!())
.expect("error while running tauri application");
}