From 2bfa78e9dbc7c708e10f0276696f655a626820ce Mon Sep 17 00:00:00 2001 From: galister <22305755+galister@users.noreply.github.com> Date: Sat, 13 Jul 2024 17:27:33 +0900 Subject: [PATCH] x11: fix upright screens --- src/overlays/screen.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/overlays/screen.rs b/src/overlays/screen.rs index bbe5765..71ccc80 100644 --- a/src/overlays/screen.rs +++ b/src/overlays/screen.rs @@ -666,7 +666,11 @@ fn create_screen_state( Transform::_270 | Transform::Flipped270 => { Affine2::from_cols(Vec2::Y * (res.0 as f32 / res.1 as f32), Vec2::X, center) } - _ => Affine2::from_cols(Vec2::X, Vec2::Y * (-res.0 as f32 / res.1 as f32), center), + _ if res.1 > res.0 => { + // Xorg upright screens + Affine2::from_cols(Vec2::X * (res.1 as f32 / res.0 as f32), Vec2::NEG_Y, center) + } + _ => Affine2::from_cols(Vec2::X, Vec2::NEG_Y * (res.0 as f32 / res.1 as f32), center), }; OverlayState {