From 4ec525501c9ba811637f9ec008293893883df897 Mon Sep 17 00:00:00 2001 From: Tigger Kindel Date: Mon, 17 Jul 2023 17:45:00 -0600 Subject: [PATCH 1/5] Release v1.13.0 --- ReactiveExample/ReactiveExample.csproj | 4 ++-- Terminal.Gui/Terminal.Gui.csproj | 2 +- UnitTests/UnitTests.csproj | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ReactiveExample/ReactiveExample.csproj b/ReactiveExample/ReactiveExample.csproj index 6c4b3c0a9..d6afc18ff 100644 --- a/ReactiveExample/ReactiveExample.csproj +++ b/ReactiveExample/ReactiveExample.csproj @@ -11,8 +11,8 @@ 1.10.1+6.Branch.main.Sha.f7ee66ddbf8dbcfb0d96af7d63789879091670ec - - + + diff --git a/Terminal.Gui/Terminal.Gui.csproj b/Terminal.Gui/Terminal.Gui.csproj index 9694ca019..2d78f7933 100644 --- a/Terminal.Gui/Terminal.Gui.csproj +++ b/Terminal.Gui/Terminal.Gui.csproj @@ -53,7 +53,7 @@ - + net472;netstandard2.1;net7.0 diff --git a/UnitTests/UnitTests.csproj b/UnitTests/UnitTests.csproj index 516909d83..24ac50fd7 100644 --- a/UnitTests/UnitTests.csproj +++ b/UnitTests/UnitTests.csproj @@ -21,11 +21,11 @@ TRACE;DEBUG_IDISPOSABLE - - + + - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive From cd119eadfbf203c6c56e4015cffc986a45bc1d4b Mon Sep 17 00:00:00 2001 From: BDisp Date: Tue, 18 Jul 2023 22:52:35 +0100 Subject: [PATCH 2/5] Fixes #2688. ReadOnly TextView's broken scrolling after version update. --- Terminal.Gui/ConsoleDrivers/WindowsDriver.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Terminal.Gui/ConsoleDrivers/WindowsDriver.cs b/Terminal.Gui/ConsoleDrivers/WindowsDriver.cs index 4f6a73eb2..ccc77044a 100644 --- a/Terminal.Gui/ConsoleDrivers/WindowsDriver.cs +++ b/Terminal.Gui/ConsoleDrivers/WindowsDriver.cs @@ -873,7 +873,7 @@ namespace Terminal.Gui { keyUpHandler (new KeyEvent (map, keyModifiers)); } } - if (!inputEvent.KeyEvent.bKeyDown) { + if (!inputEvent.KeyEvent.bKeyDown && (inputEvent.KeyEvent.dwControlKeyState == 0 || inputEvent.KeyEvent.dwControlKeyState == WindowsConsole.ControlKeyState.EnhancedKey)) { keyModifiers = null; } break; From 683272f959abe5c2631649267e0d3974cfc6fff2 Mon Sep 17 00:00:00 2001 From: BDisp Date: Wed, 19 Jul 2023 03:00:34 +0100 Subject: [PATCH 3/5] Fixes #415. Colors: The native method "COLOR_PAIRS" does not exist --- Terminal.Gui/ConsoleDrivers/CursesDriver/binding.cs | 4 +++- Terminal.Gui/Terminal.Gui.csproj | 2 -- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Terminal.Gui/ConsoleDrivers/CursesDriver/binding.cs b/Terminal.Gui/ConsoleDrivers/CursesDriver/binding.cs index 9da53fd03..5e73f065a 100644 --- a/Terminal.Gui/ConsoleDrivers/CursesDriver/binding.cs +++ b/Terminal.Gui/ConsoleDrivers/CursesDriver/binding.cs @@ -43,6 +43,7 @@ // using System; using System.Runtime.InteropServices; +using Terminal.Gui; namespace Unix.Terminal { #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member @@ -93,7 +94,8 @@ namespace Unix.Terminal { if (attempts == 1) { attempts++; - if (Microsoft.DotNet.PlatformAbstractions.RuntimeEnvironment.OperatingSystem.Contains ("opensuse")) { + var (exitCode, result) = ClipboardProcessRunner.Bash ("cat /etc/os-release", waitForOutput: true); + if (exitCode == 0 && result.Contains ("opensuse")) { libs [0] = "libncursesw.so.5"; } } else { diff --git a/Terminal.Gui/Terminal.Gui.csproj b/Terminal.Gui/Terminal.Gui.csproj index 2d78f7933..08f4e1dc1 100644 --- a/Terminal.Gui/Terminal.Gui.csproj +++ b/Terminal.Gui/Terminal.Gui.csproj @@ -16,8 +16,6 @@ 1.0 - - From 6dc6530c583a6fd13300ef372917de6887bb8669 Mon Sep 17 00:00:00 2001 From: BDisp Date: Wed, 19 Jul 2023 12:33:10 +0100 Subject: [PATCH 4/5] Fixes #2750. MenuBar (without children) causes stack overflow when shortcut is pressed. --- Terminal.Gui/Views/Menu.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Terminal.Gui/Views/Menu.cs b/Terminal.Gui/Views/Menu.cs index 2244531d1..9a825dd6b 100644 --- a/Terminal.Gui/Views/Menu.cs +++ b/Terminal.Gui/Views/Menu.cs @@ -1671,7 +1671,7 @@ namespace Terminal.Gui { } return true; } - if (mi is MenuBarItem menuBarItem && !menuBarItem.IsTopLevel && FindAndOpenMenuByShortcut (kb, menuBarItem.Children)) { + if (mi is MenuBarItem menuBarItem && menuBarItem.Children != null && !menuBarItem.IsTopLevel && FindAndOpenMenuByShortcut (kb, menuBarItem.Children)) { return true; } } From 5d733ed5980241470fffa417c2723b55e52d748b Mon Sep 17 00:00:00 2001 From: BDisp Date: Wed, 19 Jul 2023 13:02:04 +0100 Subject: [PATCH 5/5] Add unit test. --- UnitTests/Menus/MenuTests.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/UnitTests/Menus/MenuTests.cs b/UnitTests/Menus/MenuTests.cs index b82450c9c..dc851b44c 100644 --- a/UnitTests/Menus/MenuTests.cs +++ b/UnitTests/Menus/MenuTests.cs @@ -1734,5 +1734,17 @@ Edit │ │ └──────────────────────────────────────┘", output); } + + [Fact, AutoInitShutdown] + public void MenuBarItem_Children_Null_Does_Not_Throw () + { + var menu = new MenuBar (new MenuBarItem [] { + new MenuBarItem("Test", "", null) + }); + Application.Top.Add (menu); + + var exception = Record.Exception (() => menu.ProcessColdKey (new KeyEvent (Key.Space, new KeyModifiers ()))); + Assert.Null (exception); + } } }