Implement Compact Overlay (PiP) for Issue #180
Initial shot at implementing Compact Overlay based partially on Tim's earlier work. Adds a setting for using native Windows 10 pip instead of existing pip implementation. It should only appear on version of Windows 10 supporting compact overlay, and will be set to "on" by default on supported platforms.
Testing thus far has been performed on W10 1709 and Xbox One (to confirm the setting isn't visible).
Merge request reports
Activity
added 1 commit
- 82e0d2ff - Revert "Change target to W10 Creator's Update"
added 1 commit
- 1067b39d - Revert "Add CompactOverlaySupported() function to AppViewHelpers to clean up…
added 1 commit
- d42b542e - Change W10 Build Target to 10.0.16299.0 (Revision 2)
added 1 commit
- 8f80f482 - Add IsCompactOverlaySupported getter to VideoPlayerVM for cleanup of safety…
mentioned in commit AgentCooper/vlc-winrt@cd4f0652
mentioned in commit AgentCooper/vlc-winrt@958f675a
I'll do some more testing and let you know if this can be merged in.
Can you rebase on master and squash your commits please?
Edited by Martin Finkel10 12 { 11 13 public override void Execute(object parameter) 12 14 { 13 Locator.NavigationService.Go(Locator.SettingsVM.HomePage); 14 App.RootPage.StartCompositionAnimationOnSwapChain(true); 15 if (Locator.SettingsVM.CompactOverlayPiP && Locator.VideoPlayerVm.IsCompactOverlaySupported) 16 { 17 if (ApplicationView.GetForCurrentView().ViewMode == ApplicationViewMode.Default) 18 { 19 ApplicationView.GetForCurrentView().TryEnterViewModeAsync(ApplicationViewMode.CompactOverlay); changed this line in version 7 of the diff
10 12 { 11 13 public override void Execute(object parameter) 12 14 { 13 Locator.NavigationService.Go(Locator.SettingsVM.HomePage); 14 App.RootPage.StartCompositionAnimationOnSwapChain(true); 15 if (Locator.SettingsVM.CompactOverlayPiP && Locator.VideoPlayerVm.IsCompactOverlaySupported) 16 { 17 if (ApplicationView.GetForCurrentView().ViewMode == ApplicationViewMode.Default) 18 { 19 ApplicationView.GetForCurrentView().TryEnterViewModeAsync(ApplicationViewMode.CompactOverlay); 20 Locator.VideoPlayerVm.RequestChangeControlBarVisibility(false); 21 } 22 23 if (ApplicationView.GetForCurrentView().ViewMode == ApplicationViewMode.CompactOverlay) 24 { 25 ApplicationView.GetForCurrentView().TryEnterViewModeAsync(ApplicationViewMode.Default); changed this line in version 7 of the diff
113 113 v.ExitFullScreenMode(); 114 114 } 115 115 116 public static void LeaveCompactOverlay() 117 { 118 if (ApiInformation.IsEnumNamedValuePresent("Windows.UI.ViewManagement.ApplicationViewMode", "CompactOverlay")) 119 { 120 if (ApplicationView.GetForCurrentView().ViewMode == ApplicationViewMode.CompactOverlay) 121 { 122 ApplicationView.GetForCurrentView().TryEnterViewModeAsync(ApplicationViewMode.Default); changed this line in version 7 of the diff
added 1 commit
- 0233d9e3 - Add setting for compact overlay. Modify InitPipCommand to implement it when appropriate.
added 1 commit
- 3e87575b - Add missing awaits to async functions in InitPipCommand and AppViewHelper.
added 8 commits
-
3e87575b...eb8e8e3b - 6 commits from branch
videolan:master
- 7b6f7126 - Add setting for compact overlay. Modify InitPipCommand to implement it when appropriate.
- a7852915 - Add missing awaits to async functions in InitPipCommand and AppViewHelper.
-
3e87575b...eb8e8e3b - 6 commits from branch
added 1 commit
- d48e5118 - Add setting for compact overlay. Modify InitPipCommand to implement it when appropriate.
added 1 commit
- 5651ba33 - Fix InitPipCommand failure when VLC not maximized by adding returns after…
added 1 commit
- 1ea60b82 - Add setting for compact overlay. Modify InitPipCommand to implement it when appropriate.
mentioned in commit 2dd19ba1