示例#1
0
        public IObservable <BackendEvent> CreateResponseStream()
        {
            var observable = _streamRepo.GetOrAdd(Context.ConnectionId);

            _streamRepo.TryGetObserver(Context.ConnectionId, out var observer);
            _configProvider.ConfigurationUpdated += (sender, args) =>
            {
                observer.OnNext(new ConfigurationUpdated
                {
                    Configuration = _configProvider.GetAppConfiguration()
                });
            };
            return(observable);
        }
示例#2
0
 public ShortcutManager(IConfigurationProvider configProvider, IWindowsServices windowServices)
 {
     _configProvider = configProvider;
     _currentConfig  = _configProvider.GetAppConfiguration();
     _windowServices = windowServices;
     _shortcuts      = ElectronNET.API.Electron.GlobalShortcut;
     configProvider.ConfigurationUpdated += (sender, args) => BindShortcuts();
 }
示例#3
0
        private void BindShortcuts()
        {
            var oldConfig = Interlocked.Exchange(ref _currentConfig, _configProvider.GetAppConfiguration());

            if (oldConfig != null)
            {
                _shortcuts.Unregister(oldConfig.HotKey);
            }
            _shortcuts.Register(_currentConfig.HotKey, () => _windowServices.ToggleShellVisibilityAsync());
        }
示例#4
0
 public AuthorizationExecutor(IConfigurationProvider config, WridoAccessTokenProvider tokenProvider, ILogger logger)
 {
     _config        = config.GetAppConfiguration();
     _tokenProvider = tokenProvider;
     _logger        = logger;
 }