diff --git a/FoxTube.Background/ResourceCreators.cs b/FoxTube.Background/ResourceCreators.cs index 2ec01a6..1102a64 100644 --- a/FoxTube.Background/ResourceCreators.cs +++ b/FoxTube.Background/ResourceCreators.cs @@ -17,7 +17,7 @@ namespace FoxTube.Background if (saved[7] as string == "ru-RU") return new Dictionary() { - { "addLater", "Добавить в Посмотреть позже" }, + { "addLater", "Посмотреть позже" }, { "changelog", "Список изменений" }, { "changelogHeader", "Что нового в версии" }, { "videoContent", "загрузил новое видео" }, diff --git a/FoxTube/Controls/VideoPlayer.xaml b/FoxTube/Controls/VideoPlayer.xaml index 4f54967..a8bd086 100644 --- a/FoxTube/Controls/VideoPlayer.xaml +++ b/FoxTube/Controls/VideoPlayer.xaml @@ -154,7 +154,7 @@ - + diff --git a/FoxTube/Controls/VideoPlayer.xaml.cs b/FoxTube/Controls/VideoPlayer.xaml.cs index b1cd1fc..1299011 100644 --- a/FoxTube/Controls/VideoPlayer.xaml.cs +++ b/FoxTube/Controls/VideoPlayer.xaml.cs @@ -37,6 +37,7 @@ namespace FoxTube public PlayerLayout layout = PlayerLayout.Normal; public bool pointerCaptured = false; + bool seekCaptured = false; Point cursorBackup; public event ObjectEventHandler SetFullSize; @@ -292,9 +293,16 @@ namespace FoxTube { await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { + bufferingLevel.Value = videoPlayer.PlaybackSession.DownloadProgress * 100; + if (seekCaptured) + return; + if(needUpdateTimecode) + if (controller.State == MediaTimelineControllerState.Running) + needUpdateTimecode = false; + else + return; seek.Value = controller.Position.TotalMilliseconds; seekIndicator.Value = seek.Value; - bufferingLevel.Value = videoPlayer.PlaybackSession.DownloadProgress * 100; }); } catch { } @@ -323,6 +331,9 @@ namespace FoxTube void ControlsFade(object sender, object e) { + if (seekCaptured) + return; + controls.Visibility = Visibility.Collapsed; if (layout != PlayerLayout.Minimized) touchCentral.Visibility = Visibility.Collapsed; @@ -531,6 +542,7 @@ namespace FoxTube { await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { + needUpdateTimecode = false; switch (sender.State) { case MediaTimelineControllerState.Paused: @@ -679,6 +691,8 @@ namespace FoxTube private void seek_PointerCaptureLost(object sender, PointerRoutedEventArgs e) { + seekCaptured = false; + needUpdateTimecode = true; controller.Position = Elapsed; } @@ -787,5 +801,10 @@ namespace FoxTube } catch { } } + + private void Seek_PointerCaptured(object sender, ManipulationStartedRoutedEventArgs e) + { + seekCaptured = true; + } } } diff --git a/FoxTube/Pages/LoadingPage.xaml b/FoxTube/Pages/LoadingPage.xaml index 6abb808..85d7403 100644 --- a/FoxTube/Pages/LoadingPage.xaml +++ b/FoxTube/Pages/LoadingPage.xaml @@ -11,8 +11,8 @@ - - + +