#pragma warning disable IDE1006 // Naming Styles private async void OnActivated(object sender, EventArgs e) #pragma warning restore IDE1006 // Naming Styles { try { Activated -= OnActivated; var uiConfigFilePath = Path.Combine(Global.DataDir, "UiConfig.json"); var uiConfig = new UiConfig(uiConfigFilePath); await uiConfig.LoadOrCreateDefaultFileAsync(); Global.InitializeUiConfig(uiConfig); Logging.Logger.LogInfo <UiConfig>("UiConfig is successfully initialized."); if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { MainWindowViewModel.Instance.Width = (double)uiConfig.Width; MainWindowViewModel.Instance.Height = (double)uiConfig.Height; MainWindowViewModel.Instance.WindowState = (WindowState)uiConfig.WindowState; } else { MainWindowViewModel.Instance.WindowState = WindowState.Maximized; } DisplayWalletManager(); } catch (Exception ex) { Logging.Logger.LogWarning <MainWindow>(ex); } }
public async Task <bool> InitializeUiConfigAsync() { try { var uiConfigFilePath = Path.Combine(DataDir, "UiConfig.json"); var uiConfig = new UiConfig(uiConfigFilePath); await uiConfig.LoadOrCreateDefaultFileAsync().ConfigureAwait(false); UiConfig = uiConfig; return(true); } catch (Exception ex) { Logger.LogError(ex); } return(false); }
private void InitializeComponent() { Closing += MainWindow_ClosingAsync; AvaloniaXamlLoader.Load(this); DisplayWalletManager(); var uiConfigFilePath = Path.Combine(Global.DataDir, "UiConfig.json"); var uiConfig = new UiConfig(uiConfigFilePath); uiConfig.LoadOrCreateDefaultFileAsync() .ToObservable(RxApp.TaskpoolScheduler) .Take(1) .ObserveOn(RxApp.MainThreadScheduler) .Subscribe(_ => { try { Global.InitializeUiConfig(uiConfig); Application.Current.Resources.AddOrReplace(Global.UiConfigResourceKey, Global.UiConfig); Logger.LogInfo($"{nameof(Global.UiConfig)} is successfully initialized."); if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { MainWindowViewModel.Instance.Width = uiConfig.Width; MainWindowViewModel.Instance.Height = uiConfig.Height; MainWindowViewModel.Instance.WindowState = uiConfig.WindowState; } else { MainWindowViewModel.Instance.WindowState = WindowState.Maximized; } MainWindowViewModel.Instance.LockScreen.Initialize(); } catch (Exception ex) { Logger.LogError(ex); } }, onError: ex => Logger.LogError(ex)); }