/* * Events */ private void InstanceOnStatusUpdate(object sender, StatusUpdateParser e) { GenerateTrayContext(e.BatteryL, e.BatteryR, e.BatteryCase); if (_previousWearState == WearStates.None && e.WearState != WearStates.None && Settings.Default.ResumePlaybackOnSensor) { if (!AudioPlaybackDetection.IsWindowsPlayingSound()) { try { new InputSimulator().Keyboard.KeyPress(VirtualKeyCode.MEDIA_PLAY_PAUSE); } catch (Exception ex) { Sentry.SentrySdk.AddBreadcrumb(ex.Message, "inputsimulator", level: Sentry.Protocol.BreadcrumbLevel.Warning); } Console.WriteLine(@"[ResumePlaybackOnSensor] All criteria are met; emitting play/pause keypress"); } else { Console.WriteLine(@"[ResumePlaybackOnSensor] Windows appears to playback sound; do not emit a play/pause keypress"); } } _previousWearState = e.WearState; }
public void Pause() { if (AudioPlaybackDetection.IsWindowsPlayingSound()) { PlayPause(); Log.Debug("Windows.MediaKeyRemote: All criteria are met; emitting play/pause keypress"); } else { Log.Debug("Windows.MediaKeyRemote: Windows appears to playback no sound; do not emit a play/pause keypress"); } }
/* * Events */ private void InstanceOnStatusUpdate(object sender, StatusUpdateParser e) { GenerateTrayContext(e.BatteryL, e.BatteryR, e.BatteryCase); if (_previousWearState == WearStates.None && e.WearState != WearStates.None && Settings.Default.ResumePlaybackOnSensor) { if (!AudioPlaybackDetection.IsWindowsPlayingSound()) { new InputSimulator().Keyboard.KeyPress(VirtualKeyCode.MEDIA_PLAY_PAUSE); Console.WriteLine(@"[ResumePlaybackOnSensor] All criteria are met; emitting play/pause keypress"); } else { Console.WriteLine(@"[ResumePlaybackOnSensor] Windows appears to playback sound; do not emit a play/pause keypress"); } } _previousWearState = e.WearState; }