aboutsummaryrefslogtreecommitdiff
path: root/src/utils
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils')
-rw-r--r--src/utils/mod.rs10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/utils/mod.rs b/src/utils/mod.rs
index 807244fa..3c6a36e0 100644
--- a/src/utils/mod.rs
+++ b/src/utils/mod.rs
@@ -96,13 +96,15 @@ pub fn to_physical_precise_round<N: Coordinate>(scale: f64, logical: impl Coordi
}
pub fn output_size(output: &Output) -> Size<i32, Logical> {
- let output_scale = output.current_scale().integer_scale();
+ let output_scale = output.current_scale().fractional_scale();
let output_transform = output.current_transform();
let output_mode = output.current_mode().unwrap();
- output_transform
- .transform_size(output_mode.size)
- .to_logical(output_scale)
+ // Like in LayerMap::arrange().
+ //
+ // FIXME: return fractional logical size.
+ let logical_size = output_mode.size.to_f64().to_logical(output_scale);
+ output_transform.transform_size(logical_size.to_i32_round())
}
pub fn logical_output(output: &Output) -> niri_ipc::LogicalOutput {