protected override Task OnLaunchApplicationAsync(LaunchActivatedEventArgs args) { // Ensure the current window is active Window.Current.Activate(); // Remove unnecessary notifications whenever the app is used. ToastNotificationManager.History.RemoveGroup(ToastNotificationService.SyncAction); PinStartPageParameters pageParameters = null; if (!string.IsNullOrEmpty(args?.Arguments)) { var tmpResourceInfo = JsonConvert.DeserializeObject <ResourceInfo>(args.Arguments); if (tmpResourceInfo != null) { pageParameters = new PinStartPageParameters() { ResourceInfo = tmpResourceInfo, PageTarget = tmpResourceInfo.IsDirectory ? PageToken.DirectoryList : PageToken.FileInfo }; } } if (SettingsService.Instance.LocalSettings.UseWindowsHello) { CheckSettingsAndContinue(PageToken.Verification, pageParameters); } else { CheckSettingsAndContinue(pageParameters?.PageTarget ?? PageToken.DirectoryList, pageParameters); } return(Task.FromResult(true)); }
public override void OnNavigatedTo(NavigatedToEventArgs e, Dictionary <string, object> viewModelState) { base.OnNavigatedTo(e, viewModelState); var pageParameters = PinStartPageParameters.Deserialize(e.Parameter) as PinStartPageParameters; if (pageParameters != null) { this.nextPage = pageParameters.PageTarget.ToString(); } else if (e.Parameter is string) { this.nextPage = e.Parameter as string; } else { this.nextPage = PageToken.DirectoryList.ToString(); } }
public override void OnNavigatedTo(NavigatedToEventArgs e, Dictionary <string, object> viewModelState) { base.OnNavigatedTo(e, viewModelState); var pinStartPageParameters = PinStartPageParameters.Deserialize(e.Parameter); if (pinStartPageParameters is PinStartPageParameters) { _nextPage = pinStartPageParameters.PageTarget.ToString(); _nextPageParameters = new FileInfoPageParameters { ResourceInfo = pinStartPageParameters.ResourceInfo }.Serialize(); } else if (e.Parameter is string) { _nextPage = (string)e.Parameter; } else { _nextPage = PageToken.DirectoryList.ToString(); } }
protected override Task OnLaunchApplicationAsync(LaunchActivatedEventArgs args) { if ( string.IsNullOrEmpty(SettingsService.Instance.LocalSettings.ServerAddress) || string.IsNullOrEmpty(SettingsService.Instance.LocalSettings.Username) ) { NavigationService.Navigate(PageTokens.Login.ToString(), null); } else { var vault = new PasswordVault(); IReadOnlyList <PasswordCredential> credentialList = null; try { credentialList = vault.FindAllByResource(SettingsService.Instance.LocalSettings.ServerAddress); } catch { // ignored } var credential = credentialList.FirstOrDefault(item => item.UserName.Equals(SettingsService.Instance.LocalSettings.Username)); if (credential != null) { credential.RetrievePassword(); if (!string.IsNullOrEmpty(credential.Password)) { PinStartPageParameters pageParameters = null; if (!string.IsNullOrEmpty(args.Arguments)) { var tmpResourceInfo = JsonConvert.DeserializeObject <ResourceInfo>(args.Arguments); if (tmpResourceInfo != null) { pageParameters = new PinStartPageParameters() { ResourceInfo = tmpResourceInfo, PageTarget = tmpResourceInfo.IsDirectory() ? PageTokens.DirectoryList.ToString() : PageTokens.FileInfo.ToString() }; } } if (SettingsService.Instance.LocalSettings.UseWindowsHello) { NavigationService.Navigate( PageTokens.Verification.ToString(), pageParameters?.Serialize()); } else { NavigationService.Navigate( pageParameters != null ? pageParameters.PageTarget : PageTokens.DirectoryList.ToString(), pageParameters?.Serialize()); } } else { NavigationService.Navigate( PageTokens.Login.ToString(), null); } } else { NavigationService.Navigate( PageTokens.Login.ToString(), null); } } // Ensure the current window is active Window.Current.Activate(); return(Task.FromResult(true)); }