示例#1
0
        private static async Task EnsureSettingsAndConfigurationAreBootstrapped()
        {
            if (AppSettings == null)
            {
                AppSettings = await SettingsViewModel.CreateInstance();
            }

            ExternalResourcesHelper ??= new ExternalResourcesHelper();
            await ExternalResourcesHelper.LoadSelectedTheme();

            InteractionViewModel ??= new InteractionViewModel();
            SidebarPinnedController ??= await SidebarPinnedController.CreateInstance();

            LibraryManager ??= new LibraryManager();
            DrivesManager ??= new DrivesManager();
            NetworkDrivesManager ??= new NetworkDrivesManager();
            CloudDrivesManager ??= new CloudDrivesManager();
            WSLDistroManager ??= new WSLDistroManager();

            // Start off a list of tasks we need to run before we can continue startup
            _ = Task.Factory.StartNew(async() =>
            {
                if (App.AppSettings.ShowLibrarySection)
                {
                    await LibraryManager.EnumerateDrivesAsync();
                }

                await DrivesManager.EnumerateDrivesAsync();
                await CloudDrivesManager.EnumerateDrivesAsync();
                await NetworkDrivesManager.EnumerateDrivesAsync();
                await WSLDistroManager.EnumerateDrivesAsync();
            });
        }
示例#2
0
        private static async Task InitializeAppComponentsAsync()
        {
            var userSettingsService = Ioc.Default.GetRequiredService <IUserSettingsService>();

            // Start off a list of tasks we need to run before we can continue startup
            await Task.Run(async() =>
            {
                await Task.WhenAll(
                    StartAppCenter(),
                    DrivesManager.EnumerateDrivesAsync(),
                    CloudDrivesManager.EnumerateDrivesAsync(),
                    LibraryManager.EnumerateLibrariesAsync(),
                    NetworkDrivesManager.EnumerateDrivesAsync(),
                    WSLDistroManager.EnumerateDrivesAsync(),
                    SidebarPinnedController.InitializeAsync()
                    );
                await Task.WhenAll(
                    AppSettings.DetectQuickLook(),
                    TerminalController.InitializeAsync(),
                    JumpList.InitializeAsync(),
                    ExternalResourcesHelper.LoadOtherThemesAsync(),
                    ContextFlyoutItemHelper.CachedNewContextMenuEntries
                    );

                userSettingsService.ReportToAppCenter();
            });

            // Check for required updates
            new AppUpdater().CheckForUpdatesAsync();
        }
示例#3
0
        private static async Task InitializeAppComponentsAsync()
        {
            var userSettingsService       = Ioc.Default.GetRequiredService <IUserSettingsService>();
            var appearanceSettingsService = userSettingsService.AppearanceSettingsService;

            // Start off a list of tasks we need to run before we can continue startup
            await Task.Run(async() =>
            {
                await Task.WhenAll(
                    StartAppCenter(),
                    DrivesManager.UpdateDrivesAsync(),
                    OptionalTask(CloudDrivesManager.UpdateDrivesAsync(), appearanceSettingsService.ShowCloudDrivesSection),
                    LibraryManager.UpdateLibrariesAsync(),
                    OptionalTask(NetworkDrivesManager.UpdateDrivesAsync(), appearanceSettingsService.ShowNetworkDrivesSection),
                    OptionalTask(WSLDistroManager.UpdateDrivesAsync(), appearanceSettingsService.ShowWslSection),
                    OptionalTask(FileTagsManager.UpdateFileTagsAsync(), appearanceSettingsService.ShowFileTagsSection),
                    SidebarPinnedController.InitializeAsync()
                    );
                await Task.WhenAll(
                    AppSettings.DetectQuickLook(),
                    TerminalController.InitializeAsync(),
                    JumpList.InitializeAsync(),
                    ExternalResourcesHelper.LoadOtherThemesAsync(),
                    ContextFlyoutItemHelper.CachedNewContextMenuEntries
                    );

                userSettingsService.ReportToAppCenter();
            });

            // Check for required updates
            var updateService = Ioc.Default.GetRequiredService <IUpdateService>();
            await updateService.CheckForUpdates();

            await updateService.DownloadMandatoryUpdates();
示例#4
0
        private static async Task EnsureSettingsAndConfigurationAreBootstrapped()
        {
            AppSettings ??= new SettingsViewModel();
            RegistryToJsonSettingsMerger.MergeSettings();

            ExternalResourcesHelper ??= new ExternalResourcesHelper();
            await ExternalResourcesHelper.LoadSelectedTheme();

            JumpList ??= new JumpListManager();
            MainViewModel ??= new MainViewModel();
            LibraryManager ??= new LibraryManager();
            DrivesManager ??= new DrivesManager();
            NetworkDrivesManager ??= new NetworkDrivesManager();
            CloudDrivesManager ??= new CloudDrivesManager();
            WSLDistroManager ??= new WSLDistroManager();
            SidebarPinnedController ??= new SidebarPinnedController();
            TerminalController ??= new TerminalController();
        }
示例#5
0
        private static async Task EnsureSettingsAndConfigurationAreBootstrapped()
        {
            if (AppSettings == null)
            {
                AppSettings = await SettingsViewModel.CreateInstance();
            }

            ExternalResourcesHelper ??= new ExternalResourcesHelper();
            await ExternalResourcesHelper.LoadSelectedTheme();

            MainViewModel ??= new MainViewModel();
            LibraryManager ??= new LibraryManager();
            DrivesManager ??= new DrivesManager();
            NetworkDrivesManager ??= new NetworkDrivesManager();
            CloudDrivesManager ??= new CloudDrivesManager();
            WSLDistroManager ??= new WSLDistroManager();
            SidebarPinnedController ??= new SidebarPinnedController();
        }
示例#6
0
        public static async Task LoadOtherStuffAsync()
        {
            ExternalResourcesHelper.LoadOtherThemesAsync();

            // Start off a list of tasks we need to run before we can continue startup
            _ = Task.Run(async() =>
            {
                await Task.WhenAll(
                    SidebarPinnedController.InitializeAsync(),
                    DrivesManager.EnumerateDrivesAsync(),
                    CloudDrivesManager.EnumerateDrivesAsync(),
                    LibraryManager.EnumerateLibrariesAsync(),
                    NetworkDrivesManager.EnumerateDrivesAsync(),
                    WSLDistroManager.EnumerateDrivesAsync()
                    );
            });

            ExternalResourcesHelper.LoadOtherThemesAsync();
        }
示例#7
0
        private static async Task EnsureSettingsAndConfigurationAreBootstrapped()
        {
            AppSettings ??= new SettingsViewModel();

            ExternalResourcesHelper ??= new ExternalResourcesHelper();
            await ExternalResourcesHelper.LoadSelectedTheme();

            new AppearanceViewModel().SetCompactStyles(updateTheme: false);

            JumpList ??= new JumpListManager();
            RecentItemsManager ??= new RecentItemsManager();
            MainViewModel ??= new MainViewModel();
            PaneViewModel ??= new PaneViewModel();
            PreviewPaneViewModel ??= new PreviewPaneViewModel();
            LibraryManager ??= new LibraryManager();
            DrivesManager ??= new DrivesManager();
            NetworkDrivesManager ??= new NetworkDrivesManager();
            CloudDrivesManager ??= new CloudDrivesManager();
            WSLDistroManager ??= new WSLDistroManager();
            FileTagsManager ??= new FileTagsManager();
            SidebarPinnedController ??= new SidebarPinnedController();
            TerminalController ??= new TerminalController();
        }
示例#8
0
        public static async Task LoadOtherStuffAsync()
        {
            // Start off a list of tasks we need to run before we can continue startup
            await Task.Run(async() =>
            {
                await Task.WhenAll(
                    DrivesManager.EnumerateDrivesAsync(),
                    CloudDrivesManager.EnumerateDrivesAsync(),
                    LibraryManager.EnumerateLibrariesAsync(),
                    NetworkDrivesManager.EnumerateDrivesAsync(),
                    WSLDistroManager.EnumerateDrivesAsync(),
                    SidebarPinnedController.InitializeAsync()
                    );
                await Task.WhenAll(
                    AppSettings.DetectQuickLook(),
                    TerminalController.InitializeAsync(),
                    JumpList.InitializeAsync(),
                    ExternalResourcesHelper.LoadOtherThemesAsync()
                    );
            });

            // Check for required updates
            new AppUpdater().CheckForUpdatesAsync();
        }