private void OnNowPlayingHide(CoreWindow sender, PointerEventArgs args) { if (!NowPlayingFrame.GetBoundingRect().Contains(args.CurrentPoint.Position)) { HideNowPlaying(); } }
private void VisualStateGroup_CurrentStateChanged(object sender, VisualStateChangedEventArgs e) { if (NowPlayingFrame.CurrentSourcePageType != typeof(NowPlayingView)) { NowPlayingFrame.Navigate(typeof(NowPlayingView)); } }
private async void HandleNavigationMessage(Message message) { if (message.Payload != null) { dynamic payload = message.Payload; if (!InitializeSwitch.IsMobile) { await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { NowPlayingFrame.Width = payload.parameter is string? 700 : 900; }); } if (NowPlayingFrame.CurrentSourcePageType != payload.pageType) { NowPlayingFrame.Navigate(payload.pageType, payload.parameter, new Windows.UI.Xaml.Media.Animation.SlideNavigationTransitionInfo()); } else if (payload.pageType == typeof(PlaylistView)) { NowPlayingFrame.Navigate(payload.pageType, payload.parameter, new Windows.UI.Xaml.Media.Animation.SlideNavigationTransitionInfo()); } if (ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons")) { Windows.Phone.UI.Input.HardwareButtons.BackPressed += BackButtonPressed; } _shellVm.IsPlaybarHidden = true; } }
private void OnNowPlayingHide(CoreWindow sender, PointerEventArgs args) { if (_shellVm.IsPlaybarHidden && !NowPlayingFrame.GetBoundingRect().Contains(args.CurrentPoint.Position)) { _shellVm.IsPlaybarHidden = false; CoreWindow.GetForCurrentThread().PointerReleased -= OnNowPlayingHide; } }
private void OnShellVMPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { if (e.PropertyName == "IsPlaybarHidden") { if (_shellVm.IsPlaybarHidden && NowPlayingFrame.CurrentSourcePageType != typeof(NowPlayingView)) { NowPlayingFrame.Navigate(typeof(NowPlayingView)); } } }
private void Page_Loaded(object sender, RoutedEventArgs e) { positionSlider.InitEvents(() => { positionSlider.UpdatePosition(positionProgressBar, _shellVm); }, () => { _shellVm.DontUpdatePosition = true; }); Window.Current.CoreWindow.PointerPressed += CoreWindow_PointerPressed; Window.Current.CoreWindow.PointerMoved += CoreWindow_PointerMoved; Window.Current.CoreWindow.PointerReleased += CoreWindow_PointerReleased; NowPlayingFrame.RegisterPropertyChangedCallback(VisibilityProperty, (d, obj) => { if (NowPlayingFrame.Visibility == Visibility.Visible) { CoreWindow.GetForCurrentThread().PointerReleased += OnNowPlayingHide; } }); }
private void BackButtonPressed(object sender, Windows.Phone.UI.Input.BackPressedEventArgs e) { e.Handled = true; if (NowPlayingFrame.BackStackDepth <= 1) { NowPlayingFrame.BackStack.Clear(); Windows.Phone.UI.Input.HardwareButtons.BackPressed -= BackButtonPressed; NavigationService.Instance.RegisterEvents(); _shellVm.IsPlaybarHidden = false; } else { NowPlayingFrame.GoBack(new Windows.UI.Xaml.Media.Animation.SlideNavigationTransitionInfo()); } }