From 21cf7f98d74c21d5172ca578a86837d46e9c366d Mon Sep 17 00:00:00 2001 From: csmoe Date: Wed, 25 Jun 2025 12:42:54 +0800 Subject: [PATCH 1/2] feat: add window::Event::ScaleFactorChanged --- core/src/window/event.rs | 3 +++ winit/src/conversion.rs | 3 +++ 2 files changed, 6 insertions(+) diff --git a/core/src/window/event.rs b/core/src/window/event.rs index 45d29179..b275f3ba 100644 --- a/core/src/window/event.rs +++ b/core/src/window/event.rs @@ -71,4 +71,7 @@ pub enum Event { /// /// - **Wayland:** Not implemented. FilesHoveredLeft, + + /// A window's scale factor was changed. + ScaleFactorChanged(f64), } diff --git a/winit/src/conversion.rs b/winit/src/conversion.rs index 9d76997c..7dbd4ca0 100644 --- a/winit/src/conversion.rs +++ b/winit/src/conversion.rs @@ -331,6 +331,9 @@ pub fn window_event( Some(Event::Window(window::Event::Moved(Point::new(x, y)))) } + WindowEvent::ScaleFactorChanged { scale_factor, .. } => Some( + Event::Window(window::Event::ScaleFactorChanged(scale_factor)), + ), _ => None, } } From 8811367e42e1d24b2754af8900baa962b8936321 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9ctor=20Ram=C3=B3n=20Jim=C3=A9nez?= Date: Sat, 29 Nov 2025 06:45:34 +0100 Subject: [PATCH 2/2] Rename `ScaleFactorChanged` event to `Rescaled` --- core/src/window/event.rs | 6 +++--- winit/src/conversion.rs | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/core/src/window/event.rs b/core/src/window/event.rs index b275f3ba..b5815935 100644 --- a/core/src/window/event.rs +++ b/core/src/window/event.rs @@ -28,6 +28,9 @@ pub enum Event { /// A window was resized. Resized(Size), + /// A window changed its scale factor. + Rescaled(f32), + /// A window redraw was requested. /// /// The [`Instant`] contains the current time. @@ -71,7 +74,4 @@ pub enum Event { /// /// - **Wayland:** Not implemented. FilesHoveredLeft, - - /// A window's scale factor was changed. - ScaleFactorChanged(f64), } diff --git a/winit/src/conversion.rs b/winit/src/conversion.rs index 7dbd4ca0..67dd7ce1 100644 --- a/winit/src/conversion.rs +++ b/winit/src/conversion.rs @@ -331,9 +331,9 @@ pub fn window_event( Some(Event::Window(window::Event::Moved(Point::new(x, y)))) } - WindowEvent::ScaleFactorChanged { scale_factor, .. } => Some( - Event::Window(window::Event::ScaleFactorChanged(scale_factor)), - ), + WindowEvent::ScaleFactorChanged { scale_factor, .. } => { + Some(Event::Window(window::Event::Rescaled(scale_factor as f32))) + } _ => None, } }