private void OnEventReceived(EventDispatcher.Event e, object?arg) { Dispatcher.UIThread.Post(async() => { switch (e) { case EventDispatcher.Event.EqualizerToggle: await MessageComposer.SetEqualizer(!_eqSwitch.IsChecked, (EqPreset)_presetSlider.Value, false); _eqSwitch.Toggle(); break; case EventDispatcher.Event.EqualizerNextPreset: _eqSwitch.IsChecked = true; var newVal = _presetSlider.Value + 1; if (newVal >= 5) { newVal = 0; } _presetSlider.Value = newVal; await MessageComposer.SetEqualizer(_eqSwitch.IsChecked, (EqPreset)_presetSlider.Value, false); break; } }); }
private async void OnEventReceived(EventDispatcher.Event e, object?arg) { switch (e) { case EventDispatcher.Event.PairingMode: await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.UNK_PAIRING_MODE); break; case EventDispatcher.Event.ToggleManagerVisibility: if (!IsVisible) { BringToFront(); } else { Hide(); } break; case EventDispatcher.Event.Connect: if (!BluetoothImpl.Instance.IsConnected) { await BluetoothImpl.Instance.ConnectAsync(); } break; case EventDispatcher.Event.ShowBatteryPopup: ShowPopup(ignoreRestrictions: true); break; } }
private void OnEventReceived(EventDispatcher.Event e, object?arg) { if (!BluetoothImpl.Instance.DeviceSpec.Supports(IDeviceSpec.Feature.AmbientSound)) { return; } Avalonia.Threading.Dispatcher.UIThread.Post(async() => { switch (e) { case EventDispatcher.Event.AmbientToggle: await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.SET_AMBIENT_MODE, !_ambientSwitch.IsChecked); _ambientSwitch.Toggle(); break; case EventDispatcher.Event.AmbientVolumeUp: _ambientSwitch.IsChecked = true; if (_volumeSlider.Value != _volumeSlider.Maximum) { _volumeSlider.Value += 1; } await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.SET_AMBIENT_MODE, true); await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.AMBIENT_VOLUME, (byte)_volumeSlider.Value); break; case EventDispatcher.Event.AmbientVolumeDown: if (_volumeSlider.Value <= 0) { _ambientSwitch.IsChecked = false; await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.SET_AMBIENT_MODE, false); } else { _ambientSwitch.IsChecked = true; _volumeSlider.Value -= 1; await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.SET_AMBIENT_MODE, true); await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.AMBIENT_VOLUME, (byte)_volumeSlider.Value); } break; } }); }
private async void OnEventReceived(EventDispatcher.Event e, object?arg) { if (!BluetoothImpl.Instance.DeviceSpec.Supports(IDeviceSpec.Feature.Anc)) { return; } switch (e) { case EventDispatcher.Event.AncToggle: await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.SET_NOISE_REDUCTION, !_ancSwitch.IsChecked); Dispatcher.UIThread.Post(_ancSwitch.Toggle); break; } }
private async void OnEventReceived(EventDispatcher.Event e, object?arg) { switch (e) { case EventDispatcher.Event.LockTouchpadToggle: _lock.Toggle(); await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.LOCK_TOUCHPAD, _lock.IsChecked); break; case EventDispatcher.Event.ToggleDoubleEdgeTouch: _edgeTouch.Toggle(); await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.OUTSIDE_DOUBLE_TAP, _edgeTouch.IsChecked); break; } }
private static void OnEventReceived(EventDispatcher.Event e, object?arg) { switch (e) { case EventDispatcher.Event.Play: Instance.Play(); break; case EventDispatcher.Event.Pause: Instance.Play(); break; case EventDispatcher.Event.TogglePlayPause: Instance.PlayPause(); break; } }
private void OnEventReceived(EventDispatcher.Event e, object?arg) { if (!BluetoothImpl.Instance.DeviceSpec.Supports(IDeviceSpec.Feature.NoiseControl)) { return; } Avalonia.Threading.Dispatcher.UIThread.Post(async() => { switch (e) { case EventDispatcher.Event.ToggleConversationDetect: _voiceDetect.Toggle(); await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.SET_DETECT_CONVERSATIONS, _voiceDetect.IsChecked); break; case EventDispatcher.Event.AncToggle: _ancSwitch.Toggle(); AncToggle_OnToggled(this, _ancSwitch.IsChecked); break; case EventDispatcher.Event.SwitchAncSensitivity: _ancLevel.Toggle(); await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.NOISE_REDUCTION_LEVEL, _ancLevel.IsChecked); break; case EventDispatcher.Event.AmbientToggle: _ambientSwitch.Toggle(); AmbientToggle_OnToggled(this, _ambientSwitch.IsChecked); break; case EventDispatcher.Event.SetNoiseControlState: if (arg == null) { break; } SetNoiseControlState((NoiseControlMode)arg); break; } }); }
private void OnEventReceived(EventDispatcher.Event @event, object?arg) { switch (@event) { case EventDispatcher.Event.StartFind: _scanButton.IsSearching = true; ScanButton_OnScanningStatusChanged(this, true); break; case EventDispatcher.Event.StopFind: _scanButton.IsSearching = false; ScanButton_OnScanningStatusChanged(this, false); break; case EventDispatcher.Event.StartStopFind: _scanButton.IsSearching = !_scanButton.IsSearching; ScanButton_OnScanningStatusChanged(this, _scanButton.IsSearching); break; } }
private void OnEventReceived(EventDispatcher.Event e, object?arg) { if (!BluetoothImpl.Instance.DeviceSpec.Supports(IDeviceSpec.Feature.NoiseControl)) { return; } Avalonia.Threading.Dispatcher.UIThread.Post(async() => { switch (e) { case EventDispatcher.Event.AmbientVolumeUp: EventDispatcher.Instance.Dispatch(EventDispatcher.Event.SetNoiseControlState, NoiseControlMode.AmbientSound); await MessageComposer.NoiseControl.SetMode(NoiseControlMode.AmbientSound); if (_ambientCustomize.IsChecked) { if (_ambientVolLeft.Value != _ambientVolLeft.Maximum) { _ambientVolLeft.Value += 1; } if (_ambientVolRight.Value != _ambientVolRight.Maximum) { _ambientVolRight.Value += 1; } SendAmbientCustomizeState(); } else { if (_volumeSlider.Value != _volumeSlider.Maximum) { _volumeSlider.Value += 1; } await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.AMBIENT_VOLUME, (byte)_volumeSlider.Value); } break; case EventDispatcher.Event.AmbientVolumeDown: if (_ambientCustomize.IsChecked) { if (_ambientVolLeft.Value <= 0 && _ambientVolRight.Value <= 0) { EventDispatcher.Instance.Dispatch(EventDispatcher.Event.SetNoiseControlState, NoiseControlMode.Off); await MessageComposer.NoiseControl.SetMode(NoiseControlMode.Off); } else { await MessageComposer.NoiseControl.SetMode(NoiseControlMode.AmbientSound); EventDispatcher.Instance.Dispatch(EventDispatcher.Event.SetNoiseControlState, NoiseControlMode.AmbientSound); if (_ambientVolLeft.Value != _ambientVolLeft.Minimum) { _ambientVolLeft.Value -= 1; } if (_ambientVolRight.Value != _ambientVolRight.Minimum) { _ambientVolRight.Value -= 1; } SendAmbientCustomizeState(); } } else { if (_volumeSlider.Value <= 0) { EventDispatcher.Instance.Dispatch(EventDispatcher.Event.SetNoiseControlState, NoiseControlMode.Off); await MessageComposer.NoiseControl.SetMode(NoiseControlMode.Off); } else { await MessageComposer.NoiseControl.SetMode(NoiseControlMode.AmbientSound); EventDispatcher.Instance.Dispatch(EventDispatcher.Event.SetNoiseControlState, NoiseControlMode.AmbientSound); _volumeSlider.Value -= 1; await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.AMBIENT_VOLUME, (byte)_volumeSlider.Value); } } break; } }); }
public Hotkey(IEnumerable <ModifierKeys> modifier, IEnumerable <Keys> keys, EventDispatcher.Event action) { Action = action; Modifier = modifier; Keys = keys; }
public ActionViewHolder(EventDispatcher.Event value) { Value = value; }
public CustomAction(EventDispatcher.Event @event) { Action = Actions.Event; Parameter = @event.ToString(); }
private void OnEventReceived(EventDispatcher.Event e, object?arg) { if (!BluetoothImpl.Instance.DeviceSpec.Supports(IDeviceSpec.Feature.NoiseControl)) { return; } Avalonia.Threading.Dispatcher.UIThread.Post(async() => { switch (e) { case EventDispatcher.Event.ToggleConversationDetect: _voiceDetect.Toggle(); await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.SET_DETECT_CONVERSATIONS, _voiceDetect.IsChecked); break; case EventDispatcher.Event.AncToggle: _ancSwitch.Toggle(); AncToggle_OnToggled(this, _ancSwitch.IsChecked); break; case EventDispatcher.Event.SwitchAncSensitivity: _ancLevel.Toggle(); await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.NOISE_REDUCTION_LEVEL, _ancLevel.IsChecked); break; case EventDispatcher.Event.AmbientToggle: _ambientSwitch.Toggle(); AmbientToggle_OnToggled(this, _ambientSwitch.IsChecked); break; case EventDispatcher.Event.AmbientVolumeUp: _ancSwitch.IsChecked = false; _ambientSwitch.IsChecked = true; await MessageComposer.NoiseControl.SetMode(NoiseControlMode.AmbientSound); if (_volumeSlider.Value != _volumeSlider.Maximum) { _volumeSlider.Value += 1; } await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.AMBIENT_VOLUME, (byte)_volumeSlider.Value); break; case EventDispatcher.Event.AmbientVolumeDown: _ancSwitch.IsChecked = false; if (_volumeSlider.Value <= 0) { _ambientSwitch.IsChecked = false; await MessageComposer.NoiseControl.SetMode(NoiseControlMode.Off); } else { await MessageComposer.NoiseControl.SetMode(NoiseControlMode.AmbientSound); _ambientSwitch.IsChecked = true; _volumeSlider.Value -= 1; await BluetoothImpl.Instance.SendRequestAsync(SPPMessage.MessageIds.AMBIENT_VOLUME, (byte)_volumeSlider.Value); } break; } }); }