fix: set scale bifore sizing

This commit is contained in:
drendog 2025-11-01 13:11:54 +01:00
parent ec08429413
commit 807fecf0e2
Signed by: dwenya
GPG key ID: 8DD77074645332D0

View file

@ -174,25 +174,25 @@ impl WindowState {
fn configure_slint_window(&self, dimensions: &SurfaceDimensions, mode: ScalingMode) { fn configure_slint_window(&self, dimensions: &SurfaceDimensions, mode: ScalingMode) {
match mode { match mode {
ScalingMode::FractionalWithViewport => { ScalingMode::FractionalWithViewport => {
self.window.set_scale_factor(self.scale_factor);
self.window self.window
.set_size(slint::WindowSize::Logical(slint::LogicalSize::new( .set_size(slint::WindowSize::Logical(slint::LogicalSize::new(
dimensions.logical_width as f32, dimensions.logical_width as f32,
dimensions.logical_height as f32, dimensions.logical_height as f32,
))); )));
self.window.set_scale_factor(self.scale_factor);
} }
ScalingMode::FractionalOnly => { ScalingMode::FractionalOnly => {
self.window.set_scale_factor(dimensions.buffer_scale as f32);
self.window self.window
.set_size(slint::WindowSize::Logical(slint::LogicalSize::new( .set_size(slint::WindowSize::Logical(slint::LogicalSize::new(
dimensions.logical_width as f32, dimensions.logical_width as f32,
dimensions.logical_height as f32, dimensions.logical_height as f32,
))); )));
self.window.set_scale_factor(dimensions.buffer_scale as f32);
} }
ScalingMode::Integer => { ScalingMode::Integer => {
self.window.set_scale_factor(self.scale_factor);
self.window self.window
.set_size(slint::WindowSize::Physical(dimensions.physical_size())); .set_size(slint::WindowSize::Physical(dimensions.physical_size()));
self.window.set_scale_factor(self.scale_factor);
} }
} }
} }