소스 검색

Fix Window Terminal Preview using WindowsDriver.

BDisp 11 달 전
부모
커밋
cc1d6685c8
1개의 변경된 파일9개의 추가작업 그리고 1개의 파일을 삭제
  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 ();