Example #1
0
 protected override Task LoadInternalAsync(
     IRegistryReadService registryReadService,
     CancellationToken cancellationToken)
 {
     LoadInternalAsyncCalled            = true;
     LoadInternalAsyncCancellationToken = cancellationToken;
     return(LoadingTask);
 }
        //// ===========================================================================================================
        //// Constructors
        //// ===========================================================================================================

        private CategoryPageViewModel(
            ILogger logger,
            IThreadDispatcher threadDispatcher,
            IRegistryReadService registryReadService,
            IRegistryWriteService registryWriteService,
            CategoryPageNavigationViewModel navigationViewModel)
        {
            _logger               = Param.VerifyNotNull(logger, nameof(logger));
            _threadDispatcher     = Param.VerifyNotNull(threadDispatcher, nameof(threadDispatcher));
            _registryReadService  = Param.VerifyNotNull(registryReadService, nameof(registryReadService));
            _registryWriteService = Param.VerifyNotNull(registryWriteService, nameof(registryWriteService));

            Navigation = Param.VerifyNotNull(navigationViewModel, nameof(navigationViewModel));
            Navigation.PropertyChanged += OnNavigationPropertyChanged;
        }
        //// ===========================================================================================================
        //// Methods
        //// ===========================================================================================================

        public static async Task <DesktopBackgroundSettings> CreateAsync(IRegistryReadService registryReadService)
        {
            Param.VerifyNotNull(registryReadService, nameof(registryReadService));

            int backgroundType = await registryReadService.ReadValueAsync(HKCU, WallpapersPath, BackgroundType, 0);

            int interval = await registryReadService.ReadValueAsync(HKCU, SlideshowPath, Interval, 1000 * 60);

            bool shuffle = await registryReadService.ReadValueAsync(HKCU, SlideshowPath, Shuffle, false);

            return(new DesktopBackgroundSettings(
                       backgroundKind: BackgroundTypeToFit(backgroundType),
                       fitMode: DesktopBackgroundFitMode.Fill,
                       shuffleSlideshow: shuffle,
                       slideshowInterval: interval));
        }
 protected override Task LoadInternalAsync(
     IRegistryReadService registryReadService,
     CancellationToken cancellationToken)
 {
     return(Task.CompletedTask);
 }