From bc7c288703013afe035f8d499c20a197bcb892c7 Mon Sep 17 00:00:00 2001
From: Margers <margers.roked@inbox.lv>
Date: Wed, 11 Sep 2024 01:14:10 +0000
Subject: [PATCH] Save and restore user screen original cursor position for
 every unix terminal not only xterm

---
 packages/ide/fpusrscr.pas | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/packages/ide/fpusrscr.pas b/packages/ide/fpusrscr.pas
index 66f4a1b8f4..7df44c2b69 100644
--- a/packages/ide/fpusrscr.pas
+++ b/packages/ide/fpusrscr.pas
@@ -873,8 +873,9 @@ procedure TLinuxScreen.SaveConsoleScreen;
 var
   NewSize : longint;
 begin
+  write(#27'7'#27'[?47h');
   if IsXTerm then
-    write(#27'7'#27'[?47h')
+    {write(#27'7'#27'[?47h')}
   else if (TTYfd<>-1) then
     begin
      fpLSeek(TTYFd, 0, Seek_Set);
@@ -908,10 +909,12 @@ end;
 
 procedure TLinuxScreen.SwitchToConsoleScreen;
 begin
+  write(#27'[0m');
+  write(#27'[?47l'#27'8'#27'[m');
   if IsXterm then
     begin
-      write(#27'[0m');
-      write(#27'[?47l'#27'8'#27'[m');
+      {write(#27'[0m');
+      write(#27'[?47l'#27'8'#27'[m');}
     end
   else if (TTyfd<>-1) then
     begin