public VirtualDesktopStateMonitor(IWindowsDesktop windowsDesktop, IWindowsDesktopAdapter adapter, IConfigurationFactory factory)
        {
            _windowsDesktop = windowsDesktop;
            _adapter        = adapter;
            _desktopFactory = factory;

            _updateTimer = new Timer(Default.Ui.UpdateRate.TotalMilliseconds)
            {
                AutoReset = false
            };

            _updateTimer.Elapsed += _updateTimer_Elapsed;

            LoadBackgroundList();
        }
        public WindowsDesktop(IWindowsDesktopAdapter adapter)
        {
            _adapter = adapter;

            UpdateFromAdapter();
        }