aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2024-01-29 10:17:26 +0400
committerIvan Molodetskikh <yalterz@gmail.com>2024-01-31 23:02:38 +0400
commit2e50f8dee0f877f8192d04cc2c910fd9efe8451b (patch)
tree8c8b001e4e6d504016937bf0efc7700cca7bbc32 /src
parent7052f0129ef5d2fa5d38eef3dbb5c9296228e341 (diff)
downloadniri-2e50f8dee0f877f8192d04cc2c910fd9efe8451b.tar.gz
niri-2e50f8dee0f877f8192d04cc2c910fd9efe8451b.tar.bz2
niri-2e50f8dee0f877f8192d04cc2c910fd9efe8451b.zip
Hardcode winit transform for now
Diffstat (limited to 'src')
-rw-r--r--src/backend/winit.rs3
-rw-r--r--src/niri.rs12
2 files changed, 11 insertions, 4 deletions
diff --git a/src/backend/winit.rs b/src/backend/winit.rs
index cd8ceafd..b11f8e79 100644
--- a/src/backend/winit.rs
+++ b/src/backend/winit.rs
@@ -16,7 +16,6 @@ use smithay::reexports::calloop::LoopHandle;
use smithay::reexports::wayland_protocols::wp::presentation_time::server::wp_presentation_feedback;
use smithay::reexports::winit::dpi::LogicalSize;
use smithay::reexports::winit::window::WindowBuilder;
-use smithay::utils::Transform;
use super::RenderResult;
use crate::niri::{RedrawState, State};
@@ -54,7 +53,7 @@ impl Winit {
size: backend.window_size(),
refresh: 60_000,
};
- output.change_current_state(Some(mode), Some(Transform::Flipped180), None, None);
+ output.change_current_state(Some(mode), None, None, None);
output.set_preferred(mode);
let physical_properties = output.physical_properties();
diff --git a/src/niri.rs b/src/niri.rs
index 424fa712..b2d583be 100644
--- a/src/niri.rs
+++ b/src/niri.rs
@@ -654,9 +654,13 @@ impl State {
let scale = config.map(|c| c.scale).unwrap_or(1.);
let scale = scale.clamp(1., 10.).ceil() as i32;
- let transform = config
+ let mut transform = config
.map(|c| c.transform.into())
.unwrap_or(Transform::Normal);
+ // FIXME: fix winit damage on other transforms.
+ if name == "winit" {
+ transform = Transform::Flipped180;
+ }
if output.current_scale().integer_scale() != scale
|| output.current_transform() != transform
@@ -1179,7 +1183,11 @@ impl Niri {
let c = config.outputs.iter().find(|o| o.name == name);
let scale = c.map(|c| c.scale).unwrap_or(1.);
let scale = scale.clamp(1., 10.).ceil() as i32;
- let transform = c.map(|c| c.transform.into()).unwrap_or(Transform::Normal);
+ let mut transform = c.map(|c| c.transform.into()).unwrap_or(Transform::Normal);
+ // FIXME: fix winit damage on other transforms.
+ if name == "winit" {
+ transform = Transform::Flipped180;
+ }
drop(config);
// Set scale and transform before adding to the layout since that will read the output size.