private async void ConfirmButton_Click(object sender, RoutedEventArgs e) { IrcServers store = IrcServers.Instance; if (Regex.Matches(Username.Text, RegexPattern).Count != 1) { Error.Visibility = Visibility.Visible; return; } else { Config.SetString(Config.DefaultUsername, Username.Text); } foreach (WinIrcServer server in ServListBox.SelectedItems) { server.Username = Username.Text; await store.AddServer(server); } Config.SetBoolean(Config.FirstRun, true); Config.SetBoolean(Config.ModernChat, true); await App.Current.NavigationService.NavigateAsync(typeof(MainPage)); App.Current.NavigationService.ClearHistory(); }
private async Task <bool> InitApp(IActivatedEventArgs e) { var loaded = true; ExtendExecution(); IrcServers servers = IrcServers.Instance; // Do not repeat app initialization when the Window already has content, // just ensure that the window is active if (!AppLaunched) { await servers.loadServersAsync(); await servers.UpdateJumpList(); loaded = false; NumberPings = 0; var applicationView = Windows.UI.ViewManagement.ApplicationView.GetForCurrentView(); applicationView.SetPreferredMinSize(new Windows.Foundation.Size { Width = 360, Height = 240 }); } if (!(NavigationService.Content is MainPage)) { loaded = false; // When the navigation stack isn't restored navigate to the first page, // configuring the new page by passing required information as a navigation // parameter if (Config.Contains(Config.FirstRun) || servers.Count != 0 || Config.Contains(Config.DefaultUsername)) { if (e is LaunchActivatedEventArgs) { var args = (e as LaunchActivatedEventArgs).Arguments; await NavigationService.NavigateAsync(typeof(MainPage), args); } else { await NavigationService.NavigateAsync(typeof(MainPage)); } } else { await NavigationService.NavigateAsync(typeof(FirstRunPage)); } } else { var page = NavigationService.Content as MainPage; if (e is LaunchActivatedEventArgs) { page?.ConnectViaName((e as LaunchActivatedEventArgs).Arguments); } } return(loaded); }