Selaa lähdekoodia

Fix driver name options shown in UICatalog for v2 (#3940)

- v2 auto picks based on OS
- v2win is the new windows interop driver
- v2net is the new dotnet core cross platform driver

Co-authored-by: Tig <[email protected]>
Thomas Nind 4 kuukautta sitten
vanhempi
commit
255e5d6643

+ 3 - 3
Terminal.Gui/ConsoleDrivers/V2/ConsoleDriverFacade.cs

@@ -231,14 +231,14 @@ internal class ConsoleDriverFacade<T> : IConsoleDriver, IConsoleDriverFacade
 
         if (InputProcessor is WindowsInputProcessor)
         {
-            type = "(win)";
+            type = "win";
         }
         else if (InputProcessor is NetInputProcessor)
         {
-            type = "(net)";
+            type = "net";
         }
 
-        return GetType ().Name.TrimEnd ('`', '1') + type;
+        return "v2" + type;
     }
 
     /// <summary>Tests if the specified rune is supported by the driver.</summary>

+ 4 - 2
UICatalog/UICatalog.cs

@@ -147,8 +147,10 @@ public class UICatalogApp
         // If no driver is provided, the default driver is used.
         Option<string> driverOption = new Option<string> ("--driver", "The IConsoleDriver to use.").FromAmong (
              Application.GetDriverTypes ()
-                        .Select (d => d!.Name)
-                        .ToArray ()
+                            .Where (d=>!typeof (IConsoleDriverFacade).IsAssignableFrom (d))
+                            .Select (d => d!.Name)
+                            .Union (["v2","v2win","v2net"])
+                            .ToArray ()
             );
         driverOption.AddAlias ("-d");
         driverOption.AddAlias ("--d");