fix(stage-tamagotchi): perserve when moved
This commit is contained in:
@@ -6,8 +6,9 @@ use tauri::{
|
|||||||
menu::{Menu, MenuItem, Submenu},
|
menu::{Menu, MenuItem, Submenu},
|
||||||
tray::TrayIconBuilder,
|
tray::TrayIconBuilder,
|
||||||
};
|
};
|
||||||
|
use tauri_plugin_positioner::WindowExt;
|
||||||
use tauri_plugin_prevent_default::Flags;
|
use tauri_plugin_prevent_default::Flags;
|
||||||
use tauri_plugin_positioner::{WindowExt};
|
use tauri_plugin_window_state::AppHandleExt;
|
||||||
|
|
||||||
mod app;
|
mod app;
|
||||||
mod helpers;
|
mod helpers;
|
||||||
@@ -33,8 +34,9 @@ pub fn run() {
|
|||||||
.plugin(plugins::audio_transcription::init())
|
.plugin(plugins::audio_transcription::init())
|
||||||
.plugin(plugins::audio_vad::init())
|
.plugin(plugins::audio_vad::init())
|
||||||
.setup(|app| {
|
.setup(|app| {
|
||||||
let mut builder = WebviewWindowBuilder::new(app, "main", WebviewUrl::default())
|
let mut builder = WebviewWindowBuilder::new(app, "main", WebviewUrl::default());
|
||||||
.title("AIRI")
|
|
||||||
|
builder = builder.title("AIRI")
|
||||||
.decorations(false)
|
.decorations(false)
|
||||||
.inner_size(450.0, 600.0)
|
.inner_size(450.0, 600.0)
|
||||||
.shadow(false)
|
.shadow(false)
|
||||||
@@ -103,13 +105,6 @@ pub fn run() {
|
|||||||
menu.append_items(&[&show_devtools_item])?;
|
menu.append_items(&[&show_devtools_item])?;
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(debug_assertions)]
|
|
||||||
{
|
|
||||||
let show_devtools_item =
|
|
||||||
MenuItem::with_id(app, "show-devtools", "Show Devtools", true, None::<&str>)?;
|
|
||||||
menu.append_items(&[&show_devtools_item])?;
|
|
||||||
}
|
|
||||||
|
|
||||||
let _ = TrayIconBuilder::new()
|
let _ = TrayIconBuilder::new()
|
||||||
.icon(app.default_window_icon().unwrap().clone()) // TODO: use custom icon
|
.icon(app.default_window_icon().unwrap().clone()) // TODO: use custom icon
|
||||||
.menu(&menu)
|
.menu(&menu)
|
||||||
@@ -130,22 +125,25 @@ pub fn run() {
|
|||||||
app::windows::settings::new_settings_window(app).unwrap();
|
app::windows::settings::new_settings_window(app).unwrap();
|
||||||
}
|
}
|
||||||
"center" => {
|
"center" => {
|
||||||
let window = app.get_webview_window("main");
|
let _ = app.get_webview_window("main")
|
||||||
if let Some(window) = window {
|
.ok_or(())
|
||||||
let _ = window.move_window(tauri_plugin_positioner::Position::Center);
|
.and_then(|window| window.move_window(tauri_plugin_positioner::Position::Center)
|
||||||
}
|
.map_err(|_| ()))
|
||||||
|
.map(|_| app.save_window_state(StateFlags::POSITION));
|
||||||
}
|
}
|
||||||
"bottom-left" => {
|
"bottom-left" => {
|
||||||
let window = app.get_webview_window("main");
|
let _ = app.get_webview_window("main")
|
||||||
if let Some(window) = window {
|
.ok_or(())
|
||||||
let _ = window.move_window(tauri_plugin_positioner::Position::BottomLeft);
|
.and_then(|window| window.move_window(tauri_plugin_positioner::Position::BottomLeft)
|
||||||
}
|
.map_err(|_| ()))
|
||||||
|
.map(|_| app.save_window_state(StateFlags::POSITION));
|
||||||
}
|
}
|
||||||
"bottom-right" => {
|
"bottom-right" => {
|
||||||
let window = app.get_webview_window("main");
|
let _ = app.get_webview_window("main")
|
||||||
if let Some(window) = window {
|
.ok_or(())
|
||||||
let _ = window.move_window(tauri_plugin_positioner::Position::BottomRight);
|
.and_then(|window| window.move_window(tauri_plugin_positioner::Position::BottomRight)
|
||||||
}
|
.map_err(|_| ()))
|
||||||
|
.map(|_| app.save_window_state(StateFlags::POSITION));
|
||||||
}
|
}
|
||||||
"hide" => {
|
"hide" => {
|
||||||
let window = app.get_webview_window("main");
|
let window = app.get_webview_window("main");
|
||||||
|
|||||||
Reference in New Issue
Block a user