From 6a80ec4704b767483866eec41f9f08432991c35a Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Mon, 17 Mar 2025 07:45:26 +0300 Subject: layout/tile: Don't take fullscreen into account in min/max size They are used strictly for non-fullscreen size computation. --- src/layout/scrolling.rs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/layout/scrolling.rs') diff --git a/src/layout/scrolling.rs b/src/layout/scrolling.rs index e8ee6195..1fd79256 100644 --- a/src/layout/scrolling.rs +++ b/src/layout/scrolling.rs @@ -4018,14 +4018,18 @@ impl Column { let min_size: Vec<_> = self .tiles .iter() - .map(Tile::min_size) + .map(Tile::min_size_nonfullscreen) .map(|mut size| { size.w = size.w.max(1.); size.h = size.h.max(1.); size }) .collect(); - let max_size: Vec<_> = self.tiles.iter().map(Tile::max_size).collect(); + let max_size: Vec<_> = self + .tiles + .iter() + .map(Tile::max_size_nonfullscreen) + .collect(); // Compute the column width. let min_width = min_size @@ -4517,7 +4521,7 @@ impl Column { .iter() .enumerate() .filter(|(idx, _)| *idx != tile_idx) - .map(|(_, tile)| f64::max(1., tile.min_size().h) + gaps) + .map(|(_, tile)| f64::max(1., tile.min_size_nonfullscreen().h) + gaps) .sum::() }; let height_left = working_size - extra_size - gaps - min_height_taken - gaps; @@ -4947,7 +4951,7 @@ impl Column { let requested_size = tile.window().requested_size().unwrap(); let requested_tile_height = tile.tile_height_for_window_height(f64::from(requested_size.h)); - let min_tile_height = f64::max(1., tile.min_size().h); + let min_tile_height = f64::max(1., tile.min_size_nonfullscreen().h); if !self.is_fullscreen && self.scale.round() == self.scale -- cgit