Пример #1
0
        private void OnPlaybackInfoChanged(GlobalSystemMediaTransportControlsSession session, PlaybackInfoChangedEventArgs args = null)
        {
            if (CurrentSessions.ContainsKey(session))
            {
                var info      = session.GetPlaybackInfo();
                var isPlaying = info.PlaybackStatus == GlobalSystemMediaTransportControlsSessionPlaybackStatus.Playing;

                var data = CurrentSessions[session];
                if (data.IsPlaying != isPlaying)
                {
                    data.IsPlaying           = isPlaying;
                    CurrentSessions[session] = data;
                    UpdateCurrentSong();
                }
            }
        }
Пример #2
0
            private void OnPlaybackInfoChanged(GlobalSystemMediaTransportControlsSession session, PlaybackInfoChangedEventArgs args = null)
            {
                var props = session.GetPlaybackInfo();

                if (props.PlaybackStatus == GlobalSystemMediaTransportControlsSessionPlaybackStatus.Closed)
                {
                    session.PlaybackInfoChanged    -= OnPlaybackInfoChanged;
                    session.MediaPropertiesChanged -= OnSongChange;
                    RemoveSession(this);
                }
                else
                {
                    OnPlaybackStateChanged?.Invoke(this, props);
                }
            }
 private async void PlaybackInfoChanged(GlobalSystemMediaTransportControlsSession sender, PlaybackInfoChangedEventArgs args)
 {
     await Dispatcher.BeginInvoke(DispatcherPriority.Send, new Action(() =>
     {
         UpdatePlaybackProperties();
     }));
 }
Пример #4
0
 private async void GSMTCSession_PlaybackInfoChanged(GlobalSystemMediaTransportControlsSession session, PlaybackInfoChangedEventArgs args)
 {
     await Dispatcher.CurrentDispatcher.BeginInvoke(DispatcherPriority.Render, new Action(() =>
     {
         UpdatePlaybackInfo(session);
     }));
 }
Пример #5
0
        private async void Session_PlaybackInfoChanged(GlobalSystemMediaTransportControlsSession sender, PlaybackInfoChangedEventArgs args)
        {
            var    info   = session.GetPlaybackInfo();
            string status = "[PlaybackInfoChanged] PlaybackType: " + info.PlaybackType + ", Status: " + info.PlaybackStatus;

            Debug.WriteLine(status);
            await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { Status.Text = status; });
        }
Пример #6
0
        private void OnPlaybackInfoChanged(MediaControlSession sender, PlaybackInfoChangedEventArgs args)
        {
            GlobalSystemMediaTransportControlsSessionPlaybackInfo playbackInfo = CurrentSession()?.GetPlaybackInfo();

            PlaybackInfoChanged?.Invoke(sender, playbackInfo);
        }
 private void SpotifySession_PlaybackInfoChanged(object sender, PlaybackInfoChangedEventArgs args)
 {
     HandleSpotifyStateChanged();
 }
Пример #8
0
 private void MainPage_PlaybackInfoChanged(GlobalSystemMediaTransportControlsSession sender, PlaybackInfoChangedEventArgs args)
 {
     WriteCurrentlyPlayingAsync();
 }
 private void GSMTCSession_PlaybackInfoChanged(GlobalSystemMediaTransportControlsSession session, PlaybackInfoChangedEventArgs args)
 {
     Application.Current.Dispatcher.Invoke(() =>
     {
         UpdatePlaybackInfo(session);
     });
 }