diff --git a/src/Adapter/Adapter.UnitTests/Adapter.UnitTests.csproj b/src/Adapter/Adapter.UnitTests/Adapter.UnitTests.csproj index 46ee43d82..0bef67580 100644 --- a/src/Adapter/Adapter.UnitTests/Adapter.UnitTests.csproj +++ b/src/Adapter/Adapter.UnitTests/Adapter.UnitTests.csproj @@ -13,7 +13,7 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/src/App/App.csproj b/src/App/App.csproj index d8307aabd..ae49d37a0 100644 --- a/src/App/App.csproj +++ b/src/App/App.csproj @@ -1309,19 +1309,19 @@ 6.2.14 - 7.1.2 + 7.1.3 - 7.1.2 + 7.1.3 - 7.1.2 + 7.1.3 - 7.1.2 + 7.1.3 - 7.1.2 + 7.1.3 2.8.2-prerelease.220830001 diff --git a/src/App/App.xaml.cs b/src/App/App.xaml.cs index 887418078..8963c089d 100644 --- a/src/App/App.xaml.cs +++ b/src/App/App.xaml.cs @@ -76,7 +76,6 @@ private async void OnLaunchedOrActivatedAsync(IActivatedEventArgs e) // Place the frame in the current Window Window.Current.Content = rootFrame; - DIFactory.RegisterAppRequiredConstants(); } if (e is LaunchActivatedEventArgs && (e as LaunchActivatedEventArgs).PrelaunchActivated == false) diff --git a/src/App/Controls/App/XboxNavigationView.xaml.cs b/src/App/Controls/App/XboxNavigationView.xaml.cs index 6ecf2a0d1..5dd1cd425 100644 --- a/src/App/Controls/App/XboxNavigationView.xaml.cs +++ b/src/App/Controls/App/XboxNavigationView.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using System.Linq; using Bili.App.Controls.Base; using Bili.App.Pages.Xbox; diff --git a/src/App/Controls/Community/CommentMainView/CommentMainView.cs b/src/App/Controls/Community/CommentMainView/CommentMainView.cs index 72b075228..0580078f3 100644 --- a/src/App/Controls/Community/CommentMainView/CommentMainView.cs +++ b/src/App/Controls/Community/CommentMainView/CommentMainView.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.Models.App.Other; using Bili.ViewModels.Interfaces.Community; using Windows.UI.Xaml.Controls; diff --git a/src/App/Controls/Player/BiliMediaPlayer/BiliMediaPlayer.Handlers.cs b/src/App/Controls/Player/BiliMediaPlayer/BiliMediaPlayer.Handlers.cs index 099b59d6c..a4573ca5c 100644 --- a/src/App/Controls/Player/BiliMediaPlayer/BiliMediaPlayer.Handlers.cs +++ b/src/App/Controls/Player/BiliMediaPlayer/BiliMediaPlayer.Handlers.cs @@ -75,7 +75,7 @@ private void OnDanmakuListAdded(object sender, IEnumerable e private async void OnMediaPlayerChangedAsync(object sender, object e) { - if(e is MediaPlayer mp) + if (e is MediaPlayer mp) { _mediaPlayerElement.SetMediaPlayer(mp); diff --git a/src/App/Controls/Player/BiliMediaTransportControls/BiliMediaTransportControls.Handlers.cs b/src/App/Controls/Player/BiliMediaTransportControls/BiliMediaTransportControls.Handlers.cs index f5ad0bbf8..fdc1b0ba4 100644 --- a/src/App/Controls/Player/BiliMediaTransportControls/BiliMediaTransportControls.Handlers.cs +++ b/src/App/Controls/Player/BiliMediaTransportControls/BiliMediaTransportControls.Handlers.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using System.ComponentModel; using Bili.Models.Data.Player; using Windows.UI.Xaml; diff --git a/src/App/Controls/Player/InteractionChoicePanel.xaml.cs b/src/App/Controls/Player/InteractionChoicePanel.xaml.cs index 9b7129274..ef0aed093 100644 --- a/src/App/Controls/Player/InteractionChoicePanel.xaml.cs +++ b/src/App/Controls/Player/InteractionChoicePanel.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.Models.Data.Player; using Bili.ViewModels.Interfaces.Core; using Windows.UI.Xaml; diff --git a/src/App/Controls/Player/PlayerControls/PlayRateButton.xaml.cs b/src/App/Controls/Player/PlayerControls/PlayRateButton.xaml.cs index 60cc22d1f..266e1460c 100644 --- a/src/App/Controls/Player/PlayerControls/PlayRateButton.xaml.cs +++ b/src/App/Controls/Player/PlayerControls/PlayRateButton.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Windows.UI.Xaml; namespace Bili.App.Controls.Player.PlayerControls diff --git a/src/App/Controls/Player/SubtitleConfigPanel.xaml.cs b/src/App/Controls/Player/SubtitleConfigPanel.xaml.cs index d8c1dea64..72caa54f3 100644 --- a/src/App/Controls/Player/SubtitleConfigPanel.xaml.cs +++ b/src/App/Controls/Player/SubtitleConfigPanel.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.Models.Data.Player; using Bili.ViewModels.Interfaces.Common; using Windows.UI.Xaml; diff --git a/src/App/Pages/Desktop/ArticlePartitionPage.xaml.cs b/src/App/Pages/Desktop/ArticlePartitionPage.xaml.cs index 03a3e6131..63e7b06b4 100644 --- a/src/App/Pages/Desktop/ArticlePartitionPage.xaml.cs +++ b/src/App/Pages/Desktop/ArticlePartitionPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.Models.Data.Community; using Bili.Models.Enums; using Bili.ViewModels.Interfaces.Article; diff --git a/src/App/Pages/Desktop/DynamicPage.xaml.cs b/src/App/Pages/Desktop/DynamicPage.xaml.cs index f0d687030..41adc24e5 100644 --- a/src/App/Pages/Desktop/DynamicPage.xaml.cs +++ b/src/App/Pages/Desktop/DynamicPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.App.Other; diff --git a/src/App/Pages/Desktop/Overlay/FavoritePage.xaml.cs b/src/App/Pages/Desktop/Overlay/FavoritePage.xaml.cs index e81a988b4..c1ec50c7a 100644 --- a/src/App/Pages/Desktop/Overlay/FavoritePage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/FavoritePage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using System.Linq; using Bili.App.Pages.Base; using Bili.Models.App.Other; diff --git a/src/App/Pages/Desktop/Overlay/LivePartitionDetailPage.xaml.cs b/src/App/Pages/Desktop/Overlay/LivePartitionDetailPage.xaml.cs index ed0f25adc..03f5ff4f5 100644 --- a/src/App/Pages/Desktop/Overlay/LivePartitionDetailPage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/LivePartitionDetailPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Community; using Bili.Models.Data.Live; diff --git a/src/App/Pages/Desktop/Overlay/LivePartitionPage.xaml.cs b/src/App/Pages/Desktop/Overlay/LivePartitionPage.xaml.cs index 76de00408..1a5631d95 100644 --- a/src/App/Pages/Desktop/Overlay/LivePartitionPage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/LivePartitionPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Community; diff --git a/src/App/Pages/Desktop/Overlay/LivePlayerPage.xaml.cs b/src/App/Pages/Desktop/Overlay/LivePlayerPage.xaml.cs index e86513dcf..3fc92891c 100644 --- a/src/App/Pages/Desktop/Overlay/LivePlayerPage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/LivePlayerPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Local; using Windows.UI.Xaml.Navigation; diff --git a/src/App/Pages/Desktop/Overlay/MessagePage.xaml.cs b/src/App/Pages/Desktop/Overlay/MessagePage.xaml.cs index 2e2c43654..411b8988d 100644 --- a/src/App/Pages/Desktop/Overlay/MessagePage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/MessagePage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.ViewModels.Interfaces.Community; namespace Bili.App.Pages.Desktop.Overlay diff --git a/src/App/Pages/Desktop/Overlay/MyFollowsPage.xaml.cs b/src/App/Pages/Desktop/Overlay/MyFollowsPage.xaml.cs index f5cc1e847..24f6bebe8 100644 --- a/src/App/Pages/Desktop/Overlay/MyFollowsPage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/MyFollowsPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.Models.Data.Community; using Bili.ViewModels.Interfaces.Account; diff --git a/src/App/Pages/Desktop/Overlay/PgcIndexPage.xaml.cs b/src/App/Pages/Desktop/Overlay/PgcIndexPage.xaml.cs index 1f1e6e268..167654044 100644 --- a/src/App/Pages/Desktop/Overlay/PgcIndexPage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/PgcIndexPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using System.Linq; using Bili.Models.Data.Appearance; using Bili.Models.Enums; diff --git a/src/App/Pages/Desktop/Overlay/SearchPage.xaml.cs b/src/App/Pages/Desktop/Overlay/SearchPage.xaml.cs index c0fb0b511..f0060bdb6 100644 --- a/src/App/Pages/Desktop/Overlay/SearchPage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/SearchPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Appearance; using Bili.ViewModels.Interfaces.Search; diff --git a/src/App/Pages/Desktop/Overlay/UserSpacePage.xaml.cs b/src/App/Pages/Desktop/Overlay/UserSpacePage.xaml.cs index e29f2fde7..3d61829f0 100644 --- a/src/App/Pages/Desktop/Overlay/UserSpacePage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/UserSpacePage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.User; using Windows.UI.Xaml.Navigation; diff --git a/src/App/Pages/Desktop/Overlay/VideoPartitionDetailPage.xaml.cs b/src/App/Pages/Desktop/Overlay/VideoPartitionDetailPage.xaml.cs index be5ae4b7a..0b3453598 100644 --- a/src/App/Pages/Desktop/Overlay/VideoPartitionDetailPage.xaml.cs +++ b/src/App/Pages/Desktop/Overlay/VideoPartitionDetailPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Community; using Bili.Models.Enums; diff --git a/src/App/Pages/Desktop/RankPage.xaml.cs b/src/App/Pages/Desktop/RankPage.xaml.cs index d7728c29f..951901196 100644 --- a/src/App/Pages/Desktop/RankPage.xaml.cs +++ b/src/App/Pages/Desktop/RankPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Community; diff --git a/src/App/Pages/Xbox/Overlay/FavoritePage.xaml.cs b/src/App/Pages/Xbox/Overlay/FavoritePage.xaml.cs index 114fcc248..ac8e4e14a 100644 --- a/src/App/Pages/Xbox/Overlay/FavoritePage.xaml.cs +++ b/src/App/Pages/Xbox/Overlay/FavoritePage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using System.Linq; using Bili.App.Pages.Base; using Bili.Models.App.Other; diff --git a/src/App/Pages/Xbox/Overlay/LivePartitionDetailPage.xaml.cs b/src/App/Pages/Xbox/Overlay/LivePartitionDetailPage.xaml.cs index 1e43c8a9f..6a4d1281e 100644 --- a/src/App/Pages/Xbox/Overlay/LivePartitionDetailPage.xaml.cs +++ b/src/App/Pages/Xbox/Overlay/LivePartitionDetailPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Community; using Bili.Models.Data.Live; diff --git a/src/App/Pages/Xbox/Overlay/LivePartitionPage.xaml.cs b/src/App/Pages/Xbox/Overlay/LivePartitionPage.xaml.cs index 3591db505..0a6c1d556 100644 --- a/src/App/Pages/Xbox/Overlay/LivePartitionPage.xaml.cs +++ b/src/App/Pages/Xbox/Overlay/LivePartitionPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Community; diff --git a/src/App/Pages/Xbox/Overlay/SearchPage.xaml.cs b/src/App/Pages/Xbox/Overlay/SearchPage.xaml.cs index b58f5ba34..9107633b8 100644 --- a/src/App/Pages/Xbox/Overlay/SearchPage.xaml.cs +++ b/src/App/Pages/Xbox/Overlay/SearchPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Appearance; using Bili.ViewModels.Interfaces.Search; diff --git a/src/App/Pages/Xbox/Overlay/UserSpacePage.xaml.cs b/src/App/Pages/Xbox/Overlay/UserSpacePage.xaml.cs index 7d1f2334c..2eaa01a71 100644 --- a/src/App/Pages/Xbox/Overlay/UserSpacePage.xaml.cs +++ b/src/App/Pages/Xbox/Overlay/UserSpacePage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.User; using Windows.UI.Xaml.Navigation; diff --git a/src/App/Pages/Xbox/Overlay/VideoFavoriteDetailPage.xaml.cs b/src/App/Pages/Xbox/Overlay/VideoFavoriteDetailPage.xaml.cs index ccc196973..a5a3689be 100644 --- a/src/App/Pages/Xbox/Overlay/VideoFavoriteDetailPage.xaml.cs +++ b/src/App/Pages/Xbox/Overlay/VideoFavoriteDetailPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Video; using Windows.UI.Xaml.Navigation; diff --git a/src/App/Pages/Xbox/Overlay/VideoPartitionDetailPage.xaml.cs b/src/App/Pages/Xbox/Overlay/VideoPartitionDetailPage.xaml.cs index ab1344101..9a169153d 100644 --- a/src/App/Pages/Xbox/Overlay/VideoPartitionDetailPage.xaml.cs +++ b/src/App/Pages/Xbox/Overlay/VideoPartitionDetailPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Community; using Bili.Models.Enums; diff --git a/src/App/Pages/Xbox/PreSearchPage.xaml.cs b/src/App/Pages/Xbox/PreSearchPage.xaml.cs index 6273b0c12..121c3592e 100644 --- a/src/App/Pages/Xbox/PreSearchPage.xaml.cs +++ b/src/App/Pages/Xbox/PreSearchPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.Models.Data.Search; using Bili.ViewModels.Interfaces.Search; diff --git a/src/App/Pages/Xbox/RankPage.xaml.cs b/src/App/Pages/Xbox/RankPage.xaml.cs index 36a0b1174..cbdc4c7f4 100644 --- a/src/App/Pages/Xbox/RankPage.xaml.cs +++ b/src/App/Pages/Xbox/RankPage.xaml.cs @@ -1,6 +1,5 @@ // Copyright (c) Richasy. All rights reserved. -using System; using Bili.App.Pages.Base; using Bili.Models.Data.Community; diff --git a/src/App/Resources/Converter/PreferQualityConverter.cs b/src/App/Resources/Converter/PreferQualityConverter.cs index 002c0b00c..ab1d3fa05 100644 --- a/src/App/Resources/Converter/PreferQualityConverter.cs +++ b/src/App/Resources/Converter/PreferQualityConverter.cs @@ -15,7 +15,7 @@ internal sealed class PreferQualityConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, string language) { - if(value is PreferQuality quality) + if (value is PreferQuality quality) { var resToolkit = Locator.Instance.GetService(); return quality switch diff --git a/src/Lib/DI.App/DI.App.csproj b/src/Lib/DI.App/DI.App.csproj index 615432dba..0a59ac940 100644 --- a/src/Lib/DI.App/DI.App.csproj +++ b/src/Lib/DI.App/DI.App.csproj @@ -129,7 +129,7 @@ 6.2.14 - 5.0.4 + 5.0.5 diff --git a/src/Lib/DI.App/DIFactory.cs b/src/Lib/DI.App/DIFactory.cs index e287dd430..ef4dd003f 100644 --- a/src/Lib/DI.App/DIFactory.cs +++ b/src/Lib/DI.App/DIFactory.cs @@ -32,7 +32,6 @@ using Bili.ViewModels.Uwp.Toolbox; using Bili.ViewModels.Uwp.Video; using Windows.Storage; -using Windows.UI.Xaml; namespace Bili.DI.App { @@ -52,7 +51,7 @@ public static void RegisterAppRequiredServices() NLog.GlobalDiagnosticsContext.Set("LogPath", fullPath); var logger = NLog.LogManager.GetLogger("Richasy.Bili"); Container.Locator.Instance - .RegisterSingleton(logger) + .RegisterConstant(logger) .RegisterSingleton() .RegisterSingleton() .RegisterSingleton() @@ -179,14 +178,5 @@ public static void RegisterAppRequiredServices() .RegisterSingleton() .Build(); } - - /// - /// 注册应用所需的常量. - /// - public static void RegisterAppRequiredConstants() - { - Container.Locator.Instance.RegisterSingleton(Window.Current.CoreWindow.Dispatcher) - .Build(); - } } } diff --git a/src/Lib/DI.Container/DI.Container.csproj b/src/Lib/DI.Container/DI.Container.csproj index 2a2c7c86e..ef2d657d7 100644 --- a/src/Lib/DI.Container/DI.Container.csproj +++ b/src/Lib/DI.Container/DI.Container.csproj @@ -6,8 +6,8 @@ + - diff --git a/src/Lib/DI.Container/Locator.cs b/src/Lib/DI.Container/Locator.cs index 749303cec..96856ce8e 100644 --- a/src/Lib/DI.Container/Locator.cs +++ b/src/Lib/DI.Container/Locator.cs @@ -1,7 +1,7 @@ // Copyright (c) Richasy. All rights reserved. using System; -using Microsoft.Extensions.DependencyInjection; +using Autofac; namespace Bili.DI.Container { @@ -10,19 +10,16 @@ namespace Bili.DI.Container /// public sealed class Locator { - private readonly IServiceCollection _serviceDescriptors; + private static IContainer _container; + private static ContainerBuilder _containerBuilder; - private Locator() => _serviceDescriptors = new ServiceCollection(); + private Locator() + => _containerBuilder = new ContainerBuilder(); /// /// DI 容器实例. /// - public static Locator Instance { get; } = new Locator(); - - /// - /// 服务注册提供器. - /// - public IServiceProvider Provider { get; private set; } + public static Locator Instance { get; } = new Lazy(() => new Locator()).Value; /// /// 注册单例. @@ -34,20 +31,9 @@ public Locator RegisterSingleton() where TInterface : class where TImplementation : class, TInterface { - _serviceDescriptors.AddSingleton(); - return this; - } - - /// - /// 注册单例. - /// - /// 接口的实现实例. - /// 单例接口. - /// 定位器. - public Locator RegisterSingleton(TInterface implementation) - where TInterface : class - { - _serviceDescriptors.AddSingleton(implementation); + _containerBuilder.RegisterType() + .As() + .SingleInstance(); return this; } @@ -58,7 +44,7 @@ public Locator RegisterSingleton(TInterface implementation) /// 定位器. public Locator RegisterConstant(object data) { - _serviceDescriptors.AddSingleton(data); + _containerBuilder.RegisterInstance(data); return this; } @@ -72,7 +58,8 @@ public Locator RegisterTransient() where TInterface : class where TImplementation : class, TInterface { - _serviceDescriptors.AddTransient(); + _containerBuilder.RegisterType() + .As(); return this; } @@ -80,7 +67,7 @@ public Locator RegisterTransient() /// 构建服务提供器,使注册的服务生效. /// public void Build() - => Provider = _serviceDescriptors.BuildServiceProvider(); + => _container = _containerBuilder.Build(); /// /// 获取注册的服务. @@ -88,6 +75,6 @@ public void Build() /// 服务注册标识. /// 注册的服务. public T GetService() - => Provider.GetService(); + => _container.Resolve(); } } diff --git a/src/Lib/Lib.Implementation/Lib.Implementation.csproj b/src/Lib/Lib.Implementation/Lib.Implementation.csproj index e73a14c0d..b29f22d8b 100644 --- a/src/Lib/Lib.Implementation/Lib.Implementation.csproj +++ b/src/Lib/Lib.Implementation/Lib.Implementation.csproj @@ -8,7 +8,7 @@ - + diff --git a/src/Models/Models.gRPC/Models.gRPC.csproj b/src/Models/Models.gRPC/Models.gRPC.csproj index 59d616a41..aacc8d8dd 100644 --- a/src/Models/Models.gRPC/Models.gRPC.csproj +++ b/src/Models/Models.gRPC/Models.gRPC.csproj @@ -12,9 +12,9 @@ - - - + + + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/src/Tasks/Tasks.csproj b/src/Tasks/Tasks.csproj index bb95ced60..ad68e00b8 100644 --- a/src/Tasks/Tasks.csproj +++ b/src/Tasks/Tasks.csproj @@ -126,13 +126,13 @@ - 3.21.6 + 3.21.9 6.2.14 - 7.1.2 + 7.1.3 diff --git a/src/ViewModels/ViewModels.Interfaces/Pgc/IPgcPlaylistViewModel.cs b/src/ViewModels/ViewModels.Interfaces/Pgc/IPgcPlaylistViewModel.cs index d1e66c2df..f1e151170 100644 --- a/src/ViewModels/ViewModels.Interfaces/Pgc/IPgcPlaylistViewModel.cs +++ b/src/ViewModels/ViewModels.Interfaces/Pgc/IPgcPlaylistViewModel.cs @@ -1,7 +1,6 @@ // Copyright (c) Richasy. All rights reserved. using System.Collections.ObjectModel; -using System.Windows.Input; using Bili.Models.Data.Pgc; using CommunityToolkit.Mvvm.Input; diff --git a/src/ViewModels/ViewModels.Uwp/Account/AccountViewModel/AccountViewModel.cs b/src/ViewModels/ViewModels.Uwp/Account/AccountViewModel/AccountViewModel.cs index 9489d2f1e..f8883c566 100644 --- a/src/ViewModels/ViewModels.Uwp/Account/AccountViewModel/AccountViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Account/AccountViewModel/AccountViewModel.cs @@ -12,7 +12,7 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Account; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Account { @@ -29,15 +29,14 @@ public AccountViewModel( INumberToolkit numberToolkit, IFileToolkit fileToolkit, IAuthorizeProvider authorizeProvider, - IAccountProvider accountProvider, - CoreDispatcher dispatcher) + IAccountProvider accountProvider) { _resourceToolkit = resourceToolkit; _numberToolkit = numberToolkit; _fileToolkit = fileToolkit; _authorizeProvider = authorizeProvider; _accountProvider = accountProvider; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; TrySignInCommand = new AsyncRelayCommand(TrySignInAsync); SignOutCommand = new AsyncRelayCommand(SignOutAsync); diff --git a/src/ViewModels/ViewModels.Uwp/Account/HistoryPageViewModel/HistoryPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Account/HistoryPageViewModel/HistoryPageViewModel.cs index ed4d3201c..9e4320ea5 100644 --- a/src/ViewModels/ViewModels.Uwp/Account/HistoryPageViewModel/HistoryPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Account/HistoryPageViewModel/HistoryPageViewModel.cs @@ -8,7 +8,6 @@ using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Account { @@ -22,9 +21,7 @@ public sealed partial class HistoryPageViewModel : InformationFlowViewModelBase< /// public HistoryPageViewModel( IAccountProvider accountProvider, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) - : base(dispatcher) + IResourceToolkit resourceToolkit) { _accountProvider = accountProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Account/MyFollowsPageViewModel/MyFollowsPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Account/MyFollowsPageViewModel/MyFollowsPageViewModel.cs index 579311ee9..8843bfef6 100644 --- a/src/ViewModels/ViewModels.Uwp/Account/MyFollowsPageViewModel/MyFollowsPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Account/MyFollowsPageViewModel/MyFollowsPageViewModel.cs @@ -12,7 +12,6 @@ using Bili.ViewModels.Interfaces.Account; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Account { @@ -27,9 +26,7 @@ public sealed partial class MyFollowsPageViewModel : InformationFlowViewModelBas public MyFollowsPageViewModel( IAccountProvider accountProvider, IResourceToolkit resourceToolkit, - IAccountViewModel accountViewModel, - CoreDispatcher dispatcher) - : base(dispatcher) + IAccountViewModel accountViewModel) { _accountProvider = accountProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Account/UserItemViewModel/UserItemViewModel.cs b/src/ViewModels/ViewModels.Uwp/Account/UserItemViewModel/UserItemViewModel.cs index 9ba1ebc10..a7a9e0ae7 100644 --- a/src/ViewModels/ViewModels.Uwp/Account/UserItemViewModel/UserItemViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Account/UserItemViewModel/UserItemViewModel.cs @@ -12,6 +12,7 @@ using Bili.ViewModels.Interfaces.Core; using CommunityToolkit.Mvvm.Input; using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Account { @@ -29,8 +30,7 @@ public UserItemViewModel( IResourceToolkit resourceToolkit, ICallerViewModel callerViewModel, INavigationViewModel navigationViewModel, - IAccountViewModel accountViewModel, - CoreDispatcher dispatcher) + IAccountViewModel accountViewModel) { _numberToolkit = numberToolkit; _accountProvider = accountProvider; @@ -38,7 +38,7 @@ public UserItemViewModel( _callerViewModel = callerViewModel; _navigationViewModel = navigationViewModel; _accountViewModel = accountViewModel; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; ToggleRelationCommand = new AsyncRelayCommand(ToggleRelationAsync); InitializeRelationCommand = new AsyncRelayCommand(InitializeRelationAsync); diff --git a/src/ViewModels/ViewModels.Uwp/Account/UserSpaceViewModel/UserSpaceViewModel.cs b/src/ViewModels/ViewModels.Uwp/Account/UserSpaceViewModel/UserSpaceViewModel.cs index d97f65810..469e816a7 100644 --- a/src/ViewModels/ViewModels.Uwp/Account/UserSpaceViewModel/UserSpaceViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Account/UserSpaceViewModel/UserSpaceViewModel.cs @@ -13,7 +13,6 @@ using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Account { @@ -30,9 +29,7 @@ public UserSpaceViewModel( IResourceToolkit resourceToolkit, INavigationViewModel navigationViewModel, IAccountViewModel accountViewModel, - ICallerViewModel callerViewModel, - CoreDispatcher dispatcher) - : base(dispatcher) + ICallerViewModel callerViewModel) { _accountProvider = accountProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Account/ViewLaterPageViewModel/ViewLaterPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Account/ViewLaterPageViewModel/ViewLaterPageViewModel.cs index 3324e2320..867fdc7df 100644 --- a/src/ViewModels/ViewModels.Uwp/Account/ViewLaterPageViewModel/ViewLaterPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Account/ViewLaterPageViewModel/ViewLaterPageViewModel.cs @@ -11,7 +11,6 @@ using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Account { @@ -26,9 +25,7 @@ public sealed partial class ViewLaterPageViewModel : InformationFlowViewModelBas public ViewLaterPageViewModel( IAccountProvider accountProvider, IResourceToolkit resourceToolkit, - INavigationViewModel navigationViewModel, - CoreDispatcher dispatcher) - : base(dispatcher) + INavigationViewModel navigationViewModel) { _accountProvider = accountProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Article/ArticleFavoriteModuleViewModel/ArticleFavoriteModuleViewModel.cs b/src/ViewModels/ViewModels.Uwp/Article/ArticleFavoriteModuleViewModel/ArticleFavoriteModuleViewModel.cs index 9a8e1ee92..647a7904b 100644 --- a/src/ViewModels/ViewModels.Uwp/Article/ArticleFavoriteModuleViewModel/ArticleFavoriteModuleViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Article/ArticleFavoriteModuleViewModel/ArticleFavoriteModuleViewModel.cs @@ -7,7 +7,6 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Article; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Article { @@ -21,9 +20,7 @@ public partial class ArticleFavoriteModuleViewModel : InformationFlowViewModelBa /// public ArticleFavoriteModuleViewModel( IFavoriteProvider favoriteProvider, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) - : base(dispatcher) + IResourceToolkit resourceToolkit) { _favoriteProvider = favoriteProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Article/ArticlePartitionPageViewModel/ArticlePartitionPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Article/ArticlePartitionPageViewModel/ArticlePartitionPageViewModel.cs index 8fc092473..05efa5594 100644 --- a/src/ViewModels/ViewModels.Uwp/Article/ArticlePartitionPageViewModel/ArticlePartitionPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Article/ArticlePartitionPageViewModel/ArticlePartitionPageViewModel.cs @@ -14,7 +14,6 @@ using Bili.ViewModels.Interfaces.Common; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Article { @@ -31,9 +30,7 @@ public sealed partial class ArticlePartitionPageViewModel : InformationFlowViewM /// UI 调度器. public ArticlePartitionPageViewModel( IResourceToolkit resourceToolkit, - IArticleProvider articleProvider, - CoreDispatcher coreDispatcher) - : base(coreDispatcher) + IArticleProvider articleProvider) { _resourceToolkit = resourceToolkit; _articleProvider = articleProvider; diff --git a/src/ViewModels/ViewModels.Uwp/Base/DynamicModuleViewModelBase/DynamicModuleViewModelBase.cs b/src/ViewModels/ViewModels.Uwp/Base/DynamicModuleViewModelBase/DynamicModuleViewModelBase.cs index b149d5cd6..a92a60278 100644 --- a/src/ViewModels/ViewModels.Uwp/Base/DynamicModuleViewModelBase/DynamicModuleViewModelBase.cs +++ b/src/ViewModels/ViewModels.Uwp/Base/DynamicModuleViewModelBase/DynamicModuleViewModelBase.cs @@ -7,7 +7,6 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Community; using Bili.ViewModels.Uwp.Community; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Base { @@ -24,9 +23,7 @@ internal DynamicModuleViewModelBase( IResourceToolkit resourceToolkit, ISettingsToolkit settingsToolkit, IAuthorizeProvider authorizeProvider, - bool isOnlyVideo, - CoreDispatcher dispatcher) - : base(dispatcher) + bool isOnlyVideo) { _communityProvider = communityProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Base/InformationFlowViewModelBase/InformationFlowViewModelBase.cs b/src/ViewModels/ViewModels.Uwp/Base/InformationFlowViewModelBase/InformationFlowViewModelBase.cs index 878bb4180..df4218f40 100644 --- a/src/ViewModels/ViewModels.Uwp/Base/InformationFlowViewModelBase/InformationFlowViewModelBase.cs +++ b/src/ViewModels/ViewModels.Uwp/Base/InformationFlowViewModelBase/InformationFlowViewModelBase.cs @@ -7,6 +7,7 @@ using Bili.ViewModels.Interfaces; using CommunityToolkit.Mvvm.Input; using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Base { @@ -17,9 +18,9 @@ namespace Bili.ViewModels.Uwp.Base public abstract partial class InformationFlowViewModelBase : ViewModelBase, IInformationFlowViewModel where T : class { - internal InformationFlowViewModelBase(CoreDispatcher dispatcher) + internal InformationFlowViewModelBase() { - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; Items = new ObservableCollection(); ResetStateCommand = new RelayCommand(ResetState); diff --git a/src/ViewModels/ViewModels.Uwp/Base/PgcFavoriteModuleViewModelBase/PgcFavoriteModuleViewModelBase.cs b/src/ViewModels/ViewModels.Uwp/Base/PgcFavoriteModuleViewModelBase/PgcFavoriteModuleViewModelBase.cs index 5a605e5c0..1afb66f6b 100644 --- a/src/ViewModels/ViewModels.Uwp/Base/PgcFavoriteModuleViewModelBase/PgcFavoriteModuleViewModelBase.cs +++ b/src/ViewModels/ViewModels.Uwp/Base/PgcFavoriteModuleViewModelBase/PgcFavoriteModuleViewModelBase.cs @@ -9,7 +9,6 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Pgc; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Base { @@ -24,9 +23,7 @@ public partial class PgcFavoriteModuleViewModelBase : InformationFlowViewModelBa internal PgcFavoriteModuleViewModelBase( FavoriteType type, IFavoriteProvider favoriteProvider, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) - : base(dispatcher) + IResourceToolkit resourceToolkit) { _type = type; _favoriteProvider = favoriteProvider; diff --git a/src/ViewModels/ViewModels.Uwp/Base/PgcPageViewModelBase/PgcPageViewModelBase.cs b/src/ViewModels/ViewModels.Uwp/Base/PgcPageViewModelBase/PgcPageViewModelBase.cs index 811e755a9..9a82ec94c 100644 --- a/src/ViewModels/ViewModels.Uwp/Base/PgcPageViewModelBase/PgcPageViewModelBase.cs +++ b/src/ViewModels/ViewModels.Uwp/Base/PgcPageViewModelBase/PgcPageViewModelBase.cs @@ -12,7 +12,6 @@ using Bili.ViewModels.Interfaces.Core; using Bili.ViewModels.Interfaces.Pgc; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Base { @@ -32,10 +31,8 @@ public partial class PgcPageViewModelBase : InformationFlowViewModelBase public FansPageViewModel( IAccountProvider accountProvider, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) - : base(accountProvider, resourceToolkit, Models.Enums.Bili.RelationType.Fans, dispatcher) + IResourceToolkit resourceToolkit) + : base(accountProvider, resourceToolkit, Models.Enums.Bili.RelationType.Fans) { } } diff --git a/src/ViewModels/ViewModels.Uwp/Community/FollowsPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Community/FollowsPageViewModel.cs index 2d846cb23..1eefee8d6 100644 --- a/src/ViewModels/ViewModels.Uwp/Community/FollowsPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Community/FollowsPageViewModel.cs @@ -4,7 +4,6 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Community; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Community { @@ -18,9 +17,8 @@ public sealed class FollowsPageViewModel : RelationPageViewModelBase, IFollowsPa /// public FollowsPageViewModel( IAccountProvider accountProvider, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) - : base(accountProvider, resourceToolkit, Models.Enums.Bili.RelationType.Follows, dispatcher) + IResourceToolkit resourceToolkit) + : base(accountProvider, resourceToolkit, Models.Enums.Bili.RelationType.Follows) { } } diff --git a/src/ViewModels/ViewModels.Uwp/Community/MessagePageViewModel/MessagePageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Community/MessagePageViewModel/MessagePageViewModel.cs index 2dc7733b9..eb9269ec3 100644 --- a/src/ViewModels/ViewModels.Uwp/Community/MessagePageViewModel/MessagePageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Community/MessagePageViewModel/MessagePageViewModel.cs @@ -15,7 +15,6 @@ using Bili.ViewModels.Interfaces.Community; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Community { @@ -30,9 +29,7 @@ public sealed partial class MessagePageViewModel : InformationFlowViewModelBase< public MessagePageViewModel( IAccountProvider accountProvider, IResourceToolkit resourceToolkit, - IAccountViewModel accountViewModel, - CoreDispatcher dispatcher) - : base(dispatcher) + IAccountViewModel accountViewModel) { _accountProvider = accountProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Core/AppViewModel/AppViewModel.cs b/src/ViewModels/ViewModels.Uwp/Core/AppViewModel/AppViewModel.cs index 209d48a31..e7f9c026c 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/AppViewModel/AppViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/AppViewModel/AppViewModel.cs @@ -9,7 +9,6 @@ using Bili.ViewModels.Interfaces.Core; using CommunityToolkit.Mvvm.Input; using Windows.Globalization; -using Windows.UI.Core; using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Core @@ -28,8 +27,7 @@ public AppViewModel( IAppToolkit appToolkit, IUpdateProvider updateProvider, ICallerViewModel callerViewModel, - INavigationViewModel navigationViewModel, - CoreDispatcher dispatcher) + INavigationViewModel navigationViewModel) { _callerViewModel = callerViewModel; _navigationViewModel = navigationViewModel; @@ -38,7 +36,7 @@ public AppViewModel( _appToolkit = appToolkit; _updateProvider = updateProvider; _networkHelper = Microsoft.Toolkit.Uwp.Connectivity.NetworkHelper.Instance; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; IsXbox = Windows.System.Profile.AnalyticsInfo.VersionInfo.DeviceFamily == "Windows.Xbox"; IsNavigatePaneOpen = true; diff --git a/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.Methods.cs b/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.Methods.cs index 69a1f6a1c..e104edf2e 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.Methods.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.Methods.cs @@ -258,13 +258,6 @@ private void OnMediaPlayerOpened(MediaPlayer sender, object args) private async void OnPlayerPositionChangedAsync(MediaPlaybackSession sender, object args) { - if (_shouldPreventSkip && Position != TimeSpan.Zero) - { - _shouldPreventSkip = false; - SeekTo(TimeSpan.Zero); - return; - } - await _dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { if (_videoCurrentSession == null) diff --git a/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.Properties.cs b/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.Properties.cs index 1ae20ba72..4b5b4ebb8 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.Properties.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.Properties.cs @@ -41,7 +41,6 @@ public sealed partial class FFmpegPlayerViewModel private MediaPlaybackSession _videoCurrentSession; private int _liveRetryCount; private int _videoRetryCount; - private bool _shouldPreventSkip; /// public event EventHandler MediaOpened; diff --git a/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.cs b/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.cs index 5ab6390ed..bc62d4a7a 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/FFmpegPlayerViewModel/FFmpegPlayerViewModel.cs @@ -9,7 +9,7 @@ using CommunityToolkit.Mvvm.Input; using FFmpegInteropX; using Microsoft.Graphics.Canvas; -using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Core { @@ -23,12 +23,11 @@ public sealed partial class FFmpegPlayerViewModel : ViewModelBase, IFFmpegPlayer /// public FFmpegPlayerViewModel( IResourceToolkit resourceToolkit, - ISettingsToolkit settingsToolkit, - CoreDispatcher dispatcher) + ISettingsToolkit settingsToolkit) { _resourceToolkit = resourceToolkit; _settingsToolkit = settingsToolkit; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; _liveConfig = new MediaSourceConfig(); _liveConfig.FFmpegOptions.Add("rtsp_transport", "tcp"); @@ -45,7 +44,6 @@ public async Task SetSourceAsync(SegmentInformation video, SegmentInformation au _video = video; _audio = audio; _videoRetryCount = 0; - _shouldPreventSkip = true; await LoadDashVideoSourceAsync(); } diff --git a/src/ViewModels/ViewModels.Uwp/Core/MediaPlayerViewModel/MediaPlayerViewModel.cs b/src/ViewModels/ViewModels.Uwp/Core/MediaPlayerViewModel/MediaPlayerViewModel.cs index 0cc2587dd..5ba8e3e9f 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/MediaPlayerViewModel/MediaPlayerViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/MediaPlayerViewModel/MediaPlayerViewModel.cs @@ -20,6 +20,7 @@ using Windows.System.Display; using Windows.UI.Core; using Windows.UI.ViewManagement; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Core { @@ -44,8 +45,7 @@ public MediaPlayerViewModel( IDanmakuModuleViewModel danmakuModuleViewModel, IInteractionModuleViewModel interactionModuleViewModel, ICallerViewModel callerViewModel, - IAppViewModel appViewModel, - CoreDispatcher dispatcher) + IAppViewModel appViewModel) { _playerProvider = playerProvider; _liveProvider = liveProvider; @@ -57,7 +57,7 @@ public MediaPlayerViewModel( _callerViewModel = callerViewModel; _appViewModel = appViewModel; _navigationViewModel = navigationViewModel; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; SubtitleViewModel = subtitleModuleViewModel; DanmakuViewModel = danmakuModuleViewModel; InteractionViewModel = interactionModuleViewModel; diff --git a/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.Methods.cs b/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.Methods.cs index 34543ae29..bda95ea51 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.Methods.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.Methods.cs @@ -186,13 +186,6 @@ private void OnMediaPlayerOpened(MediaPlayer sender, object args) private async void OnPlayerPositionChangedAsync(MediaPlaybackSession sender, object args) { - if (_shouldPreventSkip && Position != TimeSpan.Zero) - { - _shouldPreventSkip = false; - SeekTo(TimeSpan.Zero); - return; - } - await _dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { try diff --git a/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.Properties.cs b/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.Properties.cs index d777052f3..475ca17b4 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.Properties.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.Properties.cs @@ -27,7 +27,6 @@ public sealed partial class NativePlayerViewModel private MediaSource _videoSource; private MediaPlaybackItem _videoPlaybackItem; private HttpRandomAccessStream _liveStream; - private bool _shouldPreventSkip; /// public event EventHandler MediaOpened; diff --git a/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.cs b/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.cs index 2f25fa7f9..6e3034961 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/NativePlayerViewModel/NativePlayerViewModel.cs @@ -8,7 +8,7 @@ using Bili.ViewModels.Interfaces.Core; using CommunityToolkit.Mvvm.Input; using Microsoft.Graphics.Canvas; -using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Core { @@ -22,12 +22,11 @@ public sealed partial class NativePlayerViewModel : ViewModelBase, INativePlayer /// public NativePlayerViewModel( IFileToolkit fileToolkit, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) + IResourceToolkit resourceToolkit) { _fileToolkit = fileToolkit; _resourceToolkit = resourceToolkit; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; ClearCommand = new RelayCommand(Clear); } @@ -37,7 +36,7 @@ public async Task SetSourceAsync(SegmentInformation video, SegmentInformation au { _video = video; _audio = audio; - _shouldPreventSkip = true; + Clear(); await LoadDashVideoSourceAsync(); } diff --git a/src/ViewModels/ViewModels.Uwp/Core/NavigationViewModel/NavigationViewModel.cs b/src/ViewModels/ViewModels.Uwp/Core/NavigationViewModel/NavigationViewModel.cs index 910fda369..ef0cf1b20 100644 --- a/src/ViewModels/ViewModels.Uwp/Core/NavigationViewModel/NavigationViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Core/NavigationViewModel/NavigationViewModel.cs @@ -100,6 +100,7 @@ public void NavigateToPlayView(PlaySnapshot parameter) RemoveBackStack(BackBehavior.OpenPlayer); var pageId = GetPageIdFromPlaySnapshot(parameter); PlayViewId = pageId; + SecondaryViewId = PageIds.None; var args = new AppNavigationEventArgs(NavigationType.Player, pageId, parameter); AddBackStack( BackBehavior.OpenPlayer, diff --git a/src/ViewModels/ViewModels.Uwp/Home/PopularPageViewModel/PopularPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Home/PopularPageViewModel/PopularPageViewModel.cs index 0622f1270..82c8d92a1 100644 --- a/src/ViewModels/ViewModels.Uwp/Home/PopularPageViewModel/PopularPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Home/PopularPageViewModel/PopularPageViewModel.cs @@ -8,7 +8,6 @@ using Bili.ViewModels.Interfaces.Home; using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Home { @@ -22,9 +21,7 @@ public sealed partial class PopularPageViewModel : InformationFlowViewModelBase< /// public PopularPageViewModel( IResourceToolkit resourceToolkit, - IHomeProvider homeProvider, - CoreDispatcher coreDispatcher) - : base(coreDispatcher) + IHomeProvider homeProvider) { _resourceToolkit = resourceToolkit; _homeProvider = homeProvider; diff --git a/src/ViewModels/ViewModels.Uwp/Home/RankPageViewModel/RankPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Home/RankPageViewModel/RankPageViewModel.cs index 04e4dd375..68fe7b2ab 100644 --- a/src/ViewModels/ViewModels.Uwp/Home/RankPageViewModel/RankPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Home/RankPageViewModel/RankPageViewModel.cs @@ -16,6 +16,7 @@ using Bili.ViewModels.Interfaces.Video; using CommunityToolkit.Mvvm.Input; using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Home { @@ -29,15 +30,13 @@ public sealed partial class RankPageViewModel : ViewModelBase, IRankPageViewMode /// /// 本地资源工具. /// 分区服务提供工具. - /// UI 调度器. public RankPageViewModel( IResourceToolkit resourceToolkit, - IHomeProvider homeProvider, - CoreDispatcher dispatcher) + IHomeProvider homeProvider) { _resourceToolkit = resourceToolkit; _homeProvider = homeProvider; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; _caches = new Dictionary>(); Videos = new ObservableCollection(); diff --git a/src/ViewModels/ViewModels.Uwp/Home/RecommendPageViewModel/RecommendPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Home/RecommendPageViewModel/RecommendPageViewModel.cs index 8731b78d6..0ce9cdae9 100644 --- a/src/ViewModels/ViewModels.Uwp/Home/RecommendPageViewModel/RecommendPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Home/RecommendPageViewModel/RecommendPageViewModel.cs @@ -12,7 +12,6 @@ using Bili.ViewModels.Interfaces.Pgc; using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Home { @@ -26,9 +25,7 @@ public partial class RecommendPageViewModel : InformationFlowViewModelBase public RecommendPageViewModel( IResourceToolkit resourceToolkit, - IHomeProvider recommendProvider, - CoreDispatcher coreDispatcher) - : base(coreDispatcher) + IHomeProvider recommendProvider) { _resourceToolkit = resourceToolkit; _homeProvider = recommendProvider; diff --git a/src/ViewModels/ViewModels.Uwp/Home/SettingsPageViewModel/SettingsPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Home/SettingsPageViewModel/SettingsPageViewModel.cs index 06f44d8ac..82b8c57b1 100644 --- a/src/ViewModels/ViewModels.Uwp/Home/SettingsPageViewModel/SettingsPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Home/SettingsPageViewModel/SettingsPageViewModel.cs @@ -241,7 +241,7 @@ private void PlayerTypeInit() private void PreferQualityInit() { - if(PreferQualities.Count == 0) + if (PreferQualities.Count == 0) { PreferQualities.Add(PreferQuality.Auto); PreferQualities.Add(PreferQuality.HDFirst); diff --git a/src/ViewModels/ViewModels.Uwp/Live/LiveFeedPageViewModel/LiveFeedPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Live/LiveFeedPageViewModel/LiveFeedPageViewModel.cs index 269e9931f..5c559933c 100644 --- a/src/ViewModels/ViewModels.Uwp/Live/LiveFeedPageViewModel/LiveFeedPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Live/LiveFeedPageViewModel/LiveFeedPageViewModel.cs @@ -13,7 +13,6 @@ using Bili.ViewModels.Interfaces.Live; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Live { @@ -25,17 +24,14 @@ public sealed partial class LiveFeedPageViewModel : InformationFlowViewModelBase /// /// Initializes a new instance of the class. /// - /// UI调度器. /// 直播服务提供工具. /// 账户服务提供工具. /// 资源工具. public LiveFeedPageViewModel( - CoreDispatcher dispatcher, ILiveProvider liveProvider, IAuthorizeProvider authorizeProvider, IResourceToolkit resourceToolkit, INavigationViewModel navigationViewModel) - : base(dispatcher) { _liveProvider = liveProvider; _authorizeProvider = authorizeProvider; diff --git a/src/ViewModels/ViewModels.Uwp/Live/LivePartitionDetailPageViewModel/LivePartitionDetailPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Live/LivePartitionDetailPageViewModel/LivePartitionDetailPageViewModel.cs index 8ba74f26f..cab5e03fe 100644 --- a/src/ViewModels/ViewModels.Uwp/Live/LivePartitionDetailPageViewModel/LivePartitionDetailPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Live/LivePartitionDetailPageViewModel/LivePartitionDetailPageViewModel.cs @@ -14,7 +14,6 @@ using Bili.ViewModels.Interfaces.Live; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Live { @@ -33,9 +32,7 @@ public sealed partial class LivePartitionDetailPageViewModel : InformationFlowVi public LivePartitionDetailPageViewModel( IResourceToolkit resourceToolkit, ILiveProvider liveProvider, - CoreDispatcher coreDispatcher, INavigationViewModel navigationViewModel) - : base(coreDispatcher) { _resourceToolkit = resourceToolkit; _liveProvider = liveProvider; diff --git a/src/ViewModels/ViewModels.Uwp/Live/LivePartitionPageViewModel/LivePartitionPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Live/LivePartitionPageViewModel/LivePartitionPageViewModel.cs index e31511508..b9c18dc82 100644 --- a/src/ViewModels/ViewModels.Uwp/Live/LivePartitionPageViewModel/LivePartitionPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Live/LivePartitionPageViewModel/LivePartitionPageViewModel.cs @@ -11,6 +11,7 @@ using Bili.ViewModels.Interfaces.Live; using CommunityToolkit.Mvvm.Input; using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Live { @@ -24,12 +25,11 @@ public sealed partial class LivePartitionPageViewModel : ViewModelBase, ILivePar /// public LivePartitionPageViewModel( IResourceToolkit resourceToolkit, - ILiveProvider liveProvider, - CoreDispatcher dispatcher) + ILiveProvider liveProvider) { _resourceToolkit = resourceToolkit; _liveProvider = liveProvider; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; ParentPartitions = new ObservableCollection(); DisplayPartitions = new ObservableCollection(); diff --git a/src/ViewModels/ViewModels.Uwp/Live/LivePlayerPageViewModel/LivePlayerPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Live/LivePlayerPageViewModel/LivePlayerPageViewModel.cs index 7f6918d7e..c7f18757c 100644 --- a/src/ViewModels/ViewModels.Uwp/Live/LivePlayerPageViewModel/LivePlayerPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Live/LivePlayerPageViewModel/LivePlayerPageViewModel.cs @@ -18,6 +18,7 @@ using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Live { @@ -38,8 +39,7 @@ public LivePlayerPageViewModel( ICallerViewModel callerViewModel, IRecordViewModel recordViewModel, IAccountViewModel accountViewModel, - IMediaPlayerViewModel mediaPlayerViewModel, - CoreDispatcher dispatcher) + IMediaPlayerViewModel mediaPlayerViewModel) { _authorizeProvider = authorizeProvider; _liveProvider = liveProvider; @@ -49,7 +49,7 @@ public LivePlayerPageViewModel( _callerViewModel = callerViewModel; _recordViewModel = recordViewModel; _accountViewModel = accountViewModel; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; Danmakus = new ObservableCollection(); Sections = new ObservableCollection diff --git a/src/ViewModels/ViewModels.Uwp/Pgc/AnimeFavoriteModuleViewModel.cs b/src/ViewModels/ViewModels.Uwp/Pgc/AnimeFavoriteModuleViewModel.cs index 00222a788..d38bca2bb 100644 --- a/src/ViewModels/ViewModels.Uwp/Pgc/AnimeFavoriteModuleViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Pgc/AnimeFavoriteModuleViewModel.cs @@ -4,7 +4,6 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Pgc; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Pgc { @@ -18,9 +17,8 @@ public class AnimeFavoriteModuleViewModel : PgcFavoriteModuleViewModelBase, IAni /// public AnimeFavoriteModuleViewModel( IFavoriteProvider favoriteProvider, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) - : base(Models.Enums.App.FavoriteType.Anime, favoriteProvider, resourceToolkit, dispatcher) + IResourceToolkit resourceToolkit) + : base(Models.Enums.App.FavoriteType.Anime, favoriteProvider, resourceToolkit) { } } diff --git a/src/ViewModels/ViewModels.Uwp/Pgc/CinemaFavoriteModuleViewModel.cs b/src/ViewModels/ViewModels.Uwp/Pgc/CinemaFavoriteModuleViewModel.cs index 4f3d4b64d..6578d7f38 100644 --- a/src/ViewModels/ViewModels.Uwp/Pgc/CinemaFavoriteModuleViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Pgc/CinemaFavoriteModuleViewModel.cs @@ -4,7 +4,6 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Pgc; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Pgc { @@ -18,9 +17,8 @@ public class CinemaFavoriteModuleViewModel : PgcFavoriteModuleViewModelBase, ICi /// public CinemaFavoriteModuleViewModel( IFavoriteProvider favoriteProvider, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) - : base(Models.Enums.App.FavoriteType.Cinema, favoriteProvider, resourceToolkit, dispatcher) + IResourceToolkit resourceToolkit) + : base(Models.Enums.App.FavoriteType.Cinema, favoriteProvider, resourceToolkit) { } } diff --git a/src/ViewModels/ViewModels.Uwp/Pgc/DocumentaryPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Pgc/DocumentaryPageViewModel.cs index 1e8d51e8d..01eaba06b 100644 --- a/src/ViewModels/ViewModels.Uwp/Pgc/DocumentaryPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Pgc/DocumentaryPageViewModel.cs @@ -6,7 +6,6 @@ using Bili.ViewModels.Interfaces.Core; using Bili.ViewModels.Interfaces.Pgc; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Pgc { @@ -21,9 +20,8 @@ public sealed class DocumentaryPageViewModel : PgcPageViewModelBase, IDocumentar public DocumentaryPageViewModel( IPgcProvider pgcProvider, IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher, INavigationViewModel navigationViewModel) - : base(pgcProvider, resourceToolkit, dispatcher, navigationViewModel, PgcType.Documentary) + : base(pgcProvider, resourceToolkit, navigationViewModel, PgcType.Documentary) { } } diff --git a/src/ViewModels/ViewModels.Uwp/Pgc/IndexPageViewModel/IndexPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Pgc/IndexPageViewModel/IndexPageViewModel.cs index c57dc257c..c0e06cc62 100644 --- a/src/ViewModels/ViewModels.Uwp/Pgc/IndexPageViewModel/IndexPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Pgc/IndexPageViewModel/IndexPageViewModel.cs @@ -11,7 +11,6 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Pgc; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Pgc { @@ -25,12 +24,9 @@ public sealed partial class IndexPageViewModel : InformationFlowViewModelBase /// PGC 服务提供工具. /// 资源管理工具. - /// UI 调度器. public IndexPageViewModel( IPgcProvider pgcProvider, - IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher) - : base(dispatcher) + IResourceToolkit resourceToolkit) { _pgcProvider = pgcProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Pgc/MoviePageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Pgc/MoviePageViewModel.cs index 0cc3a92f7..48324207a 100644 --- a/src/ViewModels/ViewModels.Uwp/Pgc/MoviePageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Pgc/MoviePageViewModel.cs @@ -6,7 +6,6 @@ using Bili.ViewModels.Interfaces.Core; using Bili.ViewModels.Interfaces.Pgc; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Pgc { @@ -21,9 +20,8 @@ public sealed class MoviePageViewModel : PgcPageViewModelBase, IMoviePageViewMod public MoviePageViewModel( IPgcProvider pgcProvider, IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher, INavigationViewModel navigationViewModel) - : base(pgcProvider, resourceToolkit, dispatcher, navigationViewModel, PgcType.Movie) + : base(pgcProvider, resourceToolkit, navigationViewModel, PgcType.Movie) { } } diff --git a/src/ViewModels/ViewModels.Uwp/Pgc/TvPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Pgc/TvPageViewModel.cs index 6e5fb7d9f..2011041fa 100644 --- a/src/ViewModels/ViewModels.Uwp/Pgc/TvPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Pgc/TvPageViewModel.cs @@ -6,7 +6,6 @@ using Bili.ViewModels.Interfaces.Core; using Bili.ViewModels.Interfaces.Pgc; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Pgc { @@ -21,9 +20,8 @@ public sealed class TvPageViewModel : PgcPageViewModelBase, ITvPageViewModel public TvPageViewModel( IPgcProvider pgcProvider, IResourceToolkit resourceToolkit, - CoreDispatcher dispatcher, INavigationViewModel navigationViewModel) - : base(pgcProvider, resourceToolkit, dispatcher, navigationViewModel, PgcType.TV) + : base(pgcProvider, resourceToolkit, navigationViewModel, PgcType.TV) { } } diff --git a/src/ViewModels/ViewModels.Uwp/Search/SearchBoxViewModel/SearchBoxViewModel.cs b/src/ViewModels/ViewModels.Uwp/Search/SearchBoxViewModel/SearchBoxViewModel.cs index e7612450b..c70788039 100644 --- a/src/ViewModels/ViewModels.Uwp/Search/SearchBoxViewModel/SearchBoxViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Search/SearchBoxViewModel/SearchBoxViewModel.cs @@ -25,12 +25,11 @@ public sealed partial class SearchBoxViewModel : ViewModelBase, ISearchBoxViewMo /// public SearchBoxViewModel( ISearchProvider searchProvider, - INavigationViewModel navigationViewModel, - CoreDispatcher dispatcher) + INavigationViewModel navigationViewModel) { _searchProvider = searchProvider; _navigationViewModel = navigationViewModel; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; HotSearchCollection = new ObservableCollection(); SearchSuggestion = new ObservableCollection(); diff --git a/src/ViewModels/ViewModels.Uwp/Search/SearchPageViewModel/SearchPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Search/SearchPageViewModel/SearchPageViewModel.cs index 62bbd8eb8..6a6dee74e 100644 --- a/src/ViewModels/ViewModels.Uwp/Search/SearchPageViewModel/SearchPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Search/SearchPageViewModel/SearchPageViewModel.cs @@ -17,7 +17,6 @@ using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Search { @@ -35,9 +34,7 @@ public SearchPageViewModel( IHomeProvider homeProvider, IArticleProvider articleProvider, ISettingsToolkit settingsToolkit, - IAppViewModel appViewModel, - CoreDispatcher dispatcher) - : base(dispatcher) + IAppViewModel appViewModel) { _searchProvider = searchProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Toolbox/AvBvConverterViewModel.cs b/src/ViewModels/ViewModels.Uwp/Toolbox/AvBvConverterViewModel.cs index 3a3980ece..903c7a42a 100644 --- a/src/ViewModels/ViewModels.Uwp/Toolbox/AvBvConverterViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Toolbox/AvBvConverterViewModel.cs @@ -9,6 +9,7 @@ using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Toolbox { @@ -45,8 +46,7 @@ public AvBvConverterViewModel( IResourceToolkit resourceToolkit, IVideoToolkit videoToolkit, IPlayerProvider playerProvider, - IAppViewModel appViewModel, - CoreDispatcher dispatcher) + IAppViewModel appViewModel) { _resourceToolkit = resourceToolkit; _videoToolkit = videoToolkit; @@ -56,7 +56,7 @@ public AvBvConverterViewModel( AttachIsRunningToAsyncCommand(p => IsConverting = p, ConvertCommand); AttachExceptionHandlerToAsyncCommand(DisplayExAsync, ConvertCommand); - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; } /// diff --git a/src/ViewModels/ViewModels.Uwp/Toolbox/CoverDownloaderViewModel.cs b/src/ViewModels/ViewModels.Uwp/Toolbox/CoverDownloaderViewModel.cs index a95c2fd00..cfc1ccbc6 100644 --- a/src/ViewModels/ViewModels.Uwp/Toolbox/CoverDownloaderViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Toolbox/CoverDownloaderViewModel.cs @@ -11,6 +11,7 @@ using Windows.Storage; using Windows.System; using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Toolbox { @@ -43,12 +44,11 @@ public sealed partial class CoverDownloaderViewModel : ViewModelBase, ICoverDown /// public CoverDownloaderViewModel( IVideoToolkit videoToolkit, - IPlayerProvider playerProvider, - CoreDispatcher dispatcher) + IPlayerProvider playerProvider) { _videoToolkit = videoToolkit; _playerProvider = playerProvider; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; DownloadCommand = new AsyncRelayCommand(DownloadCoverAsync); LoadPreviewCommand = new AsyncRelayCommand(LoadPreviewAsync); diff --git a/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteFolderDetailViewModel/VideoFavoriteFolderDetailViewModel.cs b/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteFolderDetailViewModel/VideoFavoriteFolderDetailViewModel.cs index d290607c0..784932685 100644 --- a/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteFolderDetailViewModel/VideoFavoriteFolderDetailViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteFolderDetailViewModel/VideoFavoriteFolderDetailViewModel.cs @@ -8,7 +8,6 @@ using Bili.ViewModels.Interfaces.Account; using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Video { @@ -23,9 +22,7 @@ public sealed partial class VideoFavoriteFolderDetailViewModel : InformationFlow public VideoFavoriteFolderDetailViewModel( IFavoriteProvider favoriteProvider, IResourceToolkit resourceToolkit, - IAccountViewModel accountViewModel, - CoreDispatcher dispatcher) - : base(dispatcher) + IAccountViewModel accountViewModel) { _favoriteProvider = favoriteProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteFolderGroupViewModel/VideoFavoriteFolderGroupViewModel.cs b/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteFolderGroupViewModel/VideoFavoriteFolderGroupViewModel.cs index f4b162c44..f61ab2a20 100644 --- a/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteFolderGroupViewModel/VideoFavoriteFolderGroupViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteFolderGroupViewModel/VideoFavoriteFolderGroupViewModel.cs @@ -7,7 +7,6 @@ using Bili.Toolkit.Interfaces; using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Video { @@ -22,9 +21,7 @@ public sealed partial class VideoFavoriteFolderGroupViewModel : InformationFlowV public VideoFavoriteFolderGroupViewModel( IFavoriteProvider favoriteProvider, IResourceToolkit resourceToolkit, - IAccountProvider accountProvider, - CoreDispatcher dispatcher) - : base(dispatcher) + IAccountProvider accountProvider) { _favoriteProvider = favoriteProvider; _resourceToolkit = resourceToolkit; diff --git a/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteModuleViewModel/VideoFavoriteModuleViewModel.cs b/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteModuleViewModel/VideoFavoriteModuleViewModel.cs index cd96a4ffd..eb7ff5ee1 100644 --- a/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteModuleViewModel/VideoFavoriteModuleViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Video/VideoFavoriteModuleViewModel/VideoFavoriteModuleViewModel.cs @@ -7,7 +7,6 @@ using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Video { @@ -22,9 +21,7 @@ public sealed partial class VideoFavoriteModuleViewModel : InformationFlowViewMo public VideoFavoriteModuleViewModel( INavigationViewModel navigationViewModel, IAccountProvider accountProvider, - IFavoriteProvider favoriteProvider, - CoreDispatcher dispatcher) - : base(dispatcher) + IFavoriteProvider favoriteProvider) { _navigationViewModel = navigationViewModel; _accountProvider = accountProvider; diff --git a/src/ViewModels/ViewModels.Uwp/Video/VideoPartitionDetailPageViewModel/VideoPartitionDetailPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Video/VideoPartitionDetailPageViewModel/VideoPartitionDetailPageViewModel.cs index 79f31230c..2edfc4978 100644 --- a/src/ViewModels/ViewModels.Uwp/Video/VideoPartitionDetailPageViewModel/VideoPartitionDetailPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Video/VideoPartitionDetailPageViewModel/VideoPartitionDetailPageViewModel.cs @@ -14,7 +14,6 @@ using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; namespace Bili.ViewModels.Uwp.Community { @@ -28,9 +27,7 @@ public sealed partial class VideoPartitionDetailPageViewModel : InformationFlowV /// public VideoPartitionDetailPageViewModel( IResourceToolkit resourceToolkit, - IHomeProvider homeProvider, - CoreDispatcher coreDispatcher) - : base(coreDispatcher) + IHomeProvider homeProvider) { _resourceToolkit = resourceToolkit; _homeProvider = homeProvider; diff --git a/src/ViewModels/ViewModels.Uwp/Video/VideoPlayerPageViewModel/VideoPlayerPageViewModel.cs b/src/ViewModels/ViewModels.Uwp/Video/VideoPlayerPageViewModel/VideoPlayerPageViewModel.cs index e7c7c59c1..6e15cf8a3 100644 --- a/src/ViewModels/ViewModels.Uwp/Video/VideoPlayerPageViewModel/VideoPlayerPageViewModel.cs +++ b/src/ViewModels/ViewModels.Uwp/Video/VideoPlayerPageViewModel/VideoPlayerPageViewModel.cs @@ -18,7 +18,7 @@ using Bili.ViewModels.Interfaces.Video; using Bili.ViewModels.Uwp.Base; using CommunityToolkit.Mvvm.Input; -using Windows.UI.Core; +using Windows.UI.Xaml; namespace Bili.ViewModels.Uwp.Video { @@ -42,8 +42,7 @@ public VideoPlayerPageViewModel( INavigationViewModel navigationViewModel, IAccountViewModel accountViewModel, IDownloadModuleViewModel downloadViewModel, - ICommentPageViewModel commentPageViewModel, - CoreDispatcher dispatcher) + ICommentPageViewModel commentPageViewModel) { _playerProvider = playerProvider; _authorizeProvider = authorizeProvider; @@ -56,7 +55,7 @@ public VideoPlayerPageViewModel( _recordViewModel = recordViewModel; _commentPageViewModel = commentPageViewModel; _accountViewModel = accountViewModel; - _dispatcher = dispatcher; + _dispatcher = Window.Current.CoreWindow.Dispatcher; Collaborators = new ObservableCollection(); Tags = new ObservableCollection(); diff --git a/src/ViewModels/ViewModels.Uwp/ViewModels.Uwp.csproj b/src/ViewModels/ViewModels.Uwp/ViewModels.Uwp.csproj index a673b26a8..198520f94 100644 --- a/src/ViewModels/ViewModels.Uwp/ViewModels.Uwp.csproj +++ b/src/ViewModels/ViewModels.Uwp/ViewModels.Uwp.csproj @@ -212,20 +212,17 @@ 2.14.1 - - 6.0.0 - 6.2.14 - 7.1.2 + 7.1.3 - 7.1.2 + 7.1.3 - 5.0.4 + 5.0.5 1.0.0