internal async System.Threading.Tasks.Task SearchSpecificInput(IAlfredInput i_Input) { await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); AlfredWindowControl content = Content as AlfredWindowControl; await content.SearchSpecificInputAsync(i_Input); }
private async System.Threading.Tasks.Task SearchAsync(IAlfredInput i_Input) { await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); setAlfredWindowForNewSearch(i_Input); if (!m_HistorySearchesViewModel.HistorySearches.Contains(searchComboBox.Text)) { m_HistorySearchesViewModel.HistorySearches.Insert(0, searchComboBox.Text); } try { await AlfredEngine.Instance.SearchAsync(i_Input); searchIsFinished(); } catch (WebException) { noInternetConnection(); } catch (OperationCanceledException) { timeoutExpired(); } catch (Exception) { unexpectedError(); } }
private void setAlfredWindowForNewSearch(IAlfredInput i_Input) { searchingImage.IsEnabled = true; searchingImage.Visibility = Visibility.Visible; notSearchingImage.Visibility = Visibility.Hidden; resultsListView.Items.Clear(); searchComboBox.Text = i_Input.Description; searchingForTextBlock.Text = "Searching..."; m_SortedRankArray.RemoveRange(0, m_SortedRankArray.Count); }
public async Task <AlfredResponse> SearchAsync(IAlfredInput i_Input) { m_TimeoutTimer.Enabled = true; PagesList.Clear(); GoogleSearchEngine.Instance.ClearResults(); m_CancellationTokenSource?.Dispose(); m_CancellationTokenSource = new CancellationTokenSource(); try { if (i_Input.ProjectType != null) { await GoogleSearchEngine.Instance.AddSearchResultsFromQueryAsync(String.Format("site: {0} {1} {2}", r_WebSitesUrls[eWebSite.Stackoverflow], i_Input.Description, i_Input.ProjectType)); } await GoogleSearchEngine.Instance.AddSearchResultsFromQueryAsync(String.Format("site: {0} {1}", r_WebSitesUrls[eWebSite.Stackoverflow], i_Input.Description)); await GoogleSearchEngine.Instance.AddSearchResultsFromQueryAsync(String.Format("site: {0} \"{1}\"", r_WebSitesUrls[eWebSite.Microsoft], i_Input.ErrorCode)); await Task.Run(() => CreateWebDataListFromGoogleResultsAsync(m_CancellationTokenSource.Token), m_CancellationTokenSource.Token); } catch (WebException) { StopSearch(); throw new WebException("No internet connection"); } catch (OperationCanceledException) { StopSearch(); throw new OperationCanceledException("Operation canceled - timeout expired"); } catch (Exception) { StopSearch(); throw new WebException("Uunexpected error"); } return(Response); }
public async System.Threading.Tasks.Task SearchSpecificInputAsync(IAlfredInput i_Input) { await SearchAsync(i_Input); }