Пример #1
0
        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();
        }
Пример #2
0
        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);
        }