From 6108cef8b368653c51c0bbe6f81132a5a80b5c46 Mon Sep 17 00:00:00 2001 From: RipleyTom Date: Fri, 24 Jul 2026 09:56:52 +0200 Subject: [PATCH] fix: workaround for Chromium apps breaking below 1.0 scaling --- src/state.rs | 7 +++++-- src/wayland/handlers/fractional_scale.rs | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/state.rs b/src/state.rs index ce546505..24ccd9e1 100644 --- a/src/state.rs +++ b/src/state.rs @@ -956,8 +956,11 @@ impl Common { ); if let Some(output) = primary_scanout_output { with_fractional_scale(states, |fraction_scale| { - fraction_scale - .set_preferred_scale(output.current_scale().fractional_scale()); + // The 1.0 clamp is a workaround for Chromium + // TODO: remove if Chromium ever gets fixed + fraction_scale.set_preferred_scale( + output.current_scale().fractional_scale().max(1.0), + ); }); } } diff --git a/src/wayland/handlers/fractional_scale.rs b/src/wayland/handlers/fractional_scale.rs index aea0cc7e..dcc8d7f9 100644 --- a/src/wayland/handlers/fractional_scale.rs +++ b/src/wayland/handlers/fractional_scale.rs @@ -49,7 +49,10 @@ impl FractionalScaleHandler for State { with_states(&surface, |states| { with_fractional_scale(states, |fractional_scale| { - fractional_scale.set_preferred_scale(output.current_scale().fractional_scale()); + // The 1.0 clamp is a workaround for Chromium + // TODO: remove if Chromium ever gets fixed + fractional_scale + .set_preferred_scale(output.current_scale().fractional_scale().max(1.0)); }); }); }