瀏覽代碼

Whenever the Console is resized, Windows reset the cursor. So we need to reconfigure the cursor visibility.

Gilles Freart 4 年之前
父節點
當前提交
da17d389fc
共有 1 個文件被更改,包括 9 次插入0 次删除
  1. 9 0
      Terminal.Gui/ConsoleDrivers/WindowsDriver.cs

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

@@ -147,6 +147,14 @@ namespace Terminal.Gui {
 			return false;
 		}
 
+		public void ForceRefreshCursorVisibility ()
+		{
+			if (currentCursorVisibility.HasValue) {
+				pendingCursorVisibility = currentCursorVisibility;
+				currentCursorVisibility = null;
+			}
+		}
+
 		public bool SetCursorVisibility (CursorVisibility visibility)
 		{
 			if (initialCursorVisibility.HasValue == false) {
@@ -1305,6 +1313,7 @@ namespace Terminal.Gui {
 				Bottom = (short)Rows,
 				Right = (short)Cols
 			};
+			winConsole.ForceRefreshCursorVisibility ();
 		}
 
 		void UpdateOffScreen ()