private void RequestHandler_QuitUrlVisited(string url) { Task.Run(() => { if (settings.ResetOnQuitUrl) { logger.Info("Forwarding request to reset browser..."); ResetRequested?.Invoke(); } else { if (settings.ConfirmQuitUrl) { var message = text.Get(TextKey.MessageBox_BrowserQuitUrlConfirmation); var title = text.Get(TextKey.MessageBox_BrowserQuitUrlConfirmationTitle); var result = messageBox.Show(message, title, MessageBoxAction.YesNo, MessageBoxIcon.Question, window); var terminate = result == MessageBoxResult.Yes; if (terminate) { logger.Info($"User confirmed termination via quit URL{(WindowSettings.UrlPolicy.CanLog() ? $" '{url}'" : "")}, forwarding request..."); TerminationRequested?.Invoke(); } else { logger.Info($"User aborted termination via quit URL{(WindowSettings.UrlPolicy.CanLog() ? $" '{url}'" : "")}."); } } else { logger.Info($"Automatically requesting termination due to quit URL{(WindowSettings.UrlPolicy.CanLog() ? $" '{url}'" : "")}..."); TerminationRequested?.Invoke(); } } }); }
private void Reset(IEnumerable <TResult> results) => ResetRequested?.Invoke(results);