private KeyboardService() { Helper.KeyDown = (e) => { e.Handled = true; // use this to place focus in search box if (e.OnlyControl && e.Character.ToString().ToLower().Equals("e")) { AfterControlEGesture?.Invoke(); } // use this for hamburger menu else if (e.VirtualKey == Windows.System.VirtualKey.GamepadMenu) { AfterMenuGesture?.Invoke(); } // anything else else { e.Handled = false; } AfterKeyDown?.Invoke(e); }; }
public GestureService(IBackButtonService backService, IKeyboardService keyService) { Two.BackService = backService as IBackButtonService2; Two.BackService.BackRequested += (s, e) => { BackRequested2?.Invoke(s, e); if (AllowBackRequested) { BackRequested?.Invoke(s, e); } }; Two.BackService.ForwardRequested += (s, e) => { ForwardRequested2?.Invoke(s, e); if (AllowForwardRequested) { ForwardRequested?.Invoke(s, e); } }; Two.KeyService = keyService as IKeyboardService2; Two.KeyService.AfterSearchGesture += (s, e) => AfterSearchGesture?.Invoke(s, e); Two.KeyService.AfterMenuGesture += (s, e) => AfterMenuGesture?.Invoke(s, e); Two.KeyService.AfterKeyDown += (s, e) => AfterKeyDown?.Invoke(s, e); }
/// <remarks> /// This must be called AFTER the first window is created. /// </remarks> void IKeyboardService2.Setup() { _helper = new KeyboardHelper { KeyDown = (e) => { e.Handled = true; if (e.OnlyControl && e.Character.ToString().ToLower().Equals("e")) { AfterSearchGesture?.Invoke(this, EventArgs.Empty); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadMenu) { AfterMenuGesture?.Invoke(this, EventArgs.Empty); } else { e.Handled = false; } AfterKeyDown?.Invoke(this, e); } }; }
/// <remarks> /// This must be called AFTER the first window is created. /// </remarks> public void Setup() { if (_Setup) { return; } else { _Setup = true; } _helper = new KeyboardHelper() { KeyDown = (e) => { e.Handled = true; // use this to place focus in search box if (e.OnlyControl && e.Character.ToString().ToLower().Equals("e")) { AfterControlEGesture?.Invoke(); } // use this for hamburger menu else if (e.VirtualKey == Windows.System.VirtualKey.GamepadMenu) { AfterMenuGesture?.Invoke(); } // anything else else { e.Handled = false; } AfterKeyDown?.Invoke(e); } }; }
private KeyboardService() { _helper = new KeyboardHelper(); _helper.KeyDown = async(e) => { e.Handled = true; // use this to place focus in search box if (e.OnlyControl && e.Character.ToString().ToLower().Equals("e")) { DebugWrite("Control+E", caller: nameof(AfterControlEGesture)); AfterControlEGesture?.Invoke(); } // use this to nav back else if (e.VirtualKey == Windows.System.VirtualKey.GoBack) { DebugWrite("GoBack", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.NavigationLeft) { DebugWrite("NavigationLeft", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadMenu) { DebugWrite("GamepadMenu", caller: nameof(AfterMenuGesture)); AfterMenuGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadLeftShoulder) { DebugWrite("GamepadLeftShoulder", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Back) { DebugWrite("Alt+Back", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Left) { DebugWrite("Alt+Left", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(); } // use this to nav forward else if (e.VirtualKey == Windows.System.VirtualKey.GoForward) { DebugWrite("GoForward", caller: nameof(AfterForwardGesture)); AfterForwardGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.NavigationRight) { DebugWrite("NavigationRight", caller: nameof(AfterForwardGesture)); AfterForwardGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadRightShoulder) { DebugWrite("GamepadRightShoulder", caller: nameof(AfterForwardGesture)); AfterForwardGesture?.Invoke(); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Right) { DebugWrite("Alt+Right", caller: nameof(AfterForwardGesture)); AfterForwardGesture?.Invoke(); } // about else if (e.AltKey && e.ControlKey && e.ShiftKey && e.VirtualKey == Windows.System.VirtualKey.F12) { var about = new Windows.UI.Xaml.Controls.ContentDialog { Title = "Template 10", PrimaryButtonText = "Info", SecondaryButtonText = "Close" }; try { var result = await about.ShowAsync(); if (result == Windows.UI.Xaml.Controls.ContentDialogResult.Primary) { await Windows.System.Launcher.LaunchUriAsync(new Uri("http://aka.ms/template10")); } } catch (System.Runtime.InteropServices.COMException) { DebugWrite("About dialog already showing"); } } // anything else else { e.Handled = false; } }; _helper.PointerGoBackGestured = () => { DebugWrite(caller: nameof(KeyboardHelper.PointerGoBackGestured)); AfterBackGesture?.Invoke(); }; _helper.PointerGoForwardGestured = () => { DebugWrite(caller: nameof(KeyboardHelper.PointerGoForwardGestured)); AfterForwardGesture?.Invoke(); }; }
private KeyboardService() { _helper = new KeyboardHelper(); _helper.KeyDown = async(e) => { e.Handled = true; // use this to place focus in search box if (e.OnlyControl && e.Character.ToString().ToLower().Equals("e")) { AfterControlEGesture?.Invoke(); } // use this to nav back else if (e.VirtualKey == Windows.System.VirtualKey.GoBack) { Debug.WriteLine("GoBack:AfterBackGesture"); AfterBackGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.NavigationLeft) { Debug.WriteLine("NavigationLeft:AfterBackGesture"); AfterBackGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadMenu) { Debug.WriteLine("GamepadMenu:AfterMenuGesture"); AfterMenuGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadLeftShoulder) { Debug.WriteLine("GamepadLeftShoulder:AfterBackGesture"); AfterBackGesture?.Invoke(); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Back) { Debug.WriteLine("Alt+Back:AfterBackGesture"); AfterBackGesture?.Invoke(); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Left) { Debug.WriteLine("Alt+Left:AfterBackGesture"); AfterBackGesture?.Invoke(); } // use this to nav forward else if (e.VirtualKey == Windows.System.VirtualKey.GoForward) { Debug.WriteLine("GoForward:AfterForwardGesture"); AfterForwardGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.NavigationRight) { Debug.WriteLine("NavigationRight:AfterForwardGesture"); AfterForwardGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadRightShoulder) { Debug.WriteLine("GamepadRightShoulder:AfterForwardGesture"); AfterForwardGesture?.Invoke(); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Right) { Debug.WriteLine("Alt+Right:AfterForwardGesture"); AfterForwardGesture?.Invoke(); } // anything else else { e.Handled = false; } }; _helper.PointerGoBackGestured = () => { Debug.WriteLine("PointerGoBackGestured"); AfterBackGesture?.Invoke(); }; _helper.PointerGoForwardGestured = () => { Debug.WriteLine("PointerGoForwardGestured"); AfterForwardGesture?.Invoke(); }; }
private KeyboardService() { _helper = new KeyboardHelper(); _helper.KeyDown = e => { e.Handled = true; // use this to nav back if (e.VirtualKey == Windows.System.VirtualKey.GoBack) { DebugWrite("GoBack", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(e.VirtualKey); } else if (e.VirtualKey == Windows.System.VirtualKey.NavigationLeft) { DebugWrite("NavigationLeft", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(e.VirtualKey); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadMenu) { DebugWrite("GamepadMenu", caller: nameof(AfterMenuGesture)); AfterMenuGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadLeftShoulder) { DebugWrite("GamepadLeftShoulder", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(e.VirtualKey); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Back) { DebugWrite("Alt+Back", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(e.VirtualKey); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Left) { DebugWrite("Alt+Left", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(e.VirtualKey); } else if (e.VirtualKey == Windows.System.VirtualKey.Escape) { DebugWrite("Escape", caller: nameof(AfterBackGesture)); AfterBackGesture?.Invoke(e.VirtualKey); } // use this to nav forward else if (e.VirtualKey == Windows.System.VirtualKey.GoForward) { DebugWrite("GoForward", caller: nameof(AfterForwardGesture)); AfterForwardGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.NavigationRight) { DebugWrite("NavigationRight", caller: nameof(AfterForwardGesture)); AfterForwardGesture?.Invoke(); } else if (e.VirtualKey == Windows.System.VirtualKey.GamepadRightShoulder) { DebugWrite("GamepadRightShoulder", caller: nameof(AfterForwardGesture)); AfterForwardGesture?.Invoke(); } else if (e.OnlyAlt && e.VirtualKey == Windows.System.VirtualKey.Right) { DebugWrite("Alt+Right", caller: nameof(AfterForwardGesture)); AfterForwardGesture?.Invoke(); } // anything else else { e.Handled = false; } }; _helper.PointerGoBackGestured = () => { DebugWrite(caller: nameof(KeyboardHelper.PointerGoBackGestured)); AfterBackGesture?.Invoke(Windows.System.VirtualKey.GoBack); }; _helper.PointerGoForwardGestured = () => { DebugWrite(caller: nameof(KeyboardHelper.PointerGoForwardGestured)); AfterForwardGesture?.Invoke(); }; }