summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBen Bridle <bridle.benjamin@gmail.com>2025-07-03 15:06:38 +1200
committerBen Bridle <bridle.benjamin@gmail.com>2025-07-03 15:06:38 +1200
commit7a2218ed5c86813e2531db10ae69d78d97cf0685 (patch)
treed478f10ffb58914d16bb8f7ae96039fda84cfbbd /src
parent04cefafd15b6fb5324857c275c70295322f82dd4 (diff)
downloadphosphor-7a2218ed5c86813e2531db10ae69d78d97cf0685.zip
Enforce minimum window dimensions of 1px
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);
}
}