diff --git a/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequest.cs b/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequest.cs index a820ce944..1159ae37d 100644 --- a/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequest.cs +++ b/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequest.cs @@ -73,7 +73,7 @@ public class AnsiEscapeSequenceRequest // Send the ANSI escape sequence ansiRequest.Response = driver?.WriteAnsiRequest (ansiRequest)!; - if (!string.IsNullOrEmpty (ansiRequest.Response) && !ansiRequest.Response.StartsWith (EscSeqUtils.KeyEsc)) + if (!string.IsNullOrEmpty (ansiRequest.Response) && !ansiRequest.Response.StartsWith (AnsiEscapeSequenceRequestUtils.KeyEsc)) { throw new InvalidOperationException ($"Invalid Response: {ansiRequest.Response}"); } @@ -103,7 +103,7 @@ public class AnsiEscapeSequenceRequest { if (string.IsNullOrEmpty (error.ToString ())) { - (string? _, string? _, values, string? _) = EscSeqUtils.GetEscapeResult (ansiRequest.Response.ToCharArray ()); + (string? _, string? _, values, string? _) = AnsiEscapeSequenceRequestUtils.GetEscapeResult (ansiRequest.Response.ToCharArray ()); } } diff --git a/Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqReqStatus.cs b/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequestStatus.cs similarity index 71% rename from Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqReqStatus.cs rename to Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequestStatus.cs index c9561ec7b..b07d48236 100644 --- a/Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqReqStatus.cs +++ b/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequestStatus.cs @@ -3,14 +3,14 @@ namespace Terminal.Gui; /// /// Represents the status of an ANSI escape sequence request made to the terminal using -/// . +/// . /// /// -public class EscSeqReqStatus +public class AnsiEscapeSequenceRequestStatus { /// Creates a new state of escape sequence request. /// The object. - public EscSeqReqStatus (AnsiEscapeSequenceRequest ansiRequest) { AnsiRequest = ansiRequest; } + public AnsiEscapeSequenceRequestStatus (AnsiEscapeSequenceRequest ansiRequest) { AnsiRequest = ansiRequest; } /// Gets the Escape Sequence Terminator (e.g. ESC[8t ... t is the terminator). public AnsiEscapeSequenceRequest AnsiRequest { get; } diff --git a/Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqUtils.cs b/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequestUtils.cs similarity index 99% rename from Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqUtils.cs rename to Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequestUtils.cs index 7b6fe1cf6..844112d65 100644 --- a/Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqUtils.cs +++ b/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequestUtils.cs @@ -19,7 +19,7 @@ namespace Terminal.Gui; /// * https://invisible-island.net/xterm/ctlseqs/ctlseqs.html /// * https://vt100.net/ /// -public static class EscSeqUtils +public static class AnsiEscapeSequenceRequestUtils { // TODO: One type per file - Move this enum to a separate file. /// @@ -197,7 +197,7 @@ public static class EscSeqUtils /// The object. /// The handler that will process the event. public static void DecodeEscSeq ( - EscSeqRequests? escSeqRequests, + AnsiEscapeSequenceRequests? escSeqRequests, ref ConsoleKeyInfo newConsoleKeyInfo, ref ConsoleKey key, ConsoleKeyInfo [] cki, @@ -209,7 +209,7 @@ public static class EscSeqUtils out bool isMouse, out List buttonState, out Point pos, - out EscSeqReqStatus? seqReqStatus, + out AnsiEscapeSequenceRequestStatus? seqReqStatus, Action continuousButtonPressedHandler ) { diff --git a/Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqReq.cs b/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequests.cs similarity index 72% rename from Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqReq.cs rename to Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequests.cs index 280f3f9e7..8cc984523 100644 --- a/Terminal.Gui/ConsoleDrivers/EscSeqUtils/EscSeqReq.cs +++ b/Terminal.Gui/ConsoleDrivers/AnsiEscapeSequence/AnsiEscapeSequenceRequests.cs @@ -8,14 +8,14 @@ namespace Terminal.Gui; // TODO: This class is a singleton. It should use the singleton pattern. /// -/// Manages ANSI Escape Sequence requests and responses. The list of contains the +/// Manages ANSI Escape Sequence requests and responses. The list of contains the /// status of the request. Each request is identified by the terminator (e.g. ESC[8t ... t is the terminator). /// -public class EscSeqRequests +public class AnsiEscapeSequenceRequests { /// /// Adds a new request for the ANSI Escape Sequence defined by . Adds a - /// instance to list. + /// instance to list. /// /// The object. /// The driver in use. @@ -38,13 +38,13 @@ public class EscSeqRequests } /// - /// Indicates if a with the exists in the + /// Indicates if a with the exists in the /// list. /// /// /// /// if exist, otherwise. - public bool HasResponse (string terminator, out EscSeqReqStatus? seqReqStatus) + public bool HasResponse (string terminator, out AnsiEscapeSequenceRequestStatus? seqReqStatus) { lock (Statuses) { @@ -64,13 +64,13 @@ public class EscSeqRequests } /// - /// Removes a request defined by . If a matching is + /// Removes a request defined by . If a matching is /// found and the number of outstanding requests is greater than 0, the number of outstanding requests is decremented. - /// If the number of outstanding requests is 0, the is removed from + /// If the number of outstanding requests is 0, the is removed from /// . /// - /// The object. - public void Remove (EscSeqReqStatus? seqReqStatus) + /// The object. + public void Remove (AnsiEscapeSequenceRequestStatus? seqReqStatus) { lock (Statuses) { @@ -83,6 +83,6 @@ public class EscSeqRequests } } - /// Gets the list. - public ConcurrentQueue Statuses { get; } = new (); + /// Gets the list. + public ConcurrentQueue Statuses { get; } = new (); } diff --git a/Terminal.Gui/ConsoleDrivers/CursesDriver/CursesDriver.cs b/Terminal.Gui/ConsoleDrivers/CursesDriver/CursesDriver.cs index e0225b3aa..80b74edf6 100644 --- a/Terminal.Gui/ConsoleDrivers/CursesDriver/CursesDriver.cs +++ b/Terminal.Gui/ConsoleDrivers/CursesDriver/CursesDriver.cs @@ -230,7 +230,7 @@ internal class CursesDriver : ConsoleDriver redrawAttr = attr; output.Append ( - EscSeqUtils.CSI_SetForegroundColorRGB ( + AnsiEscapeSequenceRequestUtils.CSI_SetForegroundColorRGB ( attr.Foreground.R, attr.Foreground.G, attr.Foreground.B @@ -238,7 +238,7 @@ internal class CursesDriver : ConsoleDriver ); output.Append ( - EscSeqUtils.CSI_SetBackgroundColorRGB ( + AnsiEscapeSequenceRequestUtils.CSI_SetBackgroundColorRGB ( attr.Background.R, attr.Background.G, attr.Background.B @@ -487,8 +487,8 @@ internal class CursesDriver : ConsoleDriver if (visibility != CursorVisibility.Invisible) { Console.Out.Write ( - EscSeqUtils.CSI_SetCursorStyle ( - (EscSeqUtils.DECSCUSR_Style)(((int)visibility >> 24) + AnsiEscapeSequenceRequestUtils.CSI_SetCursorStyle ( + (AnsiEscapeSequenceRequestUtils.DECSCUSR_Style)(((int)visibility >> 24) & 0xFF) ) ); @@ -515,7 +515,7 @@ internal class CursesDriver : ConsoleDriver } else { - _mainLoopDriver.WriteRaw (EscSeqUtils.CSI_SetCursorPosition (Row + 1, Col + 1)); + _mainLoopDriver.WriteRaw (AnsiEscapeSequenceRequestUtils.CSI_SetCursorPosition (Row + 1, Col + 1)); } } } @@ -647,7 +647,7 @@ internal class CursesDriver : ConsoleDriver { if (!RunningUnitTests) { - Console.Out.Write (EscSeqUtils.CSI_EnableMouseEvents); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_EnableMouseEvents); } } @@ -655,7 +655,7 @@ internal class CursesDriver : ConsoleDriver { if (!RunningUnitTests) { - Console.Out.Write (EscSeqUtils.CSI_DisableMouseEvents); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_DisableMouseEvents); } } @@ -665,7 +665,7 @@ internal class CursesDriver : ConsoleDriver { // + 1 is needed because non-Windows is based on 1 instead of 0 and // Console.CursorTop/CursorLeft isn't reliable. - Console.Out.Write (EscSeqUtils.CSI_SetCursorPosition (row + 1, col + 1)); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_SetCursorPosition (row + 1, col + 1)); return true; } @@ -903,7 +903,7 @@ internal class CursesDriver : ConsoleDriver { _mainLoopDriver._forceRead = false; - if (_mainLoopDriver.EscSeqRequests.Statuses.TryPeek (out EscSeqReqStatus request)) + if (_mainLoopDriver.EscSeqRequests.Statuses.TryPeek (out AnsiEscapeSequenceRequestStatus request)) { if (_mainLoopDriver.EscSeqRequests.Statuses.Count > 0 && string.IsNullOrEmpty (request.AnsiRequest.Response)) diff --git a/Terminal.Gui/ConsoleDrivers/CursesDriver/UnixMainLoop.cs b/Terminal.Gui/ConsoleDrivers/CursesDriver/UnixMainLoop.cs index 9152296ff..68d6df13a 100644 --- a/Terminal.Gui/ConsoleDrivers/CursesDriver/UnixMainLoop.cs +++ b/Terminal.Gui/ConsoleDrivers/CursesDriver/UnixMainLoop.cs @@ -52,7 +52,7 @@ internal class UnixMainLoop : IMainLoopDriver _cursesDriver = (CursesDriver)consoleDriver ?? throw new ArgumentNullException (nameof (consoleDriver)); } - public EscSeqRequests EscSeqRequests { get; } = new (); + public AnsiEscapeSequenceRequests EscSeqRequests { get; } = new (); void IMainLoopDriver.Wakeup () { _eventReady.Set (); } @@ -77,7 +77,7 @@ internal class UnixMainLoop : IMainLoopDriver throw new NotSupportedException ("libc not found", e); } - EscSeqUtils.ContinuousButtonPressed += EscSeqUtils_ContinuousButtonPressed; + AnsiEscapeSequenceRequestUtils.ContinuousButtonPressed += EscSeqUtils_ContinuousButtonPressed; Task.Run (CursesInputHandler, _inputHandlerTokenSource.Token); Task.Run (WindowSizeHandler, _inputHandlerTokenSource.Token); @@ -213,10 +213,10 @@ internal class UnixMainLoop : IMainLoopDriver // Convert the byte array to a string (assuming UTF-8 encoding) string data = Encoding.UTF8.GetString (buffer); - if (EscSeqUtils.IncompleteCkInfos is { }) + if (AnsiEscapeSequenceRequestUtils.IncompleteCkInfos is { }) { - data = data.Insert (0, EscSeqUtils.ToString (EscSeqUtils.IncompleteCkInfos)); - EscSeqUtils.IncompleteCkInfos = null; + data = data.Insert (0, AnsiEscapeSequenceRequestUtils.ToString (AnsiEscapeSequenceRequestUtils.IncompleteCkInfos)); + AnsiEscapeSequenceRequestUtils.IncompleteCkInfos = null; } // Enqueue the data @@ -238,11 +238,11 @@ internal class UnixMainLoop : IMainLoopDriver break; } - if (EscSeqUtils.IncompleteCkInfos is null && EscSeqRequests is { Statuses.Count: > 0 }) + if (AnsiEscapeSequenceRequestUtils.IncompleteCkInfos is null && EscSeqRequests is { Statuses.Count: > 0 }) { if (_retries > 1) { - if (EscSeqRequests.Statuses.TryPeek (out EscSeqReqStatus seqReqStatus) && string.IsNullOrEmpty (seqReqStatus.AnsiRequest.Response)) + if (EscSeqRequests.Statuses.TryPeek (out AnsiEscapeSequenceRequestStatus seqReqStatus) && string.IsNullOrEmpty (seqReqStatus.AnsiRequest.Response)) { lock (seqReqStatus!.AnsiRequest._responseLock) { @@ -284,7 +284,7 @@ internal class UnixMainLoop : IMainLoopDriver private void ProcessEnqueuePollData (string pollData) { - foreach (string split in EscSeqUtils.SplitEscapeRawString (pollData)) + foreach (string split in AnsiEscapeSequenceRequestUtils.SplitEscapeRawString (pollData)) { EnqueuePollData (split); } @@ -292,13 +292,13 @@ internal class UnixMainLoop : IMainLoopDriver private void EnqueuePollData (string pollDataPart) { - ConsoleKeyInfo [] cki = EscSeqUtils.ToConsoleKeyInfoArray (pollDataPart); + ConsoleKeyInfo [] cki = AnsiEscapeSequenceRequestUtils.ToConsoleKeyInfoArray (pollDataPart); ConsoleKey key = 0; ConsoleModifiers mod = 0; ConsoleKeyInfo newConsoleKeyInfo = default; - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( EscSeqRequests, ref newConsoleKeyInfo, ref key, @@ -311,8 +311,8 @@ internal class UnixMainLoop : IMainLoopDriver out bool isMouse, out List mouseFlags, out Point pos, - out EscSeqReqStatus seqReqStatus, - EscSeqUtils.ProcessMouseEvent + out AnsiEscapeSequenceRequestStatus seqReqStatus, + AnsiEscapeSequenceRequestUtils.ProcessMouseEvent ); if (isMouse) @@ -327,7 +327,7 @@ internal class UnixMainLoop : IMainLoopDriver if (seqReqStatus is { }) { - var ckiString = EscSeqUtils.ToString (cki); + var ckiString = AnsiEscapeSequenceRequestUtils.ToString (cki); lock (seqReqStatus.AnsiRequest._responseLock) { @@ -338,16 +338,16 @@ internal class UnixMainLoop : IMainLoopDriver return; } - if (!string.IsNullOrEmpty (EscSeqUtils.InvalidRequestTerminator)) + if (!string.IsNullOrEmpty (AnsiEscapeSequenceRequestUtils.InvalidRequestTerminator)) { - if (EscSeqRequests.Statuses.TryDequeue (out EscSeqReqStatus result)) + if (EscSeqRequests.Statuses.TryDequeue (out AnsiEscapeSequenceRequestStatus result)) { lock (result.AnsiRequest._responseLock) { - result.AnsiRequest.Response = EscSeqUtils.InvalidRequestTerminator; - result.AnsiRequest.RaiseResponseFromInput (result.AnsiRequest, EscSeqUtils.InvalidRequestTerminator); + result.AnsiRequest.Response = AnsiEscapeSequenceRequestUtils.InvalidRequestTerminator; + result.AnsiRequest.RaiseResponseFromInput (result.AnsiRequest, AnsiEscapeSequenceRequestUtils.InvalidRequestTerminator); - EscSeqUtils.InvalidRequestTerminator = null; + AnsiEscapeSequenceRequestUtils.InvalidRequestTerminator = null; } } @@ -425,7 +425,7 @@ internal class UnixMainLoop : IMainLoopDriver void IMainLoopDriver.TearDown () { - EscSeqUtils.ContinuousButtonPressed -= EscSeqUtils_ContinuousButtonPressed; + AnsiEscapeSequenceRequestUtils.ContinuousButtonPressed -= EscSeqUtils_ContinuousButtonPressed; _inputHandlerTokenSource?.Cancel (); _inputHandlerTokenSource?.Dispose (); diff --git a/Terminal.Gui/ConsoleDrivers/NetDriver/NetDriver.cs b/Terminal.Gui/ConsoleDrivers/NetDriver/NetDriver.cs index e4103d8c3..d650c91f0 100644 --- a/Terminal.Gui/ConsoleDrivers/NetDriver/NetDriver.cs +++ b/Terminal.Gui/ConsoleDrivers/NetDriver/NetDriver.cs @@ -37,15 +37,15 @@ internal class NetDriver : ConsoleDriver Console.Clear (); //Disable alternative screen buffer. - Console.Out.Write (EscSeqUtils.CSI_RestoreCursorAndRestoreAltBufferWithBackscroll); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_RestoreCursorAndRestoreAltBufferWithBackscroll); //Set cursor key to cursor. - Console.Out.Write (EscSeqUtils.CSI_ShowCursor); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_ShowCursor); Platform.Suspend (); //Enable alternative screen buffer. - Console.Out.Write (EscSeqUtils.CSI_SaveCursorAndActivateAltBufferNoBackscroll); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_SaveCursorAndActivateAltBufferNoBackscroll); SetContentsAsDirty (); Refresh (); @@ -139,7 +139,7 @@ internal class NetDriver : ConsoleDriver if (Force16Colors) { output.Append ( - EscSeqUtils.CSI_SetGraphicsRendition ( + AnsiEscapeSequenceRequestUtils.CSI_SetGraphicsRendition ( MapColors ( (ConsoleColor)attr.Background.GetClosestNamedColor16 (), false @@ -151,7 +151,7 @@ internal class NetDriver : ConsoleDriver else { output.Append ( - EscSeqUtils.CSI_SetForegroundColorRGB ( + AnsiEscapeSequenceRequestUtils.CSI_SetForegroundColorRGB ( attr.Foreground.R, attr.Foreground.G, attr.Foreground.B @@ -159,7 +159,7 @@ internal class NetDriver : ConsoleDriver ); output.Append ( - EscSeqUtils.CSI_SetBackgroundColorRGB ( + AnsiEscapeSequenceRequestUtils.CSI_SetBackgroundColorRGB ( attr.Background.R, attr.Background.G, attr.Background.B @@ -277,10 +277,10 @@ internal class NetDriver : ConsoleDriver Rows = Console.WindowHeight; //Enable alternative screen buffer. - Console.Out.Write (EscSeqUtils.CSI_SaveCursorAndActivateAltBufferNoBackscroll); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_SaveCursorAndActivateAltBufferNoBackscroll); //Set cursor key to application. - Console.Out.Write (EscSeqUtils.CSI_HideCursor); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_HideCursor); } else { @@ -374,10 +374,10 @@ internal class NetDriver : ConsoleDriver Console.ResetColor (); //Disable alternative screen buffer. - Console.Out.Write (EscSeqUtils.CSI_RestoreCursorAndRestoreAltBufferWithBackscroll); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_RestoreCursorAndRestoreAltBufferWithBackscroll); //Set cursor key to cursor. - Console.Out.Write (EscSeqUtils.CSI_ShowCursor); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_ShowCursor); Console.Out.Close (); } } @@ -467,7 +467,7 @@ internal class NetDriver : ConsoleDriver // + 1 is needed because non-Windows is based on 1 instead of 0 and // Console.CursorTop/CursorLeft isn't reliable. - Console.Out.Write (EscSeqUtils.CSI_SetCursorPosition (row + 1, col + 1)); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_SetCursorPosition (row + 1, col + 1)); return true; } @@ -496,7 +496,7 @@ internal class NetDriver : ConsoleDriver { _cachedCursorVisibility = visibility; - Console.Out.Write (visibility == CursorVisibility.Default ? EscSeqUtils.CSI_ShowCursor : EscSeqUtils.CSI_HideCursor); + Console.Out.Write (visibility == CursorVisibility.Default ? AnsiEscapeSequenceRequestUtils.CSI_ShowCursor : AnsiEscapeSequenceRequestUtils.CSI_HideCursor); return visibility == CursorVisibility.Default; } @@ -525,7 +525,7 @@ internal class NetDriver : ConsoleDriver { if (!RunningUnitTests) { - Console.Out.Write (EscSeqUtils.CSI_EnableMouseEvents); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_EnableMouseEvents); } } @@ -533,7 +533,7 @@ internal class NetDriver : ConsoleDriver { if (!RunningUnitTests) { - Console.Out.Write (EscSeqUtils.CSI_DisableMouseEvents); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_DisableMouseEvents); } } @@ -875,7 +875,7 @@ internal class NetDriver : ConsoleDriver { _mainLoopDriver._netEvents._forceRead = false; - if (_mainLoopDriver._netEvents.EscSeqRequests.Statuses.TryPeek (out EscSeqReqStatus request)) + if (_mainLoopDriver._netEvents.EscSeqRequests.Statuses.TryPeek (out AnsiEscapeSequenceRequestStatus request)) { if (_mainLoopDriver._netEvents.EscSeqRequests.Statuses.Count > 0 && string.IsNullOrEmpty (request.AnsiRequest.Response)) @@ -954,7 +954,7 @@ internal class NetDriver : ConsoleDriver } else { - Console.Out.Write (EscSeqUtils.CSI_SetTerminalWindowSize (Rows, Cols)); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_SetTerminalWindowSize (Rows, Cols)); } // CONCURRENCY: Unsynchronized access to Clip is not safe. diff --git a/Terminal.Gui/ConsoleDrivers/NetDriver/NetEvents.cs b/Terminal.Gui/ConsoleDrivers/NetDriver/NetEvents.cs index 6c4c24d1f..3e5414241 100644 --- a/Terminal.Gui/ConsoleDrivers/NetDriver/NetEvents.cs +++ b/Terminal.Gui/ConsoleDrivers/NetDriver/NetEvents.cs @@ -19,7 +19,7 @@ internal class NetEvents : IDisposable #if PROCESS_REQUEST bool _neededProcessRequest; #endif - public EscSeqRequests EscSeqRequests { get; } = new (); + public AnsiEscapeSequenceRequests EscSeqRequests { get; } = new (); public NetEvents (ConsoleDriver consoleDriver) { @@ -84,11 +84,11 @@ internal class NetEvents : IDisposable return Console.ReadKey (intercept); } - if (EscSeqUtils.IncompleteCkInfos is null && EscSeqRequests is { Statuses.Count: > 0 }) + if (AnsiEscapeSequenceRequestUtils.IncompleteCkInfos is null && EscSeqRequests is { Statuses.Count: > 0 }) { if (_retries > 1) { - if (EscSeqRequests.Statuses.TryPeek (out EscSeqReqStatus seqReqStatus) && string.IsNullOrEmpty (seqReqStatus.AnsiRequest.Response)) + if (EscSeqRequests.Statuses.TryPeek (out AnsiEscapeSequenceRequestStatus seqReqStatus) && string.IsNullOrEmpty (seqReqStatus.AnsiRequest.Response)) { lock (seqReqStatus!.AnsiRequest._responseLock) { @@ -161,9 +161,9 @@ internal class NetEvents : IDisposable return; } - if (EscSeqUtils.IncompleteCkInfos is { }) + if (AnsiEscapeSequenceRequestUtils.IncompleteCkInfos is { }) { - EscSeqUtils.InsertArray (EscSeqUtils.IncompleteCkInfos, _cki); + AnsiEscapeSequenceRequestUtils.InsertArray (AnsiEscapeSequenceRequestUtils.IncompleteCkInfos, _cki); } if ((consoleKeyInfo.KeyChar == (char)KeyCode.Esc && !_isEscSeq) @@ -171,7 +171,7 @@ internal class NetEvents : IDisposable { if (_cki is null && consoleKeyInfo.KeyChar != (char)KeyCode.Esc && _isEscSeq) { - _cki = EscSeqUtils.ResizeArray ( + _cki = AnsiEscapeSequenceRequestUtils.ResizeArray ( new ConsoleKeyInfo ( (char)KeyCode.Esc, 0, @@ -199,7 +199,7 @@ internal class NetEvents : IDisposable else { newConsoleKeyInfo = consoleKeyInfo; - _cki = EscSeqUtils.ResizeArray (consoleKeyInfo, _cki); + _cki = AnsiEscapeSequenceRequestUtils.ResizeArray (consoleKeyInfo, _cki); if (Console.KeyAvailable) { @@ -221,7 +221,7 @@ internal class NetEvents : IDisposable if (Console.KeyAvailable) { - _cki = EscSeqUtils.ResizeArray (consoleKeyInfo, _cki); + _cki = AnsiEscapeSequenceRequestUtils.ResizeArray (consoleKeyInfo, _cki); } else { @@ -250,7 +250,7 @@ internal class NetEvents : IDisposable _inputQueue.Enqueue ( new InputResult { - EventType = EventType.Key, ConsoleKeyInfo = EscSeqUtils.MapConsoleKeyInfo (consoleKeyInfo) + EventType = EventType.Key, ConsoleKeyInfo = AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (consoleKeyInfo) } ); _isEscSeq = false; @@ -346,7 +346,7 @@ internal class NetEvents : IDisposable ) { // isMouse is true if it's CSI<, false otherwise - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( EscSeqRequests, ref newConsoleKeyInfo, ref key, @@ -359,7 +359,7 @@ internal class NetEvents : IDisposable out bool isMouse, out List mouseFlags, out Point pos, - out EscSeqReqStatus seqReqStatus, + out AnsiEscapeSequenceRequestStatus seqReqStatus, (f, p) => HandleMouseEvent (MapMouseFlags (f), p) ); @@ -377,7 +377,7 @@ internal class NetEvents : IDisposable { //HandleRequestResponseEvent (c1Control, code, values, terminating); - var ckiString = EscSeqUtils.ToString (cki); + var ckiString = AnsiEscapeSequenceRequestUtils.ToString (cki); lock (seqReqStatus.AnsiRequest._responseLock) { @@ -388,16 +388,16 @@ internal class NetEvents : IDisposable return; } - if (!string.IsNullOrEmpty (EscSeqUtils.InvalidRequestTerminator)) + if (!string.IsNullOrEmpty (AnsiEscapeSequenceRequestUtils.InvalidRequestTerminator)) { - if (EscSeqRequests.Statuses.TryDequeue (out EscSeqReqStatus result)) + if (EscSeqRequests.Statuses.TryDequeue (out AnsiEscapeSequenceRequestStatus result)) { lock (result.AnsiRequest._responseLock) { - result.AnsiRequest.Response = EscSeqUtils.InvalidRequestTerminator; - result.AnsiRequest.RaiseResponseFromInput (result.AnsiRequest, EscSeqUtils.InvalidRequestTerminator); + result.AnsiRequest.Response = AnsiEscapeSequenceRequestUtils.InvalidRequestTerminator; + result.AnsiRequest.RaiseResponseFromInput (result.AnsiRequest, AnsiEscapeSequenceRequestUtils.InvalidRequestTerminator); - EscSeqUtils.InvalidRequestTerminator = null; + AnsiEscapeSequenceRequestUtils.InvalidRequestTerminator = null; } } diff --git a/Terminal.Gui/ConsoleDrivers/WindowsDriver/WindowsConsole.cs b/Terminal.Gui/ConsoleDrivers/WindowsDriver/WindowsConsole.cs index 1507ed4f4..430085a2a 100644 --- a/Terminal.Gui/ConsoleDrivers/WindowsDriver/WindowsConsole.cs +++ b/Terminal.Gui/ConsoleDrivers/WindowsDriver/WindowsConsole.cs @@ -68,8 +68,8 @@ internal class WindowsConsole { _stringBuilder.Clear (); - _stringBuilder.Append (EscSeqUtils.CSI_SaveCursorPosition); - _stringBuilder.Append (EscSeqUtils.CSI_SetCursorPosition (0, 0)); + _stringBuilder.Append (AnsiEscapeSequenceRequestUtils.CSI_SaveCursorPosition); + _stringBuilder.Append (AnsiEscapeSequenceRequestUtils.CSI_SetCursorPosition (0, 0)); Attribute? prev = null; @@ -80,8 +80,8 @@ internal class WindowsConsole if (attr != prev) { prev = attr; - _stringBuilder.Append (EscSeqUtils.CSI_SetForegroundColorRGB (attr.Foreground.R, attr.Foreground.G, attr.Foreground.B)); - _stringBuilder.Append (EscSeqUtils.CSI_SetBackgroundColorRGB (attr.Background.R, attr.Background.G, attr.Background.B)); + _stringBuilder.Append (AnsiEscapeSequenceRequestUtils.CSI_SetForegroundColorRGB (attr.Foreground.R, attr.Foreground.G, attr.Foreground.B)); + _stringBuilder.Append (AnsiEscapeSequenceRequestUtils.CSI_SetBackgroundColorRGB (attr.Background.R, attr.Background.G, attr.Background.B)); } if (info.Char != '\x1b') @@ -97,8 +97,8 @@ internal class WindowsConsole } } - _stringBuilder.Append (EscSeqUtils.CSI_RestoreCursorPosition); - _stringBuilder.Append (EscSeqUtils.CSI_HideCursor); + _stringBuilder.Append (AnsiEscapeSequenceRequestUtils.CSI_RestoreCursorPosition); + _stringBuilder.Append (AnsiEscapeSequenceRequestUtils.CSI_HideCursor); var s = _stringBuilder.ToString (); @@ -949,7 +949,7 @@ internal class WindowsConsole ansiSequence.Append (inputChar); // Check if the sequence has ended with an expected command terminator - if (_mainLoop.EscSeqRequests is { } && _mainLoop.EscSeqRequests.HasResponse (inputChar.ToString (), out EscSeqReqStatus seqReqStatus)) + if (_mainLoop.EscSeqRequests is { } && _mainLoop.EscSeqRequests.HasResponse (inputChar.ToString (), out AnsiEscapeSequenceRequestStatus seqReqStatus)) { // Finished reading the sequence and remove the enqueued request _mainLoop.EscSeqRequests.Remove (seqReqStatus); @@ -970,9 +970,9 @@ internal class WindowsConsole } } - if (readingSequence && !raisedResponse && EscSeqUtils.IncompleteCkInfos is null && _mainLoop.EscSeqRequests is { Statuses.Count: > 0 }) + if (readingSequence && !raisedResponse && AnsiEscapeSequenceRequestUtils.IncompleteCkInfos is null && _mainLoop.EscSeqRequests is { Statuses.Count: > 0 }) { - _mainLoop.EscSeqRequests.Statuses.TryDequeue (out EscSeqReqStatus seqReqStatus); + _mainLoop.EscSeqRequests.Statuses.TryDequeue (out AnsiEscapeSequenceRequestStatus seqReqStatus); lock (seqReqStatus!.AnsiRequest._responseLock) { @@ -984,11 +984,11 @@ internal class WindowsConsole _retries = 0; } - else if (EscSeqUtils.IncompleteCkInfos is null && _mainLoop.EscSeqRequests is { Statuses.Count: > 0 }) + else if (AnsiEscapeSequenceRequestUtils.IncompleteCkInfos is null && _mainLoop.EscSeqRequests is { Statuses.Count: > 0 }) { if (_retries > 1) { - if (_mainLoop.EscSeqRequests.Statuses.TryPeek (out EscSeqReqStatus seqReqStatus) && string.IsNullOrEmpty (seqReqStatus.AnsiRequest.Response)) + if (_mainLoop.EscSeqRequests.Statuses.TryPeek (out AnsiEscapeSequenceRequestStatus seqReqStatus) && string.IsNullOrEmpty (seqReqStatus.AnsiRequest.Response)) { lock (seqReqStatus!.AnsiRequest._responseLock) { diff --git a/Terminal.Gui/ConsoleDrivers/WindowsDriver/WindowsDriver.cs b/Terminal.Gui/ConsoleDrivers/WindowsDriver/WindowsDriver.cs index 656043f70..9372fcb04 100644 --- a/Terminal.Gui/ConsoleDrivers/WindowsDriver/WindowsDriver.cs +++ b/Terminal.Gui/ConsoleDrivers/WindowsDriver/WindowsDriver.cs @@ -242,7 +242,7 @@ internal class WindowsDriver : ConsoleDriver { _mainLoopDriver._forceRead = false; - if (_mainLoopDriver.EscSeqRequests.Statuses.TryPeek (out EscSeqReqStatus request)) + if (_mainLoopDriver.EscSeqRequests.Statuses.TryPeek (out AnsiEscapeSequenceRequestStatus request)) { if (_mainLoopDriver.EscSeqRequests.Statuses.Count > 0 && string.IsNullOrEmpty (request.AnsiRequest.Response)) @@ -316,7 +316,7 @@ internal class WindowsDriver : ConsoleDriver else { var sb = new StringBuilder (); - sb.Append (EscSeqUtils.CSI_SetCursorPosition (position.Y + 1, position.X + 1)); + sb.Append (AnsiEscapeSequenceRequestUtils.CSI_SetCursorPosition (position.Y + 1, position.X + 1)); WinConsole?.WriteANSI (sb.ToString ()); } @@ -352,7 +352,7 @@ internal class WindowsDriver : ConsoleDriver else { var sb = new StringBuilder (); - sb.Append (visibility != CursorVisibility.Invisible ? EscSeqUtils.CSI_ShowCursor : EscSeqUtils.CSI_HideCursor); + sb.Append (visibility != CursorVisibility.Invisible ? AnsiEscapeSequenceRequestUtils.CSI_ShowCursor : AnsiEscapeSequenceRequestUtils.CSI_HideCursor); return WinConsole?.WriteANSI (sb.ToString ()) ?? false; } } @@ -367,7 +367,7 @@ internal class WindowsDriver : ConsoleDriver else { var sb = new StringBuilder (); - sb.Append (_cachedCursorVisibility != CursorVisibility.Invisible ? EscSeqUtils.CSI_ShowCursor : EscSeqUtils.CSI_HideCursor); + sb.Append (_cachedCursorVisibility != CursorVisibility.Invisible ? AnsiEscapeSequenceRequestUtils.CSI_ShowCursor : AnsiEscapeSequenceRequestUtils.CSI_HideCursor); return WinConsole?.WriteANSI (sb.ToString ()) ?? false; } @@ -488,7 +488,7 @@ internal class WindowsDriver : ConsoleDriver if (!RunningUnitTests && _isWindowsTerminal) { // Disable alternative screen buffer. - Console.Out.Write (EscSeqUtils.CSI_RestoreCursorAndRestoreAltBufferWithBackscroll); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_RestoreCursorAndRestoreAltBufferWithBackscroll); } } @@ -513,7 +513,7 @@ internal class WindowsDriver : ConsoleDriver if (_isWindowsTerminal) { - Console.Out.Write (EscSeqUtils.CSI_SaveCursorAndActivateAltBufferNoBackscroll); + Console.Out.Write (AnsiEscapeSequenceRequestUtils.CSI_SaveCursorAndActivateAltBufferNoBackscroll); } } catch (Win32Exception e) @@ -1291,7 +1291,7 @@ internal class WindowsMainLoop : IMainLoopDriver } } - public EscSeqRequests EscSeqRequests { get; } = new (); + public AnsiEscapeSequenceRequests EscSeqRequests { get; } = new (); void IMainLoopDriver.Setup (MainLoop mainLoop) { diff --git a/UICatalog/Scenarios/AnsiEscapeSequenceRequests.cs b/UICatalog/Scenarios/AnsiEscapeSequenceRequests.cs index 62fd1ef60..af8b0d868 100644 --- a/UICatalog/Scenarios/AnsiEscapeSequenceRequests.cs +++ b/UICatalog/Scenarios/AnsiEscapeSequenceRequests.cs @@ -109,19 +109,19 @@ public sealed class AnsiEscapeSequenceRequests : Scenario switch (selAnsiEscapeSequenceRequestName) { case "CSI_SendDeviceAttributes": - selAnsiEscapeSequenceRequest = EscSeqUtils.CSI_SendDeviceAttributes; + selAnsiEscapeSequenceRequest = AnsiEscapeSequenceRequestUtils.CSI_SendDeviceAttributes; break; case "CSI_ReportTerminalSizeInChars": - selAnsiEscapeSequenceRequest = EscSeqUtils.CSI_ReportTerminalSizeInChars; + selAnsiEscapeSequenceRequest = AnsiEscapeSequenceRequestUtils.CSI_ReportTerminalSizeInChars; break; case "CSI_RequestCursorPositionReport": - selAnsiEscapeSequenceRequest = EscSeqUtils.CSI_RequestCursorPositionReport; + selAnsiEscapeSequenceRequest = AnsiEscapeSequenceRequestUtils.CSI_RequestCursorPositionReport; break; case "CSI_SendDeviceAttributes2": - selAnsiEscapeSequenceRequest = EscSeqUtils.CSI_SendDeviceAttributes2; + selAnsiEscapeSequenceRequest = AnsiEscapeSequenceRequestUtils.CSI_SendDeviceAttributes2; break; } @@ -372,7 +372,7 @@ public sealed class AnsiEscapeSequenceRequests : Scenario private void SendDar () { _sends.Add (DateTime.Now); - string result = Application.Driver.WriteAnsiRequest (EscSeqUtils.CSI_SendDeviceAttributes); + string result = Application.Driver.WriteAnsiRequest (AnsiEscapeSequenceRequestUtils.CSI_SendDeviceAttributes); HandleResponse (result); } diff --git a/UnitTests/Input/EscSeqUtilsTests.cs b/UnitTests/Input/AnsiEscapeSequenceRequestUtilsTests.cs similarity index 84% rename from UnitTests/Input/EscSeqUtilsTests.cs rename to UnitTests/Input/AnsiEscapeSequenceRequestUtilsTests.cs index 7cc225971..dbfc5286e 100644 --- a/UnitTests/Input/EscSeqUtilsTests.cs +++ b/UnitTests/Input/AnsiEscapeSequenceRequestUtilsTests.cs @@ -3,17 +3,17 @@ namespace Terminal.Gui.InputTests; -public class EscSeqUtilsTests +public class AnsiEscapeSequenceRequestUtilsTests { private bool _actionStarted; private MouseFlags _arg1; private Point _arg2; private string _c1Control, _code, _terminating; private ConsoleKeyInfo [] _cki; - private EscSeqRequests _escSeqReqProc; + private AnsiEscapeSequenceRequests _escSeqReqProc; private bool _isKeyMouse; [CanBeNull] - private EscSeqReqStatus _seqReqStatus; + private AnsiEscapeSequenceRequestStatus _seqReqStatus; private ConsoleKey _key; private ConsoleModifiers _mod; private List _mouseFlags; @@ -29,7 +29,7 @@ public class EscSeqUtilsTests _cki = new ConsoleKeyInfo [] { new ('\u001b', 0, false, false, false) }; var expectedCki = new ConsoleKeyInfo ('\u001b', ConsoleKey.Escape, false, false, false); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -64,7 +64,7 @@ public class EscSeqUtilsTests _cki = new ConsoleKeyInfo [] { new ('\u001b', 0, false, false, false), new ('\u0012', 0, false, false, false) }; expectedCki = new ('\u0012', ConsoleKey.R, false, true, true); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -99,7 +99,7 @@ public class EscSeqUtilsTests _cki = new ConsoleKeyInfo [] { new ('\u001b', 0, false, false, false), new ('r', 0, false, false, false) }; expectedCki = new ('r', ConsoleKey.R, false, true, false); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -139,7 +139,7 @@ public class EscSeqUtilsTests }; expectedCki = new ('\0', ConsoleKey.F3, false, false, false); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -185,7 +185,7 @@ public class EscSeqUtilsTests }; expectedCki = new ('\0', ConsoleKey.F3, true, false, false); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -231,7 +231,7 @@ public class EscSeqUtilsTests }; expectedCki = new ('\0', ConsoleKey.F3, false, true, false); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -277,7 +277,7 @@ public class EscSeqUtilsTests }; expectedCki = new ('\0', ConsoleKey.F3, true, true, false); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -323,7 +323,7 @@ public class EscSeqUtilsTests }; expectedCki = new ('\0', ConsoleKey.F3, false, false, true); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -369,7 +369,7 @@ public class EscSeqUtilsTests }; expectedCki = new ('\0', ConsoleKey.F3, true, false, true); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -415,7 +415,7 @@ public class EscSeqUtilsTests }; expectedCki = new ('\0', ConsoleKey.F3, false, true, true); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -461,7 +461,7 @@ public class EscSeqUtilsTests }; expectedCki = new ('\0', ConsoleKey.F3, true, true, true); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -510,7 +510,7 @@ public class EscSeqUtilsTests }; expectedCki = default (ConsoleKeyInfo); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -560,7 +560,7 @@ public class EscSeqUtilsTests }; expectedCki = default (ConsoleKeyInfo); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -615,7 +615,7 @@ public class EscSeqUtilsTests }; expectedCki = default (ConsoleKeyInfo); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -663,7 +663,7 @@ public class EscSeqUtilsTests }; expectedCki = default (ConsoleKeyInfo); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -718,7 +718,7 @@ public class EscSeqUtilsTests }; expectedCki = default (ConsoleKeyInfo); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -787,7 +787,7 @@ public class EscSeqUtilsTests }; expectedCki = default (ConsoleKeyInfo); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -844,7 +844,7 @@ public class EscSeqUtilsTests Assert.Single (_escSeqReqProc.Statuses); Assert.Equal ("t", _escSeqReqProc.Statuses.ToArray () [^1].AnsiRequest.Terminator); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -908,7 +908,7 @@ public class EscSeqUtilsTests var expectedCki = new ConsoleKeyInfo (keyChar, consoleKey, shift, alt, control); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -975,7 +975,7 @@ public class EscSeqUtilsTests ConsoleKeyInfo expectedCki = default; - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -1005,10 +1005,10 @@ public class EscSeqUtilsTests Assert.Null (_seqReqStatus); Assert.Equal (0, (int)_arg1); Assert.Equal (Point.Empty, _arg2); - Assert.Equal (_cki, EscSeqUtils.IncompleteCkInfos); + Assert.Equal (_cki, AnsiEscapeSequenceRequestUtils.IncompleteCkInfos); - _cki = EscSeqUtils.InsertArray ( - EscSeqUtils.IncompleteCkInfos, + _cki = AnsiEscapeSequenceRequestUtils.InsertArray ( + AnsiEscapeSequenceRequestUtils.IncompleteCkInfos, [ new ('0', 0, false, false, false), new (';', 0, false, false, false), @@ -1019,7 +1019,7 @@ public class EscSeqUtilsTests expectedCki = default; - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -1050,8 +1050,8 @@ public class EscSeqUtilsTests Assert.Null (_seqReqStatus); Assert.Equal (0, (int)_arg1); Assert.Equal (Point.Empty, _arg2); - Assert.NotEqual (_cki, EscSeqUtils.IncompleteCkInfos); - Assert.Contains (EscSeqUtils.ToString (EscSeqUtils.IncompleteCkInfos), EscSeqUtils.ToString (_cki)); + Assert.NotEqual (_cki, AnsiEscapeSequenceRequestUtils.IncompleteCkInfos); + Assert.Contains (AnsiEscapeSequenceRequestUtils.ToString (AnsiEscapeSequenceRequestUtils.IncompleteCkInfos), AnsiEscapeSequenceRequestUtils.ToString (_cki)); ClearAll (); } @@ -1072,7 +1072,7 @@ public class EscSeqUtilsTests _cki = [new (keyChar, 0, false, false, false)]; var expectedCki = new ConsoleKeyInfo (keyChar, consoleKey, shift, alt, control); - EscSeqUtils.DecodeEscSeq ( + AnsiEscapeSequenceRequestUtils.DecodeEscSeq ( _escSeqReqProc, ref _newConsoleKeyInfo, ref _key, @@ -1136,38 +1136,38 @@ public class EscSeqUtilsTests [Fact] public void Defaults_Values () { - Assert.Equal ('\x1b', EscSeqUtils.KeyEsc); - Assert.Equal ("\x1b[", EscSeqUtils.CSI); - Assert.Equal ("\x1b[?1003h", EscSeqUtils.CSI_EnableAnyEventMouse); - Assert.Equal ("\x1b[?1006h", EscSeqUtils.CSI_EnableSgrExtModeMouse); - Assert.Equal ("\x1b[?1015h", EscSeqUtils.CSI_EnableUrxvtExtModeMouse); - Assert.Equal ("\x1b[?1003l", EscSeqUtils.CSI_DisableAnyEventMouse); - Assert.Equal ("\x1b[?1006l", EscSeqUtils.CSI_DisableSgrExtModeMouse); - Assert.Equal ("\x1b[?1015l", EscSeqUtils.CSI_DisableUrxvtExtModeMouse); - Assert.Equal ("\x1b[?1003h\x1b[?1015h\u001b[?1006h", EscSeqUtils.CSI_EnableMouseEvents); - Assert.Equal ("\x1b[?1003l\x1b[?1015l\u001b[?1006l", EscSeqUtils.CSI_DisableMouseEvents); + Assert.Equal ('\x1b', AnsiEscapeSequenceRequestUtils.KeyEsc); + Assert.Equal ("\x1b[", AnsiEscapeSequenceRequestUtils.CSI); + Assert.Equal ("\x1b[?1003h", AnsiEscapeSequenceRequestUtils.CSI_EnableAnyEventMouse); + Assert.Equal ("\x1b[?1006h", AnsiEscapeSequenceRequestUtils.CSI_EnableSgrExtModeMouse); + Assert.Equal ("\x1b[?1015h", AnsiEscapeSequenceRequestUtils.CSI_EnableUrxvtExtModeMouse); + Assert.Equal ("\x1b[?1003l", AnsiEscapeSequenceRequestUtils.CSI_DisableAnyEventMouse); + Assert.Equal ("\x1b[?1006l", AnsiEscapeSequenceRequestUtils.CSI_DisableSgrExtModeMouse); + Assert.Equal ("\x1b[?1015l", AnsiEscapeSequenceRequestUtils.CSI_DisableUrxvtExtModeMouse); + Assert.Equal ("\x1b[?1003h\x1b[?1015h\u001b[?1006h", AnsiEscapeSequenceRequestUtils.CSI_EnableMouseEvents); + Assert.Equal ("\x1b[?1003l\x1b[?1015l\u001b[?1006l", AnsiEscapeSequenceRequestUtils.CSI_DisableMouseEvents); } [Fact] public void GetC1ControlChar_Tests () { - Assert.Equal ("IND", EscSeqUtils.GetC1ControlChar ('D')); - Assert.Equal ("NEL", EscSeqUtils.GetC1ControlChar ('E')); - Assert.Equal ("HTS", EscSeqUtils.GetC1ControlChar ('H')); - Assert.Equal ("RI", EscSeqUtils.GetC1ControlChar ('M')); - Assert.Equal ("SS2", EscSeqUtils.GetC1ControlChar ('N')); - Assert.Equal ("SS3", EscSeqUtils.GetC1ControlChar ('O')); - Assert.Equal ("DCS", EscSeqUtils.GetC1ControlChar ('P')); - Assert.Equal ("SPA", EscSeqUtils.GetC1ControlChar ('V')); - Assert.Equal ("EPA", EscSeqUtils.GetC1ControlChar ('W')); - Assert.Equal ("SOS", EscSeqUtils.GetC1ControlChar ('X')); - Assert.Equal ("DECID", EscSeqUtils.GetC1ControlChar ('Z')); - Assert.Equal ("CSI", EscSeqUtils.GetC1ControlChar ('[')); - Assert.Equal ("ST", EscSeqUtils.GetC1ControlChar ('\\')); - Assert.Equal ("OSC", EscSeqUtils.GetC1ControlChar (']')); - Assert.Equal ("PM", EscSeqUtils.GetC1ControlChar ('^')); - Assert.Equal ("APC", EscSeqUtils.GetC1ControlChar ('_')); - Assert.Equal ("", EscSeqUtils.GetC1ControlChar ('\0')); + Assert.Equal ("IND", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('D')); + Assert.Equal ("NEL", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('E')); + Assert.Equal ("HTS", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('H')); + Assert.Equal ("RI", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('M')); + Assert.Equal ("SS2", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('N')); + Assert.Equal ("SS3", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('O')); + Assert.Equal ("DCS", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('P')); + Assert.Equal ("SPA", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('V')); + Assert.Equal ("EPA", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('W')); + Assert.Equal ("SOS", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('X')); + Assert.Equal ("DECID", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('Z')); + Assert.Equal ("CSI", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('[')); + Assert.Equal ("ST", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('\\')); + Assert.Equal ("OSC", AnsiEscapeSequenceRequestUtils.GetC1ControlChar (']')); + Assert.Equal ("PM", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('^')); + Assert.Equal ("APC", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('_')); + Assert.Equal ("", AnsiEscapeSequenceRequestUtils.GetC1ControlChar ('\0')); } [Fact] @@ -1175,51 +1175,51 @@ public class EscSeqUtilsTests { var cki = new ConsoleKeyInfo ('r', 0, false, false, false); var expectedCki = new ConsoleKeyInfo ('r', ConsoleKey.R, false, false, false); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('r', 0, true, false, false); expectedCki = new ('r', ConsoleKey.R, true, false, false); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('r', 0, false, true, false); expectedCki = new ('r', ConsoleKey.R, false, true, false); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('r', 0, false, false, true); expectedCki = new ('r', ConsoleKey.R, false, false, true); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('r', 0, true, true, false); expectedCki = new ('r', ConsoleKey.R, true, true, false); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('r', 0, false, true, true); expectedCki = new ('r', ConsoleKey.R, false, true, true); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('r', 0, true, true, true); expectedCki = new ('r', ConsoleKey.R, true, true, true); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('\u0012', 0, false, false, false); expectedCki = new ('\u0012', ConsoleKey.R, false, false, true); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('\0', (ConsoleKey)64, false, false, true); expectedCki = new ('\0', ConsoleKey.Spacebar, false, false, true); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('\r', 0, false, false, false); expectedCki = new ('\r', ConsoleKey.Enter, false, false, false); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('\u007f', 0, false, false, false); expectedCki = new ('\u007f', ConsoleKey.Backspace, false, false, false); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); cki = new ('R', 0, false, false, false); expectedCki = new ('R', ConsoleKey.R, true, false, false); - Assert.Equal (expectedCki, EscSeqUtils.MapConsoleKeyInfo (cki)); + Assert.Equal (expectedCki, AnsiEscapeSequenceRequestUtils.MapConsoleKeyInfo (cki)); } [Fact] @@ -1227,69 +1227,69 @@ public class EscSeqUtilsTests { ConsoleModifiers mod = 0; char keyChar = '\0'; - Assert.Equal (ConsoleKey.UpArrow, EscSeqUtils.GetConsoleKey ('A', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.DownArrow, EscSeqUtils.GetConsoleKey ('B', "", ref mod, ref keyChar)); - Assert.Equal (_key = ConsoleKey.RightArrow, EscSeqUtils.GetConsoleKey ('C', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.LeftArrow, EscSeqUtils.GetConsoleKey ('D', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.End, EscSeqUtils.GetConsoleKey ('F', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.Home, EscSeqUtils.GetConsoleKey ('H', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F1, EscSeqUtils.GetConsoleKey ('P', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F2, EscSeqUtils.GetConsoleKey ('Q', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F3, EscSeqUtils.GetConsoleKey ('R', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F4, EscSeqUtils.GetConsoleKey ('S', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.Tab, EscSeqUtils.GetConsoleKey ('Z', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.UpArrow, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('A', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.DownArrow, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('B', "", ref mod, ref keyChar)); + Assert.Equal (_key = ConsoleKey.RightArrow, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('C', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.LeftArrow, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('D', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.End, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('F', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Home, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('H', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F1, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('P', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F2, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('Q', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F3, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('R', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F4, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('S', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Tab, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('Z', "", ref mod, ref keyChar)); Assert.Equal (ConsoleModifiers.Shift, mod); - Assert.Equal (0, (int)EscSeqUtils.GetConsoleKey ('\0', "", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.Insert, EscSeqUtils.GetConsoleKey ('~', "2", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.Delete, EscSeqUtils.GetConsoleKey ('~', "3", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.PageUp, EscSeqUtils.GetConsoleKey ('~', "5", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.PageDown, EscSeqUtils.GetConsoleKey ('~', "6", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F5, EscSeqUtils.GetConsoleKey ('~', "15", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F6, EscSeqUtils.GetConsoleKey ('~', "17", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F7, EscSeqUtils.GetConsoleKey ('~', "18", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F8, EscSeqUtils.GetConsoleKey ('~', "19", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F9, EscSeqUtils.GetConsoleKey ('~', "20", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F10, EscSeqUtils.GetConsoleKey ('~', "21", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F11, EscSeqUtils.GetConsoleKey ('~', "23", ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.F12, EscSeqUtils.GetConsoleKey ('~', "24", ref mod, ref keyChar)); - Assert.Equal (0, (int)EscSeqUtils.GetConsoleKey ('~', "", ref mod, ref keyChar)); + Assert.Equal (0, (int)AnsiEscapeSequenceRequestUtils.GetConsoleKey ('\0', "", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Insert, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "2", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Delete, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "3", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.PageUp, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "5", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.PageDown, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "6", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F5, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "15", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F6, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "17", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F7, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "18", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F8, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "19", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F9, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "20", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F10, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "21", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F11, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "23", ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.F12, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "24", ref mod, ref keyChar)); + Assert.Equal (0, (int)AnsiEscapeSequenceRequestUtils.GetConsoleKey ('~', "", ref mod, ref keyChar)); // These terminators are used by macOS on a numeric keypad without keys modifiers - Assert.Equal (ConsoleKey.Add, EscSeqUtils.GetConsoleKey ('l', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.Subtract, EscSeqUtils.GetConsoleKey ('m', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.Insert, EscSeqUtils.GetConsoleKey ('p', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.End, EscSeqUtils.GetConsoleKey ('q', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.DownArrow, EscSeqUtils.GetConsoleKey ('r', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.PageDown, EscSeqUtils.GetConsoleKey ('s', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.LeftArrow, EscSeqUtils.GetConsoleKey ('t', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.Clear, EscSeqUtils.GetConsoleKey ('u', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.RightArrow, EscSeqUtils.GetConsoleKey ('v', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.Home, EscSeqUtils.GetConsoleKey ('w', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.UpArrow, EscSeqUtils.GetConsoleKey ('x', null, ref mod, ref keyChar)); - Assert.Equal (ConsoleKey.PageUp, EscSeqUtils.GetConsoleKey ('y', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Add, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('l', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Subtract, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('m', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Insert, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('p', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.End, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('q', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.DownArrow, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('r', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.PageDown, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('s', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.LeftArrow, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('t', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Clear, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('u', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.RightArrow, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('v', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.Home, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('w', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.UpArrow, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('x', null, ref mod, ref keyChar)); + Assert.Equal (ConsoleKey.PageUp, AnsiEscapeSequenceRequestUtils.GetConsoleKey ('y', null, ref mod, ref keyChar)); } [Fact] public void GetConsoleModifiers_Tests () { - Assert.Equal (ConsoleModifiers.Shift, EscSeqUtils.GetConsoleModifiers ("2")); - Assert.Equal (ConsoleModifiers.Alt, EscSeqUtils.GetConsoleModifiers ("3")); - Assert.Equal (ConsoleModifiers.Shift | ConsoleModifiers.Alt, EscSeqUtils.GetConsoleModifiers ("4")); - Assert.Equal (ConsoleModifiers.Control, EscSeqUtils.GetConsoleModifiers ("5")); - Assert.Equal (ConsoleModifiers.Shift | ConsoleModifiers.Control, EscSeqUtils.GetConsoleModifiers ("6")); - Assert.Equal (ConsoleModifiers.Alt | ConsoleModifiers.Control, EscSeqUtils.GetConsoleModifiers ("7")); + Assert.Equal (ConsoleModifiers.Shift, AnsiEscapeSequenceRequestUtils.GetConsoleModifiers ("2")); + Assert.Equal (ConsoleModifiers.Alt, AnsiEscapeSequenceRequestUtils.GetConsoleModifiers ("3")); + Assert.Equal (ConsoleModifiers.Shift | ConsoleModifiers.Alt, AnsiEscapeSequenceRequestUtils.GetConsoleModifiers ("4")); + Assert.Equal (ConsoleModifiers.Control, AnsiEscapeSequenceRequestUtils.GetConsoleModifiers ("5")); + Assert.Equal (ConsoleModifiers.Shift | ConsoleModifiers.Control, AnsiEscapeSequenceRequestUtils.GetConsoleModifiers ("6")); + Assert.Equal (ConsoleModifiers.Alt | ConsoleModifiers.Control, AnsiEscapeSequenceRequestUtils.GetConsoleModifiers ("7")); Assert.Equal ( ConsoleModifiers.Shift | ConsoleModifiers.Alt | ConsoleModifiers.Control, - EscSeqUtils.GetConsoleModifiers ("8") + AnsiEscapeSequenceRequestUtils.GetConsoleModifiers ("8") ); - Assert.Equal (0, (int)EscSeqUtils.GetConsoleModifiers ("")); + Assert.Equal (0, (int)AnsiEscapeSequenceRequestUtils.GetConsoleModifiers ("")); } [Fact] public void GetEscapeResult_Multiple_Tests () { char [] kChars = ['\u001b', '[', '5', ';', '1', '0', 'r']; - (_c1Control, _code, _values, _terminating) = EscSeqUtils.GetEscapeResult (kChars); + (_c1Control, _code, _values, _terminating) = AnsiEscapeSequenceRequestUtils.GetEscapeResult (kChars); Assert.Equal ("CSI", _c1Control); Assert.Null (_code); Assert.Equal (2, _values.Length); @@ -1307,7 +1307,7 @@ public class EscSeqUtilsTests [InlineData (['A'])] public void GetEscapeResult_Single_Tests (params char [] kChars) { - (_c1Control, _code, _values, _terminating) = EscSeqUtils.GetEscapeResult (kChars); + (_c1Control, _code, _values, _terminating) = AnsiEscapeSequenceRequestUtils.GetEscapeResult (kChars); if (kChars [0] == '\u001B') { @@ -1337,7 +1337,7 @@ public class EscSeqUtilsTests new ('r', 0, false, false, false) }; - Assert.Equal (new [] { '\u001b', '[', '5', ';', '1', '0', 'r' }, EscSeqUtils.GetKeyCharArray (cki)); + Assert.Equal (new [] { '\u001b', '[', '5', ';', '1', '0', 'r' }, AnsiEscapeSequenceRequestUtils.GetKeyCharArray (cki)); } [Fact] @@ -1356,7 +1356,7 @@ public class EscSeqUtilsTests new ('3', 0, false, false, false), new ('M', 0, false, false, false) }; - EscSeqUtils.GetMouse (cki, out List mouseFlags, out Point pos, ProcessContinuousButtonPressed); + AnsiEscapeSequenceRequestUtils.GetMouse (cki, out List mouseFlags, out Point pos, ProcessContinuousButtonPressed); Assert.Equal (new () { MouseFlags.Button1Pressed }, mouseFlags); Assert.Equal (new (1, 2), pos); @@ -1372,7 +1372,7 @@ public class EscSeqUtilsTests new ('3', 0, false, false, false), new ('m', 0, false, false, false) }; - EscSeqUtils.GetMouse (cki, out mouseFlags, out pos, ProcessContinuousButtonPressed); + AnsiEscapeSequenceRequestUtils.GetMouse (cki, out mouseFlags, out pos, ProcessContinuousButtonPressed); Assert.Equal (2, mouseFlags.Count); Assert.Equal ( @@ -1393,7 +1393,7 @@ public class EscSeqUtilsTests new ('3', 0, false, false, false), new ('M', 0, false, false, false) }; - EscSeqUtils.GetMouse (cki, out mouseFlags, out pos, ProcessContinuousButtonPressed); + AnsiEscapeSequenceRequestUtils.GetMouse (cki, out mouseFlags, out pos, ProcessContinuousButtonPressed); Assert.Equal (new () { MouseFlags.Button1DoubleClicked }, mouseFlags); Assert.Equal (new (1, 2), pos); @@ -1409,7 +1409,7 @@ public class EscSeqUtilsTests new ('3', 0, false, false, false), new ('M', 0, false, false, false) }; - EscSeqUtils.GetMouse (cki, out mouseFlags, out pos, ProcessContinuousButtonPressed); + AnsiEscapeSequenceRequestUtils.GetMouse (cki, out mouseFlags, out pos, ProcessContinuousButtonPressed); Assert.Equal (new () { MouseFlags.Button1TripleClicked }, mouseFlags); Assert.Equal (new (1, 2), pos); @@ -1425,7 +1425,7 @@ public class EscSeqUtilsTests new ('3', 0, false, false, false), new ('m', 0, false, false, false) }; - EscSeqUtils.GetMouse (cki, out mouseFlags, out pos, ProcessContinuousButtonPressed); + AnsiEscapeSequenceRequestUtils.GetMouse (cki, out mouseFlags, out pos, ProcessContinuousButtonPressed); Assert.Equal (new () { MouseFlags.Button1Released }, mouseFlags); Assert.Equal (new (1, 2), pos); } @@ -1435,7 +1435,7 @@ public class EscSeqUtilsTests { ConsoleKeyInfo [] expectedCkInfos = null; var cki = new ConsoleKeyInfo ('\u001b', ConsoleKey.Escape, false, false, false); - expectedCkInfos = EscSeqUtils.ResizeArray (cki, expectedCkInfos); + expectedCkInfos = AnsiEscapeSequenceRequestUtils.ResizeArray (cki, expectedCkInfos); Assert.Single (expectedCkInfos); Assert.Equal (cki, expectedCkInfos [0]); } @@ -1494,7 +1494,7 @@ public class EscSeqUtilsTests [InlineData ("\r[<35;50;1m[<35;49;1m[<35;47;1m[<35;46;1m[<35;45;2m[<35;44;2m[<35;43;3m[<35;42;3m[<35;41;4m[<35;40;5m[<35;39;6m[<35;49;1m[<35;48;2m[<0;33;6M[<0;33;6mOC_", "_")] public void SplitEscapeRawString_Multiple_Tests (string rawData, string expectedLast) { - List splitList = EscSeqUtils.SplitEscapeRawString (rawData); + List splitList = AnsiEscapeSequenceRequestUtils.SplitEscapeRawString (rawData); Assert.Equal (18, splitList.Count); Assert.Equal ("\r", splitList [0]); Assert.Equal ("\u001b[<35;50;1m", splitList [1]); @@ -1525,7 +1525,7 @@ public class EscSeqUtilsTests [InlineData ("A")] public void SplitEscapeRawString_Single_Tests (string rawData) { - List splitList = EscSeqUtils.SplitEscapeRawString (rawData); + List splitList = AnsiEscapeSequenceRequestUtils.SplitEscapeRawString (rawData); Assert.Single (splitList); Assert.Equal (rawData, splitList [0]); } @@ -1541,23 +1541,23 @@ public class EscSeqUtilsTests [InlineData ("0;20t", "\u001b[8;1", 3, "\u001b[80;20t;1")] public void InsertArray_Tests (string toInsert, string current, int? index, string expected) { - ConsoleKeyInfo [] toIns = EscSeqUtils.ToConsoleKeyInfoArray (toInsert); - ConsoleKeyInfo [] cki = EscSeqUtils.ToConsoleKeyInfoArray (current); - ConsoleKeyInfo [] result = EscSeqUtils.ToConsoleKeyInfoArray (expected); + ConsoleKeyInfo [] toIns = AnsiEscapeSequenceRequestUtils.ToConsoleKeyInfoArray (toInsert); + ConsoleKeyInfo [] cki = AnsiEscapeSequenceRequestUtils.ToConsoleKeyInfoArray (current); + ConsoleKeyInfo [] result = AnsiEscapeSequenceRequestUtils.ToConsoleKeyInfoArray (expected); if (index is null) { - Assert.Equal (result, EscSeqUtils.InsertArray (toIns, cki)); + Assert.Equal (result, AnsiEscapeSequenceRequestUtils.InsertArray (toIns, cki)); } else { - Assert.Equal (result, EscSeqUtils.InsertArray (toIns, cki, (int)index)); + Assert.Equal (result, AnsiEscapeSequenceRequestUtils.InsertArray (toIns, cki, (int)index)); } } private void ClearAll () { - _escSeqReqProc = default (EscSeqRequests); + _escSeqReqProc = default (AnsiEscapeSequenceRequests); _newConsoleKeyInfo = default (ConsoleKeyInfo); _key = default (ConsoleKey); _cki = default (ConsoleKeyInfo []); diff --git a/UnitTests/Input/EscSeqReqTests.cs b/UnitTests/Input/AnsiEscapeSequenceRequestsTests.cs similarity index 82% rename from UnitTests/Input/EscSeqReqTests.cs rename to UnitTests/Input/AnsiEscapeSequenceRequestsTests.cs index 9f6921796..0184ab122 100644 --- a/UnitTests/Input/EscSeqReqTests.cs +++ b/UnitTests/Input/AnsiEscapeSequenceRequestsTests.cs @@ -1,11 +1,11 @@ namespace Terminal.Gui.InputTests; -public class EscSeqReqTests +public class AnsiEscapeSequenceRequestsTests { [Fact] public void Add_Tests () { - var escSeqReq = new EscSeqRequests (); + var escSeqReq = new AnsiEscapeSequenceRequests (); escSeqReq.Add (new () { Request = "", Terminator = "t" }); Assert.Single (escSeqReq.Statuses); Assert.Equal ("t", escSeqReq.Statuses.ToArray () [^1].AnsiRequest.Terminator); @@ -28,7 +28,7 @@ public class EscSeqReqTests [Fact] public void Constructor_Defaults () { - var escSeqReq = new EscSeqRequests (); + var escSeqReq = new AnsiEscapeSequenceRequests (); Assert.NotNull (escSeqReq.Statuses); Assert.Empty (escSeqReq.Statuses); } @@ -36,9 +36,9 @@ public class EscSeqReqTests [Fact] public void Remove_Tests () { - var escSeqReq = new EscSeqRequests (); + var escSeqReq = new AnsiEscapeSequenceRequests (); escSeqReq.Add (new () { Request = "", Terminator = "t" }); - escSeqReq.HasResponse ("t", out EscSeqReqStatus seqReqStatus); + escSeqReq.HasResponse ("t", out AnsiEscapeSequenceRequestStatus seqReqStatus); escSeqReq.Remove (seqReqStatus); Assert.Empty (escSeqReq.Statuses); @@ -57,8 +57,8 @@ public class EscSeqReqTests [Fact] public void Requested_Tests () { - var escSeqReq = new EscSeqRequests (); - Assert.False (escSeqReq.HasResponse ("t", out EscSeqReqStatus seqReqStatus)); + var escSeqReq = new AnsiEscapeSequenceRequests (); + Assert.False (escSeqReq.HasResponse ("t", out AnsiEscapeSequenceRequestStatus seqReqStatus)); Assert.Null (seqReqStatus); escSeqReq.Add (new () { Request = "", Terminator = "t" });