Example #1
0
        private async void OnPrimaryButtonClick(ContentDialog sender, ContentDialogButtonClickEventArgs args)
        {
            try
            {
                args.Cancel = true;
                _vm.IsBusy  = true;
                var lrc = await _vm.DownloadAsync();

                if (lrc == null ||
                    lrc.Sentences == null ||
                    lrc.Sentences.Count == 0)
                {
                    _vm.ResultText = CommonSharedStrings.LrcNotFound;
                    return;
                }
                LrcSelected?.Invoke(this,
                                    new LrcSelectedEventArgs {
                    Lrc = lrc
                });
                Hide();
            }
            catch (Exception ex)
            {
                _vm.ResultText = string.Format(CommonSharedStrings.LrcDownloadFailed, ex.Message);
            }
            finally
            {
                _vm.IsBusy = false;
            }
        }
Example #2
0
        private async void ClearLyricLinkClicked(object sender, Windows.UI.Xaml.RoutedEventArgs e)
        {
            try
            {
                if (_vm == null)
                {
                    return;
                }
                await _vm.DeleteAsync();

                LrcSelected?.Invoke(this, new LrcSelectedEventArgs {
                    Lrc = null
                });
                Hide();
            }
            catch (Exception ex)
            {
                TelemetryHelper.TrackExceptionAsync(ex);
            }
        }
Example #3
0
        private async void ExternalLyricsImportLinkClicked(object sender, Windows.UI.Xaml.RoutedEventArgs e)
        {
            if (_vm == null)
            {
                return;
            }
            var picker = new FileOpenPicker();

            picker.FileTypeFilter.Add(CommonSharedStrings.LrcFileSuffix);
            picker.FileTypeFilter.Add(CommonSharedStrings.TxtFileSuffix);
            picker.CommitButtonText = CommonSharedStrings.ManualSelectLyricButtonText;
            var lyricFile = await picker.PickSingleFileAsync();

            if (lyricFile == null)
            {
                return;
            }
            LrcSelected?.Invoke(this,
                                new LrcSelectedEventArgs
            {
                Lrc = await _vm.ImportAsync(lyricFile)
            });
            Hide();
        }