Skip to content

Commit 5ec744f

Browse files
committed
Merge branch 'develop'
2 parents 13ceabb + 214ff12 commit 5ec744f

File tree

11 files changed

+75
-39
lines changed

11 files changed

+75
-39
lines changed

.github/workflows/dotnet-core.yml

+17-17
Original file line numberDiff line numberDiff line change
@@ -34,23 +34,23 @@ jobs:
3434
- name: Test
3535
run: |
3636
sed -i 's/"stopOnFail": false/"stopOnFail": true/g' UnitTests/xunit.runner.json
37-
dotnet test --no-restore --verbosity normal --collect:"XPlat Code Coverage" --settings UnitTests/coverlet.runsettings
38-
mv -v UnitTests/TestResults/*/*.* UnitTests/TestResults/
37+
dotnet test --no-restore --verbosity normal #--collect:"XPlat Code Coverage" --settings UnitTests/coverlet.runsettings
38+
#mv -v UnitTests/TestResults/*/*.* UnitTests/TestResults/
3939
4040
# Note: this step is currently not writing to the gist for some reason
41-
- name: Create Test Coverage Badge
42-
uses: simon-k/[email protected]
43-
id: create_coverage_badge
44-
with:
45-
label: Unit Test Coverage
46-
color: brightgreen
47-
path: UnitTests/TestResults/coverage.opencover.xml
48-
gist-filename: code-coverage.json
49-
# https://gist.github.com/migueldeicaza/90ef67a684cb71db1817921a970f8d27
50-
gist-id: 90ef67a684cb71db1817921a970f8d27
51-
gist-auth-token: ${{ secrets.GIST_AUTH_TOKEN }}
41+
# - name: Create Test Coverage Badge
42+
# uses: simon-k/[email protected]
43+
# id: create_coverage_badge
44+
# with:
45+
# label: Unit Test Coverage
46+
# color: brightgreen
47+
# path: UnitTests/TestResults/coverage.opencover.xml
48+
# gist-filename: code-coverage.json
49+
# # https://gist.github.com/migueldeicaza/90ef67a684cb71db1817921a970f8d27
50+
# gist-id: 90ef67a684cb71db1817921a970f8d27
51+
# gist-auth-token: ${{ secrets.GIST_AUTH_TOKEN }}
5252

53-
- name: Print Code Coverage
54-
run: |
55-
echo "Code coverage percentage: ${{steps.create_coverage_badge.outputs.percentage}}%"
56-
echo "Badge data: ${{steps.create_coverage_badge.outputs.badge}}"
53+
# - name: Print Code Coverage
54+
# run: |
55+
# echo "Code coverage percentage: ${{steps.create_coverage_badge.outputs.percentage}}%"
56+
# echo "Badge data: ${{steps.create_coverage_badge.outputs.badge}}"

README.md

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
![Terminal.Gui](https://socialify.git.ci/gui-cs/Terminal.Gui/image?description=1&font=Rokkitt&forks=1&language=1&logo=https%3A%2F%2Fraw.githubusercontent.com%2Fgui-cs%2FTerminal.Gui%2Fdevelop%2Fdocfx%2Fimages%2Flogo.png&name=1&owner=1&pattern=Circuit%20Board&stargazers=1&theme=Auto)
22
![.NET Core](https://github.com/gui-cs/Terminal.Gui/workflows/.NET%20Core/badge.svg?branch=develop)
3-
![Code scanning - action](https://github.com/gui-cs/Terminal.Gui/workflows/Code%20scanning%20-%20action/badge.svg)
43
[![Version](https://img.shields.io/nuget/v/Terminal.Gui.svg)](https://www.nuget.org/packages/Terminal.Gui)
54
![Code Coverage](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/migueldeicaza/90ef67a684cb71db1817921a970f8d27/raw/code-coverage.json)
65
[![Downloads](https://img.shields.io/nuget/dt/Terminal.Gui)](https://www.nuget.org/packages/Terminal.Gui)
@@ -34,10 +33,10 @@ dotnet run
3433
## Documentation
3534

3635
* [Documentation Home](https://gui-cs.github.io/Terminal.Gui/index.html)
37-
* [Terminal.Gui Overview](https://gui-cs.github.io/Terminal.Gui/articles/overview.html)
38-
* [List of Views/Controls](https://gui-cs.github.io/Terminal.Gui/articles/views.html)
39-
* [Conceptual Documentation](https://gui-cs.github.io/Terminal.Gui/articles/index.html)
40-
* [API Documentation](https://gui-cs.github.io/Terminal.Gui)
36+
* [Terminal.Gui Overview](https://gui-cs.github.io/Terminal.Gui/docs/overview.html)
37+
* [List of Views/Controls](https://gui-cs.github.io/Terminal.Gui/docs/views.html)
38+
* [Conceptual Documentation](https://gui-cs.github.io/Terminal.Gui/docs/index.html)
39+
* [API Documentation](https://gui-cs.github.io/Terminal.Gui/api/Terminal.Gui)
4140

4241
_The Documentation matches the most recent Nuget release from the `main` branch ([![Version](https://img.shields.io/nuget/v/Terminal.Gui.svg)](https://www.nuget.org/packages/Terminal.Gui))_
4342

ReactiveExample/ReactiveExample.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
<InformationalVersion>1.14.0-pre.1+Branch.develop.Sha.e0b7464669ef87b96b57f2285200e02bcf85d0e7</InformationalVersion>-->
1111
</PropertyGroup>
1212
<ItemGroup>
13-
<PackageReference Include="ReactiveUI.Fody" Version="19.5.39" />
14-
<PackageReference Include="ReactiveUI" Version="19.5.39" />
13+
<PackageReference Include="ReactiveUI.Fody" Version="19.5.41" />
14+
<PackageReference Include="ReactiveUI" Version="19.5.41" />
1515
<PackageReference Include="ReactiveMarbles.ObservableEvents.SourceGenerator" Version="1.3.1" PrivateAssets="all" />
1616
</ItemGroup>
1717
<ItemGroup>

Terminal.Gui/Core/View.cs

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

2897-
var args = new MouseEventArgs (mouseEvent);
2898-
if (OnMouseClick (args))
2899-
return true;
2897+
if ((mouseEvent.Flags & MouseFlags.Button1Clicked) != 0 || (mouseEvent.Flags & MouseFlags.Button2Clicked) != 0
2898+
|| (mouseEvent.Flags & MouseFlags.Button3Clicked) != 0 || (mouseEvent.Flags & MouseFlags.Button4Clicked) != 0) {
2899+
2900+
var args = new MouseEventArgs (mouseEvent);
2901+
if (OnMouseClick (args)) {
2902+
return true;
2903+
}
2904+
}
29002905
if (MouseEvent (mouseEvent))
29012906
return true;
29022907

Terminal.Gui/Terminal.Gui.csproj

+1-2
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@
8080
<PackageReadmeFile>README.md</PackageReadmeFile>
8181
<PackageTags>csharp, terminal, c#, f#, gui, toolkit, console, tui</PackageTags>
8282
<Description>Cross platform Terminal UI toolkit for .NET</Description>
83-
<Owners>Miguel de Icaza, Tig Kindel</Owners>
83+
<Owners>Tig Kindel</Owners>
8484
<Summary>A toolkit for building rich console apps for .NET that works on Windows, Mac, and Linux/Unix.</Summary>
8585
<Title>Terminal.Gui - Cross platform Terminal User Interface (TUI) toolkit for .NET</Title>
8686
<PackageReleaseNotes>
@@ -100,7 +100,6 @@
100100
<EmbedUntrackedSources>true</EmbedUntrackedSources>
101101
<EnableSourceLink>true</EnableSourceLink>
102102
<!--<DebugType>Embedded</DebugType>-->
103-
<Authors>Miguel de Icaza, Tig Kindel (@tig), @BDisp</Authors>
104103
<SignAssembly>True</SignAssembly>
105104
<AssemblyOriginatorKeyFile>Terminal.Gui.snk</AssemblyOriginatorKeyFile>
106105
</PropertyGroup>

Terminal.Gui/Views/ListView.cs

+1-3
Original file line numberDiff line numberDiff line change
@@ -802,8 +802,6 @@ public override bool MouseEvent (MouseEvent me)
802802
selected = top + me.Y;
803803
if (AllowsAll ()) {
804804
Source.SetMark (SelectedItem, !Source.IsMarked (SelectedItem));
805-
SetNeedsDisplay ();
806-
return true;
807805
}
808806
OnSelectedChanged ();
809807
SetNeedsDisplay ();
@@ -877,7 +875,7 @@ void RenderUstr (ConsoleDriver driver, ustring ustr, int col, int line, int widt
877875
/// <inheritdoc/>
878876
public void Render (ListView container, ConsoleDriver driver, bool marked, int item, int col, int line, int width, int start = 0)
879877
{
880-
var savedClip = container.ClipToBounds();
878+
var savedClip = container.ClipToBounds ();
881879
container.Move (col - start, line);
882880
var t = src? [item];
883881
if (t == null) {

UICatalog/UICatalog.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<ItemGroup>
2323
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.19.6" />
2424
<PackageReference Include="SixLabors.ImageSharp" Version="3.1.2" />
25-
<PackageReference Include="CsvHelper" Version="30.0.1" />
25+
<PackageReference Include="CsvHelper" Version="31.0.0" />
2626
<PackageReference Include="Microsoft.DotNet.PlatformAbstractions" Version="3.1.6" />
2727
</ItemGroup>
2828
<ItemGroup>

UnitTests/UnitTests.csproj

+5-5
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@
1818
<DefineConstants>TRACE;DEBUG_IDISPOSABLE</DefineConstants>
1919
</PropertyGroup>
2020
<ItemGroup>
21-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
22-
<PackageReference Include="ReportGenerator" Version="5.2.0" />
21+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.9.0" />
22+
<PackageReference Include="ReportGenerator" Version="5.2.2" />
2323
<PackageReference Include="System.Collections" Version="4.3.0" />
24-
<PackageReference Include="xunit" Version="2.6.6" />
25-
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.6">
24+
<PackageReference Include="xunit" Version="2.7.0" />
25+
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.7">
2626
<PrivateAssets>all</PrivateAssets>
2727
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
2828
</PackageReference>
29-
<PackageReference Include="coverlet.collector" Version="6.0.0">
29+
<PackageReference Include="coverlet.collector" Version="6.0.1">
3030
<PrivateAssets>all</PrivateAssets>
3131
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
3232
</PackageReference>

UnitTests/Views/ListViewTests.cs

+19
Original file line numberDiff line numberDiff line change
@@ -545,5 +545,24 @@ tem 2
545545
tem 3
546546
tem 4", output);
547547
}
548+
549+
[Fact]
550+
public void SelectedItemChanged_Event_Is_Also_Raised_With_AllowsMarking_True_By_Keyboard_Or_Mouse ()
551+
{
552+
var itemChanged = 0;
553+
var lv = new ListView (new List<string> () { "Item1", "Item2", "Item3" }) { Width = 5, Height = 3, AllowsMarking = true };
554+
lv.SelectedItemChanged += (e) => itemChanged = e.Item;
555+
556+
Assert.Equal (0, lv.SelectedItem);
557+
Assert.Equal (lv.SelectedItem, itemChanged);
558+
559+
Assert.True (lv.ProcessKey (new KeyEvent (Key.CursorDown, new KeyModifiers())));
560+
Assert.Equal (1, lv.SelectedItem);
561+
Assert.Equal (lv.SelectedItem, itemChanged);
562+
563+
Assert.True (lv.MouseEvent (new MouseEvent(){ X = 0, Y = 2, Flags = MouseFlags.Button1Clicked}));
564+
Assert.Equal (2, lv.SelectedItem);
565+
Assert.Equal (lv.SelectedItem, itemChanged);
566+
}
548567
}
549568
}

UnitTests/Views/ViewDisposalTest.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
using Xunit;
88
using Xunit.Abstractions;
99

10-
namespace UnitTests.ViewsTests {
10+
namespace Terminal.Gui.ViewTests {
1111

1212
public class ViewDisposalTest {
1313

UnitTests/Views/ViewTests.cs

+16
Original file line numberDiff line numberDiff line change
@@ -4581,5 +4581,21 @@ public void View_Instance_Use_Attribute_Normal_On_Draw ()
45814581
011110
45824582
000000", new Attribute [] { Colors.TopLevel.Normal, Colors.TopLevel.Focus });
45834583
}
4584+
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)
4589+
{
4590+
var mouseClicks = 0;
4591+
var view = new View ();
4592+
view.MouseClick += (_) => mouseClicks++;
4593+
4594+
view.OnMouseEvent (new MouseEvent () { Flags = pressed });
4595+
view.OnMouseEvent (new MouseEvent () { Flags = released });
4596+
view.OnMouseEvent (new MouseEvent () { Flags = clicked });
4597+
4598+
Assert.Equal (1, mouseClicks);
4599+
}
45844600
}
45854601
}

0 commit comments

Comments
 (0)