#include "base/strings/string16.h"
#include "base/values.h"
#include "chrome/browser/google/google_brand.h"
-#include "chrome/browser/profile_resetter/automatic_profile_resetter.h"
-#include "chrome/browser/profile_resetter/automatic_profile_resetter_factory.h"
#include "chrome/browser/profile_resetter/brandcode_config_fetcher.h"
#include "chrome/browser/profile_resetter/brandcoded_default_settings.h"
#include "chrome/browser/profile_resetter/profile_resetter.h"
#include "content/public/browser/user_metrics.h"
#include "content/public/browser/web_ui.h"
#include "grit/generated_resources.h"
-#include "ui/base/l10n/l10n_util.h"
namespace options {
-ResetProfileSettingsHandler::ResetProfileSettingsHandler()
- : automatic_profile_resetter_(NULL), has_shown_confirmation_dialog_(false) {
+ResetProfileSettingsHandler::ResetProfileSettingsHandler() {
google_brand::GetBrand(&brandcode_);
}
void ResetProfileSettingsHandler::InitializeHandler() {
Profile* profile = Profile::FromWebUI(web_ui());
resetter_.reset(new ProfileResetter(profile));
- automatic_profile_resetter_ =
- AutomaticProfileResetterFactory::GetForBrowserContext(profile);
}
void ResetProfileSettingsHandler::InitializePage() {
web_ui()->CallJavascriptFunction(
"ResetProfileSettingsOverlay.setResettingState",
base::FundamentalValue(resetter_->IsActive()));
- if (automatic_profile_resetter_ &&
- automatic_profile_resetter_->ShouldShowResetBanner())
- web_ui()->CallJavascriptFunction("ResetProfileSettingsBanner.show");
-}
-
-void ResetProfileSettingsHandler::Uninitialize() {
- if (has_shown_confirmation_dialog_ && automatic_profile_resetter_) {
- automatic_profile_resetter_->NotifyDidCloseWebUIResetDialog(
- false /*performed_reset*/);
- }
}
void ResetProfileSettingsHandler::GetLocalizedValues(
DCHECK(localized_strings);
static OptionsStringResource resources[] = {
- { "resetProfileSettingsBannerText",
- IDS_RESET_PROFILE_SETTINGS_BANNER_TEXT },
{ "resetProfileSettingsCommit", IDS_RESET_PROFILE_SETTINGS_COMMIT_BUTTON },
{ "resetProfileSettingsExplanation",
IDS_RESET_PROFILE_SETTINGS_EXPLANATION },
web_ui()->RegisterMessageCallback("onHideResetProfileDialog",
base::Bind(&ResetProfileSettingsHandler::OnHideResetProfileDialog,
base::Unretained(this)));
- web_ui()->RegisterMessageCallback("onDismissedResetProfileSettingsBanner",
- base::Bind(&ResetProfileSettingsHandler::
- OnDismissedResetProfileSettingsBanner,
- base::Unretained(this)));
}
void ResetProfileSettingsHandler::HandleResetProfileSettings(
setting_snapshot_->Subtract(current_snapshot);
std::string report = SerializeSettingsReport(*setting_snapshot_,
difference);
- bool is_reset_prompt_active = automatic_profile_resetter_ &&
- automatic_profile_resetter_->IsResetPromptFlowActive();
- SendSettingsFeedback(report, profile, is_reset_prompt_active ?
- PROFILE_RESET_PROMPT : PROFILE_RESET_WEBUI);
+ SendSettingsFeedback(report, profile);
}
}
setting_snapshot_.reset();
- if (automatic_profile_resetter_) {
- automatic_profile_resetter_->NotifyDidCloseWebUIResetDialog(
- true /*performed_reset*/);
- }
}
void ResetProfileSettingsHandler::OnShowResetProfileDialog(
UpdateFeedbackUI();
}
- if (automatic_profile_resetter_)
- automatic_profile_resetter_->NotifyDidOpenWebUIResetDialog();
- has_shown_confirmation_dialog_ = true;
-
if (brandcode_.empty())
return;
config_fetcher_.reset(new BrandcodeConfigFetcher(
setting_snapshot_.reset();
}
-void ResetProfileSettingsHandler::OnDismissedResetProfileSettingsBanner(
- const base::ListValue* args) {
- if (automatic_profile_resetter_)
- automatic_profile_resetter_->NotifyDidCloseWebUIResetBanner();
-}
-
void ResetProfileSettingsHandler::OnSettingsFetched() {
DCHECK(config_fetcher_);
DCHECK(!config_fetcher_->IsActive());