From 20b142e8e3a674f27f9c9429449002086708ce11 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Wed, 18 Mar 2020 01:26:13 +0100 Subject: Make cursor unavailable when dragging panes --- wgpu/src/renderer/widget/pane_grid.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'wgpu/src/renderer/widget') diff --git a/wgpu/src/renderer/widget/pane_grid.rs b/wgpu/src/renderer/widget/pane_grid.rs index 741fe814..2d201fec 100644 --- a/wgpu/src/renderer/widget/pane_grid.rs +++ b/wgpu/src/renderer/widget/pane_grid.rs @@ -14,6 +14,14 @@ impl pane_grid::Renderer for Renderer { layout: Layout<'_>, cursor_position: Point, ) -> Self::Output { + let pane_cursor_position = if dragging.is_some() { + // TODO: Remove once cursor availability is encoded in the type + // system + Point::new(-1.0, -1.0) + } else { + cursor_position + }; + let mut mouse_cursor = MouseCursor::OutOfBounds; let mut dragged_pane = None; @@ -23,7 +31,7 @@ impl pane_grid::Renderer for Renderer { .enumerate() .map(|(i, ((id, pane), layout))| { let (primitive, new_mouse_cursor) = - pane.draw(self, defaults, layout, cursor_position); + pane.draw(self, defaults, layout, pane_cursor_position); if new_mouse_cursor > mouse_cursor { mouse_cursor = new_mouse_cursor; -- cgit