Program.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. using System;
  2. using System.Linq;
  3. using System.Runtime.InteropServices;
  4. using Avalonia;
  5. namespace ControlCatalog.NetCore
  6. {
  7. static class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. if (args.Contains("--fbdev")) AppBuilder.Configure<App>().InitializeWithLinuxFramebuffer(tl =>
  12. {
  13. tl.Content = new MainView();
  14. System.Threading.ThreadPool.QueueUserWorkItem(_ => ConsoleSilencer());
  15. });
  16. else
  17. AppBuilder.Configure<App>()
  18. .CustomPlatformDetect()
  19. .Start<MainWindow>();
  20. }
  21. static AppBuilder CustomPlatformDetect(this AppBuilder builder)
  22. {
  23. //This is needed because we still aren't ready to have MonoMac backend as default one
  24. if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
  25. return builder.UseSkia().UseMonoMac();
  26. return builder.UsePlatformDetect();
  27. }
  28. static void ConsoleSilencer()
  29. {
  30. Console.CursorVisible = false;
  31. while (true)
  32. Console.ReadKey(true);
  33. }
  34. }
  35. }