public FormMain() { InitializeComponent(); if (!Directory.Exists(_appDataFolder)) { Directory.CreateDirectory(_appDataFolder); } _settingsRepository = new SettingsRepository(_appDataFolder); try { _settings = _settingsRepository.LoadSettings(); } catch (JsonException) { _settings = new Settings(); _settingsRepository.BackupSettingsFile(); _settingsRepository.WriteSettings(_settings); } InitializeKeyboardHook(); ApplySettings(_settings); setupKeysToolStripMenuItem.Click += SetupKeysToolStripMenuItemOnClick; copyToClipboardButon.Click += CopyToClipboardButonOnClick; clearLogButton.Click += ClearLogButtonOnClick; _viewRefreshTimer.Interval = 100; _viewRefreshTimer.Tick += ViewRefreshTimerOnTick; _viewRefreshTimer.Start(); }