From 718eec4b89d9904845f002fb1be38c7448a7663e Mon Sep 17 00:00:00 2001 From: Emil Ernerfeldt Date: Sun, 17 Jan 2021 11:53:55 +0100 Subject: [PATCH] [egui_glium] Fix set_window_size for non-native pixels_per_point --- egui_glium/CHANGELOG.md | 1 + egui_glium/src/backend.rs | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/egui_glium/CHANGELOG.md b/egui_glium/CHANGELOG.md index 07121da7..395c1de6 100644 --- a/egui_glium/CHANGELOG.md +++ b/egui_glium/CHANGELOG.md @@ -10,6 +10,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Fixed 🐛 * Fix a bug where key releases weren't sent to Egui +* Fix `set_window_size` for non-native `pixels_per_point`. ## 0.7.0 - 2021-01-04 diff --git a/egui_glium/src/backend.rs b/egui_glium/src/backend.rs index 651ca3ab..f4e27e70 100644 --- a/egui_glium/src/backend.rs +++ b/egui_glium/src/backend.rs @@ -237,13 +237,13 @@ pub fn run(mut app: Box) -> ! { } if let Some(window_size) = window_size { - display - .gl_window() - .window() - .set_inner_size(glutin::dpi::LogicalSize { - width: window_size.x, - height: window_size.y, - }); + display.gl_window().window().set_inner_size( + glutin::dpi::PhysicalSize { + width: (ctx.pixels_per_point() * window_size.x).round(), + height: (ctx.pixels_per_point() * window_size.y).round(), + } + .to_logical::(native_pixels_per_point(&display) as f64), + ); } *control_flow = if quit {