public void ShowSongStartToast(bool force = false) { // don't run without song info if (_config.State.Playback == null) { return; } // force invocation or something is tracked if (!( force || (_config.ExternalConfig.ShowOnNewSong && !_config.State.Playback.ShowedOnNewSong) || _config.State.Foobar2000IsPlayingRP || _config.State.MusicBeeIsPlayingRP || _config.IsRpPlayerTrackingChannel() )) { return; } Task.Run(() => { string toastXmlString = null; try { string toastVisual = $@"<visual> <binding template='ToastGeneric'> {ToastHelper.CreateTitleText(_config, true)} {ToastHelper.CreateContentText(_config)} {ToastHelper.CreateRatingText(_config)} {ToastHelper.CreateToastFooter(_config)} {ToastHelper.CreateImage(_config, false)} </binding> </visual>"; // Create toast xml text toastXmlString = $@"<toast launch='{nameof(this.ShowSongStartToast)}'> {toastVisual} {ToastHelper.toastAudio} </toast>"; } catch (Exception ex) { _log.Error(LogHelper.GetMethodName(this), ex); } DisplayToast(toastXmlString); }); _config.State.Playback.ShowedOnNewSong = true; }
public void ShowSongDetailToast() { //Task.Run(() => //{ string toastXmlString = null; try { string toastVisual = $@"<visual> <binding template='ToastGeneric'> {ToastHelper.CreateTitleText(_config, false)} {ToastHelper.CreateContentText(_config)} {ToastHelper.CreateRatingText(_config)} {ToastHelper.CreateToastFooter(_config)} {ToastHelper.CreateProgressBar(_config)} {ToastHelper.CreateImage(_config, true)} </binding> </visual>"; string toastActions = $@"<actions> {ToastHelper.RatingInputAction(_config)} {ToastHelper.OpenInBrowserAction(_config)} </actions>"; // Create toast xml text toastXmlString = $@"<toast launch='{nameof(this.ShowSongDetailToast)}'> {toastVisual} {ToastHelper.toastAudio} {toastActions} </toast>"; } catch (Exception ex) { _log.Error(LogHelper.GetMethodName(this), ex); } DisplayToast(toastXmlString, HandleToastActivatedEvent); //}); }