From 2dff67447082f3c000b7eb68b4826f5b3db7397b Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Sun, 5 May 2024 07:43:21 +0400 Subject: Don't expand zero radius per corner So that radii like 8 8 0 0 look properly. --- niri-config/src/lib.rs | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/niri-config/src/lib.rs b/niri-config/src/lib.rs index e5b13a50..39784c4e 100644 --- a/niri-config/src/lib.rs +++ b/niri-config/src/lib.rs @@ -1129,18 +1129,21 @@ impl CornerRadius { } } - pub fn expanded_by(self, width: f32) -> Self { - // Preserve zero radius. - if self == Self::default() { - return self; + pub fn expanded_by(mut self, width: f32) -> Self { + if self.top_left > 0. { + self.top_left += width; } - - Self { - top_left: self.top_left + width, - top_right: self.top_right + width, - bottom_right: self.bottom_right + width, - bottom_left: self.bottom_left + width, + if self.top_right > 0. { + self.top_right += width; + } + if self.bottom_right > 0. { + self.bottom_right += width; } + if self.bottom_left > 0. { + self.bottom_left += width; + } + + self } pub fn scaled_by(self, scale: f32) -> Self { -- cgit