Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(454)

Unified Diff: chrome/browser/chromeos/arc/arc_support_host.cc

Issue 2104893003: Adds a new checkbox for backup and restore in opt-in flow. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Adds a new checkbox for backup and restore in opt-in flow. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/arc/arc_support_host.cc
diff --git a/chrome/browser/chromeos/arc/arc_support_host.cc b/chrome/browser/chromeos/arc/arc_support_host.cc
index 3713eb058dab9ea26329320fbb9e032a40d6dcb9..97a1277aa847550946dfe14c88d04601806d4790 100644
--- a/chrome/browser/chromeos/arc/arc_support_host.cc
+++ b/chrome/browser/chromeos/arc/arc_support_host.cc
@@ -19,6 +19,7 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/ash/multi_user/multi_user_util.h"
#include "chrome/browser/ui/browser_commands.h"
+#include "chrome/common/pref_names.h"
#include "chrome/grit/generated_resources.h"
#include "components/metrics/metrics_pref_names.h"
#include "components/prefs/pref_service.h"
@@ -28,13 +29,15 @@
namespace {
const char kAction[] = "action";
-const char kCode[] = "code";
+const char kBackupRestoreEnabled[] = "backupRestoreEnabled";
const char kCanEnable[] = "canEnable";
-const char kStatus[] = "status";
+const char kCode[] = "code";
const char kData[] = "data";
const char kDeviceId[] = "deviceId";
+const char kEnabled[] = "enabled";
const char kOn[] = "on";
const char kPage[] = "page";
+const char kStatus[] = "status";
const char kText[] = "text";
const char kActionInitialize[] = "initialize";
const char kActionSetMetricsMode[] = "setMetricsMode";
@@ -43,6 +46,7 @@ const char kActionCancelAuthCode[] = "cancelAuthCode";
const char kActionSetAuthCode[] = "setAuthCode";
const char kActionEnableMetrics[] = "enableMetrics";
const char kActionSendFeedback[] = "sendFeedback";
+const char kActionSetBackupRestore[] = "setBackupRestore";
const char kActionCloseUI[] = "closeUI";
const char kActionShowPage[] = "showPage";
} // namespace
@@ -98,49 +102,54 @@ void ArcSupportHost::Start(Client* client) {
void ArcSupportHost::Initialize() {
DCHECK(client_);
-
- std::unique_ptr<base::DictionaryValue> localized_strings(
+ std::unique_ptr<base::DictionaryValue> loadtime_data(
new base::DictionaryValue());
base::string16 device_name = ash::GetChromeOSDeviceName();
- localized_strings->SetString(
+ loadtime_data->SetString(
"greetingHeader",
l10n_util::GetStringFUTF16(IDS_ARC_OPT_IN_DIALOG_HEADER, device_name));
- localized_strings->SetString(
- "greetingDescription",
- l10n_util::GetStringFUTF16(IDS_ARC_OPT_IN_DIALOG_DESCRIPTION,
- device_name));
- localized_strings->SetString(
+ loadtime_data->SetString("greetingDescription",
+ l10n_util::GetStringFUTF16(
+ IDS_ARC_OPT_IN_DIALOG_DESCRIPTION, device_name));
+ loadtime_data->SetString(
"buttonAgree",
l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_BUTTON_AGREE));
- localized_strings->SetString(
+ loadtime_data->SetString(
"buttonCancel",
l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_BUTTON_CANCEL));
- localized_strings->SetString(
+ loadtime_data->SetString(
"buttonSendFeedback",
l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_BUTTON_SEND_FEEDBACK));
- localized_strings->SetString(
+ loadtime_data->SetString(
"buttonRetry",
l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_BUTTON_RETRY));
- localized_strings->SetString(
+ loadtime_data->SetString(
"progressLsoLoading",
l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_PROGRESS_LSO));
- localized_strings->SetString(
+ loadtime_data->SetString(
"progressAndroidLoading",
l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_PROGRESS_ANDROID));
- localized_strings->SetString(
+ loadtime_data->SetString(
"authorizationFailed",
l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_AUTHORIZATION_FAILED));
- localized_strings->SetString(
+ loadtime_data->SetString(
"termsOfService",
l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_TERMS_OF_SERVICE));
+ loadtime_data->SetString(
+ "textBackupRestore",
+ l10n_util::GetStringUTF16(IDS_ARC_OPT_IN_DIALOG_BACKUP_RESTORE));
const std::string& app_locale = g_browser_process->GetApplicationLocale();
const std::string& country_code = base::CountryCodeForCurrentTimezone();
- localized_strings->SetString("countryCode", country_code);
-
- webui::SetLoadTimeDataDefaults(app_locale, localized_strings.get());
+ loadtime_data->SetString("countryCode", country_code);
arc::ArcAuthService* arc_auth_service = arc::ArcAuthService::Get();
+
+ loadtime_data->SetBoolean(kBackupRestoreEnabled,
+ arc_auth_service->profile()->GetPrefs()->GetBoolean(
+ prefs::kArcBackupRestoreEnabled));
+
+ webui::SetLoadTimeDataDefaults(app_locale, loadtime_data.get());
DCHECK(arc_auth_service);
const std::string device_id = user_manager::known_user::GetDeviceId(
multi_user_util::GetAccountIdFromProfile(arc_auth_service->profile()));
@@ -149,7 +158,7 @@ void ArcSupportHost::Initialize() {
base::DictionaryValue request;
std::string request_string;
request.SetString(kAction, kActionInitialize);
- request.Set(kData, std::move(localized_strings));
+ request.Set(kData, std::move(loadtime_data));
request.SetString(kDeviceId, device_id);
base::JSONWriter::Write(request, &request_string);
client_->PostMessageFromNativeHost(request_string);
@@ -215,8 +224,13 @@ void ArcSupportHost::OnOptInUIShowPage(arc::ArcAuthService::UIPage page,
client_->PostMessageFromNativeHost(response_string);
}
-void ArcSupportHost::EnableMetrics() {
- InitiateMetricsReportingChange(true, OnMetricsReportingCallbackType());
+void ArcSupportHost::EnableMetrics(bool is_enabled) {
+ InitiateMetricsReportingChange(is_enabled, OnMetricsReportingCallbackType());
+}
+
+void ArcSupportHost::EnableBackupRestore(bool is_enabled) {
+ PrefService* pref_service = arc::ArcAuthService::Get()->profile()->GetPrefs();
+ pref_service->SetBoolean(prefs::kArcBackupRestoreEnabled, is_enabled);
}
void ArcSupportHost::OnMessage(const std::string& request_string) {
@@ -249,9 +263,21 @@ void ArcSupportHost::OnMessage(const std::string& request_string) {
} else if (action == kActionCancelAuthCode) {
arc_auth_service->CancelAuthCode();
} else if (action == kActionEnableMetrics) {
- EnableMetrics();
+ bool is_enabled;
+ if (!request->GetBoolean(kEnabled, &is_enabled)) {
+ NOTREACHED();
+ return;
+ }
+ EnableMetrics(is_enabled);
} else if (action == kActionSendFeedback) {
chrome::OpenFeedbackDialog(nullptr);
+ } else if (action == kActionSetBackupRestore) {
+ bool is_enabled;
+ if (!request->GetBoolean(kEnabled, &is_enabled)) {
+ NOTREACHED();
+ return;
+ }
+ EnableBackupRestore(is_enabled);
} else {
NOTREACHED();
}
« no previous file with comments | « chrome/browser/chromeos/arc/arc_support_host.h ('k') | chrome/browser/resources/chromeos/arc_support/background.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698