From 1c9fbc1588fb0f78585daf1123349781774d3121 Mon Sep 17 00:00:00 2001 From: Emil Ernerfeldt Date: Wed, 16 Dec 2020 20:31:00 +0100 Subject: [PATCH] Adjust default-size of Resize areas to fit within screen --- egui/src/containers/resize.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/egui/src/containers/resize.rs b/egui/src/containers/resize.rs index 6a3ead3c..9acb7067 100644 --- a/egui/src/containers/resize.rs +++ b/egui/src/containers/resize.rs @@ -165,7 +165,10 @@ impl Resize { let default_size = self .default_size .at_least(self.min_size) - .at_most(self.max_size); + .at_most(self.max_size) + .at_most( + ui.input().screen_rect().size() - 2.0 * ui.style().spacing.window_padding, // hack for windows + ); State { desired_size: default_size, @@ -266,6 +269,11 @@ impl Resize { ui.allocate_space(state.last_content_size); } + if ui.memory().resize.get(&id).is_none() { + // First frame. + state.desired_size = state.desired_size.at_least(state.last_content_size); + } + // ------------------------------ if self.with_stroke && corner_response.is_some() {