mirror of
https://github.com/microsoft/PowerToys.git
synced 2025-12-15 19:27:56 +01:00
More of the service stuff
This commit is contained in:
@@ -34,10 +34,10 @@ public partial class TopLevelCommandManager : ObservableObject,
|
||||
|
||||
TaskScheduler IPageContext.Scheduler => _taskScheduler;
|
||||
|
||||
public TopLevelCommandManager(IServiceProvider serviceProvider)
|
||||
public TopLevelCommandManager(IServiceProvider serviceProvider, TaskScheduler taskScheduler)
|
||||
{
|
||||
_serviceProvider = serviceProvider;
|
||||
_taskScheduler = _serviceProvider.GetService<TaskScheduler>()!;
|
||||
_taskScheduler = taskScheduler;
|
||||
WeakReferenceMessenger.Default.Register<ReloadCommandsMessage>(this);
|
||||
_reloadCommandsGate = new(ReloadAllCommandsAsyncCore);
|
||||
}
|
||||
|
||||
@@ -111,6 +111,7 @@ public partial class App : Application
|
||||
services.AddSingleton(TaskScheduler.FromCurrentSynchronizationContext());
|
||||
services.AddSingleton<IAppHostService, PowerToysAppHostService>();
|
||||
services.AddSingleton<ITelemetryService, TelemetryForwarder>();
|
||||
services.AddSingleton<IPageViewModelFactoryService, CommandPalettePageViewModelFactory>();
|
||||
|
||||
// TODO: Register ILogger
|
||||
|
||||
@@ -170,16 +171,17 @@ public partial class App : Application
|
||||
services.AddSingleton<IRunHistoryService, RunHistoryService>();
|
||||
|
||||
// ViewModels
|
||||
services.AddSingleton<ShellViewModel>();
|
||||
services.AddSingleton<IRootPageService, PowerToysRootPageService>();
|
||||
services.AddSingleton<SettingsViewModel>();
|
||||
services.AddSingleton<IPageViewModelFactoryService, CommandPalettePageViewModelFactory>();
|
||||
services.AddSingleton<ShellViewModel>();
|
||||
|
||||
// Views
|
||||
services.AddSingleton<IRootPageService, PowerToysRootPageService>();
|
||||
services.AddSingleton<MainWindow>();
|
||||
services.AddSingleton<ShellPage>();
|
||||
|
||||
services.AddTransient<ListPage>();
|
||||
|
||||
// Settings Pages
|
||||
services.AddTransient<GeneralPage>();
|
||||
services.AddTransient<ExtensionPage>();
|
||||
services.AddTransient<ExtensionsPage>();
|
||||
|
||||
@@ -74,7 +74,10 @@ public sealed partial class ShellPage : Microsoft.UI.Xaml.Controls.Page,
|
||||
|
||||
public event PropertyChangedEventHandler? PropertyChanged;
|
||||
|
||||
public ShellPage(ShellViewModel shellViewModel, SettingsModel settingsModel, TopLevelCommandManager topLevelCommandManager)
|
||||
public ShellPage(
|
||||
ShellViewModel shellViewModel,
|
||||
SettingsModel settingsModel,
|
||||
TopLevelCommandManager topLevelCommandManager)
|
||||
{
|
||||
this.InitializeComponent();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user