Skip to content

Commit 1724e71

Browse files
committed
Using mask check instead of HasFlag method.
1 parent e08e873 commit 1724e71

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

Terminal.Gui/Core/View.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -2894,8 +2894,8 @@ public virtual bool OnMouseEvent (MouseEvent mouseEvent)
28942894
return false;
28952895
}
28962896

2897-
if (mouseEvent.Flags.HasFlag (MouseFlags.Button1Clicked) || mouseEvent.Flags.HasFlag (MouseFlags.Button2Clicked)
2898-
|| mouseEvent.Flags.HasFlag (MouseFlags.Button3Clicked) || mouseEvent.Flags.HasFlag (MouseFlags.Button4Clicked)) {
2897+
if ((mouseEvent.Flags & MouseFlags.Button1Clicked) != 0 || (mouseEvent.Flags & MouseFlags.Button2Clicked) != 0
2898+
|| (mouseEvent.Flags & MouseFlags.Button3Clicked) != 0 || (mouseEvent.Flags & MouseFlags.Button4Clicked) != 0) {
28992899

29002900
var args = new MouseEventArgs (mouseEvent);
29012901
if (OnMouseClick (args)) {

UnitTests/Views/ViewTests.cs

+7-5
Original file line numberDiff line numberDiff line change
@@ -4582,16 +4582,18 @@ public void View_Instance_Use_Attribute_Normal_On_Draw ()
45824582
000000", new Attribute [] { Colors.TopLevel.Normal, Colors.TopLevel.Focus });
45834583
}
45844584

4585-
[Fact]
4586-
public void OnMouseClick_Is_Only_Raised_Once ()
4585+
[Theory]
4586+
[InlineData (MouseFlags.Button1Pressed, MouseFlags.Button1Released, MouseFlags.Button1Clicked)]
4587+
[InlineData (MouseFlags.Button1Pressed | MouseFlags.ButtonCtrl, MouseFlags.Button1Released | MouseFlags.ButtonCtrl, MouseFlags.Button1Clicked | MouseFlags.ButtonCtrl)]
4588+
public void OnMouseClick_Is_Only_Raised_Once (MouseFlags pressed, MouseFlags released, MouseFlags clicked)
45874589
{
45884590
var mouseClicks = 0;
45894591
var view = new View ();
45904592
view.MouseClick += (_) => mouseClicks++;
45914593

4592-
view.OnMouseEvent (new MouseEvent () { Flags = MouseFlags.Button1Pressed });
4593-
view.OnMouseEvent (new MouseEvent () { Flags = MouseFlags.Button1Released });
4594-
view.OnMouseEvent (new MouseEvent () { Flags = MouseFlags.Button1Clicked });
4594+
view.OnMouseEvent (new MouseEvent () { Flags = pressed });
4595+
view.OnMouseEvent (new MouseEvent () { Flags = released });
4596+
view.OnMouseEvent (new MouseEvent () { Flags = clicked });
45954597

45964598
Assert.Equal (1, mouseClicks);
45974599
}

0 commit comments

Comments
 (0)