From bed205cb19ca3aebefc266985cb13dec3dcc036e Mon Sep 17 00:00:00 2001 From: HermanoGranger Date: Sat, 13 Jan 2024 20:25:26 +0100 Subject: [PATCH] TRY-107 Fix scrolling bug when export dialog has focus --- src/ui/renderresult.rs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/ui/renderresult.rs b/src/ui/renderresult.rs index a583ebd..628cafd 100644 --- a/src/ui/renderresult.rs +++ b/src/ui/renderresult.rs @@ -23,12 +23,15 @@ impl RenderResult { let response = response.on_hover_and_drag_cursor(CursorIcon::Grab); - self.zoom += ui.input(|i| i.scroll_delta.y); - self.zoom = self.zoom.clamp( - -response.rect.width().min(response.rect.height()) / 4.0, - std::f32::INFINITY, - ); - self.position += response.drag_delta(); + // Check if the dialog is being hovered over or active + if response.has_focus() || response.hovered() { + self.zoom += ui.input(|i| i.scroll_delta.y); + self.zoom = self.zoom.clamp( + -response.rect.width().min(response.rect.height()) / 4.0, + std::f32::INFINITY, + ); + self.position += response.drag_delta(); + } response.double_clicked().then(|| { self.zoom = 0.0;