소스 검색

Restore screen buffer and refresh screen using the SetContentsAsDirty method.

BDisp 1 년 전
부모
커밋
2608718980
1개의 변경된 파일13개의 추가작업 그리고 1개의 파일을 삭제
  1. 13 1
      Terminal.Gui/ConsoleDrivers/NetDriver.cs

+ 13 - 1
Terminal.Gui/ConsoleDrivers/NetDriver.cs

@@ -865,8 +865,20 @@ internal class NetDriver : ConsoleDriver
         {
             Console.ResetColor ();
             Console.Clear ();
+
+            //Disable alternative screen buffer.
+            Console.Out.Write (EscSeqUtils.CSI_RestoreCursorAndRestoreAltBufferWithBackscroll);
+
+            //Set cursor key to cursor.
+            Console.Out.Write (EscSeqUtils.CSI_ShowCursor);
+
             Platform.Suspend ();
-            Application.Refresh ();
+
+            //Enable alternative screen buffer.
+            Console.Out.Write (EscSeqUtils.CSI_SaveCursorAndActivateAltBufferNoBackscroll);
+
+            SetContentsAsDirty ();
+            Refresh ();
         }
 
         StartReportingMouseMoves ();