Browse Source

尝试提前初始化第二瓶内容

loki.wu 2 years ago
parent
commit
3a8230acc0

+ 19 - 1
fis/App.axaml.cs

@@ -1,7 +1,11 @@
 using Avalonia;
 using Avalonia.Controls.ApplicationLifetimes;
 using Avalonia.Markup.Xaml;
+using fis.Managers;
 using fis.Win.Dev.Helpers;
+using fis.Win.Dev.Managers.Interfaces;
+using fis.Win.Dev.Utilities;
+using System;
 using System.Threading.Tasks;
 
 namespace fis
@@ -22,7 +26,21 @@ namespace fis
             }
 
             base.OnFrameworkInitializationCompleted();
-            //SecondaryScreenHelper.window.init("http://" + ShellConfig.Instance.AppHost, new System.Collections.Generic.Dictionary<string, string>());
+            Task.Run(async () => {
+                await Task.Delay(3000);
+                await initSlaveWindowsAsync();
+            });
+        }
+
+        private async Task initSlaveWindowsAsync() {
+            try
+            {
+                var manager = AppManager.Get<ISecondaryScreenManager>();
+                await manager.ShowWindowByTypeAsync(WindowType.Measure, "http://" + ShellConfig.Instance.AppHost, new System.Collections.Generic.Dictionary<string, string>(),false);
+            }
+            catch (Exception ex) {
+                
+            }
         }
     }
 }

+ 1 - 1
fis/MainWindow.axaml.cs

@@ -70,7 +70,7 @@ namespace fis
             _browser.BrowserInitialized += () =>
             {
 #if DEBUG
-                _browser!.ShowDeveloperTools();
+               // _browser!.ShowDeveloperTools();
 #endif
             };
             browserContainer.Child = _browser;

+ 1 - 1
fis/Managers/Interfaces/ISecondaryScreenManager.cs

@@ -17,7 +17,7 @@ namespace fis.Win.Dev.Managers.Interfaces
         /// <param name="host"></param>
         /// <param name="keyValuePairs"></param>
         /// <returns></returns>
-        Task ShowWindowByTypeAsync(WindowType windowType, string host, Dictionary<string, string> keyValuePairs);
+        Task ShowWindowByTypeAsync(WindowType windowType, string host, Dictionary<string, string> keyValuePairs, bool isShowWindow = true);
 
         /// <summary>
         /// 获取Window

+ 6 - 1
fis/Managers/SecondaryScreenManager.cs

@@ -13,7 +13,7 @@ namespace fis.Win.Dev.Managers
     {
         Dictionary<WindowType, SlaveWindow> windows = new Dictionary<WindowType, SlaveWindow>();
 
-        public async Task ShowWindowByTypeAsync(WindowType windowType, string host, Dictionary<string, string> keyValuePairs) 
+        public async Task ShowWindowByTypeAsync(WindowType windowType, string host, Dictionary<string, string> keyValuePairs,bool isShowWindow = true) 
         {
             await Dispatcher.UIThread.InvokeAsync(() =>
             {
@@ -37,6 +37,11 @@ namespace fis.Win.Dev.Managers
                     }
                     window.Closed += Window_Closed;
                     windows.Add(windowType, window);
+                    if (!isShowWindow)
+                    {
+                        window.WindowState = Avalonia.Controls.WindowState.Minimized;
+                        window.ShowInTaskbar = false;
+                    }
                     window.Show();
                 }
                

+ 11 - 3
fis/SlaveWindow.axaml.cs

@@ -31,7 +31,7 @@ namespace fis
             ExtendClientAreaTitleBarHeightHint = -1;
             MainThreadSyncContext = SynchronizationContext.Current;
 #if DEBUG
-            this.AttachDevTools();
+           // this.AttachDevTools();
 #endif
         }
 
@@ -56,7 +56,15 @@ namespace fis
                 }
                 index++;
             }
-            _browser.Address = "http://" + ShellConfig.Instance.AppHost + "/index.html?page=measure&" + parameter; 
+            // window.WindowState = Avalonia.Controls.WindowState.Minimized;
+          //  window.ShowInTaskbar = false;
+            _browser.Address = "http://" + ShellConfig.Instance.AppHost + "/index.html?page=measure&" + parameter;
+            if (WindowState == WindowState.Minimized) {
+                WindowState = WindowState.Maximized;
+            }
+            if (!ShowInTaskbar) {
+                ShowInTaskbar = true;
+            }
             browserContainer.Child = _browser;
         }
 
@@ -141,7 +149,7 @@ namespace fis
             _browser.BrowserInitialized += () =>
             {
 #if DEBUG
-              _browser!.ShowDeveloperTools();
+          //    _browser!.ShowDeveloperTools();
 #endif
             };
             var language = CultureInfo.CurrentCulture.Name;