summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/events.rs19
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);
}
}