summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/webui/options2/options_sync_setup_handler.cc
diff options
context:
space:
mode:
authorbinji@chromium.org <binji@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-20 01:44:07 +0000
committerbinji@chromium.org <binji@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-20 01:44:07 +0000
commitd331e3921d439eefdda0a6caa213a8ba4952fad9 (patch)
tree616f608f1586d2a23333ba342c74966806505492 /chrome/browser/ui/webui/options2/options_sync_setup_handler.cc
parentfbc47649181a60877d94ef60312cdca536860480 (diff)
downloadchromium_src-d331e3921d439eefdda0a6caa213a8ba4952fad9.zip
chromium_src-d331e3921d439eefdda0a6caa213a8ba4952fad9.tar.gz
chromium_src-d331e3921d439eefdda0a6caa213a8ba4952fad9.tar.bz2
Revert 115057 - Moved all options2 files to the options2 namespace.
BUG=100885 TEST=everything compiles Review URL: http://codereview.chromium.org/8947010 TBR=binji@chromium.org Review URL: http://codereview.chromium.org/8989005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115060 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui/webui/options2/options_sync_setup_handler.cc')
-rw-r--r--chrome/browser/ui/webui/options2/options_sync_setup_handler.cc55
1 files changed, 55 insertions, 0 deletions
diff --git a/chrome/browser/ui/webui/options2/options_sync_setup_handler.cc b/chrome/browser/ui/webui/options2/options_sync_setup_handler.cc
new file mode 100644
index 0000000..81e114e
--- /dev/null
+++ b/chrome/browser/ui/webui/options2/options_sync_setup_handler.cc
@@ -0,0 +1,55 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/ui/webui/options2/options_sync_setup_handler.h"
+
+#include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/sync/profile_sync_service.h"
+
+OptionsSyncSetupHandler::OptionsSyncSetupHandler(
+ ProfileManager* profile_manager) : SyncSetupHandler2(profile_manager) {
+}
+
+OptionsSyncSetupHandler::~OptionsSyncSetupHandler() {
+}
+
+void OptionsSyncSetupHandler::StepWizardForShowSetupUI() {
+ ProfileSyncService* service =
+ Profile::FromWebUI(web_ui_)->GetProfileSyncService();
+ DCHECK(service);
+
+ // We should bring up either a login or a configure flow based on the state of
+ // sync.
+ if (service->HasSyncSetupCompleted()) {
+ if (service->IsPassphraseRequiredForDecryption()) {
+ service->get_wizard().Step(SyncSetupWizard::ENTER_PASSPHRASE);
+ } else {
+ service->get_wizard().Step(SyncSetupWizard::CONFIGURE);
+ }
+ } else {
+ service->get_wizard().Step(SyncSetupWizard::GetLoginState());
+ }
+}
+
+void OptionsSyncSetupHandler::ShowSetupUI() {
+ ProfileSyncService* service =
+ Profile::FromWebUI(web_ui_)->GetProfileSyncService();
+ DCHECK(service);
+
+ // The user is trying to manually load a syncSetup URL. We should bring up
+ // either a login or a configure flow based on the state of sync.
+ if (service->HasSyncSetupCompleted()) {
+ if (service->IsPassphraseRequiredForDecryption()) {
+ service->get_wizard().Step(SyncSetupWizard::ENTER_PASSPHRASE);
+ } else {
+ service->get_wizard().Step(SyncSetupWizard::CONFIGURE);
+ }
+ } else {
+ service->get_wizard().Step(SyncSetupWizard::GetLoginState());
+ }
+
+ // Show the Sync Setup page.
+ scoped_ptr<Value> page(Value::CreateStringValue("syncSetup"));
+ web_ui_->CallJavascriptFunction("OptionsPage.navigateToPage", *page);
+}