Parcourir la source

Fix Window Terminal Preview using WindowsDriver.

BDisp il y a 11 mois
Parent
commit
cc1d6685c8
1 fichiers modifiés avec 9 ajouts et 1 suppressions
  1. 9 1
      Terminal.Gui/ConsoleDrivers/WindowsDriver.cs

+ 9 - 1
Terminal.Gui/ConsoleDrivers/WindowsDriver.cs

@@ -30,7 +30,7 @@ internal class WindowsConsole
     public const int STD_INPUT_HANDLE = -10;
 
     private readonly nint _inputHandle;
-    private readonly nint _outputHandle;
+    private nint _outputHandle;
     private nint _screenBuffer;
     private readonly uint _originalConsoleMode;
     private CursorVisibility? _initialCursorVisibility;
@@ -286,6 +286,14 @@ internal class WindowsConsole
 
         ConsoleMode = _originalConsoleMode;
 
+        _outputHandle = CreateConsoleScreenBuffer (
+                                                   DesiredAccess.GenericRead | DesiredAccess.GenericWrite,
+                                                   ShareMode.FileShareRead | ShareMode.FileShareWrite,
+                                                   nint.Zero,
+                                                   1,
+                                                   nint.Zero
+                                                  );
+
         if (!SetConsoleActiveScreenBuffer (_outputHandle))
         {
             int err = Marshal.GetLastWin32Error ();