diff --git a/Terminal.Gui/Input/Mouse.cs b/Terminal.Gui/Input/Mouse.cs index f8225c9bf2..2b3f2852be 100644 --- a/Terminal.Gui/Input/Mouse.cs +++ b/Terminal.Gui/Input/Mouse.cs @@ -88,11 +88,11 @@ public enum MouseFlags /// Vertical button wheeled down. WheeledDown = 0x20000000, - /// Vertical button wheeled up while pressing ButtonShift. - WheeledLeft = ButtonShift | WheeledUp, + /// Vertical button wheeled up while pressing ButtonCtrl. + WheeledLeft = ButtonCtrl | WheeledUp, - /// Vertical button wheeled down while pressing ButtonShift. - WheeledRight = ButtonShift | WheeledDown, + /// Vertical button wheeled down while pressing ButtonCtrl. + WheeledRight = ButtonCtrl | WheeledDown, /// Mask that captures all the events. AllEvents = 0x7ffffff diff --git a/UnitTests/View/MouseTests.cs b/UnitTests/View/MouseTests.cs index bbaeab8908..cb4269b966 100644 --- a/UnitTests/View/MouseTests.cs +++ b/UnitTests/View/MouseTests.cs @@ -79,4 +79,17 @@ public void ButtonPressed_In_Margin_Or_Border_Starts_Drag (int marginThickness, Assert.Equal (expectedMoved, new Point (5, 5) == testView.Frame.Location); } + + [Theory] + [InlineData (MouseFlags.WheeledUp | MouseFlags.ButtonCtrl, MouseFlags.WheeledLeft)] + [InlineData (MouseFlags.WheeledDown | MouseFlags.ButtonCtrl, MouseFlags.WheeledRight)] + public void WheeledLeft_WheeledRight (MouseFlags mouseFlags, MouseFlags expectedMouseFlagsFromEvent) + { + MouseFlags mouseFlagsFromEvent = MouseFlags.None; + var view = new View (); + view.MouseEvent += (s, e) => mouseFlagsFromEvent = e.MouseEvent.Flags; + + view.OnMouseEvent (new MouseEvent () { Flags = mouseFlags }); + Assert.Equal (mouseFlagsFromEvent, expectedMouseFlagsFromEvent); + } }