From 8e11f6347991973c226c7493eb4d5606aa7fb563 Mon Sep 17 00:00:00 2001 From: Revertron Date: Mon, 27 Oct 2025 22:09:11 +0100 Subject: [PATCH] Fixed centering of the window. --- Cargo.lock | 2 +- Cargo.toml | 2 +- contrib/windows/alfis_ie10.reg | Bin 642 -> 0 bytes src/web_ui.rs | 21 ++++++++++++++++++--- 4 files changed, 20 insertions(+), 5 deletions(-) delete mode 100644 contrib/windows/alfis_ie10.reg diff --git a/Cargo.lock b/Cargo.lock index 5a96018..a26fc9c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -45,7 +45,7 @@ dependencies = [ [[package]] name = "alfis" -version = "0.8.6" +version = "0.8.7" dependencies = [ "bincode", "blakeout", diff --git a/Cargo.toml b/Cargo.toml index 1c3b387..89965cd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "alfis" -version = "0.8.6" +version = "0.8.7" authors = ["Revertron "] edition = "2021" build = "build.rs" diff --git a/contrib/windows/alfis_ie10.reg b/contrib/windows/alfis_ie10.reg deleted file mode 100644 index 4107d88f37ca3f160adb930b52abb09b0d7dda8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 642 zcmdsz-Acny5QM*L!FMQqfFk}Of)`p+EZP*()*wbgF|7njB5fu0<<;+;XYfiwve}tE zGjsOmJEx|hqNQU;kBk-XVmtP1`4UNFYrEFI$CLb4wzhBVFBov*bIehEU%2PNGtZPf zGG)lEwPa!)%8f~73uba7=H%j8L?&v!sokpHvevP1y0Hew#_v9+Iq<PJN26bPEZ?En4RTo9H!X5&cT;tW*7G;+Y8(l@?|VGh>;Q*Lb78nj7>, miner: Arc>) { @@ -43,22 +44,36 @@ pub fn run_interface(context: Arc>, miner: Arc>) { let event_loop = EventLoopBuilder::::with_user_event().build(); let proxy = event_loop.create_proxy(); + // Get primary monitor and calculate center position + let primary_monitor = event_loop.primary_monitor().unwrap(); + let monitor_size = primary_monitor.size(); + let monitor_position = primary_monitor.position(); + + let window_size = tao::dpi::LogicalSize::new(1024, 720); + let scaled = window_size.to_physical::(primary_monitor.scale_factor()); + let center_x = monitor_position.x + (monitor_size.width as i32 - scaled.width) / 2; + let center_y = monitor_position.y + (monitor_size.height as i32 - scaled.height) / 2; + let window = WindowBuilder::new() .with_title(&title) - .with_inner_size(tao::dpi::LogicalSize::new(1023, 720)) + .with_inner_size(window_size) .with_min_inner_size(tao::dpi::LogicalSize::new(773, 350)) + .with_position(PhysicalPosition::new(center_x, center_y)) .with_resizable(true) .with_visible(true) .build(&event_loop) - .expect("Failed to create window"); + .expect("Failed to create the window"); #[cfg(windows)] { - use tao::platform::windows::WindowExtWindows; use winapi::um::shellscalingapi::SetProcessDpiAwareness; unsafe { SetProcessDpiAwareness(2); } + use tao::platform::windows::IconExtWindows; + use tao::window::Icon; + let icon = Icon::from_resource(1, None).unwrap(); + window.set_window_icon(Some(icon)); } // Clone for the IPC handler