Index: chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_controller_win.h |
diff --git a/chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_controller_win.h b/chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_controller_win.h |
index 45ec62c5a85a1e28d7ab04355947f36d67ed0522..437f82c1dd4f93282f0221d89d530b15d2b2b3eb 100644 |
--- a/chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_controller_win.h |
+++ b/chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_controller_win.h |
@@ -91,8 +91,10 @@ class ChromeCleanerController { |
}; |
enum class UserResponse { |
- // User accepted the cleanup operation. |
- kAccepted, |
+ // User accepted the cleanup operation and logs upload is enabled. |
+ kAcceptedWithLogs, |
+ // User accepted the cleanup operation and logs upload is not enabled. |
+ kAcceptedWithoutLogs, |
// User explicitly denied the cleanup operation, for example by clicking the |
// Cleaner dialog's cancel button. |
kDenied, |
@@ -109,6 +111,7 @@ class ChromeCleanerController { |
virtual void OnCleaning(const std::set<base::FilePath>& files_to_delete) {} |
virtual void OnRebootRequired() {} |
virtual void OnRebootFailed() {} |
+ virtual void OnLogsEnabledChanged(bool logs_enabled) {} |
protected: |
virtual ~Observer() = default; |
@@ -123,6 +126,12 @@ class ChromeCleanerController { |
State state() const { return state_; } |
+ // Called by Chrome Cleaner's UI when the user changes Cleaner logs upload |
+ // permissions. Observers are notified if |logs_enabled| is different from the |
+ // current permission state. |
+ void SetLogsEnabled(bool logs_enabled); |
+ bool logs_enabled() const { return logs_enabled_; } |
+ |
// |AddObserver()| immediately notifies |observer| of the controller's state |
// by calling the corresponding |On*()| function. |
void AddObserver(Observer* observer); |
@@ -216,6 +225,9 @@ class ChromeCleanerController { |
ChromeCleanerControllerDelegate* delegate_; |
State state_ = State::kIdle; |
+ // The logs permission checkboxes in the Chrome Clenaer dialog and webui page |
robertshield
2017/06/29 13:47:21
nit: Cleaner
proberge
2017/06/29 13:55:52
s/Clenaer/Cleaner
alito
2017/06/29 17:14:27
Done.
alito
2017/06/29 17:14:27
Done.
|
+ // are meant to be checked by default. |
proberge
2017/06/29 13:55:52
s/meant to be checked by default/opt out
alito
2017/06/29 17:14:27
Ah, thx. That's what I couldn't remember last nigh
|
+ bool logs_enabled_ = true; |
IdleReason idle_reason_ = IdleReason::kInitial; |
std::unique_ptr<SwReporterInvocation> reporter_invocation_; |
std::unique_ptr<std::set<base::FilePath>> files_to_delete_; |