From e18002dd03544e686432a666f46fe27d8eda31ab Mon Sep 17 00:00:00 2001 From: Chandler Cox Date: Fri, 30 Sep 2022 20:01:35 -0500 Subject: [PATCH] Fixed regression of cursor being stuck in default when trying to change it in viewport --- Source/Engine/UI/GUI/Panels/SplitPanel.cs | 24 ++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/Source/Engine/UI/GUI/Panels/SplitPanel.cs b/Source/Engine/UI/GUI/Panels/SplitPanel.cs index 563f1974b..bf79cb86c 100644 --- a/Source/Engine/UI/GUI/Panels/SplitPanel.cs +++ b/Source/Engine/UI/GUI/Panels/SplitPanel.cs @@ -23,6 +23,8 @@ namespace FlaxEngine.GUI private float _splitterValue; private Rectangle _splitterRect; private bool _splitterClicked, _mouseOverSplitter; + private bool _leftMouseButtonDown; + private bool _rightMouseButtonDown; /// /// The first panel (left or upper based on Orientation). @@ -167,7 +169,7 @@ namespace FlaxEngine.GUI { Cursor = _orientation == Orientation.Horizontal ? CursorType.SizeWE : CursorType.SizeNS; } - else + else if (!_leftMouseButtonDown && !_rightMouseButtonDown) { Cursor = CursorType.Default; } @@ -178,6 +180,16 @@ namespace FlaxEngine.GUI /// public override bool OnMouseDown(Float2 location, MouseButton button) { + if (button == MouseButton.Left) + { + _leftMouseButtonDown = true; + } + + if (button == MouseButton.Right) + { + _rightMouseButtonDown = true; + } + if (button == MouseButton.Left && _splitterRect.Contains(location)) { // Start moving splitter @@ -192,6 +204,16 @@ namespace FlaxEngine.GUI /// public override bool OnMouseUp(Float2 location, MouseButton button) { + if (button == MouseButton.Left) + { + _leftMouseButtonDown = false; + } + + if (button == MouseButton.Right) + { + _rightMouseButtonDown = false; + } + if (_splitterClicked) { EndTracking();