diff options
Diffstat (limited to 'src/events.rs')
-rw-r--r-- | src/events.rs | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/events.rs b/src/events.rs index 22cada5..f62b1f5 100644 --- a/src/events.rs +++ b/src/events.rs @@ -92,16 +92,15 @@ pub struct SizeBounds { impl SizeBounds { pub fn as_min_max_size(&self, scale: u32) -> (PhysicalSize<u32>, PhysicalSize<u32>) { - ( - PhysicalSize { - width: self.min_width.unwrap_or(0).saturating_mul(scale), - height: self.min_height.unwrap_or(0).saturating_mul(scale), - }, - PhysicalSize { - width: self.max_width.unwrap_or(u32::MAX).saturating_mul(scale), - height: self.max_height.unwrap_or(u32::MAX).saturating_mul(scale), - }, - ) + let min_size = PhysicalSize { + width: std::cmp::max(1, self.min_width.unwrap_or(0)).saturating_mul(scale), + height: std::cmp::max(1, self.min_height.unwrap_or(0)).saturating_mul(scale), + }; + let max_size = PhysicalSize { + width: self.max_width.unwrap_or(u32::MAX).saturating_mul(scale), + height: self.max_height.unwrap_or(u32::MAX).saturating_mul(scale), + }; + return (min_size, max_size); } } |