Chromium Code Reviews| Index: chrome/browser/ui/webui/settings/reset_settings_handler.cc |
| diff --git a/chrome/browser/ui/webui/settings/reset_settings_handler.cc b/chrome/browser/ui/webui/settings/reset_settings_handler.cc |
| index 19847c3e0588b8b4cadc25f569aad0240bbb4b2b..f028f3b3d62bc1c668efdcec8ffed5a3abe53bd8 100644 |
| --- a/chrome/browser/ui/webui/settings/reset_settings_handler.cc |
| +++ b/chrome/browser/ui/webui/settings/reset_settings_handler.cc |
| @@ -91,6 +91,9 @@ void ResetSettingsHandler::RegisterMessages() { |
| web_ui()->RegisterMessageCallback("onShowResetProfileDialog", |
| base::Bind(&ResetSettingsHandler::OnShowResetProfileDialog, |
| base::Unretained(this))); |
| + web_ui()->RegisterMessageCallback("getReportedSettings", |
| + base::Bind(&ResetSettingsHandler::HandleGetReportedSettings, |
| + base::Unretained(this))); |
| web_ui()->RegisterMessageCallback("onHideResetProfileDialog", |
| base::Bind(&ResetSettingsHandler::OnHideResetProfileDialog, |
| base::Unretained(this))); |
| @@ -148,14 +151,28 @@ void ResetSettingsHandler::OnResetProfileSettingsDone( |
| setting_snapshot_.reset(); |
| } |
| +void ResetSettingsHandler::HandleGetReportedSettings( |
| + const base::ListValue* args) { |
| + CHECK_EQ(1U, args->GetSize()); |
| + std::string callback_id; |
| + CHECK(args->GetString(0, &callback_id)); |
| + |
| + setting_snapshot_->RequestShortcuts(base::Bind( |
|
tommycli
2016/04/20 23:23:18
Since all two callers of ResettableSettingsSnapsho
dpapad
2016/04/21 00:27:10
Acknowledged.
|
| + &ResetSettingsHandler::OnGetReportedSettingsDone, |
| + weak_ptr_factory_.GetWeakPtr(), |
| + callback_id)); |
| +} |
| + |
| +void ResetSettingsHandler::OnGetReportedSettingsDone(std::string callback_id) { |
| + std::unique_ptr<base::ListValue> list = |
| + GetReadableFeedbackForSnapshot(profile_, *setting_snapshot_); |
| + ResolveJavascriptCallback(base::StringValue(callback_id), *list); |
| +} |
| + |
| void ResetSettingsHandler::OnShowResetProfileDialog( |
| const base::ListValue* args) { |
| if (!GetResetter()->IsActive()) { |
| setting_snapshot_.reset(new ResettableSettingsSnapshot(profile_)); |
| - setting_snapshot_->RequestShortcuts(base::Bind( |
| - &ResetSettingsHandler::UpdateFeedbackUI, |
| - weak_ptr_factory_.GetWeakPtr())); |
| - UpdateFeedbackUI(); |
| } |
| if (brandcode_.empty()) |
| @@ -212,16 +229,6 @@ void ResetSettingsHandler::ResetProfile(std::string callback_id, |
| UMA_HISTOGRAM_BOOLEAN("ProfileReset.SendFeedback", send_settings); |
| } |
| -void ResetSettingsHandler::UpdateFeedbackUI() { |
| - if (!setting_snapshot_) |
| - return; |
| - std::unique_ptr<base::ListValue> list = |
| - GetReadableFeedbackForSnapshot(profile_, *setting_snapshot_); |
| - web_ui()->CallJavascriptFunction("cr.webUIListenerCallback", |
| - base::StringValue("feedback-info-changed"), |
| - *list.release()); |
| -} |
| - |
| ProfileResetter* ResetSettingsHandler::GetResetter() { |
| if (!resetter_) |
| resetter_.reset(new ProfileResetter(profile_)); |