/// <summary> /// Due to issues with the XLabs library, the HybridWebView control will only load if called programatically in code. /// </summary> private void createMediaViewerVideo() { MediaViewerVideo = new HybridWebViewV2() { VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand }; MediaViewerVideo.Source = Constants.StreamrAPIUrl + "youtubeview"; MediaViewerVideo.SetBinding(HybridWebViewV2.HeightRequestProperty, "MediaHeight"); MediaViewerVideo.SetBinding(HybridWebViewV2.IsVisibleProperty, "IsLoaded"); MediaViewerVideo.BindingContext = thisViewModel; MediaViewerVideo.InputTransparent = true; MediaViewer.Children.Add(MediaViewerVideo); MediaViewer.LowerChild(MediaViewerVideo); MediaViewerVideo.LoadFinished += new EventHandler(MediaViewerLoaded); MediaViewerVideo.RegisterCallback("videoPlaying", (arg) => { mewmont.Models.Javascript.PlaybackState playbackState = serializer.Deserialize <mewmont.Models.Javascript.PlaybackState>(arg); if (playbackState.playbackState != 1) { MediaViewerPlaceholder.IsVisible = true; } else { MediaViewerPlaceholder.IsVisible = false; } }); }
public void MediaMinimize() { Dispatch("Remove Plugin", _maximizedView); _maximizedView = null; System.GC.Collect(); MediaViewer.OnMinimize(); Dispatch("View: Normal"); }
public void MediaMaximize() { MediaViewer.OnMaximize(); _maximizedView = new MaximizedMediaPlayerView(new MaximizedMediaPlayerViewModel(MediaViewer.MediaView, new MaximizedMediaControlView(MediaControlBar))); Dispatch("Attach Plugin On Top", _maximizedView); Dispatch("View: Fullscreen"); }
public void Initialize(MediaViewer mediaViewer) { Assert.ArgumentNotNull(mediaViewer, nameof(mediaViewer)); MediaViewer = mediaViewer; }
private void StopButton_OnClick(object sender, RoutedEventArgs e) { MediaViewer.Stop(); }
private void PauseButton_Click(object sender, RoutedEventArgs e) { MediaViewer.Pause(); }
private void PlayButton_Click(object sender, RoutedEventArgs e) { MediaViewer.Play(); }
void vm_ClosingRequest(object sender, MediaViewer.Model.Mvvm.CloseableBindableBase.DialogEventArgs e) { this.Close(); }
public void AssignMedia(object media) { MediaViewer.AssignMedia(media); }