Skip to content

Commit 005cdae

Browse files
Added a hotkey for playing audio and video in the preview pane (#6690)
1 parent 45e0f7f commit 005cdae

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

Files/UserControls/FilePreviews/MediaPreview.xaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@
99
d:DesignWidth="400"
1010
Unloaded="{x:Bind ViewModel.PreviewControlBase_Unloaded}"
1111
mc:Ignorable="d">
12-
12+
<UserControl.KeyboardAccelerators>
13+
<KeyboardAccelerator Key="P" Modifiers="Control,Menu" Invoked="TogglePlaybackAcceleratorInvoked"/>
14+
</UserControl.KeyboardAccelerators>
1315
<Grid CornerRadius="{StaticResource ControlCornerRadius}">
1416
<MediaPlayerElement
1517
x:Name="PlayerContext"

Files/UserControls/FilePreviews/MediaPreview.xaml.cs

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1-
using Files.Services;
1+
using System;
2+
using Files.Services;
23
using Files.ViewModels.Previews;
34
using Microsoft.Toolkit.Mvvm.DependencyInjection;
45
using Windows.Media.Playback;
56
using Windows.UI.Xaml;
67
using Windows.UI.Xaml.Controls;
8+
using Windows.UI.Xaml.Input;
79

810
// The User Control item template is documented at https://go.microsoft.com/fwlink/?LinkId=234236
911

@@ -35,5 +37,17 @@ private void MediaPlayer_VolumeChanged(MediaPlayer sender, object args)
3537
UserSettingsService.PreviewPaneSettingsService.PreviewPaneMediaVolume = sender.Volume;
3638
}
3739
}
40+
41+
private void TogglePlaybackAcceleratorInvoked(KeyboardAccelerator sender, KeyboardAcceleratorInvokedEventArgs args)
42+
{
43+
if (PlayerContext.MediaPlayer.PlaybackSession.PlaybackState is not MediaPlaybackState.Playing)
44+
{
45+
PlayerContext.MediaPlayer.Play();
46+
}
47+
else
48+
{
49+
PlayerContext.MediaPlayer.Pause();
50+
}
51+
}
3852
}
3953
}

0 commit comments

Comments
 (0)