public ShellPage()
 {
     InitializeComponent();
     HideNavViewBackButton();
     KeyboardAccelerators.Add(ActivationService.AltLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(ActivationService.BackKeyboardAccelerator);
 }
Beispiel #2
0
 public ShellPage()
 {
     InitializeComponent();
     DataContext = ViewModel;
     KeyboardAccelerators.Add(ActivationService.AltLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(ActivationService.BackKeyboardAccelerator);
 }
Beispiel #3
0
        /// <summary>
        /// Handles the Loaded event of the RootNavigationView control.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void RootNavigationViewLoaded(object sender, RoutedEventArgs e)
        {
#if WINDOWS_UWP
            // add keyboard accelerators for backwards navigation
            var GoBack = new KeyboardAccelerator
            {
                Key = VirtualKey.GoBack
            };

            GoBack.Invoked += BackInvoked;

            var AltLeft = new KeyboardAccelerator
            {
                Key = VirtualKey.Left
            };

            AltLeft.Invoked += BackInvoked;

            KeyboardAccelerators.Add(GoBack);
            KeyboardAccelerators.Add(AltLeft);

            // ALT routes here
            AltLeft.Modifiers = VirtualKeyModifiers.Menu;
#endif
        }
 private void Initialize()
 {
     NavigationService.Frame      = shellFrame;
     NavigationService.Navigated += Frame_Navigated;
     KeyboardAccelerators.Add(ActivationService.AltLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(ActivationService.BackKeyboardAccelerator);
 }
Beispiel #5
0
        public MoviePage()
        {
            InitializeComponent();
            KeyboardAccelerator GoBack = new KeyboardAccelerator
            {
                Key = VirtualKey.GoBack
            };

            GoBack.Invoked += BackInvoked;
            KeyboardAccelerator AltLeft = new KeyboardAccelerator
            {
                Key = VirtualKey.Left
            };

            AltLeft.Invoked += BackInvoked;
            KeyboardAccelerators.Add(GoBack);
            KeyboardAccelerators.Add(AltLeft);
            // ALT routes here
            AltLeft.Modifiers = VirtualKeyModifiers.Menu;
            var coreTitleBar = CoreApplication.GetCurrentView().TitleBar;

            coreTitleBar.ExtendViewIntoTitleBar = true;

            // Set XAML element as a draggable region.
            AppTitleBar.Height = coreTitleBar.Height;
            Window.Current.SetTitleBar(AppTitleBar);
            // Register a handler for when the size of the overlaid caption control changes.
            // For example, when the app moves to a screen with a different DPI.
            coreTitleBar.LayoutMetricsChanged += CoreTitleBar_LayoutMetricsChanged;

            // Register a handler for when the title bar visibility changes.
            // For example, when the title bar is invoked in full screen mode.
            coreTitleBar.IsVisibleChanged += CoreTitleBar_IsVisibleChanged;
        }
Beispiel #6
0
 private void OnLoaded(object sender, RoutedEventArgs e)
 {
     // Keyboard accelerators are added here to avoid showing 'Alt + left' tooltip on the page.
     // More info on tracking issue https://github.com/Microsoft/microsoft-ui-xaml/issues/8
     KeyboardAccelerators.Add(_altLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(_backKeyboardAccelerator);
 }
Beispiel #7
0
 private void OnLoaded(object sender, RoutedEventArgs e)
 {
     /* i tasti di scelta rapida sono aggiunti qui per evitare di visualizzare la
      * descrizione comando "ALT+sinistra" nella pagina
      * ulteriori informazioni https://github.com/Microsoft/microsoft-ui-xaml/issues/8 */
     KeyboardAccelerators.Add(_altLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(_backKeyboardAccelerator);
 }
Beispiel #8
0
 public ShellPage()
 {
     InitializeComponent();
     HideNavViewBackButton();
     DataContext = ViewModel;
     ViewModel.Initialize(shellFrame, navigationView);
     KeyboardAccelerators.Add(ActivationService.AltLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(ActivationService.BackKeyboardAccelerator);
 }
Beispiel #9
0
        private void Initialize()
        {
            NavigationService.Frame      = shellFrame;
            NavigationService.Navigated += Frame_Navigated;
            KeyboardAccelerators.Add(ActivationService.AltLeftKeyboardAccelerator);
            KeyboardAccelerators.Add(ActivationService.BackKeyboardAccelerator);

            // Sets the Default Page View.
            shellFrame.Navigate(typeof(MainJobMenuPage));
        }
Beispiel #10
0
 private async void OnLoaded(object sender, RoutedEventArgs e)
 {
     // Keyboard accelerators are added here to avoid showing 'Alt + left' tooltip on the page.
     // More info on tracking issue https://github.com/Microsoft/microsoft-ui-xaml/issues/8
     KeyboardAccelerators.Add(_altLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(_backKeyboardAccelerator);
     IsLoggedIn   = IdentityService.IsLoggedIn();
     IsAuthorized = IsLoggedIn && IdentityService.IsAuthorized;
     User         = await UserDataService.GetUserAsync();
 }
Beispiel #11
0
 private void SetupKeyboardAccelerators()
 {
     if (UiUtils.IsKeyboardAcceleratorApiAvailable())
     {
         foreach (KeyboardAccelerator accelerator in UiUtils.GetGoBackKeyboardAccelerators())
         {
             accelerator.Invoked += Accelerator_Invoked;
             KeyboardAccelerators.Add(accelerator);
         }
     }
 }
Beispiel #12
0
        private void CreateKeyboardAccelerator(VirtualKey key, VirtualKeyModifiers modifiers = VirtualKeyModifiers.Control)
        {
            if (ApiInfo.CanUseAccelerators)
            {
                var accelerator = new KeyboardAccelerator {
                    Modifiers = modifiers, Key = key, ScopeOwner = this
                };
                accelerator.Invoked += FlyoutAccelerator_Invoked;

                KeyboardAccelerators.Add(accelerator);
            }
        }
Beispiel #13
0
        private async void OnLoaded(object sender, RoutedEventArgs e)
        {
            // Keyboard accelerators are added here to avoid showing 'Alt + left' tooltip on the page.
            // More info on tracking issue https://github.com/Microsoft/microsoft-ui-xaml/issues/8
            KeyboardAccelerators.Add(_altLeftKeyboardAccelerator);
            KeyboardAccelerators.Add(_backKeyboardAccelerator);
            await Task.CompletedTask;

            // Start Project Nirvash
            Page_Loaded();
            // Stop Project Nirvash
        }
Beispiel #14
0
        private async void OnLoaded(object sender, RoutedEventArgs e)
        {
            // Keyboard accelerators are added here to avoid showing 'Alt + left' tooltip on the page.
            // More info on tracking issue https://github.com/Microsoft/microsoft-ui-xaml/issues/8
            KeyboardAccelerators.Add(_altLeftKeyboardAccelerator);
            await Task.CompletedTask;

            // Due to some weird bug in the CalendarView, if it's not shown before changing the theme
            // the app will crash.
            // To work around just show the SplitView pane and quickly close it when the page loaded
            // Bug report filled here: https://github.com/microsoft/WindowsTemplateStudio/issues/3367
            NewTask_SplitView.IsPaneOpen = true;
            NewTask_SplitView.IsPaneOpen = false;
        }
Beispiel #15
0
        private void NavView_Loaded(object sender, RoutedEventArgs e)
        {
            CreateNavMenus();

            ContentFrame.Navigated += OnNavigated;
            NavView_Navigate("home", new EntranceNavigationTransitionInfo());

            var goBack = new KeyboardAccelerator {
                Key = VirtualKey.GoBack
            };

            goBack.Invoked += OnBackInvoked;
            KeyboardAccelerators.Add(goBack);

            var altLeft = new KeyboardAccelerator {
                Key = VirtualKey.Left, Modifiers = VirtualKeyModifiers.Menu
            };

            altLeft.Invoked += OnBackInvoked;
            KeyboardAccelerators.Add(altLeft);
        }
Beispiel #16
0
        private void uxNavView_Loaded(object sender, RoutedEventArgs e)
        {
            // NavView doesn't load any page by default: you need to specify it
            NavigateToView(MenuModel.HOME);

            // add keyboard accelerators for backwards navigation

            KeyboardAccelerator goBack = new KeyboardAccelerator();

            goBack.Key      = VirtualKey.GoBack;
            goBack.Invoked += BackInvoked;

            KeyboardAccelerator altLeft = new KeyboardAccelerator();

            altLeft.Key      = VirtualKey.Left;
            altLeft.Invoked += BackInvoked;

            KeyboardAccelerators.Add(goBack);
            KeyboardAccelerators.Add(altLeft);

            // ALT routes here

            altLeft.Modifiers = VirtualKeyModifiers.Menu;
        }
        private void AddKeyboardAccelerators()
        {
            var accelerator = new KeyboardAccelerator
            {
                Key = VirtualKey.Escape
            };

            _onEscapeKeyPressed =
                Observable.FromEventPattern <KeyboardAcceleratorInvokedEventArgs>(accelerator,
                                                                                  nameof(accelerator.Invoked));

            KeyboardAccelerators.Add(accelerator);

            var accelerator2 = new KeyboardAccelerator
            {
                Key = VirtualKey.Escape
            };

            _onEscapeKeyPressed =
                Observable.FromEventPattern <KeyboardAcceleratorInvokedEventArgs>(accelerator2,
                                                                                  nameof(accelerator2.Invoked));

            SearchBox.KeyboardAccelerators.Add(accelerator2);
        }
Beispiel #18
0
        private void InitialiseKeyboardAccelerators()
        {
            RecordButton.KeyboardAccelerators.Add(new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.R
            });
            PlayButton.KeyboardAccelerators.Add(new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.P
            });
            StopButton.KeyboardAccelerators.Add(new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.S
            });
            SaveButton.KeyboardAccelerators.Add(new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.S, Modifiers = Windows.System.VirtualKeyModifiers.Control
            });
            LoadButton.KeyboardAccelerators.Add(new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.O, Modifiers = Windows.System.VirtualKeyModifiers.Control
            });

            var copy = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.C, Modifiers = Windows.System.VirtualKeyModifiers.Control
            };

            copy.Invoked += (s, e) =>
            {
                e.Handled = true;
                if (SelectedBar != null && SelectedBar.Model != null && SelectedBar.Model.Buffer != null)
                {
                    var dataPackage = new DataPackage
                    {
                        RequestedOperation = DataPackageOperation.Copy
                    };
                    dataPackage.SetData("PCM", SelectedBar.Model.Buffer);
                    Clipboard.SetContent(dataPackage);
                }
            };
            KeyboardAccelerators.Add(copy);

            var paste = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.V, Modifiers = Windows.System.VirtualKeyModifiers.Control
            };

            paste.Invoked += async(s, e) =>
            {
                e.Handled = true;
                if (SelectedBar != null && SelectedBar.Model != null)
                {
                    if (SelectedBar.Model.Buffer == null)
                    {
                        SelectedBar.Model.SetBuffer(new float[Song.SamplesPerBar]);
                    }

                    var content = Clipboard.GetContent();
                    if (content.AvailableFormats.Contains("PCM"))
                    {
                        var data = await content.GetDataAsync("PCM");

                        SelectedBar.Model.SetBuffer(data as float[]);
                        SelectedBar.Update();
                    }
                }
            };
            KeyboardAccelerators.Add(paste);

            var delete = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.Delete
            };

            delete.Invoked += (s, e) =>
            {
                e.Handled = true;
                if (SelectedBar != null && SelectedBar.Model != null)
                {
                    SelectedBar.Model.SetEmpty();
                    SelectedBar.Update();
                }
            };
            KeyboardAccelerators.Add(delete);

            var left = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.Left
            };

            left.Invoked += (s, e) =>
            {
                e.Handled = true;
                if (SelectedBar != null)
                {
                    int column = Grid.GetColumn(SelectedBar);
                    int row    = Grid.GetRow(SelectedBar);
                    if (row >= 0 && column >= 0)
                    {
                        var selected = BarGrid.GetChildAt <UI.Bar>(row, column - 1);
                        if (selected != null)
                        {
                            selected.Select();
                        }
                    }
                }
            };
            KeyboardAccelerators.Add(left);

            var right = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.Right
            };

            right.Invoked += (s, e) =>
            {
                e.Handled = true;
                if (SelectedBar != null)
                {
                    int column = Grid.GetColumn(SelectedBar);
                    int row    = Grid.GetRow(SelectedBar);
                    if (row >= 0 && column >= 0)
                    {
                        var selected = BarGrid.GetChildAt <UI.Bar>(row, column + 1);
                        if (selected != null)
                        {
                            selected.Select();
                        }
                    }
                }
            };
            KeyboardAccelerators.Add(right);

            var up = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.Up
            };

            up.Invoked += (s, e) =>
            {
                e.Handled = true;
                if (SelectedBar != null)
                {
                    int column = Grid.GetColumn(SelectedBar);
                    int row    = Grid.GetRow(SelectedBar);
                    if (row >= 0 && column >= 0)
                    {
                        var selected = BarGrid.GetChildAt <UI.Bar>(row - 1, column);
                        if (selected != null)
                        {
                            selected.Select();
                        }
                    }
                }
            };
            KeyboardAccelerators.Add(up);

            var down = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.Down
            };

            down.Invoked += (s, e) =>
            {
                e.Handled = true;
                if (SelectedBar != null)
                {
                    int column = Grid.GetColumn(SelectedBar);
                    int row    = Grid.GetRow(SelectedBar);
                    if (row >= 0 && column >= 0)
                    {
                        var selected = BarGrid.GetChildAt <UI.Bar>(row + 1, column);
                        if (selected != null)
                        {
                            selected.Select();
                        }
                    }
                }
            };
            KeyboardAccelerators.Add(down);

            var save = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.S, Modifiers = Windows.System.VirtualKeyModifiers.Control
            };

            save.Invoked += (s, e) =>
            {
                e.Handled = true;
                Save();
            };
            KeyboardAccelerators.Add(save);

            var console = new KeyboardAccelerator {
                Key = Windows.System.VirtualKey.O, Modifiers = Windows.System.VirtualKeyModifiers.Control
            };

            console.Invoked += (s, e) =>
            {
                e.Handled = true;
                ToggleOutputwindow();
            };
            KeyboardAccelerators.Add(console);
        }
 private void OnLoaded(object sender, RoutedEventArgs e)
 {
     KeyboardAccelerators.Add(_altLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(_backKeyboardAccelerator);
 }
Beispiel #20
0
 private async void OnLoaded(object sender, RoutedEventArgs e)
 {
     KeyboardAccelerators.Add(_altLeftKeyboardAccelerator);
     KeyboardAccelerators.Add(_backKeyboardAccelerator);
     await Task.CompletedTask;
 }
Beispiel #21
0
        // This is where I set up keyboard accelerators and do some ridiculous hacks
        // to get keyboard control+focus working the way I want it.
        // Space should ALWAYS toggle playback, unless the search box has focus.
        // Escape should clear+exit the search box.
        // Enter should start playing a file when in the file view

        #region KeyboardStuff

        private void SetUpKeyboardAccelerators()
        {
            KeyboardAccelerator CreateAccelerator(VirtualKeyModifiers modifier, VirtualKey key,
                                                  TypedEventHandler <KeyboardAccelerator, KeyboardAcceleratorInvokedEventArgs> eventHandler)
            {
                KeyboardAccelerator ret = new KeyboardAccelerator()
                {
                    Modifiers = modifier, Key = key
                };

                ret.Invoked += eventHandler;

                return(ret);
            }

            //pull

            KeyboardAccelerator pullAccelerator = CreateAccelerator(VirtualKeyModifiers.Control, VirtualKey.P,
                                                                    async(sender, args) => {
                args.Handled = true;
                await ViewModel.PullEventsCommand.ExecuteAsync(null);
            });

            KeyboardAccelerators.Add(pullAccelerator);

            //push
            KeyboardAccelerators.Add(CreateAccelerator(VirtualKeyModifiers.Control | VirtualKeyModifiers.Shift, VirtualKey.P,
                                                       async(sender, args) => {
                args.Handled = true;
                await ViewModel.PushEventsCommand.ExecuteAsync(null);
            }));

            //search accelerator
            KeyboardAccelerators.Add(CreateAccelerator(VirtualKeyModifiers.Control, VirtualKey.F,
                                                       (sender, args) => {
                args.Handled = true;
                FilterBox.Focus(FocusState.Keyboard);
                FilterBox.SelectAll();
            }));

            //open local folder
            KeyboardAccelerators.Add(CreateAccelerator(VirtualKeyModifiers.Control, VirtualKey.E,
                                                       async(sender, args) => {
                args.Handled = true;
                await Launcher.LaunchFolderAsync(Windows.Storage.ApplicationData.Current.LocalFolder);
            }));

            //open music folder
            KeyboardAccelerators.Add(CreateAccelerator(VirtualKeyModifiers.Control, VirtualKey.M,
                                                       async(sender, args) => {
                args.Handled = true;
                await ViewModel.OpenLibraryFolder();
            }));

            //open library DB
            KeyboardAccelerators.Add(CreateAccelerator(VirtualKeyModifiers.Control, VirtualKey.D,
                                                       async(sender, args) => {
                args.Handled = true;
                Windows.Storage.StorageFile dbFile = await FileHelper.GetLibraryDbFileAsync();
                await Launcher.LaunchFileAsync(dbFile);
            }));

            //show selected item(s) in File Explorer
            KeyboardAccelerators.Add(CreateAccelerator(VirtualKeyModifiers.Control, VirtualKey.L,
                                                       async(sender, args) => {
                args.Handled = true;

                LibraryItem selected = (LibraryItem)libraryDataGrid.SelectedItem;
                await ViewModel.ShowItemInExplorer(selected);
            }));

            //show item info
            KeyboardAccelerators.Add(CreateAccelerator(VirtualKeyModifiers.Control, VirtualKey.I,
                                                       async(sender, args) => {
                args.Handled = true;

                LibraryItem selected = libraryDataGrid.SelectedItem as LibraryItem;
                if (selected != null)
                {
                    LibraryItemInfo dialog = new LibraryItemInfo(selected);
                    await dialog.ShowAsync();
                }
            }));

            //play a random bookmark
            KeyboardAccelerators.Add(CreateAccelerator(VirtualKeyModifiers.Control, VirtualKey.R,
                                                       async(sender, args) => {
                args.Handled = true;
                await ViewModel.PlayRandomBookmark();
            }));
        }